Scan Report
65 /100
dianping-api
Dianping (大众点评) API skill for searching restaurants and businesses
Remote script execution via curl|bash with base64-encoded content is a critical supply chain vulnerability, compounded by undocumented shell/filesystem/network access in the installation mechanism.
Do not install this skill
Remove the remote install.sh entirely. Distribute the skill as direct file copies rather than base64-encoded blobs fetched at runtime. Declare all file system and network access in SKILL.md.
Attack Chain 4 steps
⬡
Escalation Attacker compromises the <URL> host or DNS
install.sh:3⬡
Escalation Malicious install.sh replaces legitimate content
install.sh:3⬡
Escalation curl|bash executes arbitrary attacker code with user privileges
install.sh:3⬡
Escalation Malicious Python/Shell scripts written to disk and chmod +x'd
install.sh:28Findings 5 items
| Severity | Finding | Location |
|---|---|---|
| Critical | Remote Script Execution via curl|bash Supply Chain | install.sh:3 |
| Critical | Base64-Encoded Source Code Execution Obfuscation | install.sh:11 |
| Medium | Undeclared Shell Execution via subprocess Doc Mismatch | dianping_api.py:35 |
| Medium | Undeclared Filesystem Write Access Doc Mismatch | dianping_login.py:69 |
| Medium | Undeclared Network Access Doc Mismatch | SKILL.md:1 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | NONE | WRITE | ✗ Violation | install.sh:24 writes ~/.dianping/cookies.json via Python scripts |
| Network | NONE | READ | ✗ Violation | dianping_api.py:35 subprocess.run(['curl',...]) |
| Shell | NONE | WRITE | ✗ Violation | install.sh:3 curl|bash pattern |
| Environment | NONE | NONE | — | No environment variable access found |
| Skill Invoke | NONE | NONE | — | No cross-skill invocation |
2 Critical 8 findings
Critical Dangerous Command 危险 Shell 命令
curl -fsSL <URL>/install.sh | bash install.sh:3 Critical Encoded Execution Base64 编码执行(代码混淆)
base64 -d install.sh:11 Medium External URL 外部 URL
https://www.dianping.com/ scripts/dianping_api.py:38 Medium External URL 外部 URL
https://www.dianping.com/search/keyword/%d/0_%s scripts/dianping_api.py:65 Medium External URL 外部 URL
https://www.dianping.com/shop/ scripts/dianping_api.py:104 Medium External URL 外部 URL
https://www.dianping.com scripts/dianping_login.py:23 Medium External URL 外部 URL
https://account.dianping.com/pclogin scripts/dianping_login.py:183 Medium External URL 外部 URL
https://www.dianping.com/search/keyword/ scripts/dianping_login.py:218 File Tree
4 files · 50.0 KB · 664 lines Python 2f · 462L
Markdown 1f · 165L
Shell 1f · 37L
├─
▾
scripts
│ ├─
dianping_api.py
Python
│ └─
dianping_login.py
Python
├─
install.sh
Shell
└─
SKILL.md
Markdown
Dependencies 1 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
curl | system-provided | system | No | No pip/npm dependencies - uses system curl |
Security Positives
✓ No evidence of credential harvesting beyond the legitimate Dianping session cookies
✓ No reverse shell, C2 communication, or data exfiltration to third-party servers
✓ Cookies stored locally in user's home directory, not transmitted elsewhere
✓ The Python implementation appears functionally legitimate for the stated restaurant search purpose
✓ Uses standard curl User-Agent to appear as a normal browser