Scan Report
45 /100
ai-content-pipeline
End-to-end AI Content Pipeline that crawls articles, rewrites them using Google Gemini, and automatically publishes to Facebook Fanpage
Skill exposes production credentials in .env file and has an unpinned external dependency, though core functionality appears legitimate without malicious behavior.
Use with caution
1) Remove real credentials from .env and use only placeholder values; 2) Pin openclaw to a specific version (e.g., openclaw==2026.3.0); 3) Remove credential prefixes from README.md table; 4) Ensure .env is never committed to version control
Findings 4 items
| Severity | Finding | Location |
|---|---|---|
| High | Production API credentials in .env file Credential Theft | .env:7 |
| Medium | Credential prefixes exposed in documentation Doc Mismatch | README.md:102 |
| Medium | External dependency with unpinned version Supply Chain | requirements.txt:12 |
| Low | Chrome User-Agent flagged as hardcoded IP (false positive) Sensitive Access | agents/crawler_agent.py:27 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | READ | READ | ✓ Aligned | All file operations are for config loading and output writing (legitimate) |
| Network | READ | READ | ✓ Aligned | requests.get/post to legitimate APIs: Gemini, OpenAI, Apify, Facebook Graph API |
| Shell | NONE | NONE | — | No subprocess, os.system, or shell execution found |
| Environment | READ | READ | ✓ Aligned | os.getenv() used only for documented API keys (config.py) |
1 High 12 findings
High IP Address 硬编码 IP 地址
131.0.0.0 agents/crawler_agent.py:27 Medium External URL 外部 URL
https://dantri.com.vn/... README.md:53 Medium External URL 外部 URL
https://www.facebook.com/... README.md:56 Medium External URL 外部 URL
https://vnexpress.net/... SKILL.md:54 Medium External URL 外部 URL
https://dantri.com.vn/suc-manh-so/cong-nghe-ai-tao-sinh-dang-thay-doi-nganh-truyen-thong-nhu-the-nao-20240101000000000.h... agents/crawler_agent.py:204 Medium External URL 外部 URL
https://www.facebook.com/ agents/fb_publisher_agent.py:107 Medium External URL 外部 URL
https://developers.facebook.com/tools/explorer[/link agents/fb_token_helper.py:81 Medium External URL 外部 URL
https://dantri.com.vn/example agents/writer_agent.py:156 Medium External URL 外部 URL
https://graph.facebook.com/ config.py:33 Medium External URL 外部 URL
https://dantri.com.vn/some-article.htm main.py:310 Medium External URL 外部 URL
https://graph.facebook.com skills/facebook/references/graph-api-overview.md:4 Medium External URL 外部 URL
https://graph.facebook.com/vXX.X skills/facebook/references/graph-api-overview.md:5 File Tree
24 files · 80.5 KB · 2010 lines Python 12f · 1522L
Markdown 8f · 381L
Text 2f · 68L
Other 1f · 27L
Ignore 1f · 12L
├─
▾
agents
│ ├─
__init__.py
Python
│ ├─
crawler_agent.py
Python
│ ├─
fb_publisher_agent.py
Python
│ ├─
fb_token_helper.py
⚠
Python
│ ├─
image_agent.py
Python
│ └─
writer_agent.py
Python
├─
▾
skills
│ └─
▾
facebook
│ └─
▾
references
│ ├─
comments-moderation.md
Markdown
│ ├─
graph-api-overview.md
Markdown
│ ├─
http-request-templates.md
Markdown
│ ├─
page-posting.md
Markdown
│ ├─
permissions-and-tokens.md
⚠
Markdown
│ └─
webhooks.md
Markdown
├─
.env
⚠
├─
.gitignore
Ignore
├─
config.py
Python
├─
main.py
Python
├─
models.py
Python
├─
output_log.txt
Text
├─
README.md
Markdown
├─
requirements.txt
Text
├─
sitecustomize.py
Python
├─
SKILL.md
Markdown
├─
test_fb_connection.py
Python
└─
utils.py
Python
Dependencies 7 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
openai | >=1.30.0 | pip | No | Version not pinned but package is reputable |
requests | >=2.31.0 | pip | No | Version not pinned but package is reputable |
apify-client | >=1.7.0 | pip | No | Version not pinned but package is reputable |
openclaw | >=2026.3.0 | pip | No | Version not pinned - supply chain risk |
google-genai | >=1.0.0 | pip | No | Official Google package - reputable |
beautifulsoup4 | >=4.12.0 | pip | No | Well-known package |
openclaw | >=2026.3.0 | pip | No | CRITICAL: Version not pinned - allows malicious updates |
Security Positives
✓ No shell execution (subprocess, os.system, eval, or base64 decoding)
✓ No credential harvesting - credentials used only for legitimate API calls
✓ No data exfiltration - all network calls go to documented services (Facebook, Gemini, OpenAI, Apify)
✓ No obfuscation - code is well-structured and readable
✓ SKILL.md accurately describes all capabilities and permissions
✓ Proper use of .gitignore to exclude .env
✓ All dependencies except openclaw are properly version-pinned
✓ No hidden functionality or undocumented behavior detected