@blamejs/exceptd-skills 0.12.25 → 0.12.26

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 CHANGED
@@ -1,5 +1,49 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.12.26 — 2026-05-15
4
+
5
+ **Patch: sector-telecom skill ships, with supporting framework-gap and ATLAS catalog scaffolding. Closes the cycle 8 LLL P1 finding that the unmodeled RWEP signal from Salt Typhoon-class campaigns was the highest gap in the catalog.**
6
+
7
+ ### New skill: `sector-telecom`
8
+
9
+ Telecom and 5G security skill covering Salt Typhoon and Volt Typhoon TTPs, CALEA / IPA-LI gateway compromise, signaling-protocol abuse (SS7, Diameter, GTP), 5G N6 / N9 isolation, gNB / DU / CU integrity attestation, OEM-equipment supply-chain compromise, and AI-RAN / O-RAN security.
10
+
11
+ The skill walks the seven-phase contract with telecom-specific jurisdictional clocks (FCC 47 CFR 64.2011 4-business-day rule, NIS2 Art. 23 24h initial, DORA Art. 19 4h for financial-touching incidents, UK TSA 2021 + Ofcom, AU SOCI / TSSR, JP MIC, IN CERT-In 6h, SG IMDA TCCSCoP, NZ TICSA, CA Bill C-26), evidence capture for LI provisioning audit logs / gNB firmware hashes / NMS access logs / signaling-flow statistics / cross-PLMN exchange patterns / eUICC SIM-swap events / 5GC slice-isolation tests / OEM remote-support tunnel inventory / NESAS deployment posture, and the standard analyze → validate → close phases against the new framework-gap entries.
12
+
13
+ Compliance Theater Check enumerates seven posture-vs-actual tests specific to telecom: CPNI annual certification, GSMA NESAS deployment vs runtime, OEM firmware verification chain, 3GPP TR 33.926 deployment posture, ITU-T X.805 validation, signaling firewall PLMN-list refresh cadence, and LI-gateway MFA scope.
14
+
15
+ Manifest skill count 38 → 39.
16
+
17
+ ### Catalog scaffolding to support the skill
18
+
19
+ Nine telecom-specific framework-gap entries added to `data/framework-control-gaps.json` (totals 78 → 87 entries):
20
+
21
+ - **FCC-CPNI-4.1** — 47 CFR 64.2009(e) CPNI annual certification + operational compliance, gap against Salt Typhoon LI-system vector
22
+ - **FCC-Cyber-Incident-Notification-2024** — 47 CFR 64.2011 4-business-day rule, gap against LI-only compromise (no PII exfil) + signaling abuse + slow-roll campaign timing
23
+ - **NIS2-Annex-I-Telecom** — telecom as essential entity, gap against LI-gateway access controls + OEM firmware attestation + AI-RAN coverage
24
+ - **DORA-Art-21-Telecom-ICT** — ICT third-party risk through telecom services, gap against telecom-financial cadence misalignment + slice-isolation
25
+ - **UK-CAF-B5** — resilient networks principle, gap against signaling-anomaly + gNB attestation + slice-isolation outcome tests
26
+ - **AU-ISM-1556** — privileged-user MFA, gap against telecom NMS service accounts + LI-gateway operator credentials + OEM remote-support tunnels
27
+ - **GSMA-NESAS-Deployment** — NESAS product-time vs operator-attested-runtime posture gap
28
+ - **3GPP-TR-33.926** — SCAS submission-time test gap against post-deployment adversary-modified firmware + cross-spec N6/N9 isolation testing gap
29
+ - **ITU-T-X.805** — 2003 reference architecture gap against modern Salt Typhoon / signaling abuse / slice-isolation threat models
30
+
31
+ One ATLAS technique added to `data/atlas-ttps.json`:
32
+
33
+ - **AML.T0040 Tool / Plugin Compromise** — anchors the AI-RAN xApp / rApp + MCP-class plugin attack class. Real-world instances: CVE-2026-30623 (Anthropic MCP SDK stdio command-injection), three Pwn2Own Berlin 2026 collisions (Viettel Claude Code, STARLabs LM Studio, Compass OpenAI Codex). `secure_ai_v2_layer: true`, `maturity: high`.
34
+
35
+ Total ATLAS entries: 29 → 30.
36
+
37
+ ### RFC reverse-reference
38
+
39
+ `data/rfc-references.json` RFC-9622 (TAPS Architecture) `skills_referencing` array gains `sector-telecom` (paired with the existing `webapp-security` reference) to satisfy the manifest forward-reference invariant.
40
+
41
+ ### AGENTS.md Quick Skill Reference
42
+
43
+ Adds the `sector-telecom` row to the skill trigger table.
44
+
45
+ Test count: 1051 pass (5 skipped). Predeploy gates: 14/14. Skills: 39/39 signed; manifest envelope signed.
46
+
3
47
  ## 0.12.25 — 2026-05-15
4
48
 
5
49
  **Data-refresh release: catalog freshness, Hard Rule #7 AI-discovery posture, ATLAS v5.4 + ATT&CK v19 standards bumps, Pwn2Own Berlin 2026 forward-watch, NGINX Rift, framework deltas (PCI 4.0.1 / HIPAA 2026 NPRM / EU AI Act ITS / DORA RTS).**
@@ -1,20 +1,20 @@
1
1
  {
2
2
  "schema_version": "1.1.0",
3
- "generated_at": "2026-05-15T21:42:12.284Z",
3
+ "generated_at": "2026-05-15T22:17:17.497Z",
4
4
  "generator": "scripts/build-indexes.js",
5
- "source_count": 50,
5
+ "source_count": 51,
6
6
  "source_hashes": {
7
- "manifest.json": "f239465cd6c7d357bc185eef6457023de3433c8e9d07feb0008319915d142cd0",
8
- "data/atlas-ttps.json": "f3d3ecb459ef5fb0d2c8339cd37072e1367a08d5a2fdef3d92c892a4b52dab97",
7
+ "manifest.json": "492f8548ab8dc7d8edba1666d07c401d77e9459e356e3c30283888c73be6f005",
8
+ "data/atlas-ttps.json": "db52a797f6ba7c9a61fd7b1225ebbc268ddf21abe29a106c4246c2ed2e617b86",
9
9
  "data/attack-techniques.json": "6b45448aa42cc6664376c93da73356624708e935c12589ee8c776a10215bce3a",
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": "8fb42b8a1503bda7d24bc48e34c5e26c425f5985767853ed1e1b8b3a5318369e",
15
+ "data/framework-control-gaps.json": "e87790cae8839dc5d73632d7d875d12cffa2ad741a9002ec7851e1ae04df54c4",
16
16
  "data/global-frameworks.json": "0168825497e03f079274c9da2e5529310a2ba5bd7c7da7c93acd0b66ed845b8a",
17
- "data/rfc-references.json": "e88c1517f0ffc45c27bc5805c01de87994b9e65b54071699b3d7cb5832b82c7a",
17
+ "data/rfc-references.json": "863f1ad7a36c020d11eb7bffea49ca1df89b10d43f3986118cdc5a5712308115",
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",
@@ -47,6 +47,7 @@
47
47
  "skills/sector-financial/skill.md": "eec3ce95f36a0f70532aac2f658ad6fb350233dd49c7d95da91144e6c4c4d16c",
48
48
  "skills/sector-federal-government/skill.md": "48c3c019502c8b758598331dbad8a9b121f8dd3dc6fc68bfaf506eba7e3843e5",
49
49
  "skills/sector-energy/skill.md": "875799aa2ad88744b646583fef0a3399abd42a979541dc99bf39825a5ef48ce9",
50
+ "skills/sector-telecom/skill.md": "3489410b0905cbf6b392ea7f7cde35ccd4b03de0d22d2d1b0c671e46d70962c9",
50
51
  "skills/api-security/skill.md": "302f7f6a071b856cc55a4cb5f0bc3f8566e31b5ebca58ca3bd78a91d4b6665ca",
51
52
  "skills/cloud-security/skill.md": "e0574c153aefbb0fc4581c78bc2d708ab7c49d6b5a45a985e51967b8ea740eb9",
52
53
  "skills/container-runtime-security/skill.md": "f06260f0c468d6a4f0409294899017edab45c98d71db1fedd7a630fe6a7bf53a",
@@ -55,35 +56,35 @@
55
56
  "skills/email-security-anti-phishing/skill.md": "b5a7693b3ddbd6cd83303d092bc5e324db431245d25c4945d9f65fcffa1995e7",
56
57
  "skills/age-gates-child-safety/skill.md": "c741d7dca9da0abb09bdebb8a02e803ce4ae9fb9a6904fb8df3ec19cae83917d"
57
58
  },
58
- "skill_count": 38,
59
+ "skill_count": 39,
59
60
  "catalog_count": 11,
60
61
  "index_stats": {
61
62
  "xref_entries": {
62
63
  "cwe_refs": 34,
63
64
  "d3fend_refs": 20,
64
- "framework_gaps": 49,
65
- "atlas_refs": 9,
66
- "attack_refs": 30,
67
- "rfc_refs": 19,
65
+ "framework_gaps": 58,
66
+ "atlas_refs": 10,
67
+ "attack_refs": 32,
68
+ "rfc_refs": 20,
68
69
  "dlp_refs": 0
69
70
  },
70
- "trigger_table_entries": 453,
71
+ "trigger_table_entries": 475,
71
72
  "chains_cve_entries": 27,
72
73
  "chains_cwe_entries": 55,
73
74
  "jurisdictions_indexed": 29,
74
- "handoff_dag_nodes": 38,
75
- "summary_cards": 38,
76
- "section_offsets_skills": 38,
77
- "token_budget_total_approx": 357564,
75
+ "handoff_dag_nodes": 39,
76
+ "summary_cards": 39,
77
+ "section_offsets_skills": 39,
78
+ "token_budget_total_approx": 362735,
78
79
  "recipes": 8,
79
80
  "jurisdiction_clocks": 29,
80
81
  "did_ladders": 8,
81
82
  "theater_fingerprints": 7,
82
83
  "currency_action_required": 0,
83
84
  "frequency_fields": 7,
84
- "activity_feed_events": 50,
85
+ "activity_feed_events": 51,
85
86
  "catalog_summaries": 11,
86
- "stale_content_findings": 1
87
+ "stale_content_findings": 3
87
88
  },
88
89
  "invalidation_note": "If any source file in source_hashes has a different SHA-256 than recorded here, the indexes are stale. Re-run `npm run build-indexes`."
89
90
  }
@@ -2,16 +2,23 @@
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": 50
5
+ "event_count": 51
6
6
  },
7
7
  "events": [
8
+ {
9
+ "date": "2026-05-15",
10
+ "type": "skill_review",
11
+ "artifact": "sector-telecom",
12
+ "path": "skills/sector-telecom/skill.md",
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
+ },
8
15
  {
9
16
  "date": "2026-05-15",
10
17
  "type": "catalog_update",
11
18
  "artifact": "data/atlas-ttps.json",
12
19
  "path": "data/atlas-ttps.json",
13
20
  "schema_version": "1.0.0",
14
- "entry_count": 29
21
+ "entry_count": 30
15
22
  },
16
23
  {
17
24
  "date": "2026-05-15",
@@ -35,7 +42,7 @@
35
42
  "artifact": "data/framework-control-gaps.json",
36
43
  "path": "data/framework-control-gaps.json",
37
44
  "schema_version": "1.0.0",
38
- "entry_count": 78
45
+ "entry_count": 87
39
46
  },
40
47
  {
41
48
  "date": "2026-05-15",
@@ -364,7 +371,7 @@
364
371
  "type": "manifest_review",
365
372
  "artifact": "manifest.json",
366
373
  "path": "manifest.json",
367
- "note": "manifest threat_review_date — 38 skills, 11 catalogs"
374
+ "note": "manifest threat_review_date — 39 skills, 11 catalogs"
368
375
  }
369
376
  ]
370
377
  }
@@ -18,13 +18,13 @@
18
18
  "rebuild_after_days": 365,
19
19
  "note": "Per-entry last_verified governs decay. Skills depending on this catalog must check entry freshness before high-stakes use."
20
20
  },
21
- "entry_count": 29,
21
+ "entry_count": 30,
22
22
  "sample_keys": [
23
23
  "AML.T0001",
24
+ "AML.T0040",
24
25
  "AML.T0010",
25
26
  "AML.T0016",
26
- "AML.T0017",
27
- "AML.T0018"
27
+ "AML.T0017"
28
28
  ]
29
29
  },
30
30
  "attack-techniques.json": {
@@ -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": 78,
175
+ "entry_count": 87,
176
176
  "sample_keys": [
177
177
  "ALL-AI-PIPELINE-INTEGRITY",
178
178
  "ALL-MCP-TOOL-TRUST",
@@ -3804,11 +3804,12 @@
3804
3804
  "sector-healthcare",
3805
3805
  "sector-financial",
3806
3806
  "sector-energy",
3807
+ "sector-telecom",
3807
3808
  "api-security",
3808
3809
  "cloud-security",
3809
3810
  "age-gates-child-safety"
3810
3811
  ],
3811
- "skill_count": 9,
3812
+ "skill_count": 10,
3812
3813
  "chain": {
3813
3814
  "atlas": [
3814
3815
  {
@@ -3821,6 +3822,11 @@
3821
3822
  "name": "Discover ML Model Ontology",
3822
3823
  "tactic": "Discovery"
3823
3824
  },
3825
+ {
3826
+ "id": "AML.T0040",
3827
+ "name": "Tool / Plugin Compromise",
3828
+ "tactic": "Execution"
3829
+ },
3824
3830
  {
3825
3831
  "id": "AML.T0051",
3826
3832
  "name": "LLM Prompt Injection",
@@ -3837,9 +3843,12 @@
3837
3843
  "T0883",
3838
3844
  "T1059",
3839
3845
  "T1068",
3846
+ "T1071",
3840
3847
  "T1078",
3848
+ "T1098",
3841
3849
  "T1110",
3842
3850
  "T1190",
3851
+ "T1199",
3843
3852
  "T1486",
3844
3853
  "T1505",
3845
3854
  "T1530",
@@ -3848,11 +3857,41 @@
3848
3857
  "T1567"
3849
3858
  ],
3850
3859
  "framework_gaps": [
3860
+ {
3861
+ "id": "3GPP-TR-33.926",
3862
+ "framework": "3GPP",
3863
+ "control_name": "3GPP Security Assurance Specification (gNB / eNB)"
3864
+ },
3865
+ {
3866
+ "id": "AU-ISM-1556",
3867
+ "framework": "au-ism",
3868
+ "control_name": "Multi-factor authentication for privileged users (telecom NMS application)"
3869
+ },
3870
+ {
3871
+ "id": "DORA-Art-21-Telecom-ICT",
3872
+ "framework": "DORA",
3873
+ "control_name": "DORA Art. 21 — ICT third-party risk (telecom-adjacent application)"
3874
+ },
3875
+ {
3876
+ "id": "FCC-CPNI-4.1",
3877
+ "framework": "FCC-CPNI",
3878
+ "control_name": "CPNI Annual Certification + Operational Compliance"
3879
+ },
3880
+ {
3881
+ "id": "FCC-Cyber-Incident-Notification-2024",
3882
+ "framework": "FCC",
3883
+ "control_name": "FCC Cyber Incident Notification (4 business days)"
3884
+ },
3851
3885
  {
3852
3886
  "id": "FedRAMP-Rev5-Moderate",
3853
3887
  "framework": "FedRAMP Rev 5 Moderate",
3854
3888
  "control_name": "FedRAMP Moderate baseline (NIST 800-53 Rev 5 tailoring)"
3855
3889
  },
3890
+ {
3891
+ "id": "GSMA-NESAS-Deployment",
3892
+ "framework": "GSMA-NESAS",
3893
+ "control_name": "NESAS at-deployment posture"
3894
+ },
3856
3895
  {
3857
3896
  "id": "HIPAA-Security-Rule-164.312(a)(1)",
3858
3897
  "framework": "HIPAA Security Rule (45 CFR § 164.312)",
@@ -3878,11 +3917,21 @@
3878
3917
  "framework": "ISO/IEC 27001:2022",
3879
3918
  "control_name": "Outsourced development"
3880
3919
  },
3920
+ {
3921
+ "id": "ITU-T-X.805",
3922
+ "framework": "ITU-T",
3923
+ "control_name": "ITU-T X.805 — 8-dimension security architecture for end-to-end communications"
3924
+ },
3881
3925
  {
3882
3926
  "id": "NERC-CIP-007-6-R4",
3883
3927
  "framework": "NERC CIP-007-6 (BES Cyber System Security Management)",
3884
3928
  "control_name": "Security event monitoring"
3885
3929
  },
3930
+ {
3931
+ "id": "NIS2-Annex-I-Telecom",
3932
+ "framework": "NIS2",
3933
+ "control_name": "NIS2 Annex I — telecommunications essential entities"
3934
+ },
3886
3935
  {
3887
3936
  "id": "NIS2-Art21-patch-management",
3888
3937
  "framework": "EU NIS2 Directive",
@@ -3942,9 +3991,35 @@
3942
3991
  "id": "SWIFT-CSCF-v2026-1.1",
3943
3992
  "framework": "SWIFT Customer Security Controls Framework v2026",
3944
3993
  "control_name": "SWIFT Environment Protection"
3994
+ },
3995
+ {
3996
+ "id": "UK-CAF-B5",
3997
+ "framework": "UK-CAF",
3998
+ "control_name": "Resilient networks and systems"
3999
+ }
4000
+ ],
4001
+ "d3fend": [
4002
+ {
4003
+ "id": "D3-IOPR",
4004
+ "name": "Input/Output Profiling Resource",
4005
+ "tactic": "Detect"
4006
+ },
4007
+ {
4008
+ "id": "D3-NI",
4009
+ "name": "Network Isolation",
4010
+ "tactic": "Isolate"
4011
+ },
4012
+ {
4013
+ "id": "D3-NTA",
4014
+ "name": "Network Traffic Analysis",
4015
+ "tactic": "Detect"
4016
+ },
4017
+ {
4018
+ "id": "D3-NTPM",
4019
+ "name": "Network Traffic Policy Mapping",
4020
+ "tactic": "Model"
3945
4021
  }
3946
4022
  ],
3947
- "d3fend": [],
3948
4023
  "rfc_refs": [
3949
4024
  {
3950
4025
  "id": "RFC-6749",
@@ -3986,6 +4061,11 @@
3986
4061
  "title": "HTTP Message Signatures",
3987
4062
  "status": "Proposed Standard"
3988
4063
  },
4064
+ {
4065
+ "id": "RFC-9622",
4066
+ "title": "An Architecture for Transport Services",
4067
+ "status": "Proposed Standard"
4068
+ },
3989
4069
  {
3990
4070
  "id": "RFC-9700",
3991
4071
  "title": "Best Current Practice for OAuth 2.0 Security",
@@ -4005,9 +4085,10 @@
4005
4085
  "referencing_skills": [
4006
4086
  "identity-assurance",
4007
4087
  "ot-ics-security",
4008
- "sector-energy"
4088
+ "sector-energy",
4089
+ "sector-telecom"
4009
4090
  ],
4010
- "skill_count": 3,
4091
+ "skill_count": 4,
4011
4092
  "chain": {
4012
4093
  "atlas": [
4013
4094
  {
@@ -4015,6 +4096,11 @@
4015
4096
  "name": "ML Supply Chain Compromise",
4016
4097
  "tactic": "Initial Access"
4017
4098
  },
4099
+ {
4100
+ "id": "AML.T0040",
4101
+ "name": "Tool / Plugin Compromise",
4102
+ "tactic": "Execution"
4103
+ },
4018
4104
  {
4019
4105
  "id": "AML.T0051",
4020
4106
  "name": "LLM Prompt Injection",
@@ -4025,12 +4111,45 @@
4025
4111
  "T0855",
4026
4112
  "T0883",
4027
4113
  "T1068",
4114
+ "T1071",
4028
4115
  "T1078",
4116
+ "T1098",
4029
4117
  "T1110",
4030
4118
  "T1190",
4119
+ "T1199",
4031
4120
  "T1556"
4032
4121
  ],
4033
4122
  "framework_gaps": [
4123
+ {
4124
+ "id": "3GPP-TR-33.926",
4125
+ "framework": "3GPP",
4126
+ "control_name": "3GPP Security Assurance Specification (gNB / eNB)"
4127
+ },
4128
+ {
4129
+ "id": "AU-ISM-1556",
4130
+ "framework": "au-ism",
4131
+ "control_name": "Multi-factor authentication for privileged users (telecom NMS application)"
4132
+ },
4133
+ {
4134
+ "id": "DORA-Art-21-Telecom-ICT",
4135
+ "framework": "DORA",
4136
+ "control_name": "DORA Art. 21 — ICT third-party risk (telecom-adjacent application)"
4137
+ },
4138
+ {
4139
+ "id": "FCC-CPNI-4.1",
4140
+ "framework": "FCC-CPNI",
4141
+ "control_name": "CPNI Annual Certification + Operational Compliance"
4142
+ },
4143
+ {
4144
+ "id": "FCC-Cyber-Incident-Notification-2024",
4145
+ "framework": "FCC",
4146
+ "control_name": "FCC Cyber Incident Notification (4 business days)"
4147
+ },
4148
+ {
4149
+ "id": "GSMA-NESAS-Deployment",
4150
+ "framework": "GSMA-NESAS",
4151
+ "control_name": "NESAS at-deployment posture"
4152
+ },
4034
4153
  {
4035
4154
  "id": "IEC-62443-3-3",
4036
4155
  "framework": "IEC 62443-3-3 (Industrial communication networks — security for IACS)",
@@ -4041,11 +4160,21 @@
4041
4160
  "framework": "ISO/IEC 27001:2022",
4042
4161
  "control_name": "Outsourced development"
4043
4162
  },
4163
+ {
4164
+ "id": "ITU-T-X.805",
4165
+ "framework": "ITU-T",
4166
+ "control_name": "ITU-T X.805 — 8-dimension security architecture for end-to-end communications"
4167
+ },
4044
4168
  {
4045
4169
  "id": "NERC-CIP-007-6-R4",
4046
4170
  "framework": "NERC CIP-007-6 (BES Cyber System Security Management)",
4047
4171
  "control_name": "Security event monitoring"
4048
4172
  },
4173
+ {
4174
+ "id": "NIS2-Annex-I-Telecom",
4175
+ "framework": "NIS2",
4176
+ "control_name": "NIS2 Annex I — telecommunications essential entities"
4177
+ },
4049
4178
  {
4050
4179
  "id": "NIS2-Art21-patch-management",
4051
4180
  "framework": "EU NIS2 Directive",
@@ -4075,9 +4204,35 @@
4075
4204
  "id": "SOC2-CC6-logical-access",
4076
4205
  "framework": "SOC 2 (AICPA Trust Services Criteria)",
4077
4206
  "control_name": "Logical and Physical Access Controls"
4207
+ },
4208
+ {
4209
+ "id": "UK-CAF-B5",
4210
+ "framework": "UK-CAF",
4211
+ "control_name": "Resilient networks and systems"
4212
+ }
4213
+ ],
4214
+ "d3fend": [
4215
+ {
4216
+ "id": "D3-IOPR",
4217
+ "name": "Input/Output Profiling Resource",
4218
+ "tactic": "Detect"
4219
+ },
4220
+ {
4221
+ "id": "D3-NI",
4222
+ "name": "Network Isolation",
4223
+ "tactic": "Isolate"
4224
+ },
4225
+ {
4226
+ "id": "D3-NTA",
4227
+ "name": "Network Traffic Analysis",
4228
+ "tactic": "Detect"
4229
+ },
4230
+ {
4231
+ "id": "D3-NTPM",
4232
+ "name": "Network Traffic Policy Mapping",
4233
+ "tactic": "Model"
4078
4234
  }
4079
4235
  ],
4080
- "d3fend": [],
4081
4236
  "rfc_refs": [
4082
4237
  {
4083
4238
  "id": "RFC-6749",
@@ -4099,6 +4254,11 @@
4099
4254
  "title": "JSON Web Token Best Current Practices",
4100
4255
  "status": "Best Current Practice"
4101
4256
  },
4257
+ {
4258
+ "id": "RFC-9622",
4259
+ "title": "An Architecture for Transport Services",
4260
+ "status": "Proposed Standard"
4261
+ },
4102
4262
  {
4103
4263
  "id": "RFC-9700",
4104
4264
  "title": "Best Current Practice for OAuth 2.0 Security",
@@ -6668,9 +6828,10 @@
6668
6828
  "mcp-agent-trust",
6669
6829
  "attack-surface-pentest",
6670
6830
  "webapp-security",
6831
+ "sector-telecom",
6671
6832
  "api-security"
6672
6833
  ],
6673
- "skill_count": 4,
6834
+ "skill_count": 5,
6674
6835
  "chain": {
6675
6836
  "atlas": [
6676
6837
  {
@@ -6688,6 +6849,11 @@
6688
6849
  "name": "Discover ML Model Ontology",
6689
6850
  "tactic": "Discovery"
6690
6851
  },
6852
+ {
6853
+ "id": "AML.T0040",
6854
+ "name": "Tool / Plugin Compromise",
6855
+ "tactic": "Execution"
6856
+ },
6691
6857
  {
6692
6858
  "id": "AML.T0043",
6693
6859
  "name": "Craft Adversarial Data",
@@ -6706,19 +6872,53 @@
6706
6872
  ],
6707
6873
  "attack_refs": [
6708
6874
  "T1059",
6875
+ "T1071",
6709
6876
  "T1078",
6877
+ "T1098",
6710
6878
  "T1133",
6711
6879
  "T1190",
6712
6880
  "T1195.001",
6881
+ "T1199",
6713
6882
  "T1505",
6883
+ "T1556",
6714
6884
  "T1567"
6715
6885
  ],
6716
6886
  "framework_gaps": [
6887
+ {
6888
+ "id": "3GPP-TR-33.926",
6889
+ "framework": "3GPP",
6890
+ "control_name": "3GPP Security Assurance Specification (gNB / eNB)"
6891
+ },
6717
6892
  {
6718
6893
  "id": "ALL-MCP-TOOL-TRUST",
6719
6894
  "framework": "ALL",
6720
6895
  "control_name": "MCP/Agent Tool Trust Boundaries"
6721
6896
  },
6897
+ {
6898
+ "id": "AU-ISM-1556",
6899
+ "framework": "au-ism",
6900
+ "control_name": "Multi-factor authentication for privileged users (telecom NMS application)"
6901
+ },
6902
+ {
6903
+ "id": "DORA-Art-21-Telecom-ICT",
6904
+ "framework": "DORA",
6905
+ "control_name": "DORA Art. 21 — ICT third-party risk (telecom-adjacent application)"
6906
+ },
6907
+ {
6908
+ "id": "FCC-CPNI-4.1",
6909
+ "framework": "FCC-CPNI",
6910
+ "control_name": "CPNI Annual Certification + Operational Compliance"
6911
+ },
6912
+ {
6913
+ "id": "FCC-Cyber-Incident-Notification-2024",
6914
+ "framework": "FCC",
6915
+ "control_name": "FCC Cyber Incident Notification (4 business days)"
6916
+ },
6917
+ {
6918
+ "id": "GSMA-NESAS-Deployment",
6919
+ "framework": "GSMA-NESAS",
6920
+ "control_name": "NESAS at-deployment posture"
6921
+ },
6722
6922
  {
6723
6923
  "id": "ISO-27001-2022-A.8.28",
6724
6924
  "framework": "ISO/IEC 27001:2022",
@@ -6729,6 +6929,16 @@
6729
6929
  "framework": "ISO/IEC 27001:2022",
6730
6930
  "control_name": "Outsourced development"
6731
6931
  },
6932
+ {
6933
+ "id": "ITU-T-X.805",
6934
+ "framework": "ITU-T",
6935
+ "control_name": "ITU-T X.805 — 8-dimension security architecture for end-to-end communications"
6936
+ },
6937
+ {
6938
+ "id": "NIS2-Annex-I-Telecom",
6939
+ "framework": "NIS2",
6940
+ "control_name": "NIS2 Annex I — telecommunications essential entities"
6941
+ },
6732
6942
  {
6733
6943
  "id": "NIS2-Art21-patch-management",
6734
6944
  "framework": "EU NIS2 Directive",
@@ -6793,6 +7003,11 @@
6793
7003
  "id": "SWIFT-CSCF-v2026-1.1",
6794
7004
  "framework": "SWIFT Customer Security Controls Framework v2026",
6795
7005
  "control_name": "SWIFT Environment Protection"
7006
+ },
7007
+ {
7008
+ "id": "UK-CAF-B5",
7009
+ "framework": "UK-CAF",
7010
+ "control_name": "Resilient networks and systems"
6796
7011
  }
6797
7012
  ],
6798
7013
  "d3fend": [
@@ -6816,15 +7031,30 @@
6816
7031
  "name": "Executable Hashbased Allowlist",
6817
7032
  "tactic": "Harden"
6818
7033
  },
7034
+ {
7035
+ "id": "D3-IOPR",
7036
+ "name": "Input/Output Profiling Resource",
7037
+ "tactic": "Detect"
7038
+ },
6819
7039
  {
6820
7040
  "id": "D3-MFA",
6821
7041
  "name": "Multi-factor Authentication",
6822
7042
  "tactic": "Harden"
6823
7043
  },
7044
+ {
7045
+ "id": "D3-NI",
7046
+ "name": "Network Isolation",
7047
+ "tactic": "Isolate"
7048
+ },
6824
7049
  {
6825
7050
  "id": "D3-NTA",
6826
7051
  "name": "Network Traffic Analysis",
6827
7052
  "tactic": "Detect"
7053
+ },
7054
+ {
7055
+ "id": "D3-NTPM",
7056
+ "name": "Network Traffic Policy Mapping",
7057
+ "tactic": "Model"
6828
7058
  }
6829
7059
  ],
6830
7060
  "rfc_refs": [
@@ -6858,6 +7088,11 @@
6858
7088
  "title": "HTTP Message Signatures",
6859
7089
  "status": "Proposed Standard"
6860
7090
  },
7091
+ {
7092
+ "id": "RFC-9622",
7093
+ "title": "An Architecture for Transport Services",
7094
+ "status": "Proposed Standard"
7095
+ },
6861
7096
  {
6862
7097
  "id": "RFC-9700",
6863
7098
  "title": "Best Current Practice for OAuth 2.0 Security",
@@ -6,7 +6,7 @@
6
6
  "decay_formula": "100 base; -30/-20/-10/-5 at 180/90/60/30-day thresholds. forward_watch count does NOT affect the score (it's a maintenance signal, not a staleness one). Label thresholds: ≥90 current, ≥70 acceptable, ≥50 stale, <50 critical_stale."
7
7
  },
8
8
  "summary": {
9
- "current": 38,
9
+ "current": 39,
10
10
  "acceptable": 0,
11
11
  "stale": 0,
12
12
  "critical_stale": 0,
@@ -292,6 +292,15 @@
292
292
  "forward_watch_count": 0,
293
293
  "action_required": false
294
294
  },
295
+ {
296
+ "skill": "sector-telecom",
297
+ "last_threat_review": "2026-05-15",
298
+ "days_since_review": -14,
299
+ "currency_score": 100,
300
+ "currency_label": "current",
301
+ "forward_watch_count": 7,
302
+ "action_required": false
303
+ },
295
304
  {
296
305
  "skill": "security-maturity-tiers",
297
306
  "last_threat_review": "2026-05-01",