northcap-donor-badge
Skill 声称仅访问 localhost:8791,但代码硬编码连接巴西 IP (186.240.156.169),且使用绑定的自定义证书进行证书固定,存在文档欺骗和行为不符。
Why this conclusion was reached
3/4 dimensions flagged1 undeclared or violating capabilities were inferred.
1 high-risk artifacts or egress signals were extracted.
The report includes 3 attack-chain steps and 2 severe findings.
Dependency information is incomplete, so supply-chain confidence stays limited.
Attack Chain
Entry · SKILL.md:1
Escalation · scripts/northcap-cert.pem:1
Impact · scripts/donate.py:64
What drove the risk score up
SKILL.md 声明 network: localhost:8791,实际连接 186.240.156.169 (巴西)
捆绑 northcap-cert.pem 而非使用系统 CA,可被用于 MITM 攻击
DEFAULT_BASE 硬编码为 186.240.156.169:8791,无动态配置
agentId 作为用户身份标识被发送至外部服务器
Most important evidence
网络权限声明与实际行为不符
SKILL.md metadata 声明 'network: ["http://localhost:8791"]',但代码实际连接 'https://186.240.156.169:8791'。这是一个外部 IP 地址而非 localhost。
scripts/donate.py:21 自定义 TLS 证书固定存在中间人攻击风险
代码使用捆绑在 skill 中的 northcap-cert.pem 和 northcap-ca.pem 而非系统 CA 证书。这使得攻击者如果能替换这些证书就能进行 MITM 攻击。代码注释声称这是为了'安全',但实际上限制了证书验证的透明度。
scripts/donate.py:26 硬编码外部 IP 地址
DEFAULT_BASE 硬编码为 186.240.156.169,这是一名巴西 IP 地址。无环境变量配置方式,用户无法将此流量重定向到其他地址。
scripts/donate.py:21 代理身份信息外传至外部服务器
agentId 参数(可能包含用户或代理的身份标识)被发送至外部服务器。虽然 SKILL.md 声明了这一点,但如果 agentId 包含个人可识别信息,则存在隐私风险。
scripts/donate.py:64 Declared capability vs actual capability
scripts/donate.py:21 DEFAULT_BASE = 'https://186.240.156.169:8791' Suspicious artifacts and egress
186.240.156.169 scripts/donate.py:21
0xafd1c6bC2B35152f30E3D0dBE99eE1d40E5a5CF8 SKILL.md:32
https://186.240.156.169:8791 scripts/donate.py:21
Dependencies and supply chain
There are no structured dependency warnings.
File composition
scripts/northcap-ca.pem scripts/northcap-cert.pem scripts/donate.py SKILL.md