circle-ir-ai 2.94.0 → 2.96.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 +135 -0
- package/dist/agents/mastra/workflow.d.ts.map +1 -1
- package/dist/agents/mastra/workflow.js +58 -4
- package/dist/agents/mastra/workflow.js.map +1 -1
- package/dist/security-scan/sink-filters.d.ts.map +1 -1
- package/dist/security-scan/sink-filters.js +10 -0
- package/dist/security-scan/sink-filters.js.map +1 -1
- package/dist/security-scan/source-classifier.d.ts.map +1 -1
- package/dist/security-scan/source-classifier.js +65 -4
- package/dist/security-scan/source-classifier.js.map +1 -1
- package/dist/skills/code-threat-patterns.d.ts +5 -0
- package/dist/skills/code-threat-patterns.d.ts.map +1 -1
- package/dist/skills/code-threat-patterns.js +152 -0
- package/dist/skills/code-threat-patterns.js.map +1 -1
- package/dist/skills/instruction-safety.d.ts +16 -11
- package/dist/skills/instruction-safety.d.ts.map +1 -1
- package/dist/skills/instruction-safety.js +222 -18
- package/dist/skills/instruction-safety.js.map +1 -1
- package/dist/skills/types.d.ts +1 -1
- package/dist/skills/types.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -125,6 +125,39 @@ export const NON_TRUST_BOUNDARY_SOURCE_TYPES = new Set([
|
|
|
125
125
|
'plugin_param',
|
|
126
126
|
'constructor_field',
|
|
127
127
|
]);
|
|
128
|
+
/**
|
|
129
|
+
* HTTP-family trust-boundary types subject to the #264 Defect-3 corroboration
|
|
130
|
+
* gate. When one of these is claimed on a *bare method parameter* (as opposed to
|
|
131
|
+
* an HTTP call site like `request.getParameter(...)`), the parameter must earn
|
|
132
|
+
* the trust boundary via controller-class or param-annotation evidence — else it
|
|
133
|
+
* is a mis-tag (the pre-3.214 Rust-extractor `Path`→`http_param`, or LLM
|
|
134
|
+
* free-form discovery) and is demoted to `LIBRARY_API`. Non-HTTP boundary types
|
|
135
|
+
* (`url_param`, `dom_input`, `file_upload`, `io_input`, `user_input`, …) are not
|
|
136
|
+
* gated — they aren't produced by the method-param mis-tag path.
|
|
137
|
+
*/
|
|
138
|
+
const HTTP_BOUNDARY_TYPES = new Set([
|
|
139
|
+
'http_param',
|
|
140
|
+
'http_query',
|
|
141
|
+
'http_path',
|
|
142
|
+
'http_header',
|
|
143
|
+
'http_cookie',
|
|
144
|
+
'http_body',
|
|
145
|
+
'http_request',
|
|
146
|
+
'request_param',
|
|
147
|
+
'request_body',
|
|
148
|
+
]);
|
|
149
|
+
/**
|
|
150
|
+
* Internal `NON_TRUST_BOUNDARY_SOURCE_TYPES` that classify to a capped bucket
|
|
151
|
+
* directly (#264). Without this, a `plugin_param` / `config_param` source fell
|
|
152
|
+
* through to `UNKNOWN`, where `SINK_SHAPE_SUFFICIENT_CWES` (sql/code/deser/…)
|
|
153
|
+
* passes the verifier's critical straight through — the Flyway schema-history
|
|
154
|
+
* `plugin_param → CWE-89` critical FP class. `interprocedural_param` /
|
|
155
|
+
* `constructor_field` / the second-order `*_input` types are deliberately NOT
|
|
156
|
+
* mapped here: they can carry real cross-method / second-order taint and must
|
|
157
|
+
* keep their existing fall-through behaviour to preserve recall.
|
|
158
|
+
*/
|
|
159
|
+
const INTERNAL_CONFIG_SOURCE_TYPES = new Set(['env_input', 'env_var', 'cli_arg', 'config_param']);
|
|
160
|
+
const INTERNAL_PLUMBING_SOURCE_TYPES = new Set(['plugin_param']);
|
|
128
161
|
/**
|
|
129
162
|
* Annotations on the enclosing method's parameters that mark a
|
|
130
163
|
* trust-boundary source — even when the source-line code itself
|
|
@@ -286,14 +319,42 @@ function annotationsInclude(annotations, targets) {
|
|
|
286
319
|
export function classifySource(source, types) {
|
|
287
320
|
if (!source)
|
|
288
321
|
return 'UNKNOWN';
|
|
289
|
-
// ---- Signal 1: source type tag (cheapest, most specific) ------------
|
|
290
322
|
const sourceType = (source.type ?? '').toString();
|
|
291
|
-
|
|
292
|
-
return 'TRUST_BOUNDARY';
|
|
293
|
-
// ---- Signal 2: AST context — enclosing class + method ---------------
|
|
323
|
+
// ---- AST context — enclosing class + method (hoisted; used below) ----
|
|
294
324
|
const scope = findEnclosingScope(types, source.line);
|
|
295
325
|
const enclosingType = scope.type;
|
|
296
326
|
const enclosingMethod = scope.method;
|
|
327
|
+
// ---- Signal 1: source type tag (cheapest, most specific) ------------
|
|
328
|
+
if (TRUST_BOUNDARY_SOURCE_TYPES.has(sourceType)) {
|
|
329
|
+
// #264 Defect 3 — an HTTP-family tag on a bare method PARAMETER must earn
|
|
330
|
+
// the trust boundary via corroboration (controller class or a param
|
|
331
|
+
// annotation like @RequestParam / @QueryParam). Without it — a library /
|
|
332
|
+
// build-time param the Rust extractor mis-tagged `http_param` (pre-3.214),
|
|
333
|
+
// or an LLM free-form discovery — demote to LIBRARY_API (≤ medium). This
|
|
334
|
+
// only fires when the tagged source *is* an enclosing-method parameter;
|
|
335
|
+
// call-based sources (`request.getParameter(...)` → local var) and no-AST
|
|
336
|
+
// plugins don't match a parameter, so they keep TRUST_BOUNDARY unchanged.
|
|
337
|
+
if (HTTP_BOUNDARY_TYPES.has(sourceType) && types && source.variable) {
|
|
338
|
+
const param = enclosingMethod?.parameters?.find((p) => p.name === source.variable);
|
|
339
|
+
if (param) {
|
|
340
|
+
const corroborated = (!!enclosingType &&
|
|
341
|
+
annotationsInclude(enclosingType.annotations, CONTROLLER_CLASS_ANNOTATIONS)) ||
|
|
342
|
+
annotationsInclude(param.annotations, TRUST_BOUNDARY_ANNOTATIONS);
|
|
343
|
+
if (!corroborated)
|
|
344
|
+
return 'LIBRARY_API';
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
return 'TRUST_BOUNDARY';
|
|
348
|
+
}
|
|
349
|
+
// ---- Signal 1b: internal-plumbing source types (#264) ---------------
|
|
350
|
+
// Explicitly non-boundary types map straight to their capped bucket rather
|
|
351
|
+
// than falling to UNKNOWN (where SINK_SHAPE_SUFFICIENT_CWES would pass a
|
|
352
|
+
// verifier `critical` through). See INTERNAL_*_SOURCE_TYPES for the scoping
|
|
353
|
+
// rationale (interprocedural / constructor_field / second-order excluded).
|
|
354
|
+
if (INTERNAL_CONFIG_SOURCE_TYPES.has(sourceType))
|
|
355
|
+
return 'CONFIG';
|
|
356
|
+
if (INTERNAL_PLUMBING_SOURCE_TYPES.has(sourceType))
|
|
357
|
+
return 'LIBRARY_API';
|
|
297
358
|
// 2a. Controller class — handler params are trust-boundary even when
|
|
298
359
|
// not individually annotated.
|
|
299
360
|
if (enclosingType &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source-classifier.js","sourceRoot":"","sources":["../../src/security-scan/source-classifier.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"source-classifier.js","sourceRoot":"","sources":["../../src/security-scan/source-classifier.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,11 @@
|
|
|
19
19
|
* - api_base_url_hijack (#38) — rewrites ANTHROPIC_BASE_URL / apiBaseUrl to a relay
|
|
20
20
|
* - pretrust_hook_injection (#39) — writes a SessionStart hook that curl|bash from network
|
|
21
21
|
* - suspicious_archive_download (#26) — fetch password-protected archive → extract → run
|
|
22
|
+
* - credential_exfiltration (#3) — reads ~/.aws / ~/.ssh / gh hosts → network egress
|
|
23
|
+
* - config_injection (#14) — writes .cursor/mcp.json / claude_desktop_config.json
|
|
24
|
+
* - invisible_characters (#5) — zero-width / invisible unicode in SKILL.md
|
|
25
|
+
* - bidi_override (#5) — bidirectional-override unicode in SKILL.md
|
|
26
|
+
* - repository_hijacking (#15) — ownership discontinuity / abandoned-repo claim (manifest)
|
|
22
27
|
*
|
|
23
28
|
* Design rules:
|
|
24
29
|
* - Every detector requires a *combination* of signals (e.g. an archive step
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code-threat-patterns.d.ts","sourceRoot":"","sources":["../../src/skills/code-threat-patterns.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"code-threat-patterns.d.ts","sourceRoot":"","sources":["../../src/skills/code-threat-patterns.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAoB,MAAM,YAAY,CAAC;AAqmB9E;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,WAAW,GAAG,YAAY,EAAE,CAiB5E"}
|
|
@@ -19,6 +19,11 @@
|
|
|
19
19
|
* - api_base_url_hijack (#38) — rewrites ANTHROPIC_BASE_URL / apiBaseUrl to a relay
|
|
20
20
|
* - pretrust_hook_injection (#39) — writes a SessionStart hook that curl|bash from network
|
|
21
21
|
* - suspicious_archive_download (#26) — fetch password-protected archive → extract → run
|
|
22
|
+
* - credential_exfiltration (#3) — reads ~/.aws / ~/.ssh / gh hosts → network egress
|
|
23
|
+
* - config_injection (#14) — writes .cursor/mcp.json / claude_desktop_config.json
|
|
24
|
+
* - invisible_characters (#5) — zero-width / invisible unicode in SKILL.md
|
|
25
|
+
* - bidi_override (#5) — bidirectional-override unicode in SKILL.md
|
|
26
|
+
* - repository_hijacking (#15) — ownership discontinuity / abandoned-repo claim (manifest)
|
|
22
27
|
*
|
|
23
28
|
* Design rules:
|
|
24
29
|
* - Every detector requires a *combination* of signals (e.g. an archive step
|
|
@@ -89,6 +94,36 @@ const META = {
|
|
|
89
94
|
severity: 'critical',
|
|
90
95
|
title: 'Password-protected archive bootstrap (fetch → extract with password → run)',
|
|
91
96
|
},
|
|
97
|
+
credential_exfiltration: {
|
|
98
|
+
type: 'credential_exfiltration',
|
|
99
|
+
cwe: 'CWE-522', // insufficiently protected credentials
|
|
100
|
+
severity: 'critical',
|
|
101
|
+
title: 'Credential exfiltration (reads ~/.aws / ~/.ssh / gh hosts → network egress)',
|
|
102
|
+
},
|
|
103
|
+
config_injection: {
|
|
104
|
+
type: 'config_injection',
|
|
105
|
+
cwe: 'CWE-829', // inclusion of functionality from an untrusted control sphere
|
|
106
|
+
severity: 'high',
|
|
107
|
+
title: 'Host-agent config injection (writes .cursor/mcp.json / claude_desktop_config.json)',
|
|
108
|
+
},
|
|
109
|
+
invisible_characters: {
|
|
110
|
+
type: 'invisible_characters',
|
|
111
|
+
cwe: 'CWE-451', // UI misrepresentation of critical information
|
|
112
|
+
severity: 'high',
|
|
113
|
+
title: 'Invisible / zero-width unicode in the instruction file',
|
|
114
|
+
},
|
|
115
|
+
bidi_override: {
|
|
116
|
+
type: 'bidi_override',
|
|
117
|
+
cwe: 'CWE-451',
|
|
118
|
+
severity: 'high',
|
|
119
|
+
title: 'Bidirectional-override unicode in the instruction file (Trojan-Source style)',
|
|
120
|
+
},
|
|
121
|
+
repository_hijacking: {
|
|
122
|
+
type: 'repository_hijacking',
|
|
123
|
+
cwe: 'CWE-345', // insufficient verification of data authenticity (trusted-channel takeover)
|
|
124
|
+
severity: 'high',
|
|
125
|
+
title: 'Repository hijacking / ownership discontinuity (abandoned-repo claim under an official source)',
|
|
126
|
+
},
|
|
92
127
|
};
|
|
93
128
|
// ---------------------------------------------------------------------------
|
|
94
129
|
// Shared signal helpers
|
|
@@ -337,6 +372,43 @@ function scanFile(path, content) {
|
|
|
337
372
|
});
|
|
338
373
|
}
|
|
339
374
|
}
|
|
375
|
+
// ---- SR#3 credential_exfiltration ------------------------------------
|
|
376
|
+
// Reads a credential/secret file (~/.aws/credentials, ~/.ssh/id_rsa, gh
|
|
377
|
+
// hosts, .netrc) AND ships it out. A skill that reads credentials without
|
|
378
|
+
// egress, or has egress without a credential read, does not fire.
|
|
379
|
+
{
|
|
380
|
+
const CRED_FILE = /\.aws\/credentials|\.ssh\/id_(rsa|ed25519|dsa)\b|\.config\/gh\/hosts|\.netrc\b|\/etc\/(shadow|passwd)\b|\bcredentials\.json\b|\.docker\/config\.json/i;
|
|
381
|
+
if (CRED_FILE.test(content) && fileHasEgress) {
|
|
382
|
+
const at = firstLineMatching(lines, CRED_FILE);
|
|
383
|
+
hits.push({
|
|
384
|
+
key: 'credential_exfiltration',
|
|
385
|
+
line: at.n,
|
|
386
|
+
snippet: at.text,
|
|
387
|
+
confidence: 0.9,
|
|
388
|
+
detail: 'reads local credential files and sends them to a network endpoint',
|
|
389
|
+
});
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
// ---- SR#14 config_injection ------------------------------------------
|
|
393
|
+
// Writes an agent MCP/host config (.cursor/mcp.json, Claude Desktop
|
|
394
|
+
// claude_desktop_config.json, .claude/settings) — planting untrusted MCP
|
|
395
|
+
// servers or settings. Requires a WRITE to a recognized config path; a skill
|
|
396
|
+
// that only documents MCP config in prose (safe-SR-B14-mcp-docs, no code)
|
|
397
|
+
// stays clean.
|
|
398
|
+
{
|
|
399
|
+
const CONFIG_PATH = /claude_desktop_config\.json|\.cursor\/mcp\.json|\bmcp\.json\b|\.claude\/settings\.json|mcpServers/i;
|
|
400
|
+
const WRITE_OP = /\.write_text\s*\(|\bwriteFileSync\b|\bfs\.writeFile\b|\bopen\s*\([^)]*['"][wa]\+?['"]|>\s*[^>\n]*\.(json)\b|\becho\b[^\n]*>\s*\S+\.json/i;
|
|
401
|
+
if (CONFIG_PATH.test(content) && WRITE_OP.test(content)) {
|
|
402
|
+
const at = firstLineMatching(lines, /claude_desktop_config|\.cursor\/mcp|\.claude\/settings|mcpServers/i);
|
|
403
|
+
hits.push({
|
|
404
|
+
key: 'config_injection',
|
|
405
|
+
line: at.n,
|
|
406
|
+
snippet: at.text,
|
|
407
|
+
confidence: 0.85,
|
|
408
|
+
detail: 'writes host-agent MCP/settings config (planting untrusted servers)',
|
|
409
|
+
});
|
|
410
|
+
}
|
|
411
|
+
}
|
|
340
412
|
return hits.map((h) => hitToFinding(path, h));
|
|
341
413
|
}
|
|
342
414
|
// ---------------------------------------------------------------------------
|
|
@@ -428,6 +500,82 @@ function scanArchiveBootstrap(artifact, text) {
|
|
|
428
500
|
];
|
|
429
501
|
}
|
|
430
502
|
// ---------------------------------------------------------------------------
|
|
503
|
+
// SR#5 — invisible / bidi unicode in the instruction file
|
|
504
|
+
// ---------------------------------------------------------------------------
|
|
505
|
+
//
|
|
506
|
+
// Legitimate SKILL.md prose is plain text. Zero-width / invisible codepoints
|
|
507
|
+
// (used to smuggle hidden instructions past a human reviewer) and
|
|
508
|
+
// bidirectional-override codepoints (Trojan-Source, reorders visible text) are
|
|
509
|
+
// high-signal steganographic-instruction markers the LLM pass alone misses.
|
|
510
|
+
// Zero-width / invisible: ZWSP..ZWJ, WJ..invisible-ops, BOM, Mongolian vowel
|
|
511
|
+
// sep, soft hyphen, combining grapheme joiner.
|
|
512
|
+
const INVISIBLE_CHARS = /[--͏]/;
|
|
513
|
+
const INVISIBLE_CHARS_G = /[--͏]/g;
|
|
514
|
+
// Bidi override/isolate: LRE/RLE/PDF/LRO/RLO, LRI/RLI/FSI/PDI.
|
|
515
|
+
const BIDI_OVERRIDE = /[--]/;
|
|
516
|
+
function scanUnicode(skillMd) {
|
|
517
|
+
if (!skillMd)
|
|
518
|
+
return [];
|
|
519
|
+
const out = [];
|
|
520
|
+
if (INVISIBLE_CHARS.test(skillMd)) {
|
|
521
|
+
const meta = META.invisible_characters;
|
|
522
|
+
const count = (skillMd.match(INVISIBLE_CHARS_G) || []).length;
|
|
523
|
+
out.push({
|
|
524
|
+
type: meta.type, severity: meta.severity, artifact: 'SKILL.md', title: meta.title,
|
|
525
|
+
description: `${meta.title}: ${count} zero-width/invisible codepoint(s) in the instruction text.`,
|
|
526
|
+
evidence: { detector: 'invisible_characters', detail: `${count} invisible codepoints` },
|
|
527
|
+
confidence: 0.9, cwe: meta.cwe, location: { line: 1 },
|
|
528
|
+
});
|
|
529
|
+
}
|
|
530
|
+
if (BIDI_OVERRIDE.test(skillMd)) {
|
|
531
|
+
const meta = META.bidi_override;
|
|
532
|
+
out.push({
|
|
533
|
+
type: meta.type, severity: meta.severity, artifact: 'SKILL.md', title: meta.title,
|
|
534
|
+
description: `${meta.title}: bidirectional-override codepoint(s) that can reorder the visible instruction text.`,
|
|
535
|
+
evidence: { detector: 'bidi_override', detail: 'bidi override codepoints present' },
|
|
536
|
+
confidence: 0.9, cwe: meta.cwe, location: { line: 1 },
|
|
537
|
+
});
|
|
538
|
+
}
|
|
539
|
+
return out;
|
|
540
|
+
}
|
|
541
|
+
// ---------------------------------------------------------------------------
|
|
542
|
+
// SR#15 — repository hijacking / ownership discontinuity
|
|
543
|
+
// ---------------------------------------------------------------------------
|
|
544
|
+
//
|
|
545
|
+
// Trusted-channel takeover: the manifest keeps an official `source` URL but the
|
|
546
|
+
// `author` changed from `previous_author`, or declares an `ownership` that
|
|
547
|
+
// signals an abandoned-repo claim / unverified transfer. Consistent ownership
|
|
548
|
+
// (`ownership: stable`, author == previous_author) stays clean. Manifests with
|
|
549
|
+
// no ownership fields need registry history and are out of scope (an accepted
|
|
550
|
+
// FN, per the SR-C11-history-only pin).
|
|
551
|
+
function scanOwnership(skillMd) {
|
|
552
|
+
const fm = /^---\r?\n([\s\S]*?)\r?\n---/.exec(skillMd ?? '');
|
|
553
|
+
if (!fm)
|
|
554
|
+
return [];
|
|
555
|
+
const block = fm[1];
|
|
556
|
+
const field = (k) => (new RegExp(`^\\s*${k}\\s*:\\s*(.+?)\\s*$`, 'im').exec(block)?.[1] || '').trim();
|
|
557
|
+
const ownership = field('ownership').toLowerCase();
|
|
558
|
+
const author = field('author').toLowerCase();
|
|
559
|
+
const prevAuthor = field('previous_author').toLowerCase();
|
|
560
|
+
const hijackOwnership = /abandon|takeover|unverified|transferred|reclaim|\bclaimed\b/.test(ownership);
|
|
561
|
+
const authorDiscontinuity = !!prevAuthor && !!author && prevAuthor !== author;
|
|
562
|
+
if (!hijackOwnership && !authorDiscontinuity)
|
|
563
|
+
return [];
|
|
564
|
+
const meta = META.repository_hijacking;
|
|
565
|
+
const detail = hijackOwnership
|
|
566
|
+
? `ownership declared "${ownership}"${authorDiscontinuity ? ` with an author change (${prevAuthor} → ${author})` : ''}`
|
|
567
|
+
: `author changed (${prevAuthor} → ${author}) under an unchanged source URL`;
|
|
568
|
+
return [
|
|
569
|
+
{
|
|
570
|
+
type: meta.type, severity: meta.severity, artifact: 'SKILL.md', title: meta.title,
|
|
571
|
+
description: `${meta.title} in SKILL.md: ${detail}.`,
|
|
572
|
+
evidence: { detector: 'repository_hijacking', detail },
|
|
573
|
+
confidence: hijackOwnership && authorDiscontinuity ? 0.92 : 0.8,
|
|
574
|
+
cwe: meta.cwe, location: { line: 1 },
|
|
575
|
+
},
|
|
576
|
+
];
|
|
577
|
+
}
|
|
578
|
+
// ---------------------------------------------------------------------------
|
|
431
579
|
// Public API
|
|
432
580
|
// ---------------------------------------------------------------------------
|
|
433
581
|
/**
|
|
@@ -448,6 +596,10 @@ export function detectCodeThreatPatterns(bundle) {
|
|
|
448
596
|
findings.push(...scanDynamicContext(bundle.skillMd ?? ''));
|
|
449
597
|
// SR#26 — password-archive bootstrap, usually a fenced block in SKILL.md.
|
|
450
598
|
findings.push(...scanArchiveBootstrap('SKILL.md', bundle.skillMd ?? ''));
|
|
599
|
+
// SR#5 — invisible / bidi unicode smuggling in the instruction file.
|
|
600
|
+
findings.push(...scanUnicode(bundle.skillMd ?? ''));
|
|
601
|
+
// SR#15 — repository hijacking / ownership discontinuity in the manifest.
|
|
602
|
+
findings.push(...scanOwnership(bundle.skillMd ?? ''));
|
|
451
603
|
return findings;
|
|
452
604
|
}
|
|
453
605
|
//# sourceMappingURL=code-threat-patterns.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code-threat-patterns.js","sourceRoot":"","sources":["../../src/skills/code-threat-patterns.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"code-threat-patterns.js","sourceRoot":"","sources":["../../src/skills/code-threat-patterns.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,23 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Instruction Safety Classifier
|
|
3
3
|
*
|
|
4
|
-
* Dedicated LLM pass that reads SKILL.md (
|
|
5
|
-
* directly classifies for the
|
|
6
|
-
* skill registries. This is a separate concern
|
|
7
|
-
* which builds a CircleIR for capability
|
|
4
|
+
* Dedicated LLM pass that reads SKILL.md (including its YAML frontmatter
|
|
5
|
+
* `description:` field) and directly classifies for the LLM-agent instruction
|
|
6
|
+
* threat categories relevant to skill registries. This is a separate concern
|
|
7
|
+
* from NaturalLanguageExtractor, which builds a CircleIR for capability
|
|
8
|
+
* mismatch detection.
|
|
8
9
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
10
|
+
* Base six (per Runics scoring pipeline): PROMPT_INJECTION (CWE-94),
|
|
11
|
+
* DATA_EXFILTRATION (CWE-200), HIDDEN_URL (CWE-601), HARDCODED_CREDENTIAL
|
|
12
|
+
* (CWE-798), CAPABILITY_ESCALATION (CWE-345), SOCIAL_ENGINEERING (CWE-74).
|
|
13
|
+
*
|
|
14
|
+
* SR-A instruction-safety detectors (skillsregistry #6,#7,#11,#22,#28,#31,#32,#37):
|
|
15
|
+
* SYSTEM_PROMPT_LEAK, MULTI_AGENT_INFECTION, THIRD_PARTY_CONTENT_INJECTION,
|
|
16
|
+
* GOAL_HIJACKING, CONTENT_MANIPULATION, CONTEXTUAL_DUAL_USE_EXFIL,
|
|
17
|
+
* DESCRIPTION_INJECTION, INDIRECT_INJECTION, CONDITIONAL_INSTRUCTION,
|
|
18
|
+
* SAFETY_SUBVERSION, DEFERRED_EXECUTION, SCANNER_DIRECTED_INJECTION,
|
|
19
|
+
* CROSS_SKILL_INTERFERENCE. All ride the single existing LLM call — no new
|
|
20
|
+
* call sites (P4).
|
|
16
21
|
*/
|
|
17
22
|
import type { SkillFinding } from './types.js';
|
|
18
23
|
import type { LLMConfig } from '../llm/config.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instruction-safety.d.ts","sourceRoot":"","sources":["../../src/skills/instruction-safety.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"instruction-safety.d.ts","sourceRoot":"","sources":["../../src/skills/instruction-safety.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAoB,MAAM,YAAY,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAuJlD;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAC7C,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC7B,OAAO,CAAC,YAAY,EAAE,CAAC,CAkOzB"}
|