@clear-capabilities/agentic-security-scanner 0.75.0 → 0.77.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/CHANGELOG.md +57 -0
- package/bin/agentic-security.js +2 -2
- package/dist/838.index.js +152 -0
- package/dist/{634.index.js → 985.index.js} +21 -144
- package/dist/agentic-security.mjs +8 -8
- package/dist/agentic-security.mjs.sha256 +1 -1
- package/package.json +6 -6
- package/src/mcp/tools.js +17 -2
- package/src/sca/base-images.json +1 -1
- package/bin/.agentic-security/findings.json +0 -1596
- package/bin/.agentic-security/last-scan.json +0 -1596
- package/bin/.agentic-security/last-scan.json.sig +0 -1
- package/bin/.agentic-security/scan-history.json +0 -470
- package/bin/.agentic-security/streak.json +0 -25
- package/dist/218.index.js +0 -793
- package/dist/601.index.js +0 -1038
- package/src/.agentic-security/findings.json +0 -80844
- package/src/.agentic-security/last-scan.json +0 -80844
- package/src/.agentic-security/last-scan.json.sig +0 -1
- package/src/.agentic-security/scan-history.json +0 -8408
- package/src/.agentic-security/streak.json +0 -26
- package/src/dataflow/.agentic-security/findings.json +0 -3487
- package/src/dataflow/.agentic-security/last-scan.json +0 -3487
- package/src/dataflow/.agentic-security/last-scan.json.sig +0 -1
- package/src/dataflow/.agentic-security/scan-history.json +0 -735
- package/src/dataflow/.agentic-security/streak.json +0 -24
- package/src/integrations/.agentic-security/findings.json +0 -1504
- package/src/integrations/.agentic-security/last-scan.json +0 -1504
- package/src/integrations/.agentic-security/scan-history.json +0 -40
- package/src/integrations/.agentic-security/streak.json +0 -21
- package/src/ir/.agentic-security/findings.json +0 -3036
- package/src/ir/.agentic-security/last-scan.json +0 -3036
- package/src/ir/.agentic-security/last-scan.json.sig +0 -1
- package/src/ir/.agentic-security/scan-history.json +0 -364
- package/src/ir/.agentic-security/streak.json +0 -23
- package/src/llm-validator/.agentic-security/findings.json +0 -1891
- package/src/llm-validator/.agentic-security/last-scan.json +0 -1891
- package/src/llm-validator/.agentic-security/last-scan.json.sig +0 -1
- package/src/llm-validator/.agentic-security/scan-history.json +0 -168
- package/src/llm-validator/.agentic-security/streak.json +0 -20
- package/src/lsp/.agentic-security/findings.json +0 -28
- package/src/lsp/.agentic-security/last-scan.json +0 -28
- package/src/lsp/.agentic-security/scan-history.json +0 -79
- package/src/lsp/.agentic-security/streak.json +0 -22
- package/src/mcp/.agentic-security/findings.json +0 -8358
- package/src/mcp/.agentic-security/last-scan.json +0 -8358
- package/src/mcp/.agentic-security/last-scan.json.sig +0 -1
- package/src/mcp/.agentic-security/scan-history.json +0 -1125
- package/src/mcp/.agentic-security/streak.json +0 -22
- package/src/posture/.agentic-security/findings.json +0 -51239
- package/src/posture/.agentic-security/last-scan.json +0 -51239
- package/src/posture/.agentic-security/last-scan.json.sig +0 -1
- package/src/posture/.agentic-security/scan-history.json +0 -5557
- package/src/posture/.agentic-security/streak.json +0 -24
- package/src/report/.agentic-security/findings.json +0 -79
- package/src/report/.agentic-security/last-scan.json +0 -79
- package/src/report/.agentic-security/last-scan.json.sig +0 -1
- package/src/report/.agentic-security/scan-history.json +0 -332
- package/src/report/.agentic-security/streak.json +0 -23
- package/src/sast/.agentic-security/findings.json +0 -5051
- package/src/sast/.agentic-security/last-scan.json +0 -5051
- package/src/sast/.agentic-security/last-scan.json.sig +0 -1
- package/src/sast/.agentic-security/scan-history.json +0 -788
- package/src/sast/.agentic-security/streak.json +0 -23
- package/src/sast/bench-shape/.agentic-security/findings.json +0 -28
- package/src/sast/bench-shape/.agentic-security/last-scan.json +0 -28
- package/src/sast/bench-shape/.agentic-security/scan-history.json +0 -24
- package/src/sast/bench-shape/.agentic-security/streak.json +0 -22
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
eb8ec4e943af9857994437dfc4af9886d2b254591dd61da56f061d007403f112 agentic-security.mjs
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@clear-capabilities/agentic-security-scanner",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.77.0",
|
|
4
4
|
"description": "Scanner engine for the agentic-security Claude Code plugin \u2014 SAST, SCA (function-level reachability + CISA KEV), secrets, IaC, prompt-injection, MCP/agent-tool audit, auth/authZ deep analysis, attack chains, PoC generation, business logic, toxic-combinations scoring, SBOM, SARIF ingest, pipeline integrity, compliance attestation, and more.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "src/index.js",
|
|
@@ -30,13 +30,13 @@
|
|
|
30
30
|
"CHANGELOG.md"
|
|
31
31
|
],
|
|
32
32
|
"engines": {
|
|
33
|
-
"node": ">=
|
|
33
|
+
"node": ">=24.0.0"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@babel/core": "^7.
|
|
37
|
-
"@babel/preset-react": "^7.
|
|
38
|
-
"@babel/preset-typescript": "^7.
|
|
39
|
-
"fast-glob": "^3.3.
|
|
36
|
+
"@babel/core": "^7.29.7",
|
|
37
|
+
"@babel/preset-react": "^7.29.7",
|
|
38
|
+
"@babel/preset-typescript": "^7.29.7",
|
|
39
|
+
"fast-glob": "^3.3.3",
|
|
40
40
|
"java-parser": "^3.0.1",
|
|
41
41
|
"js-yaml": "^4.1.1",
|
|
42
42
|
"safe-regex": "^2.1.1"
|
package/src/mcp/tools.js
CHANGED
|
@@ -16,11 +16,24 @@ import * as fs from 'node:fs';
|
|
|
16
16
|
import * as fsp from 'node:fs/promises';
|
|
17
17
|
import * as path from 'node:path';
|
|
18
18
|
import * as crypto from 'node:crypto';
|
|
19
|
-
import { runScan } from '../runScan.js';
|
|
20
19
|
import { applyFix as applyFixHistory } from '../posture/fix-history.js';
|
|
21
20
|
import { verifyLastScan } from '../posture/integrity.js';
|
|
22
21
|
import { redactString, redactFinding } from './redact.js';
|
|
23
|
-
|
|
22
|
+
|
|
23
|
+
// Lazy-loaded: these transitively pull in npm packages (fast-glob,
|
|
24
|
+
// @babel/core) that aren't available in the plugin-cache install path
|
|
25
|
+
// (no node_modules). Deferring keeps the MCP server bootable everywhere;
|
|
26
|
+
// the import only runs when a tool that needs them is actually called.
|
|
27
|
+
let _runScan;
|
|
28
|
+
async function getRunScan() {
|
|
29
|
+
if (!_runScan) _runScan = (await import('../runScan.js')).runScan;
|
|
30
|
+
return _runScan;
|
|
31
|
+
}
|
|
32
|
+
let _verifyFixCore;
|
|
33
|
+
async function getVerifyFixCore() {
|
|
34
|
+
if (!_verifyFixCore) _verifyFixCore = (await import('../posture/fix-verify.js')).verifyFix;
|
|
35
|
+
return _verifyFixCore;
|
|
36
|
+
}
|
|
24
37
|
|
|
25
38
|
const MAX_FILES_PER_SCAN = 1024;
|
|
26
39
|
const MAX_FILE_BYTES = 500_000;
|
|
@@ -315,6 +328,7 @@ export const scan_diff = {
|
|
|
315
328
|
fileContents[rel] = content;
|
|
316
329
|
}
|
|
317
330
|
|
|
331
|
+
const runScan = await getRunScan();
|
|
318
332
|
const result = await runScan(sessionRoot, { network: false, fileContents });
|
|
319
333
|
const wantSet = new Set(Object.keys(fileContents));
|
|
320
334
|
const sevRank = { info: 0, low: 1, medium: 2, high: 3, critical: 4 };
|
|
@@ -588,6 +602,7 @@ export const verify_fix = {
|
|
|
588
602
|
confined[relPath] = String(content);
|
|
589
603
|
}
|
|
590
604
|
try {
|
|
605
|
+
const verifyFixCore = await getVerifyFixCore();
|
|
591
606
|
const r = await verifyFixCore({
|
|
592
607
|
scanRoot: ctx.sessionRoot,
|
|
593
608
|
originalFindingStableId: stable_id,
|
package/src/sca/base-images.json
CHANGED
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"14": { "sev": "critical", "eol": "2023-04-30", "message": "Node.js 14 reached EOL on 2023-04-30." },
|
|
33
33
|
"16": { "sev": "high", "eol": "2023-09-11", "message": "Node.js 16 reached EOL on 2023-09-11." },
|
|
34
34
|
"18": { "sev": "low", "eol": "2025-04-30", "message": "Node.js 18 enters EOL on 2025-04-30." },
|
|
35
|
-
"latest": { "sev": "low", "eol": null, "message": "node:latest is a floating tag — pin to an LTS (e.g. node:
|
|
35
|
+
"latest": { "sev": "low", "eol": null, "message": "node:latest is a floating tag — pin to an LTS (e.g. node:24-alpine)." }
|
|
36
36
|
},
|
|
37
37
|
"python": {
|
|
38
38
|
"2": { "sev": "critical", "eol": "2020-01-01", "message": "Python 2 reached EOL on 2020-01-01. Migrate to Python 3." },
|