latex-posters
7 findings (3 critical, 3 medium, 1 info), mainly data exfiltration, unauthorized tool use, policy violation. Most recent scan 2026-10-21.
Second scanner: NVIDIA SkillSpector
Independent static run, no language model, over the same files as the Cisco scan above. How the two scanners compare across the whole corpus: Two scanners, one corpus.
What this skill does
Creates research posters in LaTeX using beamerposter, tikzposter, or baposter. Use for conference posters, academic presentations, multi-column scientific layouts, figure integration, typography, compilation, and PDF preflight.
- Package
- 17 files, 207 KB
- SKILL.md
- 1280 words, 12+ sections
- Code
- Python (2), Shell (1)
- Allowed tools
ReadWriteEditBash- Compatibility
- Requires a LaTeX distribution with the selected poster class and Poppler for PDF checks. Optional AI schematics require Python 3.10+, requests, network access, and OPENROUTER_API_KEY. baposter needs a separately supplied class file.
SKILL.md covers: LaTeX Research Posters · Choose the poster package · Workflow · 1. Establish the scientific content and output requirements · 2. Prepare and review figures · From the skill root; save project output outside the installed skill directory. · Illustrative paid call, not executed during this review. · 3. Create the layout · 4. Compile and inspect the actual PDF · 5. Proof and deliver · Installation · On an existing supported TeX Live installation; distribution permissions vary.
Findings
CRITICAL Cross-file env var exfiltration: 2 files Data Exfiltrationbehavioral
Environment variable access with network calls in scripts/generate_schematic_ai.py, scripts/generate_schematic.py
CRITICAL Cross-file exfiltration chain: 2 files Data Exfiltrationbehavioral
Multi-file exfiltration chain detected: scripts/generate_schematic_ai.py, scripts/generate_schematic.py collect data → scripts/generate_schematic_ai.py → scripts/generate_schematic_ai.py transmit to network
CRITICAL Environment variable access with network calls detected Data Exfiltrationbehavioral
Script accesses environment variables and makes network calls in /home/runner/work/skill-scanner-test/skill-scanner-test/skills/K-Dense-AI-scientific-agent-skills/skills/latex-posters/scripts/generate_schematic_ai.py
/home/runner/work/skill-scanner-test/skill-scanner-test/skills/K-Dense-AI-scientific-agent-skills/skills/latex-posters/scripts/generate_schematic_ai.py
MEDIUM Code makes network requests Unauthorized Tool Usestatic
Skill code makes network requests. While not controlled by allowed-tools, network access should be documented and justified in the skill description.
SKILL.md
MEDIUM Outbound network request primitives that can transmit data externally Data Exfiltrationstatic
Pattern detected: requests.post(
scripts/generate_schematic_ai.py:263
response = requests.post(MEDIUM Bash: tainted data flows to dangerous sink Data Exfiltrationbehavioral
Variable $FILE_SIZE_BYTES (line 63) flows to `sh` at line 64.
scripts/review_poster.sh:64
printf '%s bytes. File size alone does not establish image quality.\n' "$FILE_SIZE_BYTES"INFO Skill does not specify a license Policy Violationstatic
Skill manifest does not include a 'license' field. Specifying a license helps users understand usage terms.
SKILL.md
What is in the package
| File | Kind | Size |
|---|---|---|
SKILL.md | doc | 10 KB |
assets/baposter_template.tex | data | 7.8 KB |
assets/beamerposter_template.tex | data | 8.1 KB |
assets/poster_quality_checklist.md | doc | 11 KB |
assets/tikzposter_template.tex | data | 8.2 KB |
references/README.md | doc | 3.0 KB |
references/ai_graphics_for_posters.md | doc | 6.5 KB |
references/compilation_and_quality_control.md | doc | 8.1 KB |
references/latex_poster_packages.md | doc | 19 KB |
references/latex_poster_reference.md | doc | 7.5 KB |
references/poster_content_guide.md | doc | 21 KB |
references/poster_design_principles.md | doc | 22 KB |
references/poster_layout_design.md | doc | 22 KB |
references/poster_patterns_and_presentation.md | doc | 2.9 KB |
scripts/generate_schematic.py | script | 7.6 KB |
scripts/generate_schematic_ai.py | script | 35 KB |
scripts/review_poster.sh | script | 6.3 KB |
External hosts referenced
openrouter.ai ctan.org doi.org ghostscript.readthedocs.io github.com arxiv.org mirrors.ctan.org webaim.org export.arxiv.org poppler.freedesktop.org www.brian-amberg.de www.color-blindness.com
Hostnames that appear in the skill's files. Referencing a host is not a finding; compare against the findings above and the skill's stated purpose.
Environment variables referenced
OPENROUTER_API_KEY
Package contents recorded 2026-10-22 at commit 593377bb0487. The scan above ran against the version current at scan time; the two can differ if the skill has since been updated.
What we checked
- Static analyzer. Pattern rules over SKILL.md and bundled files: known-bad commands, exfiltration URLs, secrets, obfuscation.
- Bytecode analyzer.
- Pipeline analyzer.
- Correlation analyzer.
- Behavioral analyzer. Checks what the skill asks the agent to do against what its description claims it does.
- Trigger analyzer. Looks for instructions that fire on conditions the user did not ask for.
What we did not check
- Runtime behaviour. The skill was not executed; findings come from reading its files.
- Anything fetched at install or run time, including remote scripts, package dependencies, and URLs the skill tells the agent to open.
- Content the analyzers cannot read: images, binaries, and some non-English text.
- Known scanner bypass classes. See the methodology and limitations page.
Sources
- Repository: https://github.com/K-Dense-AI/scientific-agent-skills
- Raw scan result: skills-latex-posters-scan.json
- Badge for your README:
 - Request a re-scan