Trusted — Risk Score 5/100
Last scan:2 days ago Rescan
5 /100
Train Ticket Inquiry - 火车查询
支持站站、车次、余票查询,返回时刻、票价与余票,基于极速数据(JisuAPI)火车查询接口
火车票查询技能,代码行为与文档声明完全一致,无越权操作,无恶意行为。
Skill NameTrain Ticket Inquiry - 火车查询
Duration24.4s
Enginepi
Safe to install
无需阻止使用,可直接部署。建议将 requests 依赖写入 requirements.txt 并锁定版本。

Findings 1 items

Severity Finding Location
Low
第三方依赖未声明
train.py 依赖 requests 库但项目中无 requirements.txt、pyproject.toml 或 Pipfile 等依赖声明文件,且 requests 无版本锁定。
import requests
→ 创建 requirements.txt,内容:requests>=2.28.0
train.py:7
ResourceDeclaredInferredStatusEvidence
Network READ READ ✓ Aligned train.py:14-16 向 jisuapi.com 发送 GET 请求,文档已声明调用外部火车查询 API
Environment READ READ ✓ Aligned train.py:143 仅读取 JISU_API_KEY(通过 os.getenv),SKILL.md 已声明需要此环境变量
Filesystem NONE NONE 代码中无任何文件读写操作
Shell NONE NONE 无 subprocess、os.system 等 shell 执行调用
1 High 6 findings
🔑
High API Key 疑似硬编码凭证
API_KEY="your_appkey_here"
SKILL.md:25
🔗
Medium External URL 外部 URL
https://www.jisuapi.com/
SKILL.md:9
🔗
Medium External URL 外部 URL
https://www.jisuapi.com/api/train/
SKILL.md:18
🔗
Medium External URL 外部 URL
https://api.jisuapi.com/train/station2s
train.py:14
🔗
Medium External URL 外部 URL
https://api.jisuapi.com/train/line
train.py:15
🔗
Medium External URL 外部 URL
https://api.jisuapi.com/train/ticket
train.py:16

File Tree

2 files · 11.1 KB · 371 lines
Python 1f · 191L Markdown 1f · 180L
├─ 📝 SKILL.md Markdown 180L · 5.7 KB
└─ 🐍 train.py Python 191L · 5.3 KB

Dependencies 1 items

PackageVersionSourceKnown VulnsNotes
requests * pip No 无版本锁定,依赖文件未声明

Security Positives

✓ 文档与代码行为完全一致,无阴影功能
✓ 无 subprocess、eval、base64 解码等危险操作
✓ 无凭证收割、环境变量遍历、敏感路径访问
✓ 无数据外传,仅调用 jisuapi.com 火车查询 API
✓ 无隐藏指令(HTML 注释、隐蔽字符串等)
✓ API Key 通过环境变量注入,非硬编码
✓ 输入参数经过 basic validation(有非空检查)
✓ 代码结构清晰,3 个查询函数各自独立,错误处理完善