chainwall 0.1.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +411 -105
- package/dist/auditor/mcp-detector.d.ts +1 -0
- package/dist/auditor/mcp-detector.d.ts.map +1 -1
- package/dist/auditor/mcp-detector.js +5 -3
- package/dist/auditor/mcp-detector.js.map +1 -1
- package/dist/auditor/mcp-poison-detector.d.ts +19 -0
- package/dist/auditor/mcp-poison-detector.d.ts.map +1 -0
- package/dist/auditor/mcp-poison-detector.js +295 -0
- package/dist/auditor/mcp-poison-detector.js.map +1 -0
- package/dist/auditor/miner-detector.d.ts +20 -0
- package/dist/auditor/miner-detector.d.ts.map +1 -0
- package/dist/auditor/miner-detector.js +100 -0
- package/dist/auditor/miner-detector.js.map +1 -0
- package/dist/auditor/remediation.d.ts +4 -0
- package/dist/auditor/remediation.d.ts.map +1 -1
- package/dist/auditor/remediation.js +42 -0
- package/dist/auditor/remediation.js.map +1 -1
- package/dist/auditor/types.d.ts +4 -0
- package/dist/auditor/types.d.ts.map +1 -1
- package/dist/commands/audit.d.ts.map +1 -1
- package/dist/commands/audit.js +20 -0
- package/dist/commands/audit.js.map +1 -1
- package/dist/commands/scan.d.ts.map +1 -1
- package/dist/commands/scan.js +7 -0
- package/dist/commands/scan.js.map +1 -1
- package/dist/mcp-server/index.js +0 -0
- package/dist/reporter/audit-report.d.ts.map +1 -1
- package/dist/reporter/audit-report.js +50 -0
- package/dist/reporter/audit-report.js.map +1 -1
- package/dist/reporter/risk-scorer.d.ts.map +1 -1
- package/dist/reporter/risk-scorer.js +8 -0
- package/dist/reporter/risk-scorer.js.map +1 -1
- package/dist/reporter/shared.d.ts.map +1 -1
- package/dist/reporter/shared.js +10 -6
- package/dist/reporter/shared.js.map +1 -1
- package/dist/rules/index.d.ts +1 -0
- package/dist/rules/index.d.ts.map +1 -1
- package/dist/rules/index.js +3 -1
- package/dist/rules/index.js.map +1 -1
- package/dist/rules/mining-rules.d.ts +7 -0
- package/dist/rules/mining-rules.d.ts.map +1 -0
- package/dist/rules/mining-rules.js +239 -0
- package/dist/rules/mining-rules.js.map +1 -0
- package/dist/rules/skill-rules.d.ts +10 -0
- package/dist/rules/skill-rules.d.ts.map +1 -0
- package/dist/rules/skill-rules.js +293 -0
- package/dist/rules/skill-rules.js.map +1 -0
- package/dist/rules/types.d.ts +1 -1
- package/dist/rules/types.d.ts.map +1 -1
- package/dist/scanner/filesystem-scanner.d.ts.map +1 -1
- package/dist/scanner/filesystem-scanner.js +21 -1
- package/dist/scanner/filesystem-scanner.js.map +1 -1
- package/dist/scanner/injection-scanner.d.ts +1 -0
- package/dist/scanner/injection-scanner.d.ts.map +1 -1
- package/dist/scanner/injection-scanner.js +1 -1
- package/dist/scanner/injection-scanner.js.map +1 -1
- package/dist/scanner/skill-scanner.d.ts +18 -0
- package/dist/scanner/skill-scanner.d.ts.map +1 -0
- package/dist/scanner/skill-scanner.js +244 -0
- package/dist/scanner/skill-scanner.js.map +1 -0
- package/dist/tui/components/FileLink.d.ts +12 -0
- package/dist/tui/components/FileLink.d.ts.map +1 -0
- package/dist/tui/components/FileLink.js +13 -0
- package/dist/tui/components/FileLink.js.map +1 -0
- package/dist/tui/components/Footer.d.ts.map +1 -1
- package/dist/tui/components/Footer.js +45 -30
- package/dist/tui/components/Footer.js.map +1 -1
- package/dist/tui/components/RemediationMenu.d.ts.map +1 -1
- package/dist/tui/components/RemediationMenu.js +2 -1
- package/dist/tui/components/RemediationMenu.js.map +1 -1
- package/dist/tui/components/Table.d.ts +1 -1
- package/dist/tui/components/Table.d.ts.map +1 -1
- package/dist/tui/components/Table.js +3 -9
- package/dist/tui/components/Table.js.map +1 -1
- package/dist/tui/educational.d.ts.map +1 -1
- package/dist/tui/educational.js +10 -0
- package/dist/tui/educational.js.map +1 -1
- package/dist/tui/hooks/useAudit.d.ts.map +1 -1
- package/dist/tui/hooks/useAudit.js +17 -0
- package/dist/tui/hooks/useAudit.js.map +1 -1
- package/dist/tui/hooks/useHookStatus.d.ts.map +1 -1
- package/dist/tui/hooks/useHookStatus.js +24 -3
- package/dist/tui/hooks/useHookStatus.js.map +1 -1
- package/dist/tui/hooks/useScan.d.ts +2 -2
- package/dist/tui/hooks/useScan.d.ts.map +1 -1
- package/dist/tui/hooks/useScan.js +12 -2
- package/dist/tui/hooks/useScan.js.map +1 -1
- package/dist/tui/screens/AuditPanel.d.ts.map +1 -1
- package/dist/tui/screens/AuditPanel.js +75 -7
- package/dist/tui/screens/AuditPanel.js.map +1 -1
- package/dist/tui/screens/LogsPanel.d.ts.map +1 -1
- package/dist/tui/screens/LogsPanel.js +27 -21
- package/dist/tui/screens/LogsPanel.js.map +1 -1
- package/dist/tui/screens/OverviewPanel.js +1 -1
- package/dist/tui/screens/OverviewPanel.js.map +1 -1
- package/dist/tui/screens/ScanPanel.d.ts.map +1 -1
- package/dist/tui/screens/ScanPanel.js +4 -4
- package/dist/tui/screens/ScanPanel.js.map +1 -1
- package/dist/tui/screens/ScanResultsPanel.d.ts.map +1 -1
- package/dist/tui/screens/ScanResultsPanel.js +70 -25
- package/dist/tui/screens/ScanResultsPanel.js.map +1 -1
- package/dist/tui/screens/SettingsPanel.d.ts.map +1 -1
- package/dist/tui/screens/SettingsPanel.js +3 -2
- package/dist/tui/screens/SettingsPanel.js.map +1 -1
- package/dist/tui/theme.d.ts +2 -1
- package/dist/tui/theme.d.ts.map +1 -1
- package/dist/tui/theme.js +2 -1
- package/dist/tui/theme.js.map +1 -1
- package/install.sh +3 -2
- package/package.json +15 -5
- package/patterns/cryptojacking.yaml +198 -0
- package/patterns/skill-threats.yaml +183 -0
- package/rules/SECURITY-RULES.md +50 -3
- package/skill/llm-antivirus/SKILL.md +4 -0
|
@@ -19,20 +19,14 @@ export function Table({ columns, data, selectedIndex, height, keyExtractor, empt
|
|
|
19
19
|
const visible = data.slice(visibleStart, visibleEnd);
|
|
20
20
|
const aboveCount = visibleStart;
|
|
21
21
|
const belowCount = data.length - visibleEnd;
|
|
22
|
-
return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Box, {
|
|
23
|
-
const w = col.width === 'flex' ? undefined : col.width;
|
|
24
|
-
return (_jsx(Box, { width: w, flexGrow: col.width === 'flex' ? 1 : 0, children: _jsx(Text, { color: THEME.title, bold: true, children: typeof w === 'number' ? truncate(col.header, w) : col.header }) }, ci));
|
|
25
|
-
}) }), aboveCount > 0 && (_jsxs(Text, { color: THEME.muted, children: [" ", ICONS.scrollUp, " ", aboveCount, " more above"] })), visible.map((item, i) => {
|
|
22
|
+
return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { children: [_jsx(Box, { width: 2, children: _jsx(Text, { children: " " }) }), columns.map((col, ci) => (_jsx(Box, { width: col.width, marginLeft: ci > 0 ? 1 : 0, children: _jsx(Text, { color: THEME.title, bold: true, children: truncate(col.header, col.width) }) }, ci)))] }), aboveCount > 0 && (_jsxs(Text, { color: THEME.muted, children: [" ", ICONS.scrollUp, " ", aboveCount, " more above"] })), visible.map((item, i) => {
|
|
26
23
|
const realIndex = visibleStart + i;
|
|
27
24
|
const selected = realIndex === selectedIndex;
|
|
28
25
|
// Spanning row (e.g. category header)
|
|
29
26
|
if (spanningRow?.(item, realIndex)) {
|
|
30
|
-
return (
|
|
27
|
+
return (_jsxs(Box, { backgroundColor: selected ? THEME.rowHighlight : undefined, children: [_jsxs(Text, { color: selected ? THEME.rowCursor : undefined, children: [selected ? ICONS.arrow : ' ', " "] }), spanningRowRender?.(item, realIndex, selected)] }, keyExtractor(item, realIndex)));
|
|
31
28
|
}
|
|
32
|
-
return (
|
|
33
|
-
const w = col.width === 'flex' ? undefined : col.width;
|
|
34
|
-
return (_jsx(Box, { width: w, flexGrow: col.width === 'flex' ? 1 : 0, children: col.render(item, selected) }, ci));
|
|
35
|
-
}) }, keyExtractor(item, realIndex)));
|
|
29
|
+
return (_jsxs(Box, { backgroundColor: selected ? THEME.rowHighlight : undefined, children: [_jsx(Box, { width: 2, children: _jsx(Text, { color: selected ? THEME.rowCursor : undefined, children: selected ? ICONS.arrow : ' ' }) }), columns.map((col, ci) => (_jsx(Box, { width: col.width, marginLeft: ci > 0 ? 1 : 0, children: col.render(item, selected) }, ci)))] }, keyExtractor(item, realIndex)));
|
|
36
30
|
}), belowCount > 0 && (_jsxs(Text, { color: THEME.muted, children: [" ", ICONS.scrollDown, " ", belowCount, " more below"] }))] }));
|
|
37
31
|
}
|
|
38
32
|
//# sourceMappingURL=Table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../../../src/tui/components/Table.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAoB3C,SAAS,QAAQ,CAAC,IAAY,EAAE,QAAgB;IAC9C,IAAI,IAAI,CAAC,MAAM,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC;IACzC,IAAI,QAAQ,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAClD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC;AAChD,CAAC;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC;AAEpB,MAAM,UAAU,KAAK,CAAI,EACvB,OAAO,EACP,IAAI,EACJ,aAAa,EACb,MAAM,EACN,YAAY,EACZ,YAAY,GAAG,WAAW,EAC1B,WAAW,EACX,iBAAiB,GACH;IACd,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,UAAU,YAAG,YAAY,GAAQ,CAAC;IAC9D,CAAC;IAED,wBAAwB;IACxB,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CACvE,CAAC;IACF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAAC,CAAC;IAChE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,YAAY,CAAC;IAChC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC;IAE5C,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aAEzB,KAAC,GAAG,IAAC,
|
|
1
|
+
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../../../src/tui/components/Table.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"educational.d.ts","sourceRoot":"","sources":["../../src/tui/educational.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,QAAQ,EAAE;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB,
|
|
1
|
+
{"version":3,"file":"educational.d.ts","sourceRoot":"","sources":["../../src/tui/educational.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,QAAQ,EAAE;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB,CAwDA,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,WAAW,EAAE;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,CAmBA,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,QAAQ,EAAE;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB,CAiBA,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQ5D,CAAC;AAEF;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE;IAAE,WAAW,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,EAAE,SAAS,EAAE;IAAE,IAAI,EAAE;QAAE,WAAW,EAAE,WAAW,CAAA;KAAE,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;CAAE,EAAE,GAAG,MAAM,GAAG,IAAI,CAmB1L"}
|
package/dist/tui/educational.js
CHANGED
|
@@ -39,6 +39,16 @@ export const CATEGORY_EXPLAINERS = {
|
|
|
39
39
|
aiImpact: 'Anyone (or any AI) with a seed phrase or wallet key can drain funds irreversibly. There is no recovery.',
|
|
40
40
|
action: 'Move to a hardware wallet immediately. Never store seed phrases in files.',
|
|
41
41
|
},
|
|
42
|
+
skill_threat: {
|
|
43
|
+
risk: 'Malicious payloads hidden in AI skill/instruction files (SKILL.md, AGENTS.md, etc.).',
|
|
44
|
+
aiImpact: 'AI agents read these files as trusted instructions. Embedded shell commands, exfiltration payloads, or obfuscated code execute with your permissions.',
|
|
45
|
+
action: 'Review flagged instruction files. Remove any embedded shell commands, external URLs, or obfuscated content.',
|
|
46
|
+
},
|
|
47
|
+
cryptojacking: {
|
|
48
|
+
risk: 'Cryptocurrency mining code, pool URLs, miner binaries, or mining configs.',
|
|
49
|
+
aiImpact: 'Mining software consumes CPU/GPU resources, increases costs, and may indicate a compromised system.',
|
|
50
|
+
action: 'Remove mining software and configs. Check for unauthorized processes. Investigate how it was installed.',
|
|
51
|
+
},
|
|
42
52
|
permission: {
|
|
43
53
|
risk: 'Files with overly permissive access (e.g., 0644 on an SSH key).',
|
|
44
54
|
aiImpact: 'Other processes — including AI tools running as your user — can read these files freely.',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"educational.js","sourceRoot":"","sources":["../../src/tui/educational.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"educational.js","sourceRoot":"","sources":["../../src/tui/educational.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAudit.d.ts","sourceRoot":"","sources":["../../../src/tui/hooks/useAudit.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAG1D,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AAE1F,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,UAAU,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,YAAY,EAAE,MAAM,CAAC;CACtB;AAiDD,wBAAgB,QAAQ;wBAYsB,OAAO,GAAG,SAAS,GAAG,MAAM;;;WApEjE,UAAU;cACP,MAAM;iBACH,MAAM;YACX,WAAW,GAAG,IAAI;WACnB,MAAM,GAAG,IAAI;0BACE,MAAM,GAAG,IAAI;kBACrB,MAAM;
|
|
1
|
+
{"version":3,"file":"useAudit.d.ts","sourceRoot":"","sources":["../../../src/tui/hooks/useAudit.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAG1D,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AAE1F,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,UAAU,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,YAAY,EAAE,MAAM,CAAC;CACtB;AAiDD,wBAAgB,QAAQ;wBAYsB,OAAO,GAAG,SAAS,GAAG,MAAM;;;WApEjE,UAAU;cACP,MAAM;iBACH,MAAM;YACX,WAAW,GAAG,IAAI;WACnB,MAAM,GAAG,IAAI;0BACE,MAAM,GAAG,IAAI;kBACrB,MAAM;EA+SrB"}
|
|
@@ -177,11 +177,18 @@ export function useAudit() {
|
|
|
177
177
|
// Quick mode: tools + env only
|
|
178
178
|
setState((s) => ({ ...s, progress: 50, currentFile: 'Skipping filesystem scan (quick mode)...' }));
|
|
179
179
|
}
|
|
180
|
+
// Skill/instruction file threat scan
|
|
181
|
+
setState((s) => ({ ...s, progress: 68, currentFile: 'Skill file scan...' }));
|
|
182
|
+
const { scanSkillFiles } = await import('../../scanner/skill-scanner.js');
|
|
183
|
+
for await (const finding of scanSkillFiles(mode === 'project' ? process.cwd() : undefined, signal)) {
|
|
184
|
+
findings.push(finding);
|
|
185
|
+
}
|
|
180
186
|
setState((s) => ({ ...s, progress: 70, currentFile: 'MCP/CLI detection...' }));
|
|
181
187
|
const { detectMCPServers } = await import('../../auditor/mcp-detector.js');
|
|
182
188
|
const mcpResult = detectMCPServers();
|
|
183
189
|
const mcpServers = mcpResult.servers;
|
|
184
190
|
const mcpConfigFiles = mcpResult.configFiles;
|
|
191
|
+
const mcpDefinitions = mcpResult.definitions;
|
|
185
192
|
const { scanVSCodeExtensions } = await import('../../auditor/vscode-extension-scanner.js');
|
|
186
193
|
const vsCodeExtensions = scanVSCodeExtensions();
|
|
187
194
|
const { detectAICLIs } = await import('../../auditor/cli-detector.js');
|
|
@@ -189,6 +196,14 @@ export function useAudit() {
|
|
|
189
196
|
// Env audit
|
|
190
197
|
const { auditEnvironment } = await import('../../auditor/env-auditor.js');
|
|
191
198
|
const envExposures = auditEnvironment();
|
|
199
|
+
// MCP poisoning detection
|
|
200
|
+
setState((s) => ({ ...s, progress: 78, currentFile: 'MCP poisoning check...' }));
|
|
201
|
+
const { detectMCPPoisoning } = await import('../../auditor/mcp-poison-detector.js');
|
|
202
|
+
const mcpPoisoning = detectMCPPoisoning(mcpServers, mcpDefinitions);
|
|
203
|
+
// Miner detection
|
|
204
|
+
setState((s) => ({ ...s, progress: 80, currentFile: 'Mining process check...' }));
|
|
205
|
+
const { detectMiners } = await import('../../auditor/miner-detector.js');
|
|
206
|
+
const minerDetection = detectMiners();
|
|
192
207
|
// Phase 3: cross-reference — use cwd as workspace root for access scoping.
|
|
193
208
|
// Workspace-scoped tools should only reach files within the project dir,
|
|
194
209
|
// not everything in homedir.
|
|
@@ -226,6 +241,8 @@ export function useAudit() {
|
|
|
226
241
|
detectedCLIs,
|
|
227
242
|
systemFindings,
|
|
228
243
|
envExposures,
|
|
244
|
+
mcpPoisoning,
|
|
245
|
+
minerDetection,
|
|
229
246
|
};
|
|
230
247
|
appendHistory({
|
|
231
248
|
timestamp: new Date().toISOString(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAudit.js","sourceRoot":"","sources":["../../../src/tui/hooks/useAudit.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useAudit.js","sourceRoot":"","sources":["../../../src/tui/hooks/useAudit.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useHookStatus.d.ts","sourceRoot":"","sources":["../../../src/tui/hooks/useHookStatus.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAgB,aAAa,IAAI,UAAU,GAAG;IAAE,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"useHookStatus.d.ts","sourceRoot":"","sources":["../../../src/tui/hooks/useHookStatus.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAgB,aAAa,IAAI,UAAU,GAAG;IAAE,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,CA6ElG"}
|
|
@@ -11,16 +11,37 @@ export function useHookStatus() {
|
|
|
11
11
|
});
|
|
12
12
|
const check = useCallback(() => {
|
|
13
13
|
let installed = false;
|
|
14
|
-
// Check Claude Code settings
|
|
14
|
+
// Check Claude Code settings (global)
|
|
15
15
|
const claudeSettings = join(homedir(), '.claude', 'settings.local.json');
|
|
16
16
|
if (existsSync(claudeSettings)) {
|
|
17
17
|
try {
|
|
18
18
|
const content = readFileSync(claudeSettings, 'utf-8');
|
|
19
|
-
if (content.includes('security-scanner.sh'))
|
|
20
|
-
|
|
19
|
+
if (content.includes('security-scanner.sh')) {
|
|
20
|
+
// Validate the hook script actually exists on disk
|
|
21
|
+
const match = content.match(/"command"\s*:\s*"([^"]*security-scanner\.sh)"/);
|
|
22
|
+
if (match && existsSync(match[1])) {
|
|
23
|
+
installed = true;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
21
26
|
}
|
|
22
27
|
catch { /* ignore */ }
|
|
23
28
|
}
|
|
29
|
+
// Fallback: check project-level settings (legacy installs)
|
|
30
|
+
if (!installed) {
|
|
31
|
+
const projectSettings = join(process.cwd(), '.claude', 'settings.local.json');
|
|
32
|
+
if (existsSync(projectSettings)) {
|
|
33
|
+
try {
|
|
34
|
+
const content = readFileSync(projectSettings, 'utf-8');
|
|
35
|
+
if (content.includes('security-scanner.sh')) {
|
|
36
|
+
const match = content.match(/"command"\s*:\s*"([^"]*security-scanner\.sh)"/);
|
|
37
|
+
if (match && existsSync(match[1])) {
|
|
38
|
+
installed = true;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
catch { /* ignore */ }
|
|
43
|
+
}
|
|
44
|
+
}
|
|
24
45
|
// Check git hooks
|
|
25
46
|
if (!installed) {
|
|
26
47
|
const gitPreCommit = join(process.cwd(), '.git', 'hooks', 'pre-commit');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useHookStatus.js","sourceRoot":"","sources":["../../../src/tui/hooks/useHookStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAQ5E,MAAM,UAAU,aAAa;IAC3B,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAa;QAC/C,SAAS,EAAE,KAAK;QAChB,OAAO,EAAE,KAAK;QACd,iBAAiB,EAAE,IAAI;KACxB,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,
|
|
1
|
+
{"version":3,"file":"useHookStatus.js","sourceRoot":"","sources":["../../../src/tui/hooks/useHookStatus.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ export interface ScanState {
|
|
|
13
13
|
error: string | null;
|
|
14
14
|
elapsedMs: number;
|
|
15
15
|
filesPerSec: number;
|
|
16
|
-
scanStage: 'walking' | 'system' | 'permissions' | 'injection' | 'done';
|
|
16
|
+
scanStage: 'walking' | 'system' | 'permissions' | 'injection' | 'skills' | 'done';
|
|
17
17
|
mode: ScanMode;
|
|
18
18
|
estimatedRemainingMs: number | null;
|
|
19
19
|
}
|
|
@@ -32,7 +32,7 @@ export declare function useScan(): {
|
|
|
32
32
|
error: string | null;
|
|
33
33
|
elapsedMs: number;
|
|
34
34
|
filesPerSec: number;
|
|
35
|
-
scanStage: "walking" | "system" | "permissions" | "injection" | "done";
|
|
35
|
+
scanStage: "walking" | "system" | "permissions" | "injection" | "skills" | "done";
|
|
36
36
|
mode: ScanMode;
|
|
37
37
|
estimatedRemainingMs: number | null;
|
|
38
38
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useScan.d.ts","sourceRoot":"","sources":["../../../src/tui/hooks/useScan.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGpE,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC;AAC3F,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEhE,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,SAAS,GAAG,QAAQ,GAAG,aAAa,GAAG,WAAW,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"useScan.d.ts","sourceRoot":"","sources":["../../../src/tui/hooks/useScan.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGpE,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC;AAC3F,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEhE,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,SAAS,GAAG,QAAQ,GAAG,aAAa,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;IAClF,IAAI,EAAE,QAAQ,CAAC;IACf,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAkCD,wBAAgB,OAAO;uBAesB,QAAQ,eAA4B,MAAM;;;WA/D9E,SAAS;cACN,MAAM;kBACF,MAAM;iBACP,MAAM;gBACP,MAAM;cACR,WAAW,EAAE;mBACR,MAAM;YACb,UAAU,GAAG,IAAI;WAClB,MAAM,GAAG,IAAI;eACT,MAAM;iBACJ,MAAM;eACR,SAAS,GAAG,QAAQ,GAAG,aAAa,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM;UAC3E,QAAQ;0BACQ,MAAM,GAAG,IAAI;EAwPpC"}
|
|
@@ -154,16 +154,26 @@ export function useScan() {
|
|
|
154
154
|
if (permFindings.length > 0)
|
|
155
155
|
findingsRef.current.push(...permFindings);
|
|
156
156
|
setState((s) => ({ ...s, progress: 93 }));
|
|
157
|
-
// Phase 4: Injection scan (93-
|
|
157
|
+
// Phase 4: Injection scan (93-96%)
|
|
158
158
|
setState((s) => ({ ...s, progress: 93, scanStage: 'injection', currentDir: 'Instruction files' }));
|
|
159
159
|
const { scanInstructionFiles } = await import('../../scanner/injection-scanner.js');
|
|
160
160
|
let injCount = 0;
|
|
161
161
|
for await (const finding of scanInstructionFiles(signal)) {
|
|
162
162
|
findingsRef.current.push(finding);
|
|
163
163
|
injCount++;
|
|
164
|
-
const injProgress = Math.min(
|
|
164
|
+
const injProgress = Math.min(96, 93 + injCount);
|
|
165
165
|
setState((s) => ({ ...s, progress: injProgress }));
|
|
166
166
|
}
|
|
167
|
+
// Phase 5: Skill/instruction file threat scan (96-99%)
|
|
168
|
+
setState((s) => ({ ...s, progress: 96, scanStage: 'skills', currentDir: 'Skill files' }));
|
|
169
|
+
const { scanSkillFiles } = await import('../../scanner/skill-scanner.js');
|
|
170
|
+
let skillCount = 0;
|
|
171
|
+
for await (const finding of scanSkillFiles(scanRoot, signal)) {
|
|
172
|
+
findingsRef.current.push(finding);
|
|
173
|
+
skillCount++;
|
|
174
|
+
const skillProgress = Math.min(99, 96 + skillCount);
|
|
175
|
+
setState((s) => ({ ...s, progress: skillProgress }));
|
|
176
|
+
}
|
|
167
177
|
// Done
|
|
168
178
|
const riskResult = calculateRiskScore(findingsRef.current);
|
|
169
179
|
const result = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useScan.js","sourceRoot":"","sources":["../../../src/tui/hooks/useScan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAoC,MAAM,qCAAqC,CAAC;AACrH,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAsB7C,MAAM,OAAO,GAAc;IACzB,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,CAAC;IACX,YAAY,EAAE,CAAC;IACf,WAAW,EAAE,EAAE;IACf,UAAU,EAAE,EAAE;IACd,QAAQ,EAAE,EAAE;IACZ,aAAa,EAAE,CAAC;IAChB,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,IAAI;IACX,SAAS,EAAE,CAAC;IACZ,WAAW,EAAE,CAAC;IACd,SAAS,EAAE,SAAS;IACpB,IAAI,EAAE,UAAU;IAChB,oBAAoB,EAAE,IAAI;CAC3B,CAAC;AAEF,yCAAyC;AACzC,MAAM,uBAAuB,GAA6B;IACxD,KAAK,EAAE,IAAI;IACX,QAAQ,EAAE,KAAK;IACf,IAAI,EAAE,KAAK;IACX,MAAM,EAAE,KAAK;CACd,CAAC;AAEF,MAAM,YAAY,GAAkC;IAClD,KAAK,EAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAO,+BAA+B;IAC5E,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;IAC5C,IAAI,EAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE;IAC7C,MAAM,EAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE;CAC9C,CAAC;AAEF,MAAM,UAAU,OAAO;IACrB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAY,OAAO,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAC;IACtD,MAAM,WAAW,GAAG,MAAM,CAAgB,EAAE,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,MAAM,CAAwC,IAAI,CAAC,CAAC;IACrE,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAE/B,4BAA4B;IAC5B,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE;YACV,IAAI,QAAQ,CAAC,OAAO;gBAAE,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxD,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,OAAiB,UAAU,EAAE,UAAmB,EAAE,EAAE;QACvF,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QAC1B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,QAAQ,CAAC,OAAO,GAAG,UAAU,CAAC;QAC9B,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;QAE9B,WAAW,CAAC,OAAO,GAAG,EAAE,CAAC;QACzB,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC;QACzB,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAElC,QAAQ,CAAC,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QAEtG,oDAAoD;QACpD,MAAM,QAAQ,GAAG,UAAU,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC7E,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,gBAAgB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7D,MAAM,KAAK,GAAc,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;QAC9D,MAAM,QAAQ,GAAG,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;QAE3E,MAAM,eAAe,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAEtD,mEAAmE;QACnE,QAAQ,CAAC,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC;YAClD,MAAM,GAAG,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAElF,oEAAoE;YACpE,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;YACjC,IAAI,oBAAoB,GAAkB,IAAI,CAAC;YAC/C,IAAI,OAAO,GAAG,IAAI,EAAE,CAAC;gBACnB,kDAAkD;gBAClD,IAAI,aAAa,GAAG,eAAe,GAAG,GAAG,CAAC,CAAC,mCAAmC;gBAC9E,IAAI,OAAO,GAAG,IAAI,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;oBAC9B,iEAAiE;oBACjE,MAAM,kBAAkB,GAAG,CAAC,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC;wBACnD,CAAC,CAAC,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,IAAI,MAAM,CAAC,GAAG,GAAG;wBACxE,CAAC,CAAC,eAAe,GAAG,GAAG,CAAC;oBAC1B,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,eAAe,GAAG,CAAC,CAAC,CAAC;gBACpE,CAAC;gBACD,oBAAoB,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC;YACpF,CAAC;YAED,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACf,GAAG,CAAC;gBACJ,YAAY,EAAE,YAAY,CAAC,OAAO;gBAClC,aAAa,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM;gBACzC,SAAS,EAAE,OAAO;gBAClB,WAAW,EAAE,GAAG;gBAChB,oBAAoB;aACrB,CAAC,CAAC,CAAC;QACN,CAAC,EAAE,GAAG,CAAC,CAAC;QAER,IAAI,CAAC;YACH,6DAA6D;YAC7D,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACrB,IAAI,kBAAkB,GAAG,CAAC,CAAC;gBAC3B,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,SAAS,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;oBACtE,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC9D,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;wBAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;oBACvE,YAAY,CAAC,OAAO,EAAE,CAAC;oBAEvB,iEAAiE;oBACjE,IAAI,YAAY,CAAC,OAAO,GAAG,kBAAkB,IAAI,EAAE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC/E,kBAAkB,GAAG,YAAY,CAAC,OAAO,CAAC;wBAC1C,wEAAwE;wBACxE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC;wBAClD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC;wBAC9E,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBACnC,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBACnD,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BACf,GAAG,CAAC;4BACJ,QAAQ,EAAE,YAAY;4BACtB,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE;4BAC1C,UAAU,EAAE,GAAG;yBAChB,CAAC,CAAC,CAAC;oBACN,CAAC;gBACH,CAAC;gBAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;oBAC5F,OAAO;gBACT,CAAC;YACH,CAAC;YAED,mCAAmC;YACnC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;YAC7F,MAAM,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,iCAAiC,CAAC,CAAC;YAEnG,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;YACzC,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,oBAAoB;YAC3D,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,iBAAiB,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;gBACzE,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC9D,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;oBAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;gBACvE,YAAY,CAAC,OAAO,EAAE,CAAC;gBACvB,QAAQ,EAAE,CAAC;gBAEX,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC;gBAC5E,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACf,GAAG,CAAC;oBACJ,QAAQ,EAAE,WAAW;oBACrB,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE;oBAC7C,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;iBACxD,CAAC,CAAC,CAAC;YACN,CAAC;YAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;gBAC5F,OAAO;YACT,CAAC;YAED,sCAAsC;YACtC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC;YACxG,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,qCAAqC,CAAC,CAAC;YACjF,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,oBAAoB,EAAE,CAAC,CAAC;YACpE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;gBAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;YACvE,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;YAE1C,mCAAmC;YACnC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC;YACnG,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,oCAAoC,CAAC,CAAC;YACpF,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAClC,QAAQ,EAAE,CAAC;gBACX,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC,CAAC;gBAChD,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;YACrD,CAAC;YAED,OAAO;YACP,MAAM,UAAU,GAAG,kBAAkB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC3D,MAAM,MAAM,GAAe;gBACzB,QAAQ,EAAE,WAAW,CAAC,OAAO;gBAC7B,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,OAAO;gBACjD,SAAS,EAAE,UAAU,CAAC,KAAK;gBAC3B,SAAS,EAAE,UAAU,CAAC,KAAK;aAC5B,CAAC;YAEF,aAAa,CAAC;gBACZ,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,UAAU,CAAC,KAAK;gBAC3B,SAAS,EAAE,UAAU,CAAC,KAAK;gBAC3B,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM;gBACxC,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,OAAO;aAC9C,CAAC,CAAC;YAEH,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;YAAC,CAAC;YAEnF,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACf,GAAG,CAAC;gBACJ,KAAK,EAAE,MAAM;gBACb,QAAQ,EAAE,GAAG;gBACb,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,QAAQ,EAAE,WAAW,CAAC,OAAO;gBAC7B,aAAa,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM;gBACzC,MAAM;gBACN,WAAW,EAAE,EAAE;gBACf,UAAU,EAAE,EAAE;gBACd,SAAS,EAAE,MAAM;gBACjB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,OAAO;aAC7C,CAAC,CAAC,CAAC;QACN,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;YAAC,CAAC;YACnF,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACf,GAAG,CAAC;gBACJ,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACxD,CAAC,CAAC,CAAC;QACN,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9B,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;QAAC,CAAC;QACnF,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,WAAW,CAAC,OAAO,GAAG,EAAE,CAAC;QACzB,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC;QACzB,QAAQ,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,QAAQ,CACf,QAAuB,EACvB,KAAgB,EAChB,KAA2B,EAC3B,QAA0D,EAC1D,QAAuE,EACvE,SAAiB;IAEjB,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;IAAC,CAAC;IACnF,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,MAAM,GAAe;QACzB,QAAQ;QACR,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;QACtC,SAAS,EAAE,UAAU,CAAC,KAAK;QAC3B,SAAS,EAAE,UAAU,CAAC,KAAK;KAC5B,CAAC;IACF,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACf,GAAG,CAAC;QACJ,KAAK;QACL,QAAQ,EAAE,GAAG;QACb,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,QAAQ;QACR,aAAa,EAAE,QAAQ,CAAC,MAAM;QAC9B,MAAM;QACN,SAAS,EAAE,MAAM;KAClB,CAAC,CAAC,CAAC;AACN,CAAC"}
|
|
1
|
+
{"version":3,"file":"useScan.js","sourceRoot":"","sources":["../../../src/tui/hooks/useScan.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuditPanel.d.ts","sourceRoot":"","sources":["../../../src/tui/screens/AuditPanel.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AuditPanel.d.ts","sourceRoot":"","sources":["../../../src/tui/screens/AuditPanel.tsx"],"names":[],"mappings":"AAmLA,UAAU,eAAe;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC;AAED,wBAAgB,UAAU,CAAC,EAAE,cAAc,EAAE,mBAAmB,EAAE,GAAE,eAAoB,kDAgXvF"}
|
|
@@ -13,7 +13,8 @@ import { useAudit } from '../hooks/useAudit.js';
|
|
|
13
13
|
import { useTermSize } from '../App.js';
|
|
14
14
|
import { THEME, ICONS, ACCESS_LABELS, ACCESS_COLORS, SEVERITY_COLORS, SEVERITY_LABELS } from '../theme.js';
|
|
15
15
|
import { ACCESS_EXPLAINERS, MCP_CAPABILITY_EXPLAINERS, computeFocusLine } from '../educational.js';
|
|
16
|
-
import {
|
|
16
|
+
import { FileLink } from '../components/FileLink.js';
|
|
17
|
+
import { getActionsForMCPServer, getActionsForVSCodeExtension, getActionsForEnvExposure, getActionsForPermissionFinding, getActionsForExposure, getActionsForPoisoningFinding, getActionsForRunningMiner, restoreBackup, } from '../../auditor/remediation.js';
|
|
17
18
|
const MODES = [
|
|
18
19
|
{ key: 'quick', label: 'Quick Audit', desc: 'Detect AI tools + check environment only' },
|
|
19
20
|
{ key: 'project', label: 'Project Audit', desc: 'Scan current directory + system credentials + AI tools' },
|
|
@@ -36,6 +37,8 @@ const SECTIONS = [
|
|
|
36
37
|
{ id: 'vscode', label: 'VS CODE EXTENSIONS', getCount: (r) => r.vsCodeExtensions?.length ?? 0 },
|
|
37
38
|
{ id: 'clis', label: 'CLI TOOLS', getCount: (r) => r.detectedCLIs?.length ?? 0 },
|
|
38
39
|
{ id: 'env', label: 'ENVIRONMENT', getCount: (r) => r.envExposures?.length ?? 0 },
|
|
40
|
+
{ id: 'poisoning', label: 'MCP POISONING', getCount: (r) => r.mcpPoisoning?.findings?.length ?? 0 },
|
|
41
|
+
{ id: 'mining', label: 'CRYPTOJACKING', getCount: (r) => (r.minerDetection?.runningMiners?.length ?? 0) + (r.minerDetection?.suspiciousCrontabs?.length ?? 0) },
|
|
39
42
|
];
|
|
40
43
|
function buildVirtualList(result, expandedSections) {
|
|
41
44
|
const items = [];
|
|
@@ -79,6 +82,19 @@ function buildVirtualList(result, expandedSections) {
|
|
|
79
82
|
items.push({ type: 'env', index: i });
|
|
80
83
|
}
|
|
81
84
|
break;
|
|
85
|
+
case 'poisoning':
|
|
86
|
+
for (let i = 0; i < (result.mcpPoisoning?.findings?.length ?? 0); i++) {
|
|
87
|
+
items.push({ type: 'poisoning', index: i });
|
|
88
|
+
}
|
|
89
|
+
break;
|
|
90
|
+
case 'mining': {
|
|
91
|
+
const miners = result.minerDetection?.runningMiners ?? [];
|
|
92
|
+
const crontabs = result.minerDetection?.suspiciousCrontabs ?? [];
|
|
93
|
+
for (let i = 0; i < miners.length + crontabs.length; i++) {
|
|
94
|
+
items.push({ type: 'mining', index: i });
|
|
95
|
+
}
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
82
98
|
}
|
|
83
99
|
}
|
|
84
100
|
}
|
|
@@ -293,7 +309,7 @@ export function AuditPanel({ autoStartQuick, onAutoStartConsumed } = {}) {
|
|
|
293
309
|
: audit.phase === 'mapping'
|
|
294
310
|
? 'Cross-referencing exposure...'
|
|
295
311
|
: 'Initializing...';
|
|
296
|
-
return (_jsxs(Box, { flexDirection: "column", children: [_jsx(SectionHeader, { title: "AUDIT IN PROGRESS", color: THEME.brand }), _jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: THEME.brand, children: _jsx(InkSpinner, { type: "dots" }) }), _jsx(Text, { color: THEME.primary, children: phaseLabel })] }), _jsx(Box, { marginTop: 1, children: _jsx(ProgressBar, { value: audit.progress }) }), _jsxs(Box, { gap: 2, children: [audit.currentFile && (_jsx(
|
|
312
|
+
return (_jsxs(Box, { flexDirection: "column", children: [_jsx(SectionHeader, { title: "AUDIT IN PROGRESS", color: THEME.brand }), _jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: THEME.brand, children: _jsx(InkSpinner, { type: "dots" }) }), _jsx(Text, { color: THEME.primary, children: phaseLabel })] }), _jsx(Box, { marginTop: 1, children: _jsx(ProgressBar, { value: audit.progress }) }), _jsxs(Box, { gap: 2, children: [audit.currentFile && (_jsx(FileLink, { path: audit.currentFile })), audit.filesScanned > 0 && (_jsxs(Text, { children: [_jsx(Text, { color: THEME.label, children: "files:" }), " ", _jsx(Text, { color: THEME.value, children: audit.filesScanned })] })), audit.estimatedRemainingMs !== null && (_jsxs(Text, { children: [_jsx(Text, { color: THEME.label, children: "ETA:" }), " ", _jsx(Text, { color: THEME.value, children: formatETA(audit.estimatedRemainingMs) })] }))] }), cancelConfirm && (_jsx(Text, { color: THEME.brand, children: "Press ESC again to cancel" }))] })] }));
|
|
297
313
|
}
|
|
298
314
|
const { result } = audit;
|
|
299
315
|
if (!result)
|
|
@@ -350,14 +366,14 @@ function renderItemRow(item, result, selected, contentWidth) {
|
|
|
350
366
|
const cli = result.detectedCLIs?.[item.index];
|
|
351
367
|
if (!cli)
|
|
352
368
|
return null;
|
|
353
|
-
return (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: THEME.value, bold: true, children: cli.name }), _jsx(
|
|
369
|
+
return (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: THEME.value, bold: true, children: cli.name }), _jsx(FileLink, { path: cli.path, maxWidth: Math.max(20, contentWidth - 25) })] }));
|
|
354
370
|
}
|
|
355
371
|
case 'vscode': {
|
|
356
372
|
const ext = result.vsCodeExtensions?.[item.index];
|
|
357
373
|
if (!ext)
|
|
358
374
|
return null;
|
|
359
375
|
const riskColor = ext.riskLevel === 'high' ? THEME.critical : ext.riskLevel === 'medium' ? THEME.medium : THEME.success;
|
|
360
|
-
return (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: riskColor, bold: true, children: ext.riskLevel.toUpperCase().padEnd(6) }), _jsx(Text, { color: THEME.value, children: truncate(ext.name, maxNameWidth) }), _jsxs(Text, { color: THEME.filePath, children: ["(", truncate(ext.id, 20), ")"] })] }));
|
|
376
|
+
return (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: riskColor, bold: true, children: ext.riskLevel.toUpperCase().padEnd(6) }), _jsx(Text, { color: THEME.value, children: truncate(ext.name, maxNameWidth) }), _jsxs(Text, { color: THEME.filePath, children: ["(", ext.id.length > 20 ? truncate(ext.id, 20) : ext.id, ")"] })] }));
|
|
361
377
|
}
|
|
362
378
|
case 'env': {
|
|
363
379
|
const env = result.envExposures?.[item.index];
|
|
@@ -365,6 +381,24 @@ function renderItemRow(item, result, selected, contentWidth) {
|
|
|
365
381
|
return null;
|
|
366
382
|
return (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: SEVERITY_COLORS[env.severity], bold: true, children: SEVERITY_LABELS[env.severity].padEnd(5) }), _jsx(Text, { color: THEME.title, bold: true, children: env.key }), _jsx(Text, { color: THEME.value, children: truncate(env.valueHint, 23) })] }));
|
|
367
383
|
}
|
|
384
|
+
case 'poisoning': {
|
|
385
|
+
const f = result.mcpPoisoning?.findings?.[item.index];
|
|
386
|
+
if (!f)
|
|
387
|
+
return null;
|
|
388
|
+
return (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: SEVERITY_COLORS[f.severity], bold: true, children: (f.severity.toUpperCase().slice(0, 4)).padEnd(5) }), _jsx(Text, { color: THEME.title, bold: true, children: truncate(f.serverName, maxNameWidth) }), _jsx(Text, { color: THEME.value, children: truncate(f.category, 20) }), f.cve && _jsx(Text, { color: THEME.critical, children: f.cve })] }));
|
|
389
|
+
}
|
|
390
|
+
case 'mining': {
|
|
391
|
+
const miners = result.minerDetection?.runningMiners ?? [];
|
|
392
|
+
const crontabs = result.minerDetection?.suspiciousCrontabs ?? [];
|
|
393
|
+
if (item.index < miners.length) {
|
|
394
|
+
const m = miners[item.index];
|
|
395
|
+
return (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: THEME.critical, bold: true, children: 'PROC'.padEnd(5) }), _jsx(Text, { color: THEME.title, bold: true, children: m.name }), _jsxs(Text, { color: THEME.value, children: ["PID:", m.pid] }), m.cpuPercent !== undefined && _jsxs(Text, { color: THEME.warning, children: ["CPU:", m.cpuPercent, "%"] })] }));
|
|
396
|
+
}
|
|
397
|
+
const c = crontabs[item.index - miners.length];
|
|
398
|
+
if (!c)
|
|
399
|
+
return null;
|
|
400
|
+
return (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: THEME.warning, bold: true, children: 'CRON'.padEnd(5) }), _jsx(Text, { color: THEME.value, children: truncate(c.line, Math.max(20, contentWidth - 15)) })] }));
|
|
401
|
+
}
|
|
368
402
|
default:
|
|
369
403
|
return null;
|
|
370
404
|
}
|
|
@@ -377,7 +411,7 @@ function renderItemDetail(item, result, contentWidth) {
|
|
|
377
411
|
if (!t)
|
|
378
412
|
return null;
|
|
379
413
|
const accessInfo = ACCESS_EXPLAINERS[t.accessLevel];
|
|
380
|
-
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: THEME.border, paddingX: 1, children: [_jsxs(Box, { children: [_jsx(Text, { color: THEME.label, children: "Access: " }), _jsx(Text, { color: ACCESS_COLORS[t.accessLevel], children: ACCESS_LABELS[t.accessLevel] })] }), _jsx(Text, { color: THEME.primaryDim, wrap: "wrap", children: accessInfo.summary }), _jsxs(Text, { color: THEME.primaryDim, wrap: "wrap", children: ["Reachable: ", accessInfo.examples] }), _jsxs(Text, { color: THEME.warning, wrap: "wrap", children: ['\u26a0', " ", accessInfo.concern] }), _jsxs(Box, { children: [_jsx(Text, { color: THEME.label, children: "Description: " }), _jsx(Text, { color: THEME.primaryDim, children: t.description })] }), t.configPaths.map((p, j) => (_jsxs(Box, { children: [_jsx(Text, { color: THEME.label, children: "Config: " }), _jsx(
|
|
414
|
+
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: THEME.border, paddingX: 1, children: [_jsxs(Box, { children: [_jsx(Text, { color: THEME.label, children: "Access: " }), _jsx(Text, { color: ACCESS_COLORS[t.accessLevel], children: ACCESS_LABELS[t.accessLevel] })] }), _jsx(Text, { color: THEME.primaryDim, wrap: "wrap", children: accessInfo.summary }), _jsxs(Text, { color: THEME.primaryDim, wrap: "wrap", children: ["Reachable: ", accessInfo.examples] }), _jsxs(Text, { color: THEME.warning, wrap: "wrap", children: ['\u26a0', " ", accessInfo.concern] }), _jsxs(Box, { children: [_jsx(Text, { color: THEME.label, children: "Description: " }), _jsx(Text, { color: THEME.primaryDim, children: t.description })] }), t.configPaths.map((p, j) => (_jsxs(Box, { children: [_jsx(Text, { color: THEME.label, children: "Config: " }), _jsx(FileLink, { path: p, maxWidth: maxPathWidth })] }, j))), _jsx(Text, { color: THEME.title, children: "[r] remediate" })] }));
|
|
381
415
|
}
|
|
382
416
|
case 'exposure': {
|
|
383
417
|
const e = result.exposures[item.index];
|
|
@@ -390,13 +424,13 @@ function renderItemDetail(item, result, contentWidth) {
|
|
|
390
424
|
const s = result.mcpServers?.[item.index];
|
|
391
425
|
if (!s)
|
|
392
426
|
return null;
|
|
393
|
-
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: THEME.border, paddingX: 1, children: [_jsxs(
|
|
427
|
+
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: THEME.border, paddingX: 1, children: [_jsxs(Box, { children: [_jsx(Text, { color: THEME.label, children: "Source: " }), _jsx(FileLink, { path: s.sourceFile, maxWidth: maxPathWidth })] }), s.capabilities && s.capabilities.length > 0 && (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: THEME.label, children: "Capabilities detected:" }), s.capabilities.map((cap, i) => (_jsxs(Text, { wrap: "wrap", children: [_jsxs(Text, { color: THEME.brand, children: [" ", '\u25cf', " ", cap.padEnd(20)] }), _jsx(Text, { color: THEME.primaryDim, children: MCP_CAPABILITY_EXPLAINERS[cap] ?? '' })] }, i)))] })), s.tools.length > 0 && (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { color: THEME.label, children: ["Tools (", s.tools.length, "):"] }), s.tools.slice(0, 8).map((tool, i) => (_jsxs(Text, { color: THEME.value, children: [" ", tool] }, i))), s.tools.length > 8 && (_jsxs(Text, { color: THEME.muted, children: [" ... and ", s.tools.length - 8, " more"] }))] })), _jsx(Text, { color: THEME.title, children: "[r] remediate" })] }));
|
|
394
428
|
}
|
|
395
429
|
case 'cli': {
|
|
396
430
|
const cli = result.detectedCLIs?.[item.index];
|
|
397
431
|
if (!cli)
|
|
398
432
|
return null;
|
|
399
|
-
return (_jsx(Box, { flexDirection: "column", borderStyle: "round", borderColor: THEME.border, paddingX: 1, children: _jsxs(
|
|
433
|
+
return (_jsx(Box, { flexDirection: "column", borderStyle: "round", borderColor: THEME.border, paddingX: 1, children: _jsxs(Box, { children: [_jsx(Text, { color: THEME.label, children: "Source: " }), _jsx(FileLink, { path: cli.source, maxWidth: maxPathWidth })] }) }));
|
|
400
434
|
}
|
|
401
435
|
case 'vscode': {
|
|
402
436
|
const ext = result.vsCodeExtensions?.[item.index];
|
|
@@ -410,6 +444,24 @@ function renderItemDetail(item, result, contentWidth) {
|
|
|
410
444
|
return null;
|
|
411
445
|
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: THEME.border, paddingX: 1, children: [_jsx(Text, { color: THEME.warning, wrap: "wrap", children: "This API key is loaded in your shell environment. Any AI tool or process running as your user can read it via process.env." }), _jsxs(Text, { children: [_jsx(Text, { color: THEME.label, children: "Reason: " }), _jsx(Text, { color: THEME.primaryDim, children: env.reason })] }), _jsxs(Text, { children: [_jsx(Text, { color: THEME.label, children: "Remediation: " }), _jsx(Text, { color: THEME.primaryDim, children: "Comment out the export in your shell profile, or use a secrets manager." })] }), _jsx(Text, { color: THEME.title, children: "[r] remediate" })] }));
|
|
412
446
|
}
|
|
447
|
+
case 'poisoning': {
|
|
448
|
+
const f = result.mcpPoisoning?.findings?.[item.index];
|
|
449
|
+
if (!f)
|
|
450
|
+
return null;
|
|
451
|
+
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: THEME.border, paddingX: 1, children: [_jsx(Text, { color: THEME.warning, wrap: "wrap", children: f.description }), f.detail && _jsx(Text, { color: THEME.primaryDim, wrap: "wrap", children: f.detail }), f.cve && _jsxs(Text, { children: [_jsx(Text, { color: THEME.label, children: "CVE: " }), _jsx(Text, { color: THEME.critical, children: f.cve })] }), _jsxs(Text, { children: [_jsx(Text, { color: THEME.label, children: "Category: " }), _jsx(Text, { color: THEME.primaryDim, children: f.category })] }), _jsx(Text, { color: THEME.title, children: "[r] remediate" })] }));
|
|
452
|
+
}
|
|
453
|
+
case 'mining': {
|
|
454
|
+
const miners = result.minerDetection?.runningMiners ?? [];
|
|
455
|
+
const crontabs = result.minerDetection?.suspiciousCrontabs ?? [];
|
|
456
|
+
if (item.index < miners.length) {
|
|
457
|
+
const m = miners[item.index];
|
|
458
|
+
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: THEME.border, paddingX: 1, children: [_jsx(Text, { color: THEME.critical, wrap: "wrap", children: "Active mining process detected! This may be consuming your CPU/GPU resources." }), _jsxs(Text, { children: [_jsx(Text, { color: THEME.label, children: "Process: " }), _jsxs(Text, { color: THEME.primaryDim, children: [m.name, " (PID ", m.pid, ")"] })] }), _jsxs(Text, { children: [_jsx(Text, { color: THEME.label, children: "Command: " }), _jsx(Text, { color: THEME.primaryDim, children: m.command })] }), m.cpuPercent !== undefined && _jsxs(Text, { children: [_jsx(Text, { color: THEME.label, children: "CPU Usage: " }), _jsxs(Text, { color: THEME.warning, children: [m.cpuPercent, "%"] })] }), _jsx(Text, { color: THEME.title, children: "[r] remediate (kill process)" })] }));
|
|
459
|
+
}
|
|
460
|
+
const c = crontabs[item.index - miners.length];
|
|
461
|
+
if (!c)
|
|
462
|
+
return null;
|
|
463
|
+
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: THEME.border, paddingX: 1, children: [_jsx(Text, { color: THEME.warning, wrap: "wrap", children: "Suspicious crontab entry that may launch mining software." }), _jsxs(Text, { children: [_jsx(Text, { color: THEME.label, children: "Entry: " }), _jsx(Text, { color: THEME.primaryDim, children: c.line })] }), _jsxs(Text, { children: [_jsx(Text, { color: THEME.label, children: "Reason: " }), _jsx(Text, { color: THEME.primaryDim, children: c.reason })] })] }));
|
|
464
|
+
}
|
|
413
465
|
default:
|
|
414
466
|
return null;
|
|
415
467
|
}
|
|
@@ -445,6 +497,17 @@ function computeRemediationActions(item, result) {
|
|
|
445
497
|
}
|
|
446
498
|
return actions;
|
|
447
499
|
}
|
|
500
|
+
case 'poisoning': {
|
|
501
|
+
const f = result.mcpPoisoning?.findings?.[item.index];
|
|
502
|
+
return f ? getActionsForPoisoningFinding(f) : [];
|
|
503
|
+
}
|
|
504
|
+
case 'mining': {
|
|
505
|
+
const miners = result.minerDetection?.runningMiners ?? [];
|
|
506
|
+
if (item.index < miners.length) {
|
|
507
|
+
return getActionsForRunningMiner(miners[item.index]);
|
|
508
|
+
}
|
|
509
|
+
return [];
|
|
510
|
+
}
|
|
448
511
|
default:
|
|
449
512
|
return [];
|
|
450
513
|
}
|
|
@@ -455,6 +518,11 @@ function computeRemediationTitle(item, result) {
|
|
|
455
518
|
case 'vscode': return result.vsCodeExtensions?.[item.index]?.name ?? 'Extension';
|
|
456
519
|
case 'env': return result.envExposures?.[item.index]?.key ?? 'Environment Variable';
|
|
457
520
|
case 'exposure': return result.exposures?.[item.index]?.tool.name ?? 'Exposure';
|
|
521
|
+
case 'poisoning': return result.mcpPoisoning?.findings?.[item.index]?.serverName ?? 'MCP Poisoning';
|
|
522
|
+
case 'mining': {
|
|
523
|
+
const miners = result.minerDetection?.runningMiners ?? [];
|
|
524
|
+
return item.index < miners.length ? miners[item.index].name : 'Crontab Entry';
|
|
525
|
+
}
|
|
458
526
|
default: return 'Item';
|
|
459
527
|
}
|
|
460
528
|
}
|