安全决策报告

dex-price-monitor

DEX价格监控工具功能正常,但存在硬编码API密钥的安全隐患,属于供应链风险。代码逻辑清晰,无恶意行为迹象。

安装决策优先 来源: ClawHub 扫描时间: 2026/4/11
文件 12
IOC 45
越权项 0
发现 4

为什么得出这个结论

2/4 个维度触发
通过
声明与实际能力

声明资源与推断能力基本一致。

阻止
隐藏执行与外联

提取到 1 个高危 IOC 或外联信号。

阻止
攻击链与高危发现

报告包含 0 步攻击链,另有 1 项高危或严重发现。

复核
依赖与供应链卫生

发现 2 项需要关注的依赖或供应链线索。

风险分是怎么被拉高的

硬编码API密钥 +15

payment.py:12 硬编码 BILLING_API_KEY,生产环境暴露风险

外部支付服务调用 +5

未声明的外部服务调用 (skillpay.me),需要验证合法性

无版本锁定的第三方依赖 +5

使用 requests 库但无版本控制,存在依赖劫持风险

最关键的证据

高危 凭证窃取

硬编码 API 密钥

payment.py 第12行硬编码了计费 API 密钥 'sk_f03aa8f8bbcf79f7aa11c112d904780f22e62add1464e3c41a79600a451eb1d2'。如果此 skill 被部署,密钥将随代码分发,可能被滥用。

payment.py:12
将密钥存储在环境变量 SKILLPAY_API_KEY 中,代码中读取 os.environ.get('SKILLPAY_API_KEY')
中危 供应链

第三方依赖无版本锁定

代码使用 requests、matplotlib 等第三方库但未声明版本,可能受到依赖劫持攻击。

scripts/spread_tracker.py, scripts/best_path_finder.py:1
添加 requirements.txt 或使用 poetry/poetry.lock 锁定依赖版本
中危 文档欺骗

外部支付服务未在文档声明

SKILL.md 提到 SkillPay 付费系统但未详细说明该服务。payment.py 调用 skillpay.me 进行计费,属于未充分声明的外部依赖。

SKILL.md:11
在 SKILL.md 中明确说明支付服务提供商、数据流向和隐私政策
低危 敏感访问

Telegram/Discord Webhook 环境变量读取

price_alerts.py 读取 TELEGRAM_BOT_TOKEN 和 DISCORD_WEBHOOK_URL 环境变量用于通知功能。

scripts/price_alerts.py:91
这是正常功能,确保这些令牌不会外传

声明能力 vs 实际能力

网络访问 通过
声明 READ
→
推断 READ
所有脚本使用 requests 调用公开 API (CoinGecko, 1inch, 0x, ParaSwap 等)
文件系统 通过
声明 READ
→
推断 WRITE
多个脚本保存 JSON 数据到本地 (price_alerts.json, reports/)
环境变量 通过
声明 NONE
→
推断 READ
price_alerts.py 读取 TELEGRAM_BOT_TOKEN, DISCORD_WEBHOOK_URL

可疑产物与外联

高危 API 密钥
API_KEY = "sk_f03aa8f8bbcf79f7aa11c112d904780f22e62add1464e3c41a79600a451eb1d2"

payment.py:12

中危 外部 URL
https://api.1inch.io/

SKILL.md:105

中危 外部 URL
https://api.0x.org/

SKILL.md:106

中危 外部 URL
https://api.paraswap.io/

SKILL.md:107

中危 外部 URL
https://api.coingecko.com/

SKILL.md:112

中危 外部 URL
https://pro-api.coinmarketcap.com/

SKILL.md:113

中危 外部 URL
https://min-api.cryptocompare.com/

SKILL.md:114

中危 外部 URL
https://skillpay.me

payment.py:11

中危 外部 URL
https://api.telegram.org/bot

references/alert-configuration.md:91

中危 外部 URL
https://dexscreener.com/ethereum/0x8ad599c3A0ff1De082011EFDDc58f1908eb6e6D8

references/alert-configuration.md:121

中危 钱包地址
0x8ad599c3A0ff1De082011EFDDc58f1908eb6e6D8

references/alert-configuration.md:121

中危 外部 URL
https://your-app.com/webhook

references/alert-configuration.md:214

依赖与供应链

包名版本来源漏洞备注
requests * pip 否 无版本锁定,存在依赖劫持风险
matplotlib * pip 否 可选依赖,用于图表绘制

文件构成

12 个文件 · 3846 行
Markdown 5 个文件 · 1963 行Python 6 个文件 · 1864 行JSON 1 个文件 · 19 行
需关注文件 · 8
scripts/price_alerts.py Python · 358 行
Telegram/Discord Webhook 环境变量读取
scripts/best_path_finder.py Python · 303 行
https://api.0x.org/swap/v1/quote · https://api.paraswap.io/prices · https://portal.1inch.dev/
references/api-documentation.md Markdown · 423 行
https://api.coingecko.com/api/v3/simple/price · https://api.coingecko.com/api/v3/coins/ · https://api.1inch.dev/swap/v5.2/ · 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE · 0xA0b86a33E6441E6C7D3D4B4f6B7A2c8D5e9F0123 · https://api.0x.org/swap/v1/price · https://api.0x.org/swap/v1/sources · https://api.dexscreener.com/latest/dex/tokens/ · 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 · https://api.dexscreener.com/latest/dex/search
references/alert-configuration.md Markdown · 402 行
https://api.telegram.org/bot · https://dexscreener.com/ethereum/0x8ad599c3A0ff1De082011EFDDc58f1908eb6e6D8 · 0x8ad599c3A0ff1De082011EFDDc58f1908eb6e6D8 · https://your-app.com/webhook · [email protected]
references/data-sources.md Markdown · 386 行
https://api.thegraph.com/subgraphs/name/uniswap/uniswap-v3 · https://api.thegraph.com/subgraphs/name/sushiswap/exchange · https://api.thegraph.com/subgraphs/name/curvefi/curve · https://api.thegraph.com/subgraphs/name/balancer-labs/balancer-v2 · https://eth.llamarpc.com · https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest
SKILL.md Markdown · 384 行
外部支付服务未在文档声明 · https://api.1inch.io/ · https://api.0x.org/ · https://api.paraswap.io/ · https://api.coingecko.com/ · https://pro-api.coinmarketcap.com/ · https://min-api.cryptocompare.com/
references/monitoring-tools.md Markdown · 368 行
https://dexscreener.com/ · https://www.tradingview.com/ · https://apy.vision/ · https://dune.com/ · https://defillama.com/ · https://yields.llama.fi/pools · https://eigenphi.io/ · https://api.coingecko.com/api/v3/simple/price?ids=ethereum&vs_currencies=usd · https://rpc.ankr.com/eth · https://ethereum.publicnode.com · https://arb1.arbitrum.io/rpc · https://arbitrum.llamarpc.com · https://chainlist.org/
payment.py Python · 142 行
硬编码 API 密钥 · API_KEY = "sk_f03aa8f8bbcf79f7aa11c112d904780f22e62add1464e3c41a79600a451eb1d2" · https://skillpay.me
其他文件 · historical_analyzer.py · realtime_monitor.py · spread_tracker.py · _meta.json

安全亮点

代码结构清晰,无混淆或隐藏代码
无恶意行为迹象(无反向 shell、无数据外泄代码)
使用标准公开 API,数据来源可验证
价格监控逻辑合理,无异常算法
所有网络请求目标为合法服务
无文件系统越权访问
无环境变量敏感信息收割