@blamejs/exceptd-skills 0.12.27 → 0.12.28
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/AGENTS.md +3 -0
- package/CHANGELOG.md +22 -0
- package/data/_indexes/_meta.json +22 -19
- package/data/_indexes/activity-feed.json +26 -5
- package/data/_indexes/catalog-summaries.json +3 -3
- package/data/_indexes/chains.json +994 -64
- package/data/_indexes/currency.json +28 -1
- package/data/_indexes/frequency.json +428 -124
- package/data/_indexes/handoff-dag.json +70 -19
- package/data/_indexes/jurisdiction-map.json +37 -12
- package/data/_indexes/section-offsets.json +282 -0
- package/data/_indexes/stale-content.json +2 -2
- package/data/_indexes/summary-cards.json +198 -0
- package/data/_indexes/token-budget.json +168 -3
- package/data/_indexes/trigger-table.json +190 -0
- package/data/_indexes/xref.json +145 -2
- package/data/attack-techniques.json +104 -19
- package/data/framework-control-gaps.json +498 -11
- package/data/playbooks/cloud-iam-incident.json +1351 -0
- package/data/playbooks/idp-incident.json +1259 -0
- package/data/playbooks/ransomware.json +1407 -0
- package/data/rfc-references.json +44 -0
- package/manifest-snapshot.json +219 -2
- package/manifest-snapshot.sha256 +1 -1
- package/manifest.json +282 -41
- package/package.json +1 -1
- package/sbom.cdx.json +7 -7
- package/skills/cloud-iam-incident/skill.md +419 -0
- package/skills/idp-incident-response/skill.md +352 -0
- package/skills/ransomware-response/skill.md +374 -0
package/AGENTS.md
CHANGED
|
@@ -353,6 +353,9 @@ Maintainers convert approved requests into skill files. The contributor is credi
|
|
|
353
353
|
| container security, kubernetes, cis k8s, pod security standards, kyverno, gatekeeper, falco, tetragon, admission policy | container-runtime-security |
|
|
354
354
|
| mlops security, model registry, training data integrity, mlflow, kubeflow, vertex ai, sagemaker, hugging face, model signing, drift detection | mlops-security |
|
|
355
355
|
| incident response, ir playbook, csirt, picerl, nist 800-61, iso 27035, breach notification, bec incident, ai incident | incident-response-playbook |
|
|
356
|
+
| ransomware response, decryptor, no more ransom, ofac sdn, cyber insurance, immutable backup, double extortion, phi exfil before encrypt, lockbit, alphv, akira | ransomware-response |
|
|
357
|
+
| idp incident, okta tenant compromise, entra id, auth0, saml token forgery, oauth consent abuse, federated trust modification, midnight blizzard, scattered spider | idp-incident-response |
|
|
358
|
+
| cloud iam incident, aws account takeover, gcp account takeover, azure account takeover, cross-account assume-role, imds, access key leak, snowflake breach, scim, workload identity | cloud-iam-incident |
|
|
356
359
|
| email security, anti-phishing, dmarc, dkim, spf, bimi, arc, mta-sts, bec, vishing, deepfake phishing | email-security-anti-phishing |
|
|
357
360
|
| age gate, age verification, coppa, cipa, california aadc, uk children's code, kosa, gdpr article 8, dsa article 28, parental consent, csam, child safety, children's online safety | age-gates-child-safety |
|
|
358
361
|
| forward watch, watchlist, upcoming standards, horizon scan | `node orchestrator/index.js watchlist` (add `--by-skill` to invert) |
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.12.28 — 2026-05-15
|
|
4
|
+
|
|
5
|
+
Incident-response cluster — three new playbooks and skills covering identity-provider tenant compromise, cloud-IAM account takeover, and ransomware response. The existing `incident-response-playbook` skill stays as the generic PICERL backbone; the new surface adds attack-class-specific depth for the three IR scenarios that dominate 2025-2026 breach reporting.
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
**`idp-incident` playbook + `idp-incident-response` skill.** Tenant-compromise response for Okta / Entra ID / Auth0 / Ping / OneLogin. Covers federated-trust modification, OAuth consent abuse, SAML token forgery, cross-tenant relationship abuse, dormant service-account reactivation, and help-desk social engineering. Maps T1078.004, T1098.001, T1556.007, T1606.002, T1199. Eight jurisdiction clocks (GDPR Art.33/34, NIS2 Art.23, DORA Art.19, NYDFS 500.17, CCPA/CPRA, AU NDB, UK GDPR). Detects on unauthorized consent grants from non-corp tenants, anomalous federated-trust additions, MFA factor swaps without password reset, recent high-privilege role assignments, and cross-tenant assumption anomalies — each indicator carries explicit false-positive checks.
|
|
10
|
+
|
|
11
|
+
**`cloud-iam-incident` playbook + `cloud-iam-incident` skill.** Account-takeover response for AWS / GCP / Azure. Covers cross-account assume-role abuse, IMDS exposure, managed-identity token replay, access-key leakage to public repositories, federated-trust attacks against IAM Identity Center, and crypto-mining detection via GPU-instance creation. Maps T1078.004, T1098.001, T1098.003, T1136.003, T1538, T1552.005, T1562.008, T1580. Ten jurisdiction clocks including SG PDPA, JP APPI, and US-CA. Detects on root-login ASN anomalies, mass IAM-user creation outside IaC, unused-region resource creation, cross-account assume-role anomalies, IMDSv1 legacy access, KMS key-policy self-grants, and S3-bucket public-grant events.
|
|
12
|
+
|
|
13
|
+
**`ransomware` playbook + `ransomware-response` skill.** Ransomware-specific incident response — extends the generic `incident-response-playbook` with the four decision properties that don't appear in standard IR frameworks: OFAC SDN sanctions check (BLOCKING for payment posture; payment to a sanctioned threat actor is a federal-law violation in the US), decryptor availability (No More Ransom + vendor-specific decryptors), cyber-insurance carrier notification posture (most policies require 24-hour notification), and immutable-backup viability versus replication-only "backups." Sixteen jurisdiction obligations spanning OFAC (0-hour BLOCKING), insurance carrier (24h), NIS2 (24h), DORA (4h), GDPR (72h), SEC 8-K (4 business days), HIPAA, CCPA, NYDFS ransom-event notification, and CIRCIA. Detects on mass file-extension change events, shadow-copy deletion outside maintenance windows, encrypted-file-extension growth rate anomalies, BloodHound-class AD reconnaissance, and large outbound transfers 24-72 hours before encryption (exfil-before-encrypt as distinct breach class).
|
|
14
|
+
|
|
15
|
+
### Internal
|
|
16
|
+
|
|
17
|
+
- Skill count 39 → 42 (Ed25519 manifest re-signed).
|
|
18
|
+
- Playbook count 13 → 16 (validator `tests/validate-playbooks.test.js` updated).
|
|
19
|
+
- RFC catalog: added RFC-7591 (OAuth 2.0 Dynamic Client Registration), RFC-8693 (OAuth 2.0 Token Exchange), RFC-9068 (JWT Profile for OAuth 2.0 Access Tokens).
|
|
20
|
+
- ATT&CK techniques added to resolution catalog: T1098.001, T1098.003, T1136.003, T1538, T1562.008, T1580, T1606.002.
|
|
21
|
+
- Framework-control-gaps catalog: 22 new entries covering federated-identity gaps (NIST 800-53 IA-5, ISO 27001 A.5.16-17, SOC 2 CC6, UK CAF B2, AU ISM-1559), cloud-IAM gaps (FedRAMP IL5, NIST AC-2 cross-account, ISO 27017, AWS Security Hub coverage, AU ISM-1546), and ransomware-specific gaps (OFAC SDN payment block, cyber-insurance 24h notification, EU Reg 2014/833 cyber sanctions, immutable-backup recovery, decryptor availability pre-decision, PHI-exfil-before-encrypt breach class).
|
|
22
|
+
- AGENTS.md Quick Skill Reference table extended with the three new skills.
|
|
23
|
+
|
|
24
|
+
|
|
3
25
|
## 0.12.27 — 2026-05-15
|
|
4
26
|
|
|
5
27
|
**Patch: opt-in `--bundle-deterministic` mode for reproducible CSAF + OpenVEX + close-envelope bytes. Closes cycle 6 III P2-E + cycle 7 CCC bundle-non-determinism finding.**
|
package/data/_indexes/_meta.json
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema_version": "1.1.0",
|
|
3
|
-
"generated_at": "2026-05-
|
|
3
|
+
"generated_at": "2026-05-15T23:31:25.676Z",
|
|
4
4
|
"generator": "scripts/build-indexes.js",
|
|
5
|
-
"source_count":
|
|
5
|
+
"source_count": 54,
|
|
6
6
|
"source_hashes": {
|
|
7
|
-
"manifest.json": "
|
|
7
|
+
"manifest.json": "41d91731d616c0e2514783212f7eb32761298ab40cde66aa6076724aff729190",
|
|
8
8
|
"data/atlas-ttps.json": "db52a797f6ba7c9a61fd7b1225ebbc268ddf21abe29a106c4246c2ed2e617b86",
|
|
9
|
-
"data/attack-techniques.json": "
|
|
9
|
+
"data/attack-techniques.json": "51f60819aef36e960fd768e44dcc725e137781534fbbb028e5ef6baa21defa1d",
|
|
10
10
|
"data/cve-catalog.json": "a2acad16f5e3856b07019fa00110e9dcb38ec5cc71b318d0e164bfcba7f4f644",
|
|
11
11
|
"data/cwe-catalog.json": "19893d2a7139d86ff3fcf296b0e6cda10e357727a1d1ffb56af282104e99157a",
|
|
12
12
|
"data/d3fend-catalog.json": "d219520c8d3eb61a270b25ea60f64721035e98a8d5d51d1a4e1f1140d9a586f9",
|
|
13
13
|
"data/dlp-controls.json": "8ea8d907aea0a2cfd772b048a62122a322ba3284a5c36a272ad5e9d392564cb5",
|
|
14
14
|
"data/exploit-availability.json": "a9eeda95d24b56c28a0d0178fc601b531653e2ba7dc857160b35ad23ad6c7471",
|
|
15
|
-
"data/framework-control-gaps.json": "
|
|
15
|
+
"data/framework-control-gaps.json": "8d6cbf6c8fc38060c5cea9f300a61b4d0cbbda5e490983bd6780d0b0ae841e5a",
|
|
16
16
|
"data/global-frameworks.json": "0168825497e03f079274c9da2e5529310a2ba5bd7c7da7c93acd0b66ed845b8a",
|
|
17
|
-
"data/rfc-references.json": "
|
|
17
|
+
"data/rfc-references.json": "a11de1bcff62b8f5e0bb8ce47a9b3fa26cf733ba283a8f1c9c4185d74efaad3e",
|
|
18
18
|
"data/zeroday-lessons.json": "d960e5f8ca7a83c10194cd60207e13046a7eee1b8793e2f3de79475db283f800",
|
|
19
19
|
"skills/kernel-lpe-triage/skill.md": "8e94bfd38d6db47342fbbe95a0c8df8f7c38743982c13e9de6a1c59cd3783d33",
|
|
20
20
|
"skills/ai-attack-surface/skill.md": "13e543fc92b9b27cdb647dce96a9eeb44919e0fa92ec41e8265a9981a23e7b79",
|
|
@@ -53,36 +53,39 @@
|
|
|
53
53
|
"skills/container-runtime-security/skill.md": "f06260f0c468d6a4f0409294899017edab45c98d71db1fedd7a630fe6a7bf53a",
|
|
54
54
|
"skills/mlops-security/skill.md": "e6a296fc67724aa3b026c0039f44867b44cf0926eade4fe616bfd0a4c77310bf",
|
|
55
55
|
"skills/incident-response-playbook/skill.md": "8ef7ce1246dc1329b6df3cc9de8d79d35e2c02c703dcef20f35b312b1c24fd52",
|
|
56
|
+
"skills/ransomware-response/skill.md": "ffe07ba8c196aabceb69b07dafa7a9c3ca2ec8e5ce079107f4eec82512a01be1",
|
|
56
57
|
"skills/email-security-anti-phishing/skill.md": "b5a7693b3ddbd6cd83303d092bc5e324db431245d25c4945d9f65fcffa1995e7",
|
|
57
|
-
"skills/age-gates-child-safety/skill.md": "c741d7dca9da0abb09bdebb8a02e803ce4ae9fb9a6904fb8df3ec19cae83917d"
|
|
58
|
+
"skills/age-gates-child-safety/skill.md": "c741d7dca9da0abb09bdebb8a02e803ce4ae9fb9a6904fb8df3ec19cae83917d",
|
|
59
|
+
"skills/cloud-iam-incident/skill.md": "35a9dd108679103c0eca54ea0c5b8f3db0a199975f87e20660b2c3a11440f40b",
|
|
60
|
+
"skills/idp-incident-response/skill.md": "39b5b492914e9092fe1c0b2be5af83d4ed869939996b6a201f2d0cd8142ab8f3"
|
|
58
61
|
},
|
|
59
|
-
"skill_count":
|
|
62
|
+
"skill_count": 42,
|
|
60
63
|
"catalog_count": 11,
|
|
61
64
|
"index_stats": {
|
|
62
65
|
"xref_entries": {
|
|
63
|
-
"cwe_refs":
|
|
64
|
-
"d3fend_refs":
|
|
65
|
-
"framework_gaps":
|
|
66
|
+
"cwe_refs": 36,
|
|
67
|
+
"d3fend_refs": 21,
|
|
68
|
+
"framework_gaps": 80,
|
|
66
69
|
"atlas_refs": 10,
|
|
67
|
-
"attack_refs":
|
|
68
|
-
"rfc_refs":
|
|
70
|
+
"attack_refs": 39,
|
|
71
|
+
"rfc_refs": 23,
|
|
69
72
|
"dlp_refs": 0
|
|
70
73
|
},
|
|
71
|
-
"trigger_table_entries":
|
|
74
|
+
"trigger_table_entries": 538,
|
|
72
75
|
"chains_cve_entries": 27,
|
|
73
76
|
"chains_cwe_entries": 55,
|
|
74
77
|
"jurisdictions_indexed": 29,
|
|
75
|
-
"handoff_dag_nodes":
|
|
76
|
-
"summary_cards":
|
|
77
|
-
"section_offsets_skills":
|
|
78
|
-
"token_budget_total_approx":
|
|
78
|
+
"handoff_dag_nodes": 42,
|
|
79
|
+
"summary_cards": 42,
|
|
80
|
+
"section_offsets_skills": 42,
|
|
81
|
+
"token_budget_total_approx": 397336,
|
|
79
82
|
"recipes": 8,
|
|
80
83
|
"jurisdiction_clocks": 29,
|
|
81
84
|
"did_ladders": 8,
|
|
82
85
|
"theater_fingerprints": 7,
|
|
83
86
|
"currency_action_required": 0,
|
|
84
87
|
"frequency_fields": 7,
|
|
85
|
-
"activity_feed_events":
|
|
88
|
+
"activity_feed_events": 54,
|
|
86
89
|
"catalog_summaries": 11,
|
|
87
90
|
"stale_content_findings": 3
|
|
88
91
|
},
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"_meta": {
|
|
3
3
|
"schema_version": "1.0.0",
|
|
4
4
|
"note": "Per-artifact 'last changed' feed sorted descending by date. Skill events from manifest.last_threat_review; catalog events from data/<catalog>.json _meta.last_updated.",
|
|
5
|
-
"event_count":
|
|
5
|
+
"event_count": 54
|
|
6
6
|
},
|
|
7
7
|
"events": [
|
|
8
8
|
{
|
|
@@ -12,6 +12,27 @@
|
|
|
12
12
|
"path": "skills/sector-telecom/skill.md",
|
|
13
13
|
"note": "Telecom and 5G security for mid-2026 — Salt Typhoon, Volt Typhoon, CALEA / IPA-LI gateway compromise, signaling-protocol abuse (SS7 / Diameter / GTP), 5G N6 / N9 isolation, gNB / DU / CU integrity, OEM-equipment supply-chain compromise, AI-RAN / O-RAN security"
|
|
14
14
|
},
|
|
15
|
+
{
|
|
16
|
+
"date": "2026-05-15",
|
|
17
|
+
"type": "skill_review",
|
|
18
|
+
"artifact": "ransomware-response",
|
|
19
|
+
"path": "skills/ransomware-response/skill.md",
|
|
20
|
+
"note": "Ransomware-specific incident response — OFAC SDN sanctions screening as payment-posture blocker, EU Reg 2014/833 + UK OFSI + AU DFAT + JP MOF cross-jurisdiction sanctions lookups, decryptor availability via No More Ransom + vendor-specific catalogs, cyber-insurance carrier 24h notification, negotiator-engagement legal posture, immutable-backup viability test, PHI exfil-before-encrypt as distinct breach class, parallel jurisdiction clocks"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"date": "2026-05-15",
|
|
24
|
+
"type": "skill_review",
|
|
25
|
+
"artifact": "cloud-iam-incident",
|
|
26
|
+
"path": "skills/cloud-iam-incident/skill.md",
|
|
27
|
+
"note": "Cloud-IAM incident response for AWS / GCP / Azure — account takeover, IAM role assumption abuse, access-key compromise, cross-account assume-role chains, federated-trust attacks, IMDS metadata exfiltration, and Snowflake-AA24-class IdP-to-cloud credential reuse"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"date": "2026-05-15",
|
|
31
|
+
"type": "skill_review",
|
|
32
|
+
"artifact": "idp-incident-response",
|
|
33
|
+
"path": "skills/idp-incident-response/skill.md",
|
|
34
|
+
"note": "Identity-provider incident response for mid-2026 — Okta, Entra ID, Auth0, Ping, OneLogin tenant compromise, federated-trust abuse, OAuth app consent abuse, Midnight Blizzard and Scattered Spider TTPs against the IdP control plane"
|
|
35
|
+
},
|
|
15
36
|
{
|
|
16
37
|
"date": "2026-05-15",
|
|
17
38
|
"type": "catalog_update",
|
|
@@ -26,7 +47,7 @@
|
|
|
26
47
|
"artifact": "data/attack-techniques.json",
|
|
27
48
|
"path": "data/attack-techniques.json",
|
|
28
49
|
"schema_version": "1.0.0",
|
|
29
|
-
"entry_count":
|
|
50
|
+
"entry_count": 98
|
|
30
51
|
},
|
|
31
52
|
{
|
|
32
53
|
"date": "2026-05-15",
|
|
@@ -42,7 +63,7 @@
|
|
|
42
63
|
"artifact": "data/framework-control-gaps.json",
|
|
43
64
|
"path": "data/framework-control-gaps.json",
|
|
44
65
|
"schema_version": "1.0.0",
|
|
45
|
-
"entry_count":
|
|
66
|
+
"entry_count": 109
|
|
46
67
|
},
|
|
47
68
|
{
|
|
48
69
|
"date": "2026-05-15",
|
|
@@ -58,7 +79,7 @@
|
|
|
58
79
|
"artifact": "data/rfc-references.json",
|
|
59
80
|
"path": "data/rfc-references.json",
|
|
60
81
|
"schema_version": "1.0.0",
|
|
61
|
-
"entry_count":
|
|
82
|
+
"entry_count": 41
|
|
62
83
|
},
|
|
63
84
|
{
|
|
64
85
|
"date": "2026-05-15",
|
|
@@ -371,7 +392,7 @@
|
|
|
371
392
|
"type": "manifest_review",
|
|
372
393
|
"artifact": "manifest.json",
|
|
373
394
|
"path": "manifest.json",
|
|
374
|
-
"note": "manifest threat_review_date —
|
|
395
|
+
"note": "manifest threat_review_date — 42 skills, 11 catalogs"
|
|
375
396
|
}
|
|
376
397
|
]
|
|
377
398
|
}
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"rebuild_after_days": 365,
|
|
41
41
|
"note": "Catalog must be rebuilt against the upstream ATT&CK release whenever MITRE publishes a new version. AGENTS.md external-data version-pinning rule requires the bump to be intentional, not silent. ATT&CK ships semi-annually (April + October); audit on each release for tactic moves, technique splits, and new Detection Strategies."
|
|
42
42
|
},
|
|
43
|
-
"entry_count":
|
|
43
|
+
"entry_count": 98,
|
|
44
44
|
"sample_keys": [
|
|
45
45
|
"T0001",
|
|
46
46
|
"T0017",
|
|
@@ -172,7 +172,7 @@
|
|
|
172
172
|
"rebuild_after_days": 365,
|
|
173
173
|
"note": "Per-entry last_verified governs decay. Skills depending on this catalog must check entry freshness before high-stakes use."
|
|
174
174
|
},
|
|
175
|
-
"entry_count":
|
|
175
|
+
"entry_count": 109,
|
|
176
176
|
"sample_keys": [
|
|
177
177
|
"ALL-AI-PIPELINE-INTEGRITY",
|
|
178
178
|
"ALL-MCP-TOOL-TRUST",
|
|
@@ -216,7 +216,7 @@
|
|
|
216
216
|
"rebuild_after_days": 365,
|
|
217
217
|
"note": "Per-entry last_verified governs decay. Skills depending on this catalog must check entry freshness before high-stakes use."
|
|
218
218
|
},
|
|
219
|
-
"entry_count":
|
|
219
|
+
"entry_count": 41,
|
|
220
220
|
"sample_keys": [
|
|
221
221
|
"RFC-4301",
|
|
222
222
|
"RFC-4303",
|