← Legacy view v2 (rp.*)

nousresearch/hermes-agent

https://github.com/NousResearch/hermes-agent.git · lang: python · LOC: · source: corpus_mined

Quality
59.1
Grade C
Security
Findings
30
0 critical · 11 high
Status
completed
May 15, 2026 21:54
high: 11 info: 11 medium: 8
Top rules by occurrence
RuleSeverityCount
SEC005 Command Injection Risk high 4
SEC012 ZipSlip — Archive Path Traversal medium 4
SEC013 Path Traversal — User Input in File Path high 4
SEC004 SQL Injection Risk high 4
SEC020 Secret Printed to Logs high 4
SEC018 AI-Agent Secret Retrieval Command high 4
SEC015 Insecure Randomness for Security medium 2
SEC016 LLM Prompt Injection — User Input in AI Prompt high 1
SEC014 SSL Verification Disabled medium 1
SEC007 Unsafe Deserialization medium 1
First 30 findings (severity-sorted)
high SEC004 SQL Injection Risk
acp_adapter/tools.py:804 · conf 0.50
[SEC004] SQL Injection Risk: String interpolation in SQL execution. Allows SQL injection.
high SEC004 SQL Injection Risk
optional-skills/mcp/fastmcp/templates/database_server.py:68 · conf 0.85
[SEC004] SQL Injection Risk: String interpolation in SQL execution. Allows SQL injection.
high SEC004 SQL Injection Risk
tools/file_operations.py:859 · conf 0.50
[SEC004] SQL Injection Risk: String interpolation in SQL execution. Allows SQL injection.
high SEC013 Path Traversal — User Input in File Path
hermes_cli/models.py:2568 · conf 0.80
[SEC013] Path Traversal — User Input in File Path: User-controlled input used in file path without sanitization. Allows reading arbitrary files.
high SEC013 Path Traversal — User Input in File Path
tools/browser_supervisor.py:88 · conf 0.80
[SEC013] Path Traversal — User Input in File Path: User-controlled input used in file path without sanitization. Allows reading arbitrary files.
high SEC013 Path Traversal — User Input in File Path
trajectory_compressor.py:1378 · conf 0.80
[SEC013] Path Traversal — User Input in File Path: User-controlled input used in file path without sanitization. Allows reading arbitrary files.
high SEC018 AI-Agent Secret Retrieval Command
hermes_cli/main.py:4167 · conf 1.00
[SEC018] AI-Agent Secret Retrieval Command: A command that prints or embeds credentials was committed. AI coding agents often add these commands while trying to help with setup or deployment, but the…
high SEC018 AI-Agent Secret Retrieval Command
hermes_cli/models.py:936 · conf 1.00
[SEC018] AI-Agent Secret Retrieval Command: A command that prints or embeds credentials was committed. AI coding agents often add these commands while trying to help with setup or deployment, but the…
high SEC018 AI-Agent Secret Retrieval Command
tools/skills_hub.py:175 · conf 1.00
[SEC018] AI-Agent Secret Retrieval Command: A command that prints or embeds credentials was committed. AI coding agents often add these commands while trying to help with setup or deployment, but the…
high SEC020 Secret Printed to Logs
hermes_cli/webhook.py:179 · conf 0.92
[SEC020] Secret Printed to Logs: Debug or diagnostic code appears to print a credential-bearing value. This is a frequent AI-assisted coding failure: the helper exposes the exact value needed for tro…
high SEC020 Secret Printed to Logs
scripts/sample_and_compress.py:144 · conf 0.85
[SEC020] Secret Printed to Logs: Debug or diagnostic code appears to print a credential-bearing value. This is a frequent AI-assisted coding failure: the helper exposes the exact value needed for tro…
medium SEC005 Command Injection Risk
hermes_cli/tools_config.py:637 · conf 0.50
[SEC005] Command Injection Risk: Unsafe shell execution or eval of user input.
medium SEC005 Command Injection Risk
tools/transcription_tools.py:518 · conf 0.50
[SEC005] Command Injection Risk: Unsafe shell execution or eval of user input.
medium SEC005 Command Injection Risk
tui_gateway/server.py:6608 · conf 0.50
[SEC005] Command Injection Risk: Unsafe shell execution or eval of user input.
medium SEC012 ZipSlip — Archive Path Traversal
agent/curator_backup.py:613 · conf 1.00
[SEC012] ZipSlip — Archive Path Traversal: Archive extraction without path validation allows writing files outside the target directory.
medium SEC012 ZipSlip — Archive Path Traversal
hermes_cli/main.py:6274 · conf 1.00
[SEC012] ZipSlip — Archive Path Traversal: Archive extraction without path validation allows writing files outside the target directory.
medium SEC012 ZipSlip — Archive Path Traversal
scripts/install_psutil_android.py:86 · conf 1.00
[SEC012] ZipSlip — Archive Path Traversal: Archive extraction without path validation allows writing files outside the target directory.
medium SEC014 SSL Verification Disabled
optional-skills/research/domain-intel/scripts/domain_intel.py:94 · conf 1.00
[SEC014] SSL Verification Disabled: SSL certificate verification is disabled, allowing man-in-the-middle attacks.
medium SEC016 LLM Prompt Injection — User Input in AI Prompt
tools/web_tools.py:455 · conf 0.40
[SEC016] LLM Prompt Injection — User Input in AI Prompt: User-supplied text is interpolated directly into an AI/LLM prompt (e.g. OpenAI, Anthropic, or local model). This is the AI equivalent of SQL i…
info SEC001 Hardcoded Password
tools/terminal_tool.py:857 · conf 0.10
[SEC001] Hardcoded Password: Hardcoded password found in source code.
info SEC004 SQL Injection Risk
· conf 0.20
[SEC004] SQL Injection Risk (and 5 more): Same pattern found in 5 additional files. Review if needed.
info SEC005 Command Injection Risk
· conf 0.20
[SEC005] Command Injection Risk (and 2 more): Same pattern found in 2 additional files. Review if needed.
info SEC007 Unsafe Deserialization
agent/skill_utils.py:43 · conf 0.10
[SEC007] Unsafe Deserialization: Unsafe deserialization can execute arbitrary code.
info SEC012 ZipSlip — Archive Path Traversal
· conf 0.20
[SEC012] ZipSlip — Archive Path Traversal (and 1 more): Same pattern found in 1 additional files. Review if needed.
info SEC013 Path Traversal — User Input in File Path
· conf 0.20
[SEC013] Path Traversal — User Input in File Path (and 3 more): Same pattern found in 3 additional files. Review if needed.
info SEC015 Insecure Randomness for Security
toolset_distributions.py:277 · conf 0.25
[SEC015] Insecure Randomness for Security: Weak PRNG used in security-sensitive context. Output is predictable.
info SEC015 Insecure Randomness for Security
web/src/pages/ChatPage.tsx:58 · conf 0.25
[SEC015] Insecure Randomness for Security: Weak PRNG used in security-sensitive context. Output is predictable.
info SEC018 AI-Agent Secret Retrieval Command
· conf 0.20
[SEC018] AI-Agent Secret Retrieval Command (and 3 more): Same pattern found in 3 additional files. Review if needed.
info SEC020 Secret Printed to Logs
· conf 0.20
[SEC020] Secret Printed to Logs (and 25 more): Same pattern found in 25 additional files. Review if needed.
info SEC020 Secret Printed to Logs
gateway/config.py:1374 · conf 0.15
[SEC020] Secret Printed to Logs: Debug or diagnostic code appears to print a credential-bearing value. This is a frequent AI-assisted coding failure: the helper exposes the exact value needed for tro…

Reading from rp.scan + rp.finding + rp.rule (unified schema, R78 series). Legacy data path unchanged. Compare with /scan/f147006d-3e31-4d72-987e-20aa37b5fe4f/.