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

扫描报告 · dsh-market/dsh-market

认证等级L2
验证状态registry-confirmed(有 registry 凭证证据)
验证方法未登记 structured verifiedBy
运行级实测未做运行级实测
内容锚git commit 3828a34c36ad · dsh-market/dsh-market · git ls-remote / clone 复现可对账
DIDdid:cha2a:package:dsh-market/dsh-market
身份锚点npm 未声明 GitHub 仓库——装前请自行核验来源
来源git
插件版本—
安装dsh plugin add github:dsh-market/dsh-market
扫描日期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

{'excessive_permissions': [{'file': 'dsh-market-main/client/client.js', 'line': 1584, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 2051, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 2068, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 2084, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 2103, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 2324, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 2351, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 2489, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 3451, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 6544, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 6616, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 6625, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 6634, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 7614, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 8562, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 8821, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 10620, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 10622, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 10624, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 10626, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 10631, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/client/client.js', 'line': 12686, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/scripts/sort-class-maps.mjs', 'line': 40, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/scripts/sort-class-maps.mjs', 'line': 45, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/scripts/sort-class-maps.mjs', 'line': 51, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/accelerate.ts', 'line': 127, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/accelerate.ts', 'line': 142, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/accelerate.ts', 'line': 144, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/accelerate.ts', 'line': 213, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/backup.ts', 'line': 524, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/catalog-local-match.ts', 'line': 19, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/check.ts', 'line': 499, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/check.ts', 'line': 615, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/check.ts', 'line': 629, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/check.ts', 'line': 670, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/check.ts', 'line': 1217, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/CommentsModal.tsx', 'line': 31, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 380, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 451, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 457, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 463, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 1468, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 2543, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 2774, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 4699, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 4701, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 4703, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 4713, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 4718, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 6403, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/market-data.ts', 'line': 675, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/market-data.ts', 'line': 697, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/market-data.ts', 'line': 718, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/market-data.ts', 'line': 739, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/market-data.ts', 'line': 1063, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/market-data.ts', 'line': 1098, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/client/market-data.ts', 'line': 1273, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/compatibility.ts', 'line': 61, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/compatibility.ts', 'line': 71, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/compatibility.ts', 'line': 149, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/dsh-cli.ts', 'line': 312, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/dsh-install.ts', 'line': 122, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/hot.ts', 'line': 175, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/hot.ts', 'line': 181, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/hot.ts', 'line': 833, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/hot.ts', 'line': 835, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/install.ts', 'line': 308, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/install.ts', 'line': 309, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/install.ts', 'line': 664, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/install.ts', 'line': 693, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/install.ts', 'line': 703, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/patch.ts', 'line': 164, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/patch.ts', 'line': 168, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/pnpm-compat.ts', 'line': 165, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/pnpm-compat.ts', 'line': 212, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/pnpm-compat.ts', 'line': 213, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/pnpm-compat.ts', 'line': 214, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/pnpm-compat.ts', 'line': 301, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/pnpm-compat.ts', 'line': 325, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/pnpm-compat.ts', 'line': 402, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/pnpm-compat.ts', 'line': 447, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/pnpm-compat.ts', 'line': 463, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/pnpm-compat.ts', 'line': 482, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/pnpm-compat.ts', 'line': 483, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/pnpm-compat.ts', 'line': 530, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/pnpm-compat.ts', 'line': 584, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 371, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 420, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 437, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 443, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 670, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 671, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 674, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 691, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 700, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 828, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 830, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 1098, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 1316, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 1319, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/profile.ts', 'line': 1324, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/recovery.ts', 'line': 207, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/recovery.ts', 'line': 219, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/recovery.ts', 'line': 236, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/restart.ts', 'line': 191, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/routes.ts', 'line': 979, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/routes.ts', 'line': 1329, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/snapshot.ts', 'line': 291, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 57, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 76, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 80, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 81, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 161, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 170, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 185, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 206, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 222, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 292, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 294, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 472, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 495, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 532, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 734, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/sources.ts', 'line': 847, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/store.ts', 'line': 52, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/themes.ts', 'line': 94, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/updates.ts', 'line': 83, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/updates.ts', 'line': 96, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/updates.ts', 'line': 99, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/updates.ts', 'line': 112, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/src/verify.ts', 'line': 231, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/client/comments.client.spec.ts', 'line': 50, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/client/market-section.client.spec.tsx', 'line': 6055, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/client/market-section.client.spec.tsx', 'line': 6066, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/client/market-section.client.spec.tsx', 'line': 6071, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/flows.spec.ts', 'line': 210, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/flows.spec.ts', 'line': 275, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/flows.spec.ts', 'line': 362, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/flows.spec.ts', 'line': 403, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/flows.spec.ts', 'line': 425, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/flows.spec.ts', 'line': 437, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/flows.spec.ts', 'line': 862, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/normalize-css-ids.spec.ts', 'line': 26, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/regions.spec.ts', 'line': 147, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/regions.spec.ts', 'line': 148, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/web/registry.ts', 'line': 52, 'match': 'execSync(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/web/scaffold.ts', 'line': 89, 'match': 'exec(', 'label': '命令执行'}, {'file': 'dsh-market-main/tests/web/scaffold.ts', 'line': 381, 'match': 'execSync(', 'label': '命令执行'}], 'data_exfiltration': [{'file': 'dsh-market-main/src/client/MarketSection.tsx', 'line': 4442, 'match': 'token source actually served the request', 'label': '凭据字段进入网络请求'}, {'file': 'dsh-market-main/src/gist.ts', 'line': 77, 'match': 'token used for a request', 'label': '凭据字段进入网络请求'}, {'file': 'dsh-market-main/src/gist.ts', 'line': 102, 'match': 'token for one request', 'label': '凭据字段进入网络请求'}, {'file': 'dsh-market-main/src/gist.ts', 'line': 136, 'match': 'token = await fetch', 'label': '凭据字段进入网络请求'}, {'file': 'dsh-market-main/tests/web/AUTHENTICATED-LANE.md', 'line': 3, 'match': 'token with Node `fetch', 'label': '凭据字段进入网络请求'}, {'file': 'dsh-market-main/tests/web/scaffold.spec.ts', 'line': 239, 'match': 'token=${token}` }, asFetch(fetch', 'label': '凭据字段进入网络请求'}], 'hardcoded_secrets': [{'file': 'dsh-market-main/tests/gist.spec.ts', 'line': 290, 'match': "token: 'body-token'", 'label': '明文凭据'}, {'file': 'dsh-market-main/tests/gist.spec.ts', 'line': 292, 'match': "token: 'env-token'", 'label': '明文凭据'}, {'file': 'dsh-market-main/tests/gist.spec.ts', 'line': 295, 'match': "token: 'gh-token'", 'label': '明文凭据'}, {'file': 'dsh-market-main/tests/log-persistence.spec.ts', 'line': 26, 'match': 'sk-abcdefgh12345678', 'label': 'OpenAI API key'}, {'file': 'dsh-market-main/tests/log-persistence.spec.ts', 'line': 36, 'match': "'sk-abcdefgh12345678'", 'label': 'OpenAI API key'}, {'file': 'dsh-market-main/tests/web/scaffold.spec.ts', 'line': 230, 'match': "token = 'never-print-this-process-token'", 'label': '明文凭据'}]}

mode

git-refresh

branch

main

2. 第三方复核(GuardDog 3.2.0)

未复核。

3. 依赖漏洞(OSV.dev)

未查询。