安全决策报告
tunnel-proxy
工具声明与实现基本一致,远程Shell执行功能已声明但需警惕滥用风险,无凭证收割或隐蔽数据外泄
为什么得出这个结论
0/4 个维度触发 通过
声明与实际能力
声明资源与推断能力基本一致。
复核
隐藏执行与外联
提取到 3 个一般风险产物,需要结合上下文判断。
通过
攻击链与高危发现
没有形成明确的恶意路径。
复核
依赖与供应链卫生
发现 2 项需要关注的依赖或供应链线索。
风险分是怎么被拉高的
远程Shell执行能力已声明 +-10
SKILL.md明确声明grants remote shell access
PtySession可执行任意命令 +20
agent可通过PTY在用户机器上执行任意Shell命令,无命令白名单
文件传输覆盖全路径 +10
pull_file/push_file可访问用户文件系统任意路径
pip_download允许远程执行 +5
run_remote执行任意命令包括pip install
依赖pexpect版本未锁定 +5
requirements未声明版本锁定
无恶意行为证据 +-10
功能声明完整,无阴影功能、无凭证收割
最关键的证据
中危 代码执行
PtySession可执行任意Shell命令
PTYSession.run()方法将任意字符串作为命令通过TCP socket发送到远端执行,无命令白名单或权限控制。agent可执行任意命令包括:数据窃取、持久化植入、横向移动
scripts/pty_exec.py:76 考虑添加命令白名单限制,或要求用户明确审批每次命令执行
中危 敏感访问
文件传输无路径限制
pull_file()可下载用户系统任意路径文件,push_file()可上传任意文件到用户系统。攻击者可通过隧道传输敏感文件(如~/.ssh/id_rsa)
scripts/tunnel_ops.py:74 要求TunnelProxy服务端配置doc_root限制访问范围
低危 供应链
pexpect依赖无版本锁定
requirements未声明,pip install pexpect无版本控制,存在依赖替换风险
SKILL.md:9 创建requirements.txt锁定requests>=2.28.0 pexpect>=4.8.0
低危 文档欺骗
默认TunnelProxy地址指向外部服务
HOST默认指向frp.freefrp.net,agent可能连接到非用户拥有的TunnelProxy服务
scripts/tunnel_ops.py:12 要求用户必须显式提供TUNNEL_HOST,不使用默认值
声明能力 vs 实际能力
网络访问 通过
声明 READ
→ 推断 READ
fetch_url方法调用run_remote执行curl 命令执行 通过
声明 WRITE
→ 推断 WRITE
run_remote通过PTYSession执行任意命令:tunnel_ops.py:31 文件系统 通过
声明 READ/WRITE
→ 推断 READ/WRITE
pull_file/push_file通过HTTP传输文件:tunnel_ops.py:74,86 技能调用 通过
声明 NONE
→ 推断 NONE
— 可疑产物与外联
中危 外部 URL
https://httpbin.org/ip README.md:50
中危 外部 URL
https://arxiv.org/abs/2301.00001 README.md:71
中危 外部 URL
https://pypi.org⟨/parameter⟩ scripts/pty_exec.py:7
依赖与供应链
| 包名 | 版本 | 来源 | 漏洞 | 备注 |
|---|---|---|---|---|
| requests | * | pip | 否 | 无版本锁定 |
| pexpect | * | pip | 否 | 无版本锁定 |
文件构成
6 个文件 · 768 行
Python 3 个文件 · 444 行Markdown 3 个文件 · 324 行
需关注文件 · 4
scripts/pty_exec.py PtySession可执行任意Shell命令 · https://pypi.org⟨/parameter⟩
scripts/tunnel_ops.py 文件传输无路径限制 · 默认TunnelProxy地址指向外部服务
README.md https://httpbin.org/ip · https://arxiv.org/abs/2301.00001
SKILL.md pexpect依赖无版本锁定
其他文件 · http_transfer.py · protocol.md
安全亮点
SKILL.md明确声明为高风险工具(grants remote shell access)
所有功能(远程命令执行、文件传输、URL获取)均在文档中声明
无凭证收割代码(不遍历os.environ)
无base64编码或代码混淆
数据流向明确:用户本地TunnelProxy,无第三方数据外泄
代码结构清晰,无阴影功能