扫描报告
20 /100
payment_skill_demo
AI 原生支付解决方案 - 提供安全、可靠的支付功能
A legitimate payment processing skill with standard async HTTP client patterns, proper input validation, and AES-GCM encryption. Minor documentation gaps exist but no malicious behavior detected.
可以安装
The skill is safe to use. Consider documenting the virtual environment setup behavior and subprocess usage in diagnose.py for complete transparency.
安全发现 3 项
| 严重性 | 安全发现 | 位置 |
|---|---|---|
| 低危 | Undeclared subprocess usage in diagnostic tool 文档欺骗 | scripts/diagnose.py:67 |
| 提示 | Python 3.6 support deprecated 供应链 | scripts/requirements-py36.txt:1 |
| 提示 | API credentials read from environment 敏感访问 | src/config_loader.py:86 |
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 文件系统 | WRITE | WRITE | ✓ 一致 | Creates logs/ and venv/ directories |
| 网络访问 | READ | READ | ✓ 一致 | Makes HTTP requests to payment API |
| 命令执行 | NONE | WRITE | ✓ 一致 | scripts/setup.sh: pip install; diagnose.py: subprocess.run() |
| 环境变量 | READ | READ | ✓ 一致 | Reads PAYMENT_API_KEY, PAYMENT_API_SECRET |
| 技能调用 | NONE | NONE | — | No skill invocation found |
| 剪贴板 | NONE | NONE | — | Not used |
| 浏览器 | NONE | NONE | — | Not used |
| 数据库 | NONE | NONE | — | Not used |
3 项发现
中危 外部 URL 外部 URL
https://api.zlclaw.com,不需要设置 config/production.env:9 中危 外部 URL 外部 URL
https://api.zlclaw.com config/production.env:20 提示 邮箱 邮箱地址
[email protected] SKILL.md:220 目录结构
15 文件 · 65.5 KB · 2303 行 Python 8f · 1807L
Markdown 1f · 225L
Shell 1f · 99L
YAML 1f · 75L
Text 2f · 47L
Env 1f · 36L
JSON 1f · 14L
├─
▾
config
│ └─
production.env
Env
├─
▾
scripts
│ ├─
diagnose.py
Python
│ ├─
requirements-py36.txt
Text
│ ├─
requirements.txt
Text
│ └─
setup.sh
Shell
├─
▾
src
│ ├─
__init__.py
Python
│ ├─
config_loader.py
Python
│ ├─
payment_api_client.py
Python
│ ├─
payment_skill.py
Python
│ ├─
payment_skill.yaml
YAML
│ ├─
security.py
Python
│ └─
utils.py
Python
├─
_meta.json
JSON
├─
skill_cli.py
Python
└─
SKILL.md
Markdown
依赖分析 5 项
| 包名 | 版本 | 来源 | 已知漏洞 | 备注 |
|---|---|---|---|---|
aiohttp | 3.9.5 (py38) / 3.6.3 (py36) | pip | 否 | Version pinned for py38, py36 uses older version |
pydantic | 2.7.0 (py38) / 1.8.2 (py36) | pip | 否 | Major version differs between py38/py36 |
cryptography | 42.0.5 (py38) / 3.4.8 (py36) | pip | 否 | Version pinned for py38 |
pycryptodome | 3.19.1 (py38) / 3.10.4 (py36) | pip | 否 | Version pinned for py38 |
pytest | 8.2.0 (py38) / 6.2.5 (py36) | pip | 否 | Version pinned for py38 |
安全亮点
✓ Uses HMAC-SHA256 for request signing (line: payment_api_client.py:109)
✓ AES-GCM encryption for sensitive fields (src/security.py:155-162)
✓ Input validation and sanitization to prevent injection attacks (src/security.py:32-60)
✓ Async HTTP client with proper timeout handling (aiohttp.ClientTimeout)
✓ Transaction IDs generated with UUID for uniqueness (src/utils.py:15)
✓ Dependencies mostly version-pinned in requirements.txt (except py36)
✓ Good error handling with specific error codes
✓ No obfuscated code, base64 payloads, or suspicious encoding patterns
✓ No attempts to access ~/.ssh, ~/.aws, or other sensitive paths
✓ No credential exfiltration or C2 communication patterns