T09 · Insecure Skill Coding Practices
- Location
scripts/seo_audit.py:115- Finding
Unrestricted Server-Side URL Fetching Enables SSRF
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This SEO audit skill appears purpose-built, but it can make unrestricted live web requests from the agent environment without safeguards against private or internal targets.
Install only if you are comfortable with the agent making live HTTP requests from its own environment. Use it only on sites you own or are authorized to test, avoid private or internal URLs, and choose report output paths carefully because --output can overwrite files.
scripts/seo_audit.py:115Unrestricted Server-Side URL Fetching Enables SSRF
The skill documents network access to arbitrary URLs and report generation to an output file, but it does not declare any tool scope or permissions boundaries. This creates a capability/consent mismatch: an agent or reviewer may invoke the skill without realizing it can make outbound requests and write files, increasing the risk of unintended scanning, SSRF-like access to internal resources, or unexpected filesystem changes.
The skill description and usage examples do not warn that running an audit will actively crawl external websites and send HTTP requests to the supplied target. This can lead to unintentional third-party interactions, surprise traffic generation, or accidental probing of sensitive/internal endpoints if a user supplies such URLs.
This code performs a file write via Path(args.output).write_text(report), which can overwrite or create files on disk. While the operation is somewhat implied by the --output argument, there is no confirmation prompt or explicit warning comment/docstring near the write to disclose that a filesystem modification will occur.
No suspicious patterns detected.