@blamejs/exceptd-skills 0.13.18 → 0.13.19
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 +38 -0
- package/data/_indexes/_meta.json +9 -9
- package/data/_indexes/activity-feed.json +2 -2
- package/data/_indexes/catalog-summaries.json +2 -2
- package/data/_indexes/chains.json +14 -0
- package/data/_indexes/frequency.json +1 -0
- package/data/attack-techniques.json +2600 -109
- package/data/cve-catalog.json +1265 -305
- package/data/cwe-catalog.json +60 -1
- package/data/framework-control-gaps.json +504 -0
- package/data/rfc-references.json +286 -125
- package/data/zeroday-lessons.json +156 -24
- package/manifest.json +44 -44
- package/package.json +6 -2
- package/sbom.cdx.json +59 -29
- package/scripts/audit-catalog-gaps.js +338 -0
- package/scripts/check-test-coverage.js +14 -6
- package/scripts/refresh-mitre-ics-attack.js +15 -0
- package/scripts/refresh-upstream-catalogs.js +158 -54
|
@@ -2034,7 +2034,7 @@
|
|
|
2034
2034
|
},
|
|
2035
2035
|
"CVE-2024-3154": {
|
|
2036
2036
|
"name": "CRI-O arbitrary kernel-module load",
|
|
2037
|
-
"lesson_date": "2026-05-
|
|
2037
|
+
"lesson_date": "2026-05-19",
|
|
2038
2038
|
"attack_vector": {
|
|
2039
2039
|
"description": "Pod-spec attributes reach modprobe argument path in CRI-O without validation. An attacker with pod-create RBAC on a cluster using CRI-O can cause arbitrary kernel modules to load on the host node, achieving container-escape-equivalent capability.",
|
|
2040
2040
|
"privileges_required": "pod-create RBAC inside the cluster (namespace-scoped is sufficient)",
|
|
@@ -2078,7 +2078,18 @@
|
|
|
2078
2078
|
"gap": "Container-runtime supply chain not differentiated from application-runtime supply chain."
|
|
2079
2079
|
}
|
|
2080
2080
|
},
|
|
2081
|
-
"new_control_requirements": [
|
|
2081
|
+
"new_control_requirements": [
|
|
2082
|
+
{
|
|
2083
|
+
"id": "NEW-CTRL-001",
|
|
2084
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
2085
|
+
"description": "Operational response within the CISA-published due date for any KEV listing; routinely shorter than the NIST 30-day SLA.",
|
|
2086
|
+
"evidence": "CVE-2024-3154",
|
|
2087
|
+
"gap_closes": [
|
|
2088
|
+
"NIST-800-53-SI-2",
|
|
2089
|
+
"ISO-27001-2022-A.8.8"
|
|
2090
|
+
]
|
|
2091
|
+
}
|
|
2092
|
+
],
|
|
2082
2093
|
"compliance_exposure_score": {
|
|
2083
2094
|
"percent_audit_passing_orgs_still_exposed": 55,
|
|
2084
2095
|
"basis": "AppArmor/SELinux deny-module-load is rarely enforced on container hosts; CIS-K8s benchmark passes without it. Patch cadence on Kubernetes node runtimes typically lags behind application patches.",
|
|
@@ -2090,7 +2101,7 @@
|
|
|
2090
2101
|
},
|
|
2091
2102
|
"CVE-2023-43472": {
|
|
2092
2103
|
"name": "MLflow path-traversal arbitrary file read",
|
|
2093
|
-
"lesson_date": "2026-05-
|
|
2104
|
+
"lesson_date": "2026-05-19",
|
|
2094
2105
|
"attack_vector": {
|
|
2095
2106
|
"description": "MLflow tracking-server artifact endpoint resolves user-controlled paths under the artifact root without normalization. An unauthenticated HTTP request with ../ traversal reads arbitrary files from the host filesystem.",
|
|
2096
2107
|
"privileges_required": "none (unauth network reachability to MLflow tracking server)",
|
|
@@ -2134,7 +2145,18 @@
|
|
|
2134
2145
|
"gap": "Secure coding control does not anchor on ML-runtime web-surface review; ML platforms are treated as out-of-scope of conventional secure-coding programs."
|
|
2135
2146
|
}
|
|
2136
2147
|
},
|
|
2137
|
-
"new_control_requirements": [
|
|
2148
|
+
"new_control_requirements": [
|
|
2149
|
+
{
|
|
2150
|
+
"id": "NEW-CTRL-001",
|
|
2151
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
2152
|
+
"description": "Operational response within the CISA-published due date for any KEV listing; routinely shorter than the NIST 30-day SLA.",
|
|
2153
|
+
"evidence": "CVE-2023-43472",
|
|
2154
|
+
"gap_closes": [
|
|
2155
|
+
"NIST-800-53-SI-2",
|
|
2156
|
+
"ISO-27001-2022-A.8.8"
|
|
2157
|
+
]
|
|
2158
|
+
}
|
|
2159
|
+
],
|
|
2138
2160
|
"compliance_exposure_score": {
|
|
2139
2161
|
"percent_audit_passing_orgs_still_exposed": 70,
|
|
2140
2162
|
"basis": "MLflow tracking servers are widely deployed without auth and without front-proxy logging; ML platforms typically fall outside the AppSec team's secure-coding-review remit.",
|
|
@@ -2146,7 +2168,7 @@
|
|
|
2146
2168
|
},
|
|
2147
2169
|
"CVE-2020-10148": {
|
|
2148
2170
|
"name": "SolarWinds Orion API authentication bypass (SUNBURST chain component)",
|
|
2149
|
-
"lesson_date": "2026-05-
|
|
2171
|
+
"lesson_date": "2026-05-19",
|
|
2150
2172
|
"attack_vector": {
|
|
2151
2173
|
"description": "URI pattern matching against SkipI18nStrings inside Orion's HTTP routing triggers an authentication bypass — an unauthenticated request that matches the pattern reaches API write endpoints. Used by SUNBURST operators to exercise API write access against compromised Orion installations.",
|
|
2152
2174
|
"privileges_required": "none (unauth network reachability to Orion)",
|
|
@@ -2190,7 +2212,18 @@
|
|
|
2190
2212
|
"gap": "Supply-chain protection control predates the SolarWinds incident; pre-2020 supply-chain controls did not contemplate a trusted vendor as the breach vector."
|
|
2191
2213
|
}
|
|
2192
2214
|
},
|
|
2193
|
-
"new_control_requirements": [
|
|
2215
|
+
"new_control_requirements": [
|
|
2216
|
+
{
|
|
2217
|
+
"id": "NEW-CTRL-001",
|
|
2218
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
2219
|
+
"description": "Operational response within the CISA-published due date for any KEV listing; routinely shorter than the NIST 30-day SLA.",
|
|
2220
|
+
"evidence": "CVE-2020-10148",
|
|
2221
|
+
"gap_closes": [
|
|
2222
|
+
"NIST-800-53-SI-2",
|
|
2223
|
+
"ISO-27001-2022-A.8.8"
|
|
2224
|
+
]
|
|
2225
|
+
}
|
|
2226
|
+
],
|
|
2194
2227
|
"compliance_exposure_score": {
|
|
2195
2228
|
"percent_audit_passing_orgs_still_exposed": 40,
|
|
2196
2229
|
"basis": "Direct exposure to this specific CVE is low five years post-disclosure (Orion installations are largely patched), but the lessons-class — trusted-vendor-as-pivot — remains under-addressed by most supply-chain controls.",
|
|
@@ -2202,7 +2235,7 @@
|
|
|
2202
2235
|
},
|
|
2203
2236
|
"CVE-2023-3519": {
|
|
2204
2237
|
"name": "Citrix NetScaler ADC/Gateway unauth RCE (CitrixBleed precursor)",
|
|
2205
|
-
"lesson_date": "2026-05-
|
|
2238
|
+
"lesson_date": "2026-05-19",
|
|
2206
2239
|
"attack_vector": {
|
|
2207
2240
|
"description": "Pre-auth stack buffer overflow in the NetScaler SAML processing path. An unauthenticated HTTP POST to /gwtest/formssso reaches the vulnerable nsppe parser; CISA AA23-201A documented in-wild exploitation by Chinese state-sponsored actors against US critical-infrastructure organizations within weeks of disclosure.",
|
|
2208
2241
|
"privileges_required": "none (unauth network reachability to NetScaler appliance)",
|
|
@@ -2246,7 +2279,18 @@
|
|
|
2246
2279
|
"gap": "EU NIS2 generic vulnerability-management requirement without unauth-RCE-specific SLA."
|
|
2247
2280
|
}
|
|
2248
2281
|
},
|
|
2249
|
-
"new_control_requirements": [
|
|
2282
|
+
"new_control_requirements": [
|
|
2283
|
+
{
|
|
2284
|
+
"id": "NEW-CTRL-001",
|
|
2285
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
2286
|
+
"description": "Operational response within the CISA-published due date for any KEV listing; routinely shorter than the NIST 30-day SLA.",
|
|
2287
|
+
"evidence": "CVE-2023-3519",
|
|
2288
|
+
"gap_closes": [
|
|
2289
|
+
"NIST-800-53-SI-2",
|
|
2290
|
+
"ISO-27001-2022-A.8.8"
|
|
2291
|
+
]
|
|
2292
|
+
}
|
|
2293
|
+
],
|
|
2250
2294
|
"compliance_exposure_score": {
|
|
2251
2295
|
"percent_audit_passing_orgs_still_exposed": 60,
|
|
2252
2296
|
"basis": "PCI-DSS / NIS2 / SI-2 patch SLAs are wider than the actual exploitation window. Many organizations passing those audits remained exposed during the active mass-exploitation phase.",
|
|
@@ -2258,7 +2302,7 @@
|
|
|
2258
2302
|
},
|
|
2259
2303
|
"CVE-2024-1709": {
|
|
2260
2304
|
"name": "ConnectWise ScreenConnect auth-bypass",
|
|
2261
|
-
"lesson_date": "2026-05-
|
|
2305
|
+
"lesson_date": "2026-05-19",
|
|
2262
2306
|
"attack_vector": {
|
|
2263
2307
|
"description": "Path-traversal in the auth filter — appending /SetupWizard.aspx/anything to a request URL bypasses authentication and reaches the admin setup endpoint. Attacker creates a new admin account via the setup endpoint and gains full ScreenConnect control, including the ability to push remote-control payloads to every endpoint the affected MSP manages.",
|
|
2264
2308
|
"privileges_required": "none (unauth network reachability to ScreenConnect web surface)",
|
|
@@ -2302,7 +2346,18 @@
|
|
|
2302
2346
|
"gap": "Access-control management does not require setup-endpoint hardening on production deployments; the ScreenConnect setup wizard was reachable post-install by design."
|
|
2303
2347
|
}
|
|
2304
2348
|
},
|
|
2305
|
-
"new_control_requirements": [
|
|
2349
|
+
"new_control_requirements": [
|
|
2350
|
+
{
|
|
2351
|
+
"id": "NEW-CTRL-001",
|
|
2352
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
2353
|
+
"description": "Operational response within the CISA-published due date for any KEV listing; routinely shorter than the NIST 30-day SLA.",
|
|
2354
|
+
"evidence": "CVE-2024-1709",
|
|
2355
|
+
"gap_closes": [
|
|
2356
|
+
"NIST-800-53-SI-2",
|
|
2357
|
+
"ISO-27001-2022-A.8.8"
|
|
2358
|
+
]
|
|
2359
|
+
}
|
|
2360
|
+
],
|
|
2306
2361
|
"compliance_exposure_score": {
|
|
2307
2362
|
"percent_audit_passing_orgs_still_exposed": 75,
|
|
2308
2363
|
"basis": "MSP fleets passing SOC 2 / ISO 27001 audits routinely deploy remote-management tooling with default routing exposed; setup-endpoint hardening is not a benchmark requirement.",
|
|
@@ -2314,7 +2369,7 @@
|
|
|
2314
2369
|
},
|
|
2315
2370
|
"CVE-2026-20182": {
|
|
2316
2371
|
"name": "Cisco SD-WAN authentication bypass to admin",
|
|
2317
|
-
"lesson_date": "2026-05-
|
|
2372
|
+
"lesson_date": "2026-05-19",
|
|
2318
2373
|
"attack_vector": {
|
|
2319
2374
|
"description": "Authentication bypass in the Cisco SD-WAN controller management plane (vManage / vEdge). An unauthenticated attacker reaches admin-equivalent state on the controller, giving control over the SD-WAN fabric's policy plane.",
|
|
2320
2375
|
"privileges_required": "none (unauth network reachability to SD-WAN controller management surface)",
|
|
@@ -2358,7 +2413,18 @@
|
|
|
2358
2413
|
"gap": "ICT third-party risk — SD-WAN vendor risk concentrated in a single advisory cadence; DORA does not require dual-vendor fabric topology."
|
|
2359
2414
|
}
|
|
2360
2415
|
},
|
|
2361
|
-
"new_control_requirements": [
|
|
2416
|
+
"new_control_requirements": [
|
|
2417
|
+
{
|
|
2418
|
+
"id": "NEW-CTRL-001",
|
|
2419
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
2420
|
+
"description": "Operational response within the CISA-published due date for any KEV listing; routinely shorter than the NIST 30-day SLA.",
|
|
2421
|
+
"evidence": "CVE-2026-20182",
|
|
2422
|
+
"gap_closes": [
|
|
2423
|
+
"NIST-800-53-SI-2",
|
|
2424
|
+
"ISO-27001-2022-A.8.8"
|
|
2425
|
+
]
|
|
2426
|
+
}
|
|
2427
|
+
],
|
|
2362
2428
|
"compliance_exposure_score": {
|
|
2363
2429
|
"percent_audit_passing_orgs_still_exposed": 65,
|
|
2364
2430
|
"basis": "SD-WAN controller management surfaces are frequently reachable beyond operator subnets in real-world deployments; NIS2 / DORA controls do not enforce management-plane isolation as a specific requirement.",
|
|
@@ -2370,7 +2436,7 @@
|
|
|
2370
2436
|
},
|
|
2371
2437
|
"CVE-2024-40635": {
|
|
2372
2438
|
"name": "containerd integer overflow IP mask leak",
|
|
2373
|
-
"lesson_date": "2026-05-
|
|
2439
|
+
"lesson_date": "2026-05-19",
|
|
2374
2440
|
"attack_vector": {
|
|
2375
2441
|
"description": "Integer overflow in the containerd CNI IP-allocation path. A crafted CIDR specification overflows the uint32 mask conversion, causing the container to receive a spurious mask that allows traffic to leak across network namespaces.",
|
|
2376
2442
|
"privileges_required": "ability to influence a container's CNI configuration (typically requires pod-create RBAC or compromise of an in-cluster component that provisions pods)",
|
|
@@ -2414,7 +2480,18 @@
|
|
|
2414
2480
|
"gap": "Networks security control covers segmentation policy at organizational level but does not extend to container-runtime IPAM verification."
|
|
2415
2481
|
}
|
|
2416
2482
|
},
|
|
2417
|
-
"new_control_requirements": [
|
|
2483
|
+
"new_control_requirements": [
|
|
2484
|
+
{
|
|
2485
|
+
"id": "NEW-CTRL-001",
|
|
2486
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
2487
|
+
"description": "Operational response within the CISA-published due date for any KEV listing; routinely shorter than the NIST 30-day SLA.",
|
|
2488
|
+
"evidence": "CVE-2024-40635",
|
|
2489
|
+
"gap_closes": [
|
|
2490
|
+
"NIST-800-53-SI-2",
|
|
2491
|
+
"ISO-27001-2022-A.8.8"
|
|
2492
|
+
]
|
|
2493
|
+
}
|
|
2494
|
+
],
|
|
2418
2495
|
"compliance_exposure_score": {
|
|
2419
2496
|
"percent_audit_passing_orgs_still_exposed": 50,
|
|
2420
2497
|
"basis": "Most clusters do not pair NetworkPolicy with IPAM-correctness audit. CIS-K8s benchmark passes without it.",
|
|
@@ -2493,7 +2570,7 @@
|
|
|
2493
2570
|
},
|
|
2494
2571
|
"CVE-2025-12686": {
|
|
2495
2572
|
"name": "Synology BeeStation unauth RCE (Pwn2Own Ireland 2025)",
|
|
2496
|
-
"lesson_date": "2026-05-
|
|
2573
|
+
"lesson_date": "2026-05-19",
|
|
2497
2574
|
"attack_vector": {
|
|
2498
2575
|
"description": "Pre-auth RCE chain on the Synology BeeStation Manager web management surface. Demonstrated as a full chain on consumer NAS hardware at Pwn2Own Ireland 2025.",
|
|
2499
2576
|
"privileges_required": "none (unauth network reachability to BeeStation web surface)",
|
|
@@ -2537,7 +2614,18 @@
|
|
|
2537
2614
|
"gap": "Configuration-management control covers organizational assets; consumer NAS appliances at remote sites are commonly out of scope of the enterprise CMDB."
|
|
2538
2615
|
}
|
|
2539
2616
|
},
|
|
2540
|
-
"new_control_requirements": [
|
|
2617
|
+
"new_control_requirements": [
|
|
2618
|
+
{
|
|
2619
|
+
"id": "NEW-CTRL-001",
|
|
2620
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
2621
|
+
"description": "Operational response within the CISA-published due date for any KEV listing; routinely shorter than the NIST 30-day SLA.",
|
|
2622
|
+
"evidence": "CVE-2025-12686",
|
|
2623
|
+
"gap_closes": [
|
|
2624
|
+
"NIST-800-53-SI-2",
|
|
2625
|
+
"ISO-27001-2022-A.8.8"
|
|
2626
|
+
]
|
|
2627
|
+
}
|
|
2628
|
+
],
|
|
2541
2629
|
"compliance_exposure_score": {
|
|
2542
2630
|
"percent_audit_passing_orgs_still_exposed": 60,
|
|
2543
2631
|
"basis": "Consumer-NAS appliances are pervasive at branch / SMB / remote-worker sites and routinely fall outside enterprise patch and asset-management programs.",
|
|
@@ -2549,7 +2637,7 @@
|
|
|
2549
2637
|
},
|
|
2550
2638
|
"CVE-2025-62847": {
|
|
2551
2639
|
"name": "QNAP QTS/QuTS hero RCE (Pwn2Own Ireland 2025, chain 1/3)",
|
|
2552
|
-
"lesson_date": "2026-05-
|
|
2640
|
+
"lesson_date": "2026-05-19",
|
|
2553
2641
|
"attack_vector": {
|
|
2554
2642
|
"description": "Component 1/3 of the DEVCORE Research Team chain on the QNAP TS-453E appliance at Pwn2Own Ireland 2025. Chained injection + format-string bug demonstrated as part of the three-CVE chain that earned $40,000 + 4 Master of Pwn points.",
|
|
2555
2643
|
"privileges_required": "none (unauth network reachability to QTS / QuTS hero web management)",
|
|
@@ -2593,7 +2681,18 @@
|
|
|
2593
2681
|
"gap": "Configuration-management control covers organizational assets; SMB / branch NAS appliances are commonly out of CMDB scope."
|
|
2594
2682
|
}
|
|
2595
2683
|
},
|
|
2596
|
-
"new_control_requirements": [
|
|
2684
|
+
"new_control_requirements": [
|
|
2685
|
+
{
|
|
2686
|
+
"id": "NEW-CTRL-001",
|
|
2687
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
2688
|
+
"description": "Operational response within the CISA-published due date for any KEV listing; routinely shorter than the NIST 30-day SLA.",
|
|
2689
|
+
"evidence": "CVE-2025-62847",
|
|
2690
|
+
"gap_closes": [
|
|
2691
|
+
"NIST-800-53-SI-2",
|
|
2692
|
+
"ISO-27001-2022-A.8.8"
|
|
2693
|
+
]
|
|
2694
|
+
}
|
|
2695
|
+
],
|
|
2597
2696
|
"compliance_exposure_score": {
|
|
2598
2697
|
"percent_audit_passing_orgs_still_exposed": 60,
|
|
2599
2698
|
"basis": "QNAP appliances are pervasive at SMB / prosumer scale and fall outside enterprise patch programs.",
|
|
@@ -2605,7 +2704,7 @@
|
|
|
2605
2704
|
},
|
|
2606
2705
|
"CVE-2025-62848": {
|
|
2607
2706
|
"name": "QNAP QTS/QuTS hero RCE (Pwn2Own Ireland 2025, chain 2/3)",
|
|
2608
|
-
"lesson_date": "2026-05-
|
|
2707
|
+
"lesson_date": "2026-05-19",
|
|
2609
2708
|
"attack_vector": {
|
|
2610
2709
|
"description": "Component 2/3 of the DEVCORE Research Team chain on the QNAP TS-453E appliance at Pwn2Own Ireland 2025. Code-injection (CWE-94) chained with CVE-2025-62847 and CVE-2025-62849.",
|
|
2611
2710
|
"privileges_required": "none (unauth as part of the chain) — standalone exploitation requires the chain pre-condition",
|
|
@@ -2649,7 +2748,18 @@
|
|
|
2649
2748
|
"gap": "Secure-coding control assumed in vendor firmware; appliance vendors are out-of-band of the operator's secure-coding program."
|
|
2650
2749
|
}
|
|
2651
2750
|
},
|
|
2652
|
-
"new_control_requirements": [
|
|
2751
|
+
"new_control_requirements": [
|
|
2752
|
+
{
|
|
2753
|
+
"id": "NEW-CTRL-001",
|
|
2754
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
2755
|
+
"description": "Operational response within the CISA-published due date for any KEV listing; routinely shorter than the NIST 30-day SLA.",
|
|
2756
|
+
"evidence": "CVE-2025-62848",
|
|
2757
|
+
"gap_closes": [
|
|
2758
|
+
"NIST-800-53-SI-2",
|
|
2759
|
+
"ISO-27001-2022-A.8.8"
|
|
2760
|
+
]
|
|
2761
|
+
}
|
|
2762
|
+
],
|
|
2653
2763
|
"compliance_exposure_score": {
|
|
2654
2764
|
"percent_audit_passing_orgs_still_exposed": 60,
|
|
2655
2765
|
"basis": "Same population and coverage gap as CVE-2025-62847; chain components track together.",
|
|
@@ -2661,7 +2771,7 @@
|
|
|
2661
2771
|
},
|
|
2662
2772
|
"CVE-2025-62849": {
|
|
2663
2773
|
"name": "QNAP QTS/QuTS hero RCE (Pwn2Own Ireland 2025, chain 3/3)",
|
|
2664
|
-
"lesson_date": "2026-05-
|
|
2774
|
+
"lesson_date": "2026-05-19",
|
|
2665
2775
|
"attack_vector": {
|
|
2666
2776
|
"description": "Component 3/3 of the DEVCORE Research Team chain on the QNAP TS-453E appliance at Pwn2Own Ireland 2025 — post-auth elevation (CWE-269, T1068). Used by the chain to convert the unauth RCE foothold from CVE-2025-62847/62848 into appliance-level privileged execution.",
|
|
2667
2777
|
"privileges_required": "post-auth (achieved by the chain via CVE-2025-62847 / CVE-2025-62848)",
|
|
@@ -2705,7 +2815,18 @@
|
|
|
2705
2815
|
"gap": "Consumer-NAS coverage begins 2027."
|
|
2706
2816
|
}
|
|
2707
2817
|
},
|
|
2708
|
-
"new_control_requirements": [
|
|
2818
|
+
"new_control_requirements": [
|
|
2819
|
+
{
|
|
2820
|
+
"id": "NEW-CTRL-001",
|
|
2821
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
2822
|
+
"description": "Operational response within the CISA-published due date for any KEV listing; routinely shorter than the NIST 30-day SLA.",
|
|
2823
|
+
"evidence": "CVE-2025-62849",
|
|
2824
|
+
"gap_closes": [
|
|
2825
|
+
"NIST-800-53-SI-2",
|
|
2826
|
+
"ISO-27001-2022-A.8.8"
|
|
2827
|
+
]
|
|
2828
|
+
}
|
|
2829
|
+
],
|
|
2709
2830
|
"compliance_exposure_score": {
|
|
2710
2831
|
"percent_audit_passing_orgs_still_exposed": 60,
|
|
2711
2832
|
"basis": "Same population as the chain siblings.",
|
|
@@ -2852,7 +2973,7 @@
|
|
|
2852
2973
|
},
|
|
2853
2974
|
"CVE-2024-21762": {
|
|
2854
2975
|
"name": "Fortinet FortiOS / FortiProxy SSL-VPN out-of-bounds write (sslvpnd preauth RCE)",
|
|
2855
|
-
"lesson_date": "2026-05-
|
|
2976
|
+
"lesson_date": "2026-05-19",
|
|
2856
2977
|
"attack_vector": {
|
|
2857
2978
|
"description": "Out-of-bounds write in the sslvpnd daemon's HTTP request handling on FortiOS and FortiProxy. An unauthenticated attacker sends a specially crafted HTTP request to the SSL-VPN web surface and executes code on the appliance. Mass-scanning began within hours of the 2024-02-08 vendor disclosure; CISA KEV-listed the next day with a 7-day federal remediation deadline. Fortinet's 2025-04-11 follow-up advisory documented a post-exploitation technique where attackers who compromised the device before patching leave behind read-only symlinks in the SSL-VPN language-file directory that grant persistent filesystem read access on fully patched firmware — patch alone is insufficient.",
|
|
2858
2979
|
"privileges_required": "none (unauth network reach to the SSL-VPN web surface; SSL-VPN must be enabled on the FortiGate)",
|
|
@@ -2911,7 +3032,18 @@
|
|
|
2911
3032
|
"gap": "Essential 8 patch-applications ML3 (48h) is closer to the operational reality than NIST SI-2 but still misses the mass-scanning window."
|
|
2912
3033
|
}
|
|
2913
3034
|
},
|
|
2914
|
-
"new_control_requirements": [
|
|
3035
|
+
"new_control_requirements": [
|
|
3036
|
+
{
|
|
3037
|
+
"id": "NEW-CTRL-001",
|
|
3038
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
3039
|
+
"description": "Operational response within the CISA-published due date for any KEV listing; routinely shorter than the NIST 30-day SLA.",
|
|
3040
|
+
"evidence": "CVE-2024-21762",
|
|
3041
|
+
"gap_closes": [
|
|
3042
|
+
"NIST-800-53-SI-2",
|
|
3043
|
+
"ISO-27001-2022-A.8.8"
|
|
3044
|
+
]
|
|
3045
|
+
}
|
|
3046
|
+
],
|
|
2915
3047
|
"compliance_exposure_score": {
|
|
2916
3048
|
"percent_audit_passing_orgs_still_exposed": 60,
|
|
2917
3049
|
"basis": "Internet-facing SSL-VPN concentrators are routinely deployed by SOC 2 / ISO 27001 / PCI-audited organisations without a documented compressed-SLA patching procedure for the appliance class; the standard 30-day patch SLA was active exposure for this CVE. Post-exploitation symlink cleanup is essentially never tested in compliance audits — operators who patched in place after compromise frequently retained attacker persistence.",
|