← 返回扫描报告总表 · ← dshlib 图书馆

扫描报告 · omdsh-dev/DSH-better-sidebar

认证等级L2
验证状态registry-confirmed(有 registry 凭证证据)
验证方法未登记 structured verifiedBy
运行级实测未做运行级实测
内容锚git commit 6fbfeedc0189 · omdsh-dev/DSH-better-sidebar · git ls-remote / clone 复现可对账
DIDdid:cha2a:package:omdsh-dev/DSH-better-sidebar
身份锚点npm 未声明 GitHub 仓库——装前请自行核验来源
来源git
插件版本—
安装dsh plugin add github:omdsh-dev/DSH-better-sidebar
扫描日期2026-08-27(36 天前)
扫描层级静态扫描(自研规则 + GuardDog 复核 + OSV 依赖)
扫描器版本dshlib-scan v0.1 · GuardDog 3.2.0 · OSV.dev

自研扫描:⚠️ 待审 · GuardDog 复核:未扫描 · OSV 依赖:未扫描

⚠️ 结论待复核:上次扫描距今 36 天(2026-08-27),插件或运行时更新后结论可能过期,建议重新扫描后再安装。
语义:扫描是提示信号,非安全审查。✅ 通过=无命中;⚠️ 待审=有命中需人工判断;❌ 失败=无法扫描。人工确认恶意→下架。本页全部内容由 dshlib 数据库派生(验证报告 可核对证据)。认证等级与依赖漏洞正交:L4 认证覆盖插件包内容/来源/生态,不覆盖依赖安全(见收录与验证标准)。结论有有效期:插件或运行时更新后,本页结论可能过期(>30 天将标注待复核)。本库能力与边界:披露页。

1. 自研扫描(dshlib-scan)

verified

True

findings

{'data_exfiltration': [{'file': 'DSH-better-sidebar-main/AGENTS.md', 'line': 77, 'match': 'token 交换不能走 Node 全局 `fetch', 'label': '凭据字段进入网络请求'}, {'file': 'DSH-better-sidebar-main/AGENTS.md', 'line': 81, 'match': 'token 换 cookie 的 303 会丢弃同 URL 其它 query 参数)。插件 `/sidebar/*` 路由不受影响,同源 fetch', 'label': '凭据字段进入网络请求'}, {'file': 'DSH-better-sidebar-main/CHANGELOG_EN.md', 'line': 236, 'match': 'token — local dev servers (Vite etc.) need a real origin for their module/HMR/fe', 'label': '凭据字段进入网络请求'}, {'file': 'DSH-better-sidebar-main/tests/e2e/host.ts', 'line': 64, 'match': "token through Playwright's own request", 'label': '凭据字段进入网络请求'}], 'dangerous_commands': [{'file': 'DSH-better-sidebar-main/CHANGELOG_EN.md', 'line': 275, 'match': 'shutdown', 'label': '系统关机'}], 'excessive_permissions': [{'file': 'DSH-better-sidebar-main/docs/plans/2026-09-09-terminal-wait-banner-plan.md', 'line': 292, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/bundle-route.ts', 'line': 85, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/diff/highlight.ts', 'line': 365, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/diff/highlight.ts', 'line': 392, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/diff/rows.ts', 'line': 304, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/markdown-html.ts', 'line': 238, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/markdown-html.ts', 'line': 245, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/markdown-html.ts', 'line': 281, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/markdown-images.ts', 'line': 32, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/markdown-images.ts', 'line': 125, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/mermaid-blocks.ts', 'line': 79, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/mermaid-blocks.ts', 'line': 101, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/redact.ts', 'line': 108, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/sidechat-transcript.ts', 'line': 295, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/sidechat-transcript.ts', 'line': 299, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/state.ts', 'line': 118, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/theme.ts', 'line': 50, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/client/theme.ts', 'line': 61, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/src/session-path.ts', 'line': 31, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/agent-opens.spec.ts', 'line': 23, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/agent-opens.spec.ts', 'line': 142, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/agent-opens.spec.ts', 'line': 158, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/agent-opens.spec.ts', 'line': 177, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/agent-opens.spec.ts', 'line': 188, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/agent-opens.spec.ts', 'line': 196, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/agent-opens.spec.ts', 'line': 203, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/agent-opens.spec.ts', 'line': 210, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/agent-opens.spec.ts', 'line': 219, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/agent-opens.spec.ts', 'line': 220, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/manifest-consistency.spec.ts', 'line': 79, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/manifest-consistency.spec.ts', 'line': 105, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/sandbox-views.spec.tsx', 'line': 46, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/sandbox-views.spec.tsx', 'line': 76, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/sandbox-views.spec.tsx', 'line': 90, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/sandbox-views.spec.tsx', 'line': 131, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/theme.spec.ts', 'line': 171, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/theme.spec.ts', 'line': 178, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/theme.spec.ts', 'line': 190, 'match': 'exec(', 'label': '命令执行'}, {'file': 'DSH-better-sidebar-main/tests/theme.spec.ts', 'line': 201, 'match': 'exec(', 'label': '命令执行'}], 'hardcoded_secrets': [{'file': 'DSH-better-sidebar-main/tests/changes-tab.spec.tsx', 'line': 344, 'match': 'sk-abcdefghijklmnop', 'label': 'OpenAI API key'}, {'file': 'DSH-better-sidebar-main/tests/changes-tab.spec.tsx', 'line': 363, 'match': "'sk-abcdefghijklmnop'", 'label': 'OpenAI API key'}, {'file': 'DSH-better-sidebar-main/tests/changes-tab.spec.tsx', 'line': 374, 'match': "'sk-abcdefghijklmnop'", 'label': 'OpenAI API key'}, {'file': 'DSH-better-sidebar-main/tests/changes-tab.spec.tsx', 'line': 379, 'match': "'sk-abcdefghijklmnop'", 'label': 'OpenAI API key'}, {'file': 'DSH-better-sidebar-main/tests/redact.spec.ts', 'line': 33, 'match': 'sk-1234567890abcdef', 'label': 'OpenAI API key'}, {'file': 'DSH-better-sidebar-main/tests/redact.spec.ts', 'line': 37, 'match': "'sk-1234567890abcdef'", 'label': 'OpenAI API key'}, {'file': 'DSH-better-sidebar-main/tests/redact.spec.ts', 'line': 44, 'match': 'sk-abcdefghijklmnop123456', 'label': 'OpenAI API key'}, {'file': 'DSH-better-sidebar-main/tests/redact.spec.ts', 'line': 45, 'match': "'sk-abcdefghijklmnop123456'", 'label': 'OpenAI API key'}, {'file': 'DSH-better-sidebar-main/tests/redact.spec.ts', 'line': 44, 'match': 'AKIAIOSFODNN7EXAMPLE', 'label': 'AWS access key'}, {'file': 'DSH-better-sidebar-main/tests/redact.spec.ts', 'line': 46, 'match': 'AKIAIOSFODNN7EXAMPLE', 'label': 'AWS access key'}, {'file': 'DSH-better-sidebar-main/tests/redact.spec.ts', 'line': 64, 'match': 'ghp_abcdefghijklmnopqrst', 'label': 'GitHub token'}, {'file': 'DSH-better-sidebar-main/tests/redact.spec.ts', 'line': 35, 'match': "api_key: ' + REDACTED)\n    expect(out).toContain('", 'label': '明文凭据'}, {'file': 'DSH-better-sidebar-main/tests/redact.spec.ts', 'line': 64, 'match': "token: ' + REDACTED)\n    expect(redactContentText('", 'label': '明文凭据'}, {'file': 'DSH-better-sidebar-main/tests/redact.spec.ts', 'line': 65, 'match': "secret: ' + REDACTED)\n  })\n})\n\ndescribe('", 'label': '明文凭据'}]}

mode

git-refresh

branch

main

2. 第三方复核(GuardDog 3.2.0)

未复核。

3. 依赖漏洞(OSV.dev)

未查询。