Scan Report
5 /100
baoyu-post-to-wechat
Posts content to WeChat Official Account (微信公众号) via API or Chrome CDP
这是一个合法的微信公众号文章发布工具,所有能力与声明一致,无恶意行为,无阴影功能。
Safe to install
此技能安全可用,可以直接使用。
Findings 4 items
| Severity | Finding | Location |
|---|---|---|
| Low | shell执行能力未在SKILL.md中声明 | scripts/wechat-api.ts:282:282 |
| Low | vendor目录包含未版本锁定的第三方依赖 | scripts/vendor/baoyu-md/package.json:1 |
| Info | Chrome启动参数包含反自动化检测标志 | scripts/cdp.ts:89:89 |
| Info | 预扫描标记的硬编码IP需确认 | scripts/vendor/baoyu-md/src/extensions/alert.ts:157 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | WRITE | WRITE | ✓ Aligned | SKILL.md: scripts/目录说明; scripts/wechat-api.ts: fs.readFileSync/writeFileSync |
| Network | READ | READ | ✓ Aligned | SKILL.md声明访问mp.weixin.qq.com和api.weixin.qq.com; scripts/wechat-api.ts:46-56 fetc… |
| Shell | NONE | WRITE | ✓ Aligned | scripts/wechat-api.ts:282 spawnSync调用npx bun; scripts/wechat-browser.ts: spawnSy… |
| Browser | WRITE | WRITE | ✓ Aligned | SKILL.md声明需要Chrome; scripts/cdp.ts: Chrome CDP协议控制浏览器 |
| Clipboard | WRITE | WRITE | ✓ Aligned | scripts/copy-to-clipboard.ts: Swift/AppKit复制图片; scripts/paste-from-clipboard.ts:… |
| Environment | READ | READ | ✓ Aligned | scripts/wechat-extend-config.ts: loadCredentials读取WECHAT_APP_ID/WECHAT_APP_SECRE… |
| Skill Invoke | READ | READ | ✓ Aligned | SKILL.md声明支持CLI工具和内部脚本调用 |
| Database | NONE | NONE | — | 无数据库访问 |
1 High 27 findings
High IP Address 硬编码 IP 地址
138.112.25.25 scripts/vendor/baoyu-md/src/extensions/alert.ts:157 Medium External URL 外部 URL
https://mp.weixin.qq.com SKILL.md:322 Medium External URL 外部 URL
https://api.weixin.qq.com/cgi-bin/draft/add?access_token=ACCESS_TOKEN SKILL.md:387 Medium External URL 外部 URL
https://gemini.google.com/app scripts/vendor/baoyu-chrome-cdp/src/index.test.ts:242 Medium External URL 外部 URL
https://softonit.ru/ scripts/vendor/baoyu-md/src/code-themes/1c-light.min.css:6 Medium External URL 外部 URL
https://highlightjs.org/ scripts/vendor/baoyu-md/src/code-themes/default.min.css:6 Medium External URL 外部 URL
https://creativecommons.org/licenses/by-sa/4.0 scripts/vendor/baoyu-md/src/code-themes/nnfx-dark.min.css:6 Medium External URL 外部 URL
http://www.w3.org/2000/svg scripts/vendor/baoyu-md/src/constants.ts:79 Medium External URL 外部 URL
https://marked.js.org/ scripts/vendor/baoyu-md/src/extensions/alert.ts:23 Medium External URL 外部 URL
https://groups.google.com/g/mathjax-users/c/zThKffrrCvE?pli=1 scripts/vendor/baoyu-md/src/extensions/katex.ts:26 Medium External URL 外部 URL
https://www.plantuml.com/plantuml scripts/vendor/baoyu-md/src/extensions/plantuml.ts:7 Medium External URL 外部 URL
https://plantuml.com/text-encoding scripts/vendor/baoyu-md/src/extensions/plantuml.ts:35 Medium External URL 外部 URL
https://talk.commonmark.org/t/proper-ruby-text-rb-syntax-support-in-markdown/2279 scripts/vendor/baoyu-md/src/extensions/ruby.ts:5 Medium External URL 外部 URL
https://www.w3.org/TR/ruby/ scripts/vendor/baoyu-md/src/extensions/ruby.ts:6 Medium External URL 外部 URL
https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/npm/highlightjs/$ scripts/vendor/baoyu-md/src/utils/languages.ts:80 Medium External URL 外部 URL
https://mp.weixin.qq.com/ scripts/wechat-agent-browser.ts:6 Medium External URL 外部 URL
https://api.weixin.qq.com/cgi-bin/token scripts/wechat-api.ts:54 Medium External URL 外部 URL
https://api.weixin.qq.com/cgi-bin/material/add_material scripts/wechat-api.ts:55 Medium External URL 外部 URL
https://api.weixin.qq.com/cgi-bin/draft/add scripts/wechat-api.ts:56 Medium External URL 外部 URL
https://mmbiz.qpic.cn scripts/wechat-api.ts:179 Info Email 邮箱地址
[email protected] scripts/vendor/baoyu-md/src/code-themes/1c-light.min.css:4 Info Email 邮箱地址
[email protected] scripts/vendor/baoyu-md/src/code-themes/agate.min.css:3 Info Email 邮箱地址
[email protected] scripts/vendor/baoyu-md/src/code-themes/an-old-hope.min.css:3 Info Email 邮箱地址
[email protected] scripts/vendor/baoyu-md/src/code-themes/default.min.css:4 Info Email 邮箱地址
[email protected] scripts/vendor/baoyu-md/src/code-themes/felipec.min.css:3 Info Email 邮箱地址
[email protected] scripts/vendor/baoyu-md/src/code-themes/nnfx-dark.min.css:4 Info Email 邮箱地址
[email protected] scripts/vendor/baoyu-md/src/code-themes/tokyo-night-dark.min.css:5 File Tree
125 files · 404.2 KB · 10772 lines TypeScript 40f · 8425L
CSS 78f · 1408L
Markdown 4f · 900L
JSON 3f · 39L
├─
▾
references
│ ├─
▾
config
│ │ └─
first-time-setup.md
Markdown
│ ├─
article-posting.md
Markdown
│ └─
image-text-posting.md
Markdown
├─
▾
scripts
│ ├─
▾
vendor
│ │ ├─
▾
baoyu-chrome-cdp
│ │ │ ├─
▾
src
│ │ │ │ ├─
index.test.ts
TypeScript
│ │ │ │ └─
index.ts
TypeScript
│ │ │ └─
package.json
JSON
│ │ └─
▾
baoyu-md
│ │ ├─
▾
src
│ │ │ ├─
▾
code-themes
│ │ │ │ ├─
1c-light.min.css
CSS
│ │ │ │ ├─
a11y-dark.min.css
CSS
│ │ │ │ ├─
a11y-light.min.css
CSS
│ │ │ │ ├─
agate.min.css
CSS
│ │ │ │ ├─
an-old-hope.min.css
CSS
│ │ │ │ ├─
androidstudio.min.css
CSS
│ │ │ │ ├─
arduino-light.min.css
CSS
│ │ │ │ ├─
arta.min.css
CSS
│ │ │ │ ├─
ascetic.min.css
CSS
│ │ │ │ ├─
atom-one-dark-reasonable.min.css
CSS
│ │ │ │ ├─
atom-one-dark.min.css
CSS
│ │ │ │ ├─
atom-one-light.min.css
CSS
│ │ │ │ ├─
brown-paper.min.css
CSS
│ │ │ │ ├─
codepen-embed.min.css
CSS
│ │ │ │ ├─
color-brewer.min.css
CSS
│ │ │ │ ├─
dark.min.css
CSS
│ │ │ │ ├─
default.min.css
CSS
│ │ │ │ ├─
devibeans.min.css
CSS
│ │ │ │ ├─
docco.min.css
CSS
│ │ │ │ ├─
far.min.css
CSS
│ │ │ │ ├─
felipec.min.css
CSS
│ │ │ │ ├─
foundation.min.css
CSS
│ │ │ │ ├─
github-dark-dimmed.min.css
CSS
│ │ │ │ ├─
github-dark.min.css
CSS
│ │ │ │ ├─
github.min.css
CSS
│ │ │ │ ├─
gml.min.css
CSS
│ │ │ │ ├─
googlecode.min.css
CSS
│ │ │ │ ├─
gradient-dark.min.css
CSS
│ │ │ │ ├─
gradient-light.min.css
CSS
│ │ │ │ ├─
grayscale.min.css
CSS
│ │ │ │ ├─
hybrid.min.css
CSS
│ │ │ │ ├─
idea.min.css
CSS
│ │ │ │ ├─
intellij-light.min.css
CSS
│ │ │ │ ├─
ir-black.min.css
CSS
│ │ │ │ ├─
isbl-editor-dark.min.css
CSS
│ │ │ │ ├─
isbl-editor-light.min.css
CSS
│ │ │ │ ├─
kimbie-dark.min.css
CSS
│ │ │ │ ├─
kimbie-light.min.css
CSS
│ │ │ │ ├─
lightfair.min.css
CSS
│ │ │ │ ├─
lioshi.min.css
CSS
│ │ │ │ ├─
magula.min.css
CSS
│ │ │ │ ├─
mono-blue.min.css
CSS
│ │ │ │ ├─
monokai-sublime.min.css
CSS
│ │ │ │ ├─
monokai.min.css
CSS
│ │ │ │ ├─
night-owl.min.css
CSS
│ │ │ │ ├─
nnfx-dark.min.css
CSS
│ │ │ │ ├─
nnfx-light.min.css
CSS
│ │ │ │ ├─
nord.min.css
CSS
│ │ │ │ ├─
obsidian.min.css
CSS
│ │ │ │ ├─
panda-syntax-dark.min.css
CSS
│ │ │ │ ├─
panda-syntax-light.min.css
CSS
│ │ │ │ ├─
paraiso-dark.min.css
CSS
│ │ │ │ ├─
paraiso-light.min.css
CSS
│ │ │ │ ├─
pojoaque.min.css
CSS
│ │ │ │ ├─
purebasic.min.css
CSS
│ │ │ │ ├─
qtcreator-dark.min.css
CSS
│ │ │ │ ├─
qtcreator-light.min.css
CSS
│ │ │ │ ├─
rainbow.min.css
CSS
│ │ │ │ ├─
routeros.min.css
CSS
│ │ │ │ ├─
school-book.min.css
CSS
│ │ │ │ ├─
shades-of-purple.min.css
CSS
│ │ │ │ ├─
srcery.min.css
CSS
│ │ │ │ ├─
stackoverflow-dark.min.css
CSS
│ │ │ │ ├─
stackoverflow-light.min.css
CSS
│ │ │ │ ├─
sunburst.min.css
CSS
│ │ │ │ ├─
tokyo-night-dark.min.css
CSS
│ │ │ │ ├─
tokyo-night-light.min.css
CSS
│ │ │ │ ├─
tomorrow-night-blue.min.css
CSS
│ │ │ │ ├─
tomorrow-night-bright.min.css
CSS
│ │ │ │ ├─
vs.min.css
CSS
│ │ │ │ ├─
vs2015.min.css
CSS
│ │ │ │ ├─
xcode.min.css
CSS
│ │ │ │ └─
xt256.min.css
CSS
│ │ │ ├─
▾
extensions
│ │ │ │ ├─
alert.ts
TypeScript
│ │ │ │ ├─
footnotes.ts
TypeScript
│ │ │ │ ├─
index.ts
TypeScript
│ │ │ │ ├─
infographic.ts
TypeScript
│ │ │ │ ├─
katex.ts
TypeScript
│ │ │ │ ├─
markup.ts
TypeScript
│ │ │ │ ├─
plantuml.ts
TypeScript
│ │ │ │ ├─
ruby.ts
TypeScript
│ │ │ │ ├─
slider.ts
TypeScript
│ │ │ │ └─
toc.ts
TypeScript
│ │ │ ├─
▾
themes
│ │ │ │ ├─
base.css
CSS
│ │ │ │ ├─
default.css
CSS
│ │ │ │ ├─
grace.css
CSS
│ │ │ │ ├─
modern.css
CSS
│ │ │ │ └─
simple.css
CSS
│ │ │ ├─
▾
utils
│ │ │ │ └─
languages.ts
TypeScript
│ │ │ ├─
cli.ts
TypeScript
│ │ │ ├─
constants.ts
TypeScript
│ │ │ ├─
content.test.ts
TypeScript
│ │ │ ├─
content.ts
TypeScript
│ │ │ ├─
document.test.ts
TypeScript
│ │ │ ├─
document.ts
TypeScript
│ │ │ ├─
extend-config.ts
TypeScript
│ │ │ ├─
html-builder.test.ts
TypeScript
│ │ │ ├─
html-builder.ts
TypeScript
│ │ │ ├─
images.test.ts
TypeScript
│ │ │ ├─
images.ts
TypeScript
│ │ │ ├─
index.ts
TypeScript
│ │ │ ├─
render.ts
TypeScript
│ │ │ ├─
renderer.test.ts
TypeScript
│ │ │ ├─
renderer.ts
TypeScript
│ │ │ ├─
themes.ts
TypeScript
│ │ │ └─
types.ts
TypeScript
│ │ └─
package.json
JSON
│ ├─
cdp.ts
TypeScript
│ ├─
check-permissions.ts
TypeScript
│ ├─
copy-to-clipboard.ts
TypeScript
│ ├─
md-to-wechat.ts
TypeScript
│ ├─
package.json
JSON
│ ├─
paste-from-clipboard.ts
TypeScript
│ ├─
wechat-agent-browser.ts
TypeScript
│ ├─
wechat-api.ts
TypeScript
│ ├─
wechat-article.ts
TypeScript
│ ├─
wechat-browser.ts
TypeScript
│ └─
wechat-extend-config.ts
TypeScript
└─
SKILL.md
Markdown
Dependencies 3 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
marked | ^12.0.0 | scripts/vendor/baoyu-md/package.json | No | 无版本锁定 |
sharp | ^0.33.0 | scripts/vendor/baoyu-md/package.json | No | 无版本锁定 |
baoyu-chrome-cdp | workspace | scripts/vendor/baoyu-chrome-cdp/package.json | No | 本地vendor包 |
Security Positives
✓ 声明与行为高度一致:所有文件系统、网络、浏览器、剪贴板操作均与文档声明的功能(微信公众号发布)相符
✓ 凭证处理安全:微信API凭证(app_id/app_secret)仅从env/配置文件读取后直接发送到微信官方API,无中间存储或外传
✓ 无恶意行为模式:未发现base64编码管道、eval()调用、裸IP请求、凭证收割、环境变量遍历、远程脚本下载等高危指标
✓ Chrome配置文件隔离:使用独立profile目录而非用户Chrome配置,防止会话混淆
✓ 多账户支持设计合理:支持通过EXTEND.md管理多个微信公众号账户,凭证按账户隔离
✓ 影子功能检测阴性:73.2%恶意skill的阴影功能在此skill中未发现
✓ 代码质量高:TypeScript类型安全,内部模块化(vendor/分第三方库),测试覆盖(baoyu-chrome-cdp/src/index.test.ts)