扫描报告
60 /100
asiasea-bi
金灯塔BI Skill - 企业异构系统动态映射与自然语言数据查询可视化
BI数据代理工具通过Base64编码将API凭证嵌入可公开访问的HTML报告中,绕过文档声明的凭证隔离机制,存在认证令牌外泄风险。
谨慎使用
立即下架。API凭证不应以任何形式嵌入客户端可访问的资源。应使用服务端代理模式或短期令牌方案。
攻击链 4 步
◎
入口 用户通过自然语言查询BI数据,触发handle函数
main.py:373⬡
提权 获取业务系统认证令牌并存入session
main.py:130⬡
提权 generate_html_report将API URL和auth headers base64编码嵌入HTML
main.py:167◉
影响 HTML报告上传至OSS公开访问,攻击者获取预览URL后可提取凭证调用业务API
main.py:112安全发现 4 项
| 严重性 | 安全发现 | 位置 |
|---|---|---|
| 高危 | API认证凭证通过Base64编码嵌入可公开访问的HTML 凭证窃取 | main.py:167-172 |
| 高危 | 文档声明与实际行为严重不符 文档欺骗 | SKILL.md:1-36 |
| 中危 | 代码混淆以规避人工审查 代码混淆 | main.py:167 |
| 中危 | 外部CDN依赖且无完整性校验 供应链 | main.py:167 |
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 网络访问 | READ | WRITE | ✗ 越权 | main.py:167-172 将API凭证编码后嵌入HTML,通过客户端fetch外传 |
| 文件系统 | NONE | READ | ✗ 越权 | main.py:25-45 读写.session_{user_id}.json存储认证令牌 |
11 项发现
中危 外部 URL 外部 URL
https://o.yayuit.cn/dw/api/auth/supported-systems main.py:84 中危 外部 URL 外部 URL
https://o.yayuit.cn/dw/api/system/api-registry?system_id= main.py:93 中危 外部 URL 外部 URL
https://o.yayuit.cn/dw/api/auth/system-token?system_id= main.py:102 中危 外部 URL 外部 URL
https://o.yayuit.cn/dw/api/skills/archive/upload main.py:112 中危 外部 URL 外部 URL
https://o.yayuit.cn/dw/api/skills/archive/publish main.py:125 中危 外部 URL 外部 URL
https://jindengta-archive.oss-cn-beijing.aliyuncs.com/theme/web/bi/echarts.min.js main.py:167 中危 外部 URL 外部 URL
https://e.asagroup.cn/asae-e/yearBudget/query main.py:598 中危 外部 URL 外部 URL
https://e.asagroup.cn/asae-e/bx main.py:609 中危 外部 URL 外部 URL
https://o.yayuit.cn/dw/api/system/api-registry skill.json:10 中危 外部 URL 外部 URL
https://o.yayuit.cn/dw/api/auth/system-token skill.json:11 提示 邮箱 邮箱地址
[email protected] README.md:32 目录结构
5 文件 · 41.8 KB · 779 行 Python 1f · 652L
Markdown 3f · 111L
JSON 1f · 16L
├─
LICENSE.md
Markdown
├─
main.py
Python
├─
README.md
Markdown
├─
skill.json
JSON
└─
SKILL.md
Markdown
依赖分析 2 项
| 包名 | 版本 | 来源 | 已知漏洞 | 备注 |
|---|---|---|---|---|
requests | * | pip | 否 | 第三方HTTP库,无版本锁定 |
jindengta-archive.oss-cn-beijing.aliyuncs.com/echarts.min.js | unknown | CDN | 否 | 外部CDN资源,无SRI校验 |
安全亮点
✓ 会话管理采用用户隔离,session文件名经过sanitize处理
✓ 时间解析支持多种自然语言表达,覆盖常用场景
✓ 错误处理较完善,有try-except和业务层code校验
✓ 使用类型提示增加代码可读性