安全决策报告

asoul-support

合法的B站粉丝应援工具,存在一处未声明的Discord通知功能(阴影功能),但不涉及凭证外泄或恶意行为。

安装决策优先 来源: ClawHub 扫描时间: 2026/6/24
文件 14
IOC 44
越权项 0
发现 3

为什么得出这个结论

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

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

阻止
隐藏执行与外联

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

通过
攻击链与高危发现

没有形成明确的恶意路径。

通过
依赖与供应链卫生

依赖结构存在,但暂未看到明显高危告警。

风险分是怎么被拉高的

未声明的阴影功能 +15

heartbeat.py中的_notify()函数通过subprocess调用openclaw发送Discord通知,但SKILL.md未声明此功能

硬编码IP地址 +5

131.0.0.0是TEST-NET保留地址,用于User-Agent字符串,非真实连接目标

凭证本地存储 +2

Cookie存储在.cookies.json(权限0600),虽未加密但为常见做法,无外传行为

最关键的证据

中危 文档欺骗

Discord通知功能未在文档中声明

heartbeat.py中的_notify()函数会通过subprocess调用openclaw向Discord发送开播/下播通知,但SKILL.md未提及此功能。目标用户ID 1479415368249507881硬编码在代码中。

scripts/heartbeat.py:31
在SKILL.md的推荐定时任务部分说明会自动发送Discord通知,或移除此功能
低危 凭证窃取

Cookie明文存储在本地文件

SESSDATA和bili_jct以明文JSON格式存储在.cookies.json,权限设置为0600。虽然是常见做法,但理想情况下应使用系统密钥链。

scripts/checkin.py:45
考虑使用keyring或系统密钥链存储凭证,而非明文文件
提示 敏感访问

访问本地日志目录

daily_summary.py读取~/.openclaw/logs/asoul_activity.jsonl,heartbeat.py写入同一文件。这是正常功能。

scripts/daily_summary.py:14
无需操作,这是预期行为

声明能力 vs 实际能力

文件系统 通过
声明 READ
→
推断 WRITE
SKILL.md声明文件操作,代码读写.cookies.json
网络访问 通过
声明 READ
→
推断 READ
仅调用B站官方API,无未声明网络行为
命令执行 通过
声明 NONE
→
推断 WRITE
heartbeat.py:35调用subprocess发送Discord通知

可疑产物与外联

高危 IP 地址
131.0.0.0

scripts/checkin.py:18

中危 外部 URL
https://openclaw.ai

PROMO.md:5

中危 外部 URL
https://docs.openclaw.ai

PROMO.md:17

中危 外部 URL
https://www.bilibili.com

PROMO.md:27

中危 外部 URL
https://www.bilibili.com」

PROMO_XHS.txt:44

中危 外部 URL
https://clawhub.ai/skills/asoul-support

README.md:12

中危 外部 URL
https://img.shields.io/badge/version-4.0.1-blue

README.md:17

中危 外部 URL
https://img.shields.io/badge/python-3.9+-green

README.md:18

中危 外部 URL
https://img.shields.io/badge/license-MIT-orange

README.md:19

中危 外部 URL
https://space.bilibili.com/672328094/

README.md:81

中危 外部 URL
https://www.bilibili.com**,找到

README.md:131

中危 外部 URL
https://live.bilibili.com/22637261

README.md:181

依赖与供应链

包名版本来源漏洞备注
无外部依赖 N/A Python标准库 否 零外部依赖

文件构成

14 个文件 · 2869 行
Python 5 个文件 · 2061 行Markdown 5 个文件 · 560 行Text 2 个文件 · 238 行JSON 2 个文件 · 10 行
需关注文件 · 8
scripts/heartbeat.py Python · 674 行
Discord通知功能未在文档中声明 · https://api.live.bilibili.com/room/v1/Room/get_info?room_id= · https://api.live.bilibili.com/xlive/web-room/v1/index/roomEntryAction · https://live-trace.bilibili.com/xlive/data-interface/v1/heartbeat/mobileHeartBeat · https://api.live.bilibili.com/User/userOnlineHeart · [email protected]
scripts/videos.py Python · 493 行
https://api.bilibili.com/x/web-interface/nav · https://api.bilibili.com/x/space/wbi/arc/search? · https://api.bilibili.com/x/web-interface/archive/like · https://api.bilibili.com/x/web-interface/coin/add · https://api.bilibili.com/x/v3/fav/resource/deal · https://api.bilibili.com/x/v3/fav/folder/created/list-all?up_mid= · https://www.bilibili.com/video/
scripts/checkin.py Python · 408 行
Cookie明文存储在本地文件 · 131.0.0.0 · https://api.live.bilibili.com/msg/send · https://api.live.bilibili.com/room/v1/Room/get_status_info_by_uids · https://live.bilibili.com · https://api.live.bilibili.com/xlive/app-ucenter/v1/fansMedal/panel?page= · https://api.live.bilibili.com/xlive/web-room/v1/fansMedal/wear · https://live.bilibili.com/
scripts/dynamics.py Python · 365 行
https://space.bilibili.com/ · https://api.bilibili.com/x/polymer/web-dynamic/v1/feed/space?host_mid= · https://api.vc.bilibili.com/dynamic_like/v1/dynamic_like/thumb · https://t.bilibili.com · https://t.bilibili.com/
README.md Markdown · 220 行
https://clawhub.ai/skills/asoul-support · https://img.shields.io/badge/version-4.0.1-blue · https://img.shields.io/badge/python-3.9+-green · https://img.shields.io/badge/license-MIT-orange · https://space.bilibili.com/672328094/ · https://www.bilibili.com**,找到 · https://live.bilibili.com/22637261 · https://space.bilibili.com/672328094 · https://live.bilibili.com/22632424 · https://space.bilibili.com/672353429 · https://live.bilibili.com/22625027 · https://space.bilibili.com/672342685 · https://live.bilibili.com/30849777 · https://space.bilibili.com/3537115310721181 · https://live.bilibili.com/30858592 · https://space.bilibili.com/3537115310721781
PROMO_XHS.txt Text · 144 行
https://www.bilibili.com」
scripts/daily_summary.py Python · 121 行
访问本地日志目录
PROMO.md Markdown · 84 行
https://openclaw.ai · https://docs.openclaw.ai · https://www.bilibili.com
其他文件 · persona.md · SKILL.md · text2speech.md · PROMO_XHS_V4.txt

安全亮点

纯Python标准库实现,零外部依赖,无供应链风险
所有网络请求仅发往B站官方API(api.bilibili.com, live.bilibili.com等)
凭证(SESSDATA, bili_jct)仅用于B站API认证,无外传行为
代码结构清晰,注释完整,无混淆代码
使用WBI签名实现B站API调用,无需Node.js依赖
Cookie文件权限设置为0600,权限控制合理