@blamejs/exceptd-skills 0.19.12 → 0.19.13

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.
@@ -14282,7 +14282,31 @@
14282
14282
  },
14283
14283
  "ai_discovered_zeroday": false,
14284
14284
  "ai_discovery_source": "vendor_research",
14285
- "ai_assist_factor": "none"
14285
+ "ai_assist_factor": "none",
14286
+ "new_control_requirements": [
14287
+ {
14288
+ "id": "NEW-CTRL-134",
14289
+ "name": "DEVICE-MANAGEMENT-GATEWAY-CONFIG-ENDPOINT-AUTH-INPUT-NEUTRALIZATION",
14290
+ "description": "Cisco Catalyst SD-WAN Controller (formerly SD-WAN vSmart) and Catalyst SD-WAN Manager (formerly SD-WAN vManage) are the management plane the packet names, and the defect sits on the interface where they authenticate fabric peers: the packet states the peering authentication mechanism in an affected system is not working properly, so crafted requests let an unauthenticated remote attacker log in as an internal, high-privileged, non-root user account, access NETCONF from it, and manipulate network configuration for the SD-WAN fabric. Bound to these two products the control means the peering interface takes its own authorization decision on every request before a session exists — a peer's asserted identity is verified rather than accepted — and that no Controller or Manager instance is left with its peering and NETCONF interfaces reachable from a segment holding no fabric role. This is also why the cited least-privilege and identity-and-access gaps cannot close the path: the account the attacker lands in is internal to the product rather than one the operator provisioned, so per-account privilege scoping is never consulted and an attestation covering administrator accounts passes cleanly while an unauthenticated caller holds administrative privileges on the system. Distinguishing test: from a segment carrying no SD-WAN fabric role, send unauthenticated peering requests to a staging Controller and Manager and confirm each is refused before any session is issued, then attempt a NETCONF session from that same origin and confirm it is refused too — an estate that audits vManage operator roles and passes remains fully exposed to the path the packet describes, because the path never touches those roles. Precondition: repairing the peering authentication mechanism is what the vendor update does; this control states the property to verify and does not implement it. Until that update and the restart the packet's live-patch note requires have landed, restricting which segments can present requests bounds who can attempt the bypass but leaves it fully available to anything inside the permitted segment — and because a fabric's peers are distributed by design, the peering interface must stay reachable to those peers for the overlay to work, so the restriction is partial by construction rather than a closure.",
14291
+ "evidence": "Packet vector: Catalyst SD-WAN Controller, formerly SD-WAN vSmart, and Catalyst SD-WAN Manager, formerly SD-WAN vManage, \"contain an authentication bypass vulnerability could allow an unauthenticated, remote attacker to bypass authentication and obtain administrative privileges on an affected system. This vulnerability exists because the peering authentication mechanism in an affected system is not working properly... A successful exploit could allow the attacker to log in to an affected Cisco Catalyst SD-WAN Controller as an internal, high-privileged, non-root user account. Using this account, the attacker could access NETCONF, which would then allow the attacker to manipulate network configuration for the SD-WAN fabric.\" CWE-287. CISA KEV-listed 2026-02-25, active_exploitation confirmed, poc_available true, CVSS 9.1, RWEP 77. patch_available true; live_patch_available false with the note that no live-patch tool is registered and the vendor patch typically requires a service restart or system reboot per the KEV requiredAction.",
14292
+ "gap_closes": [
14293
+ "NIST-800-53-AC-6",
14294
+ "UK-CAF-B2",
14295
+ "NIS2-Art21-network-security"
14296
+ ]
14297
+ },
14298
+ {
14299
+ "id": "NEW-CTRL-001",
14300
+ "name": "CISA-KEV-RESPONSE-SLA",
14301
+ "description": "The clock this control sets opens on this entry at the 2026-02-25 KEV listing, and what counts as verified mitigation has to be stated in these products' own terms. The packet records a vendor fix with no live-patch path and a note that the patch typically requires a service restart or system reboot, so completion is measured by each Catalyst SD-WAN Controller and Manager having taken the fixed image and come back from that restart — an instance carrying the image but not yet restarted still runs the vulnerable peering authentication code and counts as exposed, and on a fabric controller the restart is the step most likely to be deferred because taking it disturbs the overlay it serves. Where the restart cannot be scheduled inside the window, the documented-compensating-control branch is the only one this SLA leaves, and it has to be written down as a compensating control with its residual stated rather than recorded as compliant: restricting which segments can present requests to the peering and NETCONF interfaces bounds who can attempt the bypass, but it does not repair the mechanism, and every legitimate fabric peer's network remains a permitted origin. Priority follows the packet rather than the CVSS band — confirmed in-the-wild exploitation and a public PoC against a system whose compromise yields NETCONF-level authority over the fabric's configuration makes this a control-plane containment item, not a scheduled network-device update. Precondition: because exploitation is confirmed, the update does not close an instance that was reachable during the window. The packet's end state is an attacker manipulating SD-WAN fabric configuration, so a Controller or Manager exposed before the fix landed needs its fabric configuration and the accounts defined on it compared against a known-good copy; an update applied to a system that already issued an administrative session removes the entry path and nothing the attacker did through it.",
14302
+ "evidence": "Packet: CISA KEV-listed 2026-02-25 with active_exploitation confirmed and poc_available true; CVSS 9.1, RWEP 77; CWE-287. patch_available true, live_patch_available false, with live_patch_notes stating \"No live-patch tool registered for this entry at bulk-import time. Vendor patch typically requires service restart or system reboot per the KEV requiredAction.\" Vector: an unauthenticated remote attacker can \"bypass authentication and obtain administrative privileges on an affected system,\" log in \"as an internal, high-privileged, non-root user account,\" and \"access NETCONF, which would then allow the attacker to manipulate network configuration for the SD-WAN fabric.\"",
14303
+ "gap_closes": [
14304
+ "AU-Essential-8-Patch",
14305
+ "ISO-27001-2022-A.8.8",
14306
+ "NIST-800-53-SI-2"
14307
+ ]
14308
+ }
14309
+ ]
14286
14310
  },
14287
14311
  "CVE-2026-25108": {
14288
14312
  "name": "Soliton Systems K.K FileZen OS Command Injection Vulnerability",
@@ -15100,7 +15124,41 @@
15100
15124
  },
15101
15125
  "ai_discovered_zeroday": false,
15102
15126
  "ai_discovery_source": "vendor_research",
15103
- "ai_assist_factor": "none"
15127
+ "ai_assist_factor": "none",
15128
+ "new_control_requirements": [
15129
+ {
15130
+ "id": "NEW-CTRL-030",
15131
+ "name": "PERIMETER-DEVICE-ZERODAY-SLA-TIER",
15132
+ "description": "The packet's path into BeyondTrust Remote Support and Privileged Remote Access needs no credential and no user interaction — an unauthenticated remote attacker reaches the product and executes operating system commands in the context of the site user — so these systems are not servers sitting behind an access boundary, they are the boundary the exploit crosses, which is what puts them in this control's distinct SLA tier rather than in the general server population. For these two products the control means the remediation clock runs from the 2026-02-13 KEV listing rather than from the next scheduled maintenance window, and that completion is measured per system by the version actually running against the vendor's fixed version, not by 'update approved', 'update downloaded' or a closed change ticket. The packet registers no live-patch path and records that the vendor patch typically requires a service restart or system reboot per the KEV requiredAction, so a system that has taken the update but not restarted still runs the vulnerable code and has to be counted as exposed for the whole interval until it restarts. The control's alternative branch — isolating the vulnerable interface instead of meeting the clock — carries a precondition that frequently does not hold for this product: Remote Support and Privileged Remote Access exist in order to be reachable, so isolation is only available where the operator can name a user and technician population whose access can be suspended for the duration, and where it cannot, the update plus its restart is the only lever and there is no compensating control to record in its place. Priority follows the packet rather than the CVSS band alone: confirmed in-the-wild exploitation plus a public PoC against a no-authentication path means the window is being actively worked. Distinguishing test: produce, per affected system, the running version and the timestamp of the restart that activated it, set against the vendor's fixed version — a patch-management attestation that reports an SLA-compliance percentage over a 14- or 30-day window passes cleanly while a system sits updated-but-unrestarted on a KEV-listed no-authentication remote command-execution flaw.",
15133
+ "evidence": "Packet: BeyondTrust Remote Support (RS) and Privileged Remote Access (PRA); CWE-78 OS command injection. Vector: 'Successful exploitation could allow an unauthenticated remote attacker to execute operating system commands in the context of the site user. Successful exploitation requires no authentication or user interaction.' cisa_kev true, kev_date 2026-02-13, active_exploitation confirmed, poc_available true, CVSS 9.8, RWEP 83. patch_available true; live_patch_available false; live_patch_notes: 'No live-patch tool registered for this entry at bulk-import time. Vendor patch typically requires service restart or system reboot per the KEV requiredAction.' Citing gaps closed here: AU-Essential-8-Patch (Patch operating systems), ISO-27001-2022-A.8.8 (Management of technical vulnerabilities), NIST-800-53-SI-2 (Flaw Remediation), NIS2-Art21-vulnerability-handling.",
15134
+ "gap_closes": [
15135
+ "AU-Essential-8-Patch",
15136
+ "ISO-27001-2022-A.8.8",
15137
+ "NIST-800-53-SI-2",
15138
+ "NIS2-Art21-vulnerability-handling"
15139
+ ]
15140
+ },
15141
+ {
15142
+ "id": "NEW-CTRL-032",
15143
+ "name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
15144
+ "description": "The packet records confirmed in-the-wild exploitation and a public PoC against a path that requires no authentication and no user interaction, which changes what the response has to cover: any Remote Support or Privileged Remote Access system that was reachable before it was updated is possibly already executed against, not merely possibly vulnerable. Bound to this product, the control means the answer to the 2026-02-13 KEV listing is not the vendor update alone — for each system reachable during the exposure window, export the configuration off the box, rebuild from vendor media rather than patching in place, and rotate the credentials and key material the system held. The packet's own outcome statement is the reason: command execution in the context of the site user, with the vendor stating exploitation may lead to system compromise including unauthorized access, data exfiltration and service disruption. An attacker who reached that before the update keeps everything they wrote after it. This is also precisely why the anti-malware control cited against this entry does not close the path: an anti-malware attestation covers the hosts the agent is installed on and the content it has signatures for, whereas an operating-system command-execution foothold on this product typically leaves an added account, an altered configuration entry, or a script the platform itself executes on schedule — content with nothing to match. Distinguishing test: take a system that was reachable before remediation and diff its accounts, automated tasks and on-disk content against a freshly built system at the same fixed version; a clean anti-malware scan and a version number at or above the fixed release are both fully consistent with a system that is still implanted. Preconditions: the vendor update is what closes the injection path and this control does not substitute for it; the control applies only to systems that were actually reachable during the window, not to every unit in the inventory; and where a rebuild genuinely cannot be scheduled, the honest record is an accepted exposure with a dated review, because the system continues to be trusted with no evidence it is clean — not a remediation entry.",
15145
+ "evidence": "Packet: BeyondTrust Remote Support (RS) and Privileged Remote Access (PRA); CWE-78 OS command injection; unauthenticated remote attacker executes operating system commands 'in the context of the site user'; vector states exploitation 'may lead to system compromise, including unauthorized access, data exfiltration, and service disruption'. active_exploitation confirmed; cisa_kev true, kev_date 2026-02-13; poc_available true; RWEP 83; CVSS 9.8. patch_available true; live_patch_available false; live_patch_notes: 'No live-patch tool registered for this entry at bulk-import time. Vendor patch typically requires service restart or system reboot per the KEV requiredAction.' Citing gaps closed here: CIS-Controls-v8-10.1 (Deploy and Maintain Anti-Malware Software), NIST-800-53-SI-2 (Flaw Remediation).",
15146
+ "gap_closes": [
15147
+ "CIS-Controls-v8-10.1",
15148
+ "NIST-800-53-SI-2"
15149
+ ]
15150
+ },
15151
+ {
15152
+ "id": "NEW-CTRL-037",
15153
+ "name": "FLEET-COMPROMISE-IR-PLAYBOOK",
15154
+ "description": "Remote Support and Privileged Remote Access are, by what the packet names them, the products through which support sessions into other systems are established, so command execution on them is not bounded by the systems themselves. Applied to this CVE, the control means the response includes an accounting of what passed through each affected system during the exposure window — the accounts that authenticated to or through it, the credential and session material it held for the systems it serves, and the trust those serviced systems extend to it — with each of those rotated or re-established rather than left standing because the system now reports a fixed version. Two preconditions must be stated rather than assumed. First, the scope list cannot be drawn solely from the affected system's own records: the packet gives an attacker executing operating system commands in the context of the site user, and records written on a system in that state are attacker-influenceable, so an off-system record of sessions is the authoritative source where one exists, and where it does not, the defensible scope is every account that used the service during the window. Second, this control assumes the deployment actually brokers access to other systems — the packet establishes the products and the exploitation outcome, not any particular site's session inventory, so the rotation list is a deployment fact the operator has to produce and it may be narrower or wider than the product name suggests. Rotation is also not containment on its own: it invalidates what the attacker took, it does not remove what the attacker left, which is the rebuild half of the response, and it gives nothing back to a system that was never reachable during the window. Distinguishing test: name the accounts whose sessions traversed each affected system between the earliest plausible compromise and completion of its rebuild, and show a rotation timestamp after that completion for each — an identity-and-access attestation showing that every technician holds a unique account with MFA passes cleanly here, because the packet's path never authenticates as any of them and no per-account privilege decision is ever consulted.",
15155
+ "evidence": "Packet: BeyondTrust Remote Support (RS) and Privileged Remote Access (PRA); CWE-78; vector states successful exploitation 'requires no authentication or user interaction' and that the attacker executes operating system commands 'in the context of the site user', which 'may lead to system compromise, including unauthorized access, data exfiltration, and service disruption'. cisa_kev true, kev_date 2026-02-13; active_exploitation confirmed; poc_available true; CVSS 9.8; RWEP 83; patch_available true; live_patch_available false (vendor patch typically requires service restart or system reboot per the KEV requiredAction). Citing gaps closed here: UK-CAF-B2 (Identity and access control), NIST-800-53-AC-6 (Least Privilege).",
15156
+ "gap_closes": [
15157
+ "UK-CAF-B2",
15158
+ "NIST-800-53-AC-6"
15159
+ ]
15160
+ }
15161
+ ]
15104
15162
  },
15105
15163
  "CVE-2026-20700": {
15106
15164
  "name": "Apple Multiple Buffer Overflow Vulnerability",
@@ -17448,7 +17506,31 @@
17448
17506
  },
17449
17507
  "ai_discovered_zeroday": false,
17450
17508
  "ai_discovery_source": "vendor_research",
17451
- "ai_assist_factor": "none"
17509
+ "ai_assist_factor": "none",
17510
+ "new_control_requirements": [
17511
+ {
17512
+ "id": "NEW-CTRL-001",
17513
+ "name": "CISA-KEV-RESPONSE-SLA",
17514
+ "description": "The packet names five separately shipped products — Cisco Unified Communications Manager, Unified CM Session Management Edition, Unified CM IM & Presence Service, Unity Connection, and Webex Calling Dedicated Instance — each carrying its own version and its own upgrade, so a remediation record showing Unified CM at the fixed version says nothing about the IM & Presence Service or Unity Connection instances standing beside it. For this CVE the control's clock therefore has to be tracked per named product and per instance, running from the 2026-01-21 KEV listing. The mitigation the clock demands here is the vendor update and nothing else: the packet records patch_available true, live_patch_available false, and a note that the vendor patch typically requires a service restart or system reboot per the KEV requiredAction — so there is no in-place mitigation to deploy while the update waits, and an instance that has taken the update but not restarted still runs the vulnerable code and must be counted as exposed rather than as met. Keep the sweep to the five products the packet names: it ties the CWE-94 sink to those and provides no mapping into other Cisco software, so treating every Cisco system in the estate as an instance of this CVE manufactures findings and upgrade work against products no evidence implicates. Priority follows the packet rather than the CVSS band on its own — confirmed in-the-wild exploitation, a public PoC, and an outcome the packet describes as user-level access to the underlying operating system followed by elevation to root, which means the end state is control of the platform, not degradation of a service. Distinguishing test: produce, per named product and per instance, the running version and the restart timestamp against the vendor's fixed version — a vulnerability-management attestation that records the estate as compliant because the change tickets closed inside the window passes cleanly while an unrestarted instance keeps serving.",
17515
+ "evidence": "Packet: 'Cisco Unified Communications Manager (Unified CM), Cisco Unified Communications Manager Session Management Edition (Unified CM SME), Cisco Unified Communications Manager IM & Presence Service (Unified CM IM&P), Cisco Unity Connection, and Cisco Webex Calling Dedicated Instance contain a code injection vulnerability that could allow the attacker to obtain user-level access to the underlying operating system and then elevate privileges to root.' CWE-94. cisa_kev true, kev_date 2026-01-21, active_exploitation confirmed, poc_available true, CVSS 9.8, RWEP 77. patch_available true; live_patch_available false; live_patch_notes: 'No live-patch tool registered for this entry at bulk-import time. Vendor patch typically requires service restart or system reboot per the KEV requiredAction.' Citing gaps closed here: AU-Essential-8-Patch, ISO-27001-2022-A.8.8, NIS2-Art21-patch-management, NIST-800-53-SI-2.",
17516
+ "gap_closes": [
17517
+ "AU-Essential-8-Patch",
17518
+ "ISO-27001-2022-A.8.8",
17519
+ "NIS2-Art21-patch-management",
17520
+ "NIST-800-53-SI-2"
17521
+ ]
17522
+ },
17523
+ {
17524
+ "id": "NEW-CTRL-135",
17525
+ "name": "CONTROL-PANEL-PLUGIN-USER-SURFACE-MUST-NOT-REACH-ROOT-OPERATIONS",
17526
+ "description": "The packet's escalation has two stages, and the second is the one this control governs: code injection gives the attacker user-level access to the underlying operating system of the Unified Communications product, and from that user-level context privileges are elevated to root. A constrained context reaching root operations on the platform beneath it is exactly the pattern the control forbids. Bound to these five products, it means the platform's privileged operations sit behind their own authorization boundary that the application tier can only reach through a constrained, validated interface, so that a defect in the application's input handling does not leave an attacker one step from root on the call-control and messaging platform. This is why the least-privilege gap cited on this entry cannot close the path: the escalation happens inside the product, between an operating-system user context the attacker obtained through injection and root — there is no operator-assignable account whose privileges could be narrowed to prevent it, so an attestation covering administrator accounts on these products passes while the path stays open. Preconditions, stated rather than implied: the boundary is a property the vendor update establishes, so this control names what to verify and does not implement it, and the packet records no live-patch path, meaning each instance carries the service restart or system reboot the fix requires before it is remediated. Until that lands, the operator-side lever is restricting which segments can reach the affected products' interfaces — that bounds who can attempt the injection but leaves the path fully exploitable to anything inside a permitted segment, and it is simply unavailable where the interface must stay reachable for the products to carry calls, voicemail and presence. And because active_exploitation is confirmed with a public PoC, any instance reachable during the exposure window needs forensic triage and credential rotation: an update applied to a system that already granted root does not remove what the attacker left behind.",
17527
+ "evidence": "Packet: CWE-94 code injection in Cisco Unified CM, Unified CM SME, Unified CM IM&P, Cisco Unity Connection and Cisco Webex Calling Dedicated Instance; vector states the flaw 'could allow the attacker to obtain user-level access to the underlying operating system and then elevate privileges to root'. active_exploitation confirmed; cisa_kev true, kev_date 2026-01-21; poc_available true; CVSS 9.8; RWEP 77. patch_available true; live_patch_available false; live_patch_notes: 'No live-patch tool registered for this entry at bulk-import time. Vendor patch typically requires service restart or system reboot per the KEV requiredAction.' Citing gaps closed here: NIST-800-53-AC-6 (Least Privilege), UK-CAF-B4 (System security).",
17528
+ "gap_closes": [
17529
+ "NIST-800-53-AC-6",
17530
+ "UK-CAF-B4"
17531
+ ]
17532
+ }
17533
+ ]
17452
17534
  },
17453
17535
  "CVE-2026-20805": {
17454
17536
  "name": "Microsoft Windows Information Disclosure Vulnerability",
@@ -21569,7 +21651,22 @@
21569
21651
  },
21570
21652
  "ai_discovered_zeroday": false,
21571
21653
  "ai_discovery_source": "vendor_research",
21572
- "ai_assist_factor": "none"
21654
+ "ai_assist_factor": "none",
21655
+ "new_control_requirements": [
21656
+ {
21657
+ "id": "NEW-CTRL-145",
21658
+ "name": "ACTIVELY-EXPLOITED-OS-LPE-REMEDIATION-WINDOW-ENFORCEMENT",
21659
+ "description": "The packet places this in the Windows Common Log File System Driver and describes a local, privileged attacker bypassing certain security mechanisms (CWE-269) — the attacker already holds a legitimate account on the host, so no account model is being abused and no credential is being guessed; a privilege boundary inside an operating-system driver is failing. For this CVE the control means the Windows update carrying the CLFS fix is driven across every affected host on the KEV clock that opened 2025-10-06 rather than folded into the next routine rollup, with completion measured per host by the installed build against the fixed build for its SKU rather than by 'approved' or 'downloaded' in the management console. The packet records a vendor patch with no live-patch path and a fix that typically requires a service restart or system reboot per the KEV required action, so a host that has taken the update but not restarted is still running the vulnerable driver and must be counted as exposed, not as patched-pending-reboot. That distinction is load-bearing here because there is no interim lever to hold the exposure down while the restart is deferred: the flaw is in a driver Windows ships as part of the operating system and loads on the running system, so unlike a vulnerable third-party driver there is nothing to blocklist and no module an operator can disable, and unlike a network-reachable flaw there is no segment to restrict — the restart is what puts the fixed code in service. The second half of the control is the half the citing gaps miss: because the attacker is already a local, privileged user, tightening account privilege or access control does not contain the escalation, which is why patch and vulnerability-management attestations are the ones that actually have to move on this entry. Priority follows the packet rather than the CVSS 7.8 band — a public PoC, confirmed in-the-wild exploitation, and the packet's own note that LPEs of this class are routinely paired with an initial-access flaw by ransomware operators make this the containment step in a chain rather than a standalone endpoint hygiene item, and a host that was reachable to an untrusted local account during the exposure window warrants triage rather than being closed on the patch alone.",
21660
+ "evidence": "The packet's vector states that Microsoft Windows Common Log File System Driver contains a privilege escalation vulnerability that could allow a local, privileged attacker to bypass certain security mechanisms, classified CWE-269. CISA KEV-listed 2025-10-06 with active_exploitation confirmed and poc_available true; CVSS 7.8, RWEP 77. patch_available true; live_patch_available false, with the packet noting no live-patch tool registered for this entry and that the vendor patch typically requires service restart or system reboot per the KEV requiredAction. The packet's attack_vector adds that LPEs of this class are routinely paired with an initial-access flaw by ransomware operators. The framework controls this entry already cites as insufficient are ASD Essential Eight 'Patch operating systems', ISO/IEC 27001:2022 A.8.8, EU NIS2 Article 21 vulnerability handling and disclosure, NIST SP 800-53 SI-2 Flaw Remediation, and UK NCSC CAF B4 System security.",
21661
+ "gap_closes": [
21662
+ "AU-Essential-8-Patch",
21663
+ "ISO-27001-2022-A.8.8",
21664
+ "NIS2-Art21-patch-management",
21665
+ "NIST-800-53-SI-2",
21666
+ "UK-CAF-B4"
21667
+ ]
21668
+ }
21669
+ ]
21573
21670
  },
21574
21671
  "CVE-2013-3918": {
21575
21672
  "name": "Microsoft Windows Out-of-Bounds Write Vulnerability",
@@ -22942,7 +23039,31 @@
22942
23039
  },
22943
23040
  "ai_discovered_zeroday": false,
22944
23041
  "ai_discovery_source": "vendor_research",
22945
- "ai_assist_factor": "none"
23042
+ "ai_assist_factor": "none",
23043
+ "new_control_requirements": [
23044
+ {
23045
+ "id": "NEW-CTRL-124",
23046
+ "name": "FRAMEWORK-DEFAULT-SECRET-DETECTION",
23047
+ "description": "The packet puts the secret inside the product rather than in the operator's configuration: Sitecore Experience Manager, Experience Platform, Experience Commerce and Managed Cloud carry a deserialization-of-untrusted-data flaw involving the use of default machine keys, and the exploitation path is a known/static ASP.NET machine key abused through ViewState to reach unauthenticated remote code execution. Because the ViewState key is a value the attacker already holds rather than one they must obtain from the target, no amount of operator-side password or account hygiene reduces the exposure — which is exactly why the least-privilege gap is recorded against this entry: the attacker never authenticates as any Sitecore user, so per-account privilege scoping is never consulted and an AC-6 attestation passes cleanly while the path stays open. Bound to these products, the control means enumerating every XM, XP, XC and Managed Cloud instance in the estate as depending on a product-supplied machineKey, then for each one reading the key actually in effect at runtime and confirming it is unique to that instance rather than a product-default or template-inherited value. Re-run that check after any deployment clone, image restore, environment refresh or scale-out of a content-delivery role, since those are the operations that quietly reintroduce one shared key across a set of instances that had already been rotated — the unit of remediation is the key, so a farm whose nodes share one configuration is one key, not many. Precondition: the packet records a vendor patch with no live-patch path, and its live-patch note states the fix typically requires a service restart or system reboot per the KEV requiredAction, so an instance that has taken the update but not restarted is not yet remediated. Replacing the key also removes only future forgery — with exploitation confirmed in the wild and a public PoC, an instance that served a default key while reachable needs its deployed assemblies, content tree and administrator accounts compared against a known-good state and any credential material handled during the exposure window rotated. This control governs whether the key is unique; it does not evict a foothold established before it was changed.",
23048
+ "evidence": "Packet vector: Sitecore XM, XP, XC and Managed Cloud \"contain a deserialization of untrusted data vulnerability involving the use of default machine keys. This flaw allows attackers to exploit exposed ASP.NET machine keys to achieve remote code execution.\" Attack vector records CWE-502 \"abusing a known/static ASP.NET machine key via ViewState, enabling unauthenticated remote code execution.\" CISA KEV-listed 2025-09-04, active_exploitation confirmed, poc_available true, CVSS 9.8, RWEP 77. patch_available true; live_patch_available false with the note that no live-patch tool is registered and the vendor patch typically requires a service restart or system reboot per the KEV requiredAction.",
23049
+ "gap_closes": [
23050
+ "AU-Essential-8-App-Hardening",
23051
+ "NIST-800-53-SI-2",
23052
+ "NIST-800-53-AC-6"
23053
+ ]
23054
+ },
23055
+ {
23056
+ "id": "NEW-CTRL-018",
23057
+ "name": "SCANNER-PAPER-COMPLIANCE-TEST",
23058
+ "description": "A version-based verdict is the specific way remediation goes wrong on this CVE. The packet's exploitation path is a known/static ASP.NET machine key abused through ViewState, so a Sitecore instance can sit at the vendor's fixed release and stay fully exploitable if the default machine key the packet names was never replaced — a scanner reads the product version, and the product version is not where this vulnerability lives. The operational test that separates paper compliance from remediation, per instance of XM, XP, XC and Managed Cloud: produce the machineKey in effect at runtime and show that it is not a product-default or template-inherited value, that it differs between instances built from the same deployment template, and that it was generated after that instance's exposure window rather than carried across the update unchanged. A vulnerability-management report listing the instance as patched on version evidence alone has recorded the update and not the fix, and the same report will keep reading clean on every instance the deployment pipeline recreates from the pre-rotation template. Precondition: this is a verification control — it tells the operator whether the exposure is actually gone, it does not remove it, and neither the version check nor the key check speaks to whether the instance was already exploited. With the packet recording confirmed in-the-wild exploitation and a public PoC, an instance that fails this test on first run has to be treated as having been reachable with a known key, which is an incident-triage question rather than a scan-and-close one.",
23059
+ "evidence": "Packet vector: the flaw \"involv[es] the use of default machine keys\" and \"allows attackers to exploit exposed ASP.NET machine keys to achieve remote code execution\" across Sitecore XM, XP, XC and Managed Cloud. Attack vector: CWE-502 deserialization \"abusing a known/static ASP.NET machine key via ViewState, enabling unauthenticated remote code execution.\" CISA KEV-listed 2025-09-04 with active_exploitation confirmed and poc_available true; CVSS 9.8, RWEP 77. patch_available true, live_patch_available false.",
23060
+ "gap_closes": [
23061
+ "ISO-27001-2022-A.8.8",
23062
+ "NIS2-Art21-patch-management",
23063
+ "UK-CAF-B4"
23064
+ ]
23065
+ }
23066
+ ]
22946
23067
  },
22947
23068
  "CVE-2023-50224": {
22948
23069
  "name": "TP-Link TL-WR841N Authentication Bypass by Spoofing Vulnerability",
@@ -23147,7 +23268,29 @@
23147
23268
  },
23148
23269
  "ai_discovered_zeroday": false,
23149
23270
  "ai_discovery_source": "vendor_research",
23150
- "ai_assist_factor": "none"
23271
+ "ai_assist_factor": "none",
23272
+ "new_control_requirements": [
23273
+ {
23274
+ "id": "NEW-CTRL-127",
23275
+ "name": "UNSUPPORTED-NETWORK-DEVICE-ENUMERATION-AND-RETIREMENT",
23276
+ "description": "This packet carries two facts that have to be resolved per unit before anything else: a vendor patch is recorded as available, and the entry's own vector states the impacted products could be end-of-life and/or end-of-service and that users should discontinue product utilization. So the first requirement is an inventory that names every TL-WA855RE in service with its hardware revision and an end-of-support date obtained from the vendor, not an assumption in either direction. Units whose revision still has supported firmware are patch items and belong on the remediation clock; units whose revision has none cannot be patched at all and are replacement items with a dated schedule, because a risk acceptance with no removal date leaves a KEV-listed device with a public exploit in service indefinitely. The exposure the inventory is scoring is specific: a single unauthenticated TDDP_RESET POST factory-resets and reboots the extender, after which the attacker sets a new administrative password and holds the device. Precondition on the reachability half, which is where this control is usually over-claimed: restricting the management surface bounds who can send that POST, but the packet's only stated access requirement is being on the same network, and a range extender exists to serve the client network it sits on — every client associated to it satisfies that condition, so for a unit extending a general user WLAN there is no segment that removes the path, only isolation of the extended WLAN itself from anything that matters. And because active exploitation is confirmed, a unit that was already reset and re-provisioned by an attacker is not remediated by firmware: its configuration and administrative credential are attacker-set and must be rebuilt from a known-good baseline rather than inherited through the update.",
23277
+ "evidence": "The packet's vector states that TP-Link TL-WA855RE contains a missing authentication for critical function vulnerability allowing an unauthenticated attacker on the same network to submit a TDDP_RESET POST request for a factory reset and reboot, after which the attacker can obtain incorrect access control by setting a new administrative password; it further states the impacted products could be end-of-life (EoL) and/or end-of-service (EoS) and that users should discontinue product utilization. CWE-306; CISA KEV-listed 2025-09-02 with active_exploitation confirmed; poc_available true; CVSS 9.1, RWEP 77; patch_available true, live_patch_available false. ISO/IEC 27001:2022 A.8.8 and EU NIS2 Article 21 network and information system security are recorded among the framework controls insufficient for this entry.",
23278
+ "gap_closes": [
23279
+ "ISO-27001-2022-A.8.8",
23280
+ "NIS2-Art21-network-security"
23281
+ ]
23282
+ },
23283
+ {
23284
+ "id": "NEW-CTRL-001",
23285
+ "name": "CISA-KEV-RESPONSE-SLA",
23286
+ "description": "The clock is not the hard part on this entry; delivery is. The packet records a vendor patch with no live-patch path and a note that the vendor patch typically requires a service restart or system reboot per the KEV required action, so remediating a TL-WA855RE means each physical unit is taken through a firmware update and a reboot by hand. A consumer-grade Wi-Fi range extender is on no managed patch console, which means the KEV clock that opened 2025-09-02 can only be discharged against a hand-maintained inventory of where these units are actually deployed, and completion has to be measured by the firmware version the unit reports after it comes back up — not by an update having been pushed or a ticket closed. Urgency follows what the packet records rather than the CVSS band alone: exploitation is confirmed in the wild, a PoC is public, and the exploit is a single unauthenticated request that needs nothing but network adjacency. Precondition and limit: the packet also states the impacted products could be end-of-life or end-of-service with users advised to discontinue use, so for any unit whose hardware revision has no supported firmware this SLA cannot be met by patching at all and the item is discharged only by replacement — the two controls on this entry are read together, not as alternatives.",
23287
+ "evidence": "CISA KEV-listed 2025-09-02 with active_exploitation confirmed and poc_available true. patch_available true; live_patch_available false, with the packet noting no live-patch tool registered for this entry and that the vendor patch typically requires service restart or system reboot per the KEV requiredAction. The exploit path recorded is an unauthenticated TDDP_RESET POST from an attacker on the same network. ASD Essential Eight 'Patch operating systems' and NIST SP 800-53 SI-2 Flaw Remediation are recorded among the framework controls insufficient for this entry. CVSS 9.1, RWEP 77.",
23288
+ "gap_closes": [
23289
+ "AU-Essential-8-Patch",
23290
+ "NIST-800-53-SI-2"
23291
+ ]
23292
+ }
23293
+ ]
23151
23294
  },
23152
23295
  "CVE-2025-55177": {
23153
23296
  "name": "Meta Platforms WhatsApp Incorrect Authorization Vulnerability",
@@ -28067,7 +28210,30 @@
28067
28210
  },
28068
28211
  "ai_discovered_zeroday": false,
28069
28212
  "ai_discovery_source": "vendor_research",
28070
- "ai_assist_factor": "none"
28213
+ "ai_assist_factor": "none",
28214
+ "new_control_requirements": [
28215
+ {
28216
+ "id": "NEW-CTRL-145",
28217
+ "name": "ACTIVELY-EXPLOITED-OS-LPE-REMEDIATION-WINDOW-ENFORCEMENT",
28218
+ "description": "The packet places this in the Windows Ancillary Function Driver for WinSock (afd.sys) and describes an authorized attacker escalating to administrator — the account is legitimate, so no account model is being abused; a privilege boundary inside a kernel driver is failing. For this CVE the control means the Windows update carrying the afd.sys fix is driven across every affected host on the clock that opened with the 2025-05-13 KEV listing rather than folded into the next monthly rollup, with completion measured by each host's installed build against the fixed build for its SKU rather than by 'approved' or 'downloaded' in the management console. Hosts where non-administrative users hold interactive sessions are the population to enumerate first, because the precondition this flaw needs — an already-authorized local user — is the normal operating state there rather than an anomaly. The packet records a vendor patch with no live-patch path and a fix that typically requires a service restart or system reboot per the KEV requiredAction, so a host that has installed the update but not restarted still runs the vulnerable driver and must be counted as exposed; the restart is also the step most likely to be deferred, and a deferral recorded as 'patched' is the specific way this remediation goes wrong. The load-bearing half is that tightening account privilege does not contain this escalation at all: the attacker already holds an authorized local session, which is exactly why a patch-cadence attestation can report the estate compliant while the flaw stays fully exploitable on every host that has not restarted. Priority follows the packet rather than the 8.8 band — a public PoC, confirmed in-the-wild exploitation, and the packet's own note that LPEs of this class are routinely paired with an initial-access flaw by ransomware operators make this the containment step in a chain rather than a standalone endpoint ticket. Distinguishing test: report installed build plus last-restart time per host against the fixed build, and confirm the reboot-pending population is counted as exposed rather than as remediated.",
28219
+ "evidence": "Packet: 'Microsoft Windows Ancillary Function Driver for WinSock contains a use-after-free vulnerability that allows an authorized attacker to escalate privileges to administrator' (CWE-416); attack_vector: 'a use-after-free (CWE-416) in the Windows Ancillary Function Driver for WinSock (afd.sys), exploited by a local foothold to escalate privileges to SYSTEM ... LPEs of this class are routinely paired with an initial-access flaw by ransomware operators'. cisa_kev true, kev_date 2025-05-13, active_exploitation confirmed, poc_available true, CVSS 8.8, RWEP 77. patch_available true; live_patch_available false; live_patch_notes: 'No live-patch tool registered for this entry at bulk-import time. Vendor patch typically requires service restart or system reboot per the KEV requiredAction.' Citing gaps closed here: AU-Essential-8-Patch, ISO-27001-2022-A.8.8, NIS2-Art21-patch-management, NIST-800-53-SI-2.",
28220
+ "gap_closes": [
28221
+ "AU-Essential-8-Patch",
28222
+ "ISO-27001-2022-A.8.8",
28223
+ "NIS2-Art21-patch-management",
28224
+ "NIST-800-53-SI-2"
28225
+ ]
28226
+ },
28227
+ {
28228
+ "id": "NEW-CTRL-003",
28229
+ "name": "KERNEL-EXPLOITATION-DETECTION",
28230
+ "description": "Detection for this CVE has to key on what the packet says the exploit achieves: an already-authorized local user context becoming administrator or SYSTEM through the afd.sys use-after-free. The signal is that privilege transition itself — a process owned by a standard interactive user acquiring a SYSTEM-level token, or spawning a child running as SYSTEM, without having passed through a sanctioned elevation path (a consented UAC elevation, a service-control-manager start, a task registered by an administrator) — with the alert raised inside the control's stated window. An exploit doing exactly what the packet describes emits that transition, which is why it is the right anchor: a rule built instead on afd.sys crash or bugcheck telemetry would miss the case that matters, because a working exploit escalates rather than faults, and a rule built on named tooling or file hashes misses any re-implementation of the same use-after-free by a different operator. Because the packet gives no live-patch path and a restart-gated fix, this is the control that covers the interval between the 2025-05-13 KEV listing and the last host's restart, and it is worth weighting toward the hosts where that restart is most deferred and where non-administrative users hold interactive sessions. Distinguishing test: on a staging host, have a benign program running as a standard user obtain a SYSTEM token by a route the elevation allowlist does not cover, and confirm the alert actually fires — verifying that the agent is installed and its policy reads 'enabled' proves nothing about whether the transition is detected. Preconditions: this is a dwell-time control, not a mitigation — it fires after the escalation has already happened and reduces none of the exposure the reboot-pending hosts carry; telemetry from a host where an attacker reached SYSTEM is attacker-influenceable, so the alert has to leave the host and be evaluated off-box to survive the event it exists to catch; and sanctioned elevation is routine on administrator and developer workstations, so the allowlist of legitimate transition paths must be built per host population before the rule is enabled, or it will be tuned off within a week.",
28231
+ "evidence": "Packet: CWE-416 use-after-free in the Windows Ancillary Function Driver for WinSock (afd.sys); vector: 'allows an authorized attacker to escalate privileges to administrator'; attack_vector: 'exploited by a local foothold to escalate privileges to SYSTEM'; active_exploitation confirmed; poc_available true; cisa_kev true, kev_date 2025-05-13; CVSS 8.8; RWEP 77. patch_available true; live_patch_available false; live_patch_notes: 'No live-patch tool registered for this entry at bulk-import time. Vendor patch typically requires service restart or system reboot per the KEV requiredAction.' Citing gap closed here: UK-CAF-B4 (System security).",
28232
+ "gap_closes": [
28233
+ "UK-CAF-B4"
28234
+ ]
28235
+ }
28236
+ ]
28071
28237
  },
28072
28238
  "CVE-2025-30397": {
28073
28239
  "name": "Microsoft Windows Scripting Engine Type Confusion Vulnerability",
@@ -30658,7 +30824,30 @@
30658
30824
  },
30659
30825
  "ai_discovered_zeroday": false,
30660
30826
  "ai_discovery_source": "human_researcher",
30661
- "ai_assist_factor": "none"
30827
+ "ai_assist_factor": "none",
30828
+ "new_control_requirements": [
30829
+ {
30830
+ "id": "NEW-CTRL-025",
30831
+ "name": "CONFIGURATION-SIDE-LIVE-PATCH-INVENTORY",
30832
+ "description": "This entry is the case the control exists for, because the remediation the packet records for Postfix has two halves and only one of them is a package version: a software update, and — the packet names it explicitly for the STARTTLS class — a server configuration change. The vulnerable behaviour is not a memory-corruption bug that a binary replaces but an acceptance decision about bytes that arrived before the TLS handshake, and that decision is also governed by how the MTA is configured to offer and require transport security. Applied to this deployment: enumerate every Postfix instance together with its transport-security configuration, and hold the configuration change as a tested, deployable artifact maintained independently of the maintenance-release rollout, so an instance whose package cannot move immediately still has a lever. Distinguishing test, keyed on the behaviour the packet describes rather than on a version string: from an on-path position against a staging instance, deliver plaintext SMTP command bytes after the STARTTLS response and before the handshake, then confirm they are not executed in the encrypted session that follows — a scan that reads the Postfix package version cannot tell a fixed instance from one that still carries the buffering defect. Precondition, and it is a real limit: the configuration lever only removes the in-band upgrade for peers that can be moved off it. A peer that can only negotiate opportunistically still performs the in-band upgrade against the buffering defect, and for those sessions nothing but the patched 2.x maintenance release the packet names closes the path. The packet records no live-patch primitive and a service restart rather than a host reboot, so an instance whose package was replaced without that restart is still running the vulnerable code; the configuration change is a holding measure for the window before the restart, not a substitute for it.",
30833
+ "evidence": "Packet vector: Postfix's STARTTLS implementation 'does not properly restrict I/O buffering, so plaintext SMTP commands inserted by a man-in-the-middle before the TLS handshake are executed within the encrypted session afterward. Fix: upgrade to the patched 2.x maintenance release.' live_patch_notes: 'Remediation is a software update (and, for the smuggling/STARTTLS classes, a server configuration change); no live-patch primitive applies. Service restart, not host reboot.' patch_available true, live_patch_available false. CWE-77 / CWE-264; CVSS 4.8, RWEP 17; poc_available true; cisa_kev false; active_exploitation none.",
30834
+ "gap_closes": [
30835
+ "AU-Essential-8-Patch",
30836
+ "NIST-800-53-SI-2",
30837
+ "NIS2-Art21-network-security"
30838
+ ]
30839
+ },
30840
+ {
30841
+ "id": "NEW-CTRL-017",
30842
+ "name": "BUG-FAMILY-MITIGATION-PERSISTENCE",
30843
+ "description": "The packet places this Postfix defect at the head of a lineage rather than treating it as a closed 2011 item: it records the entry as part of the NO STARTTLS research lineage running from 2011 Postfix to a 2021 multi-MTA round — the same failure to discard bytes buffered before the handshake resurfacing in other mail transfer agents a decade later. For this entry the control means the transport-security configuration change the packet names as part of remediation is not reverted the moment the patched 2.x maintenance release lands and the service restarts; it stays in place through a stated review period, because the primitive it constrains has already demonstrated that it reappears in implementations previously considered fixed. Precondition: retention only helps for the sessions the configuration actually governs — it does nothing for a peer that can only negotiate the in-band upgrade, and it does not detect an injection that already succeeded, because the packet has the injected commands executing inside the encrypted session, carried on the same channel as the legitimate peer's traffic. Retention is also not grounds to defer the update: patch_available is true and the packet registers no live-patch primitive, so every instance still has to take the maintenance release and the service restart. Priority follows the packet rather than the CWE severity: cisa_kev is false and active_exploitation is none, so this belongs on the scheduled maintenance path, and the reason to keep the compensating configuration is the recurrence the packet documents, not an active-exploitation clock.",
30844
+ "evidence": "Packet attack_vector: 'STARTTLS command/response injection: the server/client does not discard bytes buffered before the TLS handshake, so an on-path attacker injects plaintext SMTP commands/responses that are processed inside the encrypted session. Part of the NO STARTTLS research lineage (2011 Postfix → 2021 multi-MTA).' live_patch_notes names a server configuration change for the smuggling/STARTTLS classes alongside the software update, with no live-patch primitive and a service restart rather than a host reboot. cisa_kev false; active_exploitation none; RWEP 17; CVSS 4.8; poc_available true; patch_available true.",
30845
+ "gap_closes": [
30846
+ "ISO-27001-2022-A.8.8",
30847
+ "UK-CAF-B4"
30848
+ ]
30849
+ }
30850
+ ]
30662
30851
  },
30663
30852
  "CVE-2023-50387": {
30664
30853
  "name": "KeyTrap — DNSSEC validating-resolver CPU exhaustion via crafted DNSKEY/RRSIG combinations",
@@ -33939,7 +34128,31 @@
33939
34128
  },
33940
34129
  "ai_discovered_zeroday": false,
33941
34130
  "ai_discovery_source": "vendor_research",
33942
- "ai_assist_factor": "none"
34131
+ "ai_assist_factor": "none",
34132
+ "new_control_requirements": [
34133
+ {
34134
+ "id": "NEW-CTRL-057",
34135
+ "name": "BROWSER-MANAGED-UPDATE-NO-DEFERRAL",
34136
+ "description": "The packet's delivery is a spear-phished link to an attacker-controlled page, so every Chrome/Chromium install in the estate is in scope the moment a user can open a link — there is no server-side surface to isolate, and the packet names no configuration-side mitigation, recording remediation as the vendor update plus the named compensating controls until it lands. For this CVE the control means the managed update ring for Chrome/Chromium carries no deferral: the fixed build is driven out on the KEV clock that opened 2025-03-27 rather than held for a ring's soak period, and completion is measured by the build the browser is actually running on each host, not by the update being approved or downloaded in the management console, because the packet registers no live-patch path. Enumerate the Windows population first — the packet's primitive is the Windows sentinel handle (the -2 pseudo-handle) being supplied and used without validation while the broker duplicates handles across the renderer-to-broker boundary. Precondition, and it is the important one on this entry: the update removes the escape primitive, it does not evict an attacker who already used it. The packet has ForumTroll operators staging the Dante spyware loader through this chain into the medium-integrity browser/broker context with no user interaction beyond opening the link, so a host whose user opened the lure during the exposure window needs host-level triage; updating that host closes the door behind whatever is already inside it, and an estate that reports 100% on the fixed build has evidence about the primitive, not about residency.",
34137
+ "evidence": "Packet: CWE-501 sandbox escape in Chrome/Chromium on Windows. 'A victim ... visits an attacker-controlled page (delivered via spear-phishing), giving the compromised renderer a reachable path to the Mojo IPC layer. A logic error causes an incorrect/sentinel OS handle (the -2 pseudo-handle) to be supplied and used without validation when the broker process duplicates handles across the renderer-to-broker boundary ... escalates the constrained, sandboxed renderer to arbitrary code execution in the medium-integrity browser/broker context, from which the ForumTroll operators staged the Dante spyware loader — all with no user interaction beyond opening the link.' CISA KEV 2025-03-27, active_exploitation confirmed, CVSS 8.3, RWEP 56, poc_available false. patch_available true, live_patch_available false; live-patch note: 'No live-patch path for this product class; remediation is the vendor update plus the named compensating controls until it lands.' Cited gaps include AU-Essential-8-Patch, NIST-800-53-SI-2, ISO-27001-2022-A.8.8 and UK-CAF-B4.",
34138
+ "gap_closes": [
34139
+ "AU-Essential-8-Patch",
34140
+ "NIST-800-53-SI-2",
34141
+ "ISO-27001-2022-A.8.8",
34142
+ "UK-CAF-B4"
34143
+ ]
34144
+ },
34145
+ {
34146
+ "id": "NEW-CTRL-038",
34147
+ "name": "MITIGATION-ACTIVE-PATCH-PENDING-VERDICT-CLASS",
34148
+ "description": "The packet's remediation note defines the interval this control governs in its own words — remediation is the vendor update plus the named compensating controls until it lands, with no live-patch path for this product class. On this entry that interval is unusually exposed, because the trigger is a user opening a link and the packet records the chain completing with no user interaction beyond that: a Chrome/Chromium host waiting on the fixed build is not carrying a reduced-probability version of the risk, it is carrying the full one behind measures that never touch the Mojo handle-duplication path. The requirement here is that such a host be recorded as a distinct, time-bound compensating-control state with an owner and a date — not folded into a 'patched per SLA' percentage — and that the evidence for the remediated state be the build the browser is actually running, since a console reporting the update approved, downloaded or pushed is reporting a deployment step rather than a remediation. Precondition: this control is bookkeeping. It makes the exposure visible and removes none of it, and it is worth attaching precisely because this exposure is the one most likely to be closed on paper: CVSS 8.3 on a browser reads as endpoint hygiene, while the packet records confirmed in-the-wild exploitation delivering a spyware loader. It also says nothing about a host that was already exploited during the window — that host belongs on the incident path regardless of which state the register shows.",
34149
+ "evidence": "Packet: live_patch_available false with the note 'No live-patch path for this product class; remediation is the vendor update plus the named compensating controls until it lands'; patch_available true. Exploitation requires only that the victim open the attacker-controlled page — 'no user interaction beyond opening the link' — with active_exploitation confirmed and a CISA KEV listing of 2025-03-27. CVSS 8.3 against RWEP 56; poc_available false. Cited gaps include ISO-27001-2022-A.8.8 (Management of technical vulnerabilities) and NIS2-Art21-vulnerability-management (Vulnerability handling).",
34150
+ "gap_closes": [
34151
+ "ISO-27001-2022-A.8.8",
34152
+ "NIS2-Art21-vulnerability-management"
34153
+ ]
34154
+ }
34155
+ ]
33943
34156
  },
33944
34157
  "CVE-2019-9875": {
33945
34158
  "name": "Sitecore CMS and Experience Platform (XP) Deserialization Vulnerability (post-authentication)",
@@ -34885,7 +35098,32 @@
34885
35098
  },
34886
35099
  "ai_discovered_zeroday": false,
34887
35100
  "ai_discovery_source": "human_researcher",
34888
- "ai_assist_factor": "none"
35101
+ "ai_assist_factor": "none",
35102
+ "new_control_requirements": [
35103
+ {
35104
+ "id": "NEW-CTRL-001",
35105
+ "name": "CISA-KEV-RESPONSE-SLA",
35106
+ "description": "SimpleHelp is a remote-support server and the packet gives the bypass no cost: an unauthenticated remote caller submits an identity token whose cryptographic signature is never verified and receives a fully authenticated technician session, with no user interaction. For this entry the control means the vendor update is driven across every SimpleHelp server instance on the KEV clock that opened 2026-06-29 against a 2026-07-02 due date — a three-day window, not a monthly cycle — with completion measured by each server's running version against the fixed one rather than by an approved change ticket, since the packet places the defect in versions 5.5.15 and prior and in 6.0 pre-release builds. The packet records a vendor patch and no live-patch path, so nothing mitigates a running instance short of taking it through that update. The population to enumerate first is the servers that have OIDC authentication configured: the packet conditions the bypass on that configuration ('When OIDC authentication is configured'), so that enumeration is what bounds the exposed set while the update rolls. Precondition, and it is narrow: taking the OIDC login path out of service removes the stated precondition only on an instance whose technicians hold another login method, it is unavailable where OIDC is the organization's only route into the console, and it does nothing about a session an attacker already holds — the forged token yields the session directly, so an instance that was reachable with OIDC configured during the window belongs on the incident path, not the configuration path. Priority follows the packet rather than the RWEP band: the absence of a public PoC is the only thing holding the score below the CVSS 10 and confirmed-exploitation signals, and it is not a reason to let a three-day due date slip.",
35107
+ "evidence": "Packet: CWE-347; 'SimpleHelp versions 5.5.15 and prior and 6.0 pre-release versions contain an authentication bypass vulnerability in the OIDC authentication flow. When OIDC authentication is configured, identity tokens submitted during login are accepted without verifying their cryptographic signature'; 'a remote, unauthenticated attacker can submit a forged token containing arbitrary identity claims to obtain a fully authenticated technician session'; 'No user interaction is required'; CISA KEV-listed 2026-06-29 (due 2026-07-02) with confirmed in-the-wild exploitation; CVSS 10, RWEP 50, poc_available false; patch_available true, live_patch_available false with the note 'No live-patch path for this product class; remediation is the vendor update ... plus the named compensating controls until it lands.'",
35108
+ "gap_closes": [
35109
+ "AU-Essential-8-Patch",
35110
+ "ISO-27001-2022-A.8.8",
35111
+ "NIST-800-53-SI-2",
35112
+ "NIS2-Art21-vulnerability-management"
35113
+ ]
35114
+ },
35115
+ {
35116
+ "id": "NEW-CTRL-078",
35117
+ "name": "ENDPOINT-MGMT-DEPLOYMENT-CHANNEL-INTEGRITY",
35118
+ "description": "The asset at risk here is not the SimpleHelp server's own files but what a technician session on it can do to the endpoints that server administers, and the packet hands an attacker that session outright: a forged token carrying arbitrary identity claims, accepted without signature verification, and in some configurations without the second factor. Applied to this product, the control means the SimpleHelp installation and every directory it serves artifacts from are file-integrity-monitored, and every technician session in the exposure window is reconciled against a sanctioned administrator action rather than read off the session's own identity — the claims in that session are attacker-chosen, so the username attached to it is not evidence of who opened it. The distinguishing test keys on precisely what the packet describes the exploit producing, a session created from a token the identity provider never issued: list SimpleHelp technician sessions across the window and match each against a sign-in record at the configured OIDC provider; a technician session with no corresponding provider authentication event is the signal, while an authentication log that records only 'technician logged in' shows the forged session as a clean login. This is the control that retains value after the update lands, because the fix restores signature verification and removes nothing that was pushed, run, or created through a session obtained before it. Precondition: this is detection and eviction, not prevention — it does not stop the forged token, only the vendor update does, and the reconciliation depends on session and identity-provider logs retained from before the update. Where those logs have rolled or the server has already been rebuilt, the comparison cannot be made and the endpoints that server administered must be handled as attacker-reachable rather than recorded as clean.",
35119
+ "evidence": "Packet: 'a remote, unauthenticated attacker can submit a forged token containing arbitrary identity claims to obtain a fully authenticated technician session. In some configurations, this may also allow bypass of multi-factor authentication'; 'identity tokens submitted during login are accepted without verifying their cryptographic signature'; CWE-347; active_exploitation confirmed, CISA KEV-listed 2026-06-29; patch_available true, live_patch_available false. Existing inventory entry NEW-CTRL-078 already governs the SimpleHelp server as a privileged distribution channel.",
35120
+ "gap_closes": [
35121
+ "ISO-27001-2022-A.8.8",
35122
+ "NIST-800-53-SI-2",
35123
+ "UK-CAF-B4"
35124
+ ]
35125
+ }
35126
+ ]
34889
35127
  },
34890
35128
  "CVE-2025-26633": {
34891
35129
  "name": "Microsoft Windows Management Console (MMC) Improper Neutralization Vulnerability",
@@ -37269,7 +37507,38 @@
37269
37507
  "adequate": false,
37270
37508
  "gap": "Essential Eight patch-OS timelines are typically prioritized by remote exploitability; physical-access LPE bugs used in real device-seizure scenarios need equivalent urgency."
37271
37509
  }
37272
- }
37510
+ },
37511
+ "new_control_requirements": [
37512
+ {
37513
+ "id": "NEW-CTRL-009",
37514
+ "name": "KERNEL-MODULE-INVENTORY-AND-DISABLE",
37515
+ "description": "The vulnerable code is uvcvideo's descriptor parsing: uvc_parse_format does not skip frames of type UVC_VS_UNDEFINED, and frames of that type were never counted when uvc_parse_streaming sized the frames buffer, so a crafted UVC device presented to a host drives an out-of-bounds kernel write while the host enumerates it. Bound to this driver, least functionality means splitting the estate by whether uvcvideo has any business function: on servers, virtual machines, appliances and fixed-function hosts that never use a webcam, uvcvideo belongs on a modprobe blacklist so presenting a USB video-class device does not autoload the vulnerable parser, and the loaded-module inventory is what identifies which hosts those are. Precondition, and this is where the control is routinely over-claimed: a blacklist only suppresses autoload. It does nothing on a host where the video class is built into the kernel image rather than built as a module, and nothing on a host where uvcvideo is already loaded — that module has to be unloaded, or the host has to be running the patched kernel, before the blacklist entry means anything. Where uvcvideo cannot be removed because the host genuinely uses a camera, the remaining lever is device authorization: refuse enumeration of USB devices that are not already authorized, so an attacker-presented device never reaches uvc_parse_format. The packet's access condition includes emulated or virtual device presentation, so an argument that the host's physical ports are inaccessible does not by itself remove the path on a virtualized host.",
37516
+ "evidence": "The packet's vector is the upstream fix text: 'media: uvcvideo: Skip parsing frames of type UVC_VS_UNDEFINED in uvc_parse_format', stating that out-of-bounds writes arise because frames of this type were not taken into account when calculating the size of the frames buffer in uvc_parse_streaming. The recorded attack path is an attacker with physical (or emulated/virtual) access presenting a malicious or specially crafted UVC device, with the mis-sized frame buffer causing an out-of-bounds kernel write leveraged for privilege escalation. NIST SP 800-53 CM-7 Least Functionality and UK CAF B4 System security are among the framework controls this entry already cites as insufficient. CWE-787; CISA KEV-listed 2025-02-05 with active_exploitation confirmed; CVSS 7.8, RWEP 51; patch_available true, live_patch_available false.",
37517
+ "gap_closes": [
37518
+ "NIST-800-53-CM-7",
37519
+ "UK-CAF-B4"
37520
+ ]
37521
+ },
37522
+ {
37523
+ "id": "NEW-CTRL-003",
37524
+ "name": "KERNEL-EXPLOITATION-DETECTION",
37525
+ "description": "The packet records no public PoC for this flaw, so there is no exploit-tool signature to match and detection has to key on the behaviour the packet actually describes: a UVC device being presented to the host, uvcvideo parsing its format and frame descriptors during enumeration, and an out-of-bounds kernel write leveraged for privilege escalation. The rule is therefore a pairing, not a single event — a kernel device-enumeration event binding uvcvideo to a newly presented USB video-class device, correlated within a short window against a process on that host acquiring root/uid 0 or new capabilities without passing a sanctioned setuid or service-manager path. Take the attach half of the signal from the kernel's own enumeration events rather than from physical-port or badge-style monitoring, because the packet's access condition explicitly includes emulated and virtual device presentation, which produces no physical event to observe. Limits worth stating rather than leaving implied: this is an after-the-fact control — it surfaces the attempt and shortens dwell time, it does not prevent the write — and on hosts that legitimately use cameras the attach event is routine, which is exactly why the alarm must be the attach-plus-privilege-transition pairing and not either half alone. Anti-malware scanning, which is the control this entry cites as insufficient, has no view of either half: nothing is written to disk and no file is scanned.",
37526
+ "evidence": "The packet describes an attacker with physical (or emulated/virtual) access presenting a malicious or specially crafted UVC device, the uvcvideo driver mis-sizing its frame buffer for UVC_VS_UNDEFINED frame types, and an out-of-bounds kernel write (CWE-787) that can be leveraged for privilege escalation. poc_available is false. ISO/IEC 27001:2022 A.8.7 Protection against malware is recorded as one of the framework controls insufficient for this entry. CISA KEV-listed 2025-02-05, active_exploitation confirmed.",
37527
+ "gap_closes": [
37528
+ "ISO-27001-2022-A.8.7"
37529
+ ]
37530
+ },
37531
+ {
37532
+ "id": "NEW-CTRL-018",
37533
+ "name": "SCANNER-PAPER-COMPLIANCE-TEST",
37534
+ "description": "Two distinct states on this entry are invisible to a version-based scan. First, the packet records a vendor patch with live_patch_available false, so the fixed uvc_parse_format is not in effect on a host until the patched kernel is the kernel actually running — an inventory field showing a patched kernel package installed does not establish that, and the gap between the two is exactly where a fleet reports itself remediated while still running the vulnerable parser. Second, on hosts whose recorded mitigation is the uvcvideo blacklist rather than the patch, no kernel version number describes that state at all, so the scan reports on something other than the thing protecting the host. The scan therefore has to answer both questions: is the running kernel at or past the build carrying this fix, and on every host where the mitigation of record is 'uvcvideo disabled', is uvcvideo genuinely absent when a USB video-class device is attached. Distinguishing test, keyed to the real exploit trigger rather than a stand-in: attach a USB video-class device to a host recorded as mitigated and read the loaded-module list. If uvcvideo binds, the mitigation exists on paper only and the parser is reachable, while a scan that cleared the host from package metadata never looked at the surface that mattered.",
37535
+ "evidence": "patch_available true and live_patch_available false are recorded on this entry, with no live-patch note. The defect is in uvcvideo descriptor parsing (uvc_parse_format / uvc_parse_streaming frame-buffer sizing) reached by presenting a crafted UVC device. ASD Essential Eight 'Patch operating systems' and EU NIS2 Article 21 vulnerability handling are both recorded as framework controls insufficient for this entry. CISA KEV-listed 2025-02-05, active_exploitation confirmed, CVSS 7.8, RWEP 51.",
37536
+ "gap_closes": [
37537
+ "AU-Essential-8-Patch",
37538
+ "NIS2-Art21-vulnerability-management"
37539
+ ]
37540
+ }
37541
+ ]
37273
37542
  },
37274
37543
  "CVE-2024-45195": {
37275
37544
  "name": "Apache OFBiz Forced Browsing Vulnerability",
@@ -39066,7 +39335,31 @@
39066
39335
  "adequate": false,
39067
39336
  "gap": "Least-privilege enforcement within vCenter's own service architecture failed due to the improper privilege-drop condition, which is a defect in the product itself rather than a misconfiguration operators can fully compensate for."
39068
39337
  }
39069
- }
39338
+ },
39339
+ "new_control_requirements": [
39340
+ {
39341
+ "id": "NEW-CTRL-128",
39342
+ "name": "APPSERVER-REMOTING-PROTOCOL-RESTRICTION",
39343
+ "description": "vCenter Server is the listener this control governs on this estate, and the packet states the entire exploit precondition as reachability: a malicious actor with network access to vCenter Server triggers the flaw by sending a specially crafted network packet, escalating to root. No account appears anywhere in that path, which is why the least-privilege control cited as insufficient on this entry cannot close it — the attacker holds no vCenter role, so per-account privilege scoping is never consulted and an AC-6 attestation passes cleanly while the packet's path stays open. Applied to this deployment, the requirement is that vCenter's network listeners accept connections only from management and jump networks and the hosts vCenter administers, enforced by network ACL or host firewall rather than inferred from 'vCenter is internal'. The distinguishing test: from a general user or workstation VLAN against a staging deployment, attempt to open each vCenter listening port and confirm the connection is dropped before it reaches the service. Scope note, because the packet is specific about what it does and does not establish: it names the product, the crafted network packet, and the observed chain with the CVE-2024-38812 heap overflow that turns this into a full unauthenticated-to-root compromise, but it does not name the protocol this particular packet arrives on — so the restriction is written against vCenter's listeners as a set rather than against one named port. Precondition: restricting reachability bounds who can send the packet, it does not repair the privilege-drop check, so any host already inside a permitted management segment — a compromised administrator workstation or jump host — reaches root exactly as before, and the control is unavailable for the segments that must reach vCenter for normal operation. The packet records a vendor patch and no live-patch path; the update is the fix, and this is what bounds exposure until each instance takes it.",
39344
+ "evidence": "Packet: 'The vCenter Server contains a privilege escalation vulnerability. A malicious actor with network access to vCenter Server may trigger this vulnerability to escalate privileges to root by sending a specially crafted network packet'; attack_vector adds 'abuses an improper privilege-drop check ... observed chained with the CVE-2024-38812 heap overflow for a full unauthenticated-to-root compromise'; CWE-250 and CWE-273; NIST-800-53-AC-6 (Least Privilege) is a citing gap on this entry; patch_available true, live_patch_available false, live_patch_notes null. Existing inventory entry NEW-CTRL-128 already governs vCenter's pre-authentication protocol listeners.",
39345
+ "gap_closes": [
39346
+ "NIST-800-53-AC-6",
39347
+ "UK-CAF-B4"
39348
+ ]
39349
+ },
39350
+ {
39351
+ "id": "NEW-CTRL-001",
39352
+ "name": "CISA-KEV-RESPONSE-SLA",
39353
+ "description": "The packet's own signals argue against handling this as a routine 7.5-band item: RWEP 75, a public PoC, confirmed in-the-wild exploitation, and an observed chain with CVE-2024-38812 that converts 'escalate to root' into a full unauthenticated-to-root compromise of the virtualization control plane. For this entry the control means the vendor update is driven across every vCenter Server instance from the 2024-11-20 KEV listing rather than folded into the next quarterly virtualization maintenance window, with completion measured by each appliance's running build against the vendor's fixed build — an update staged on the appliance but not applied leaves the vulnerable code answering the crafted packet, and 'approved' in a change queue is not the same measurement. The packet records a vendor patch and registers no live-patch path, so there is no in-place mitigation: each instance has to be taken through the vendor update, following the vendor's own procedure rather than assuming the service stays available, since the packet carries no live-patch note that would say otherwise. Ordering inside the estate follows the chain the packet names: an instance whose listeners are reachable from segments that also carry the unauthenticated CVE-2024-38812 path is where the escalation completes with no credential at all, so it goes first.",
39354
+ "evidence": "Packet: CISA KEV-listed 2024-11-20, active_exploitation confirmed, poc_available true, RWEP 75 against CVSS 7.5; 'observed chained with the CVE-2024-38812 heap overflow for a full unauthenticated-to-root compromise'; patch_available true, live_patch_available false, live_patch_notes null.",
39355
+ "gap_closes": [
39356
+ "AU-Essential-8-Patch",
39357
+ "ISO-27001-2022-A.8.8",
39358
+ "NIST-800-53-SI-2",
39359
+ "NIS2-Art21-vulnerability-management"
39360
+ ]
39361
+ }
39362
+ ]
39070
39363
  },
39071
39364
  "CVE-2024-38812": {
39072
39365
  "name": "VMware vCenter Server Heap-Based Buffer Overflow Vulnerability",
@@ -39409,7 +39702,19 @@
39409
39702
  "adequate": false,
39410
39703
  "gap": "Boundary/egress filtering didn't block outbound SMB (445) to external IPs, which is what let the forced-authentication hash-leak succeed."
39411
39704
  }
39412
- }
39705
+ },
39706
+ "new_control_requirements": [
39707
+ {
39708
+ "id": "NEW-CTRL-001",
39709
+ "name": "CISA-KEV-RESPONSE-SLA",
39710
+ "description": "What makes the update the whole of the remediation here is the trigger the packet documents: the malicious .url shortcut arrives by phishing mail, and right-clicking, deleting, or moving it is enough to force the victim's machine into an SMB authentication handshake with the attacker's server. Nothing the user is normally told to do — don't open it, delete it — avoids the handshake, and no application sandbox is ever entered, so the ordinary holding measures for a mailed file give nothing and this packet contains no compensating control to run a clock against. The control therefore means the Windows update is driven across the estate from the 2024-11-12 KEV listing rather than the next monthly rollup, with completion measured by each host's installed build rather than by 'approved' or 'downloaded' in the management console; the packet records a vendor patch and registers no live-patch path. Priority should not be read off the 6.5 base or the RWEP 51 — the packet records no public PoC, which is what holds that score down, alongside confirmed in-the-wild exploitation and an outcome the packet states plainly: the user's NTLMv2 hash in the attacker's hands for pass-the-hash reuse or offline cracking, which is a credential compromise rather than the information disclosure the CVSS band suggests. Hosts whose users are inside the phishing target set complete first, because the packet's delivery path is mail and the exposure begins at delivery, not at execution. Precondition on the ordering, not on the fix: a user who already received and handled such a file before the update landed has already leaked the hash, and the update does not invalidate what left the host.",
39711
+ "evidence": "Packet: 'A phishing email delivers a malicious .url shortcut file; minimal interaction (even right-clicking, deleting, or moving it) forces the victim's machine to initiate an SMB authentication handshake to an attacker server, leaking the user's NTLMv2 hash for pass-the-hash reuse or offline cracking'; CWE-73; CISA KEV-listed 2024-11-12, active_exploitation confirmed; CVSS 6.5, RWEP 51, poc_available false; patch_available true, live_patch_available false, live_patch_notes null.",
39712
+ "gap_closes": [
39713
+ "AU-Essential-8-Patch",
39714
+ "UK-CAF-B4"
39715
+ ]
39716
+ }
39717
+ ]
39413
39718
  },
39414
39719
  "CVE-2021-41277": {
39415
39720
  "name": "Metabase GeoJSON API Local File Inclusion Vulnerability",
@@ -39688,7 +39993,30 @@
39688
39993
  "adequate": false,
39689
39994
  "gap": "The ISM's patch-timeframe control for extreme-risk vulnerabilities is difficult to meet given fragmented Android OEM patch-distribution timelines."
39690
39995
  }
39691
- }
39996
+ },
39997
+ "new_control_requirements": [
39998
+ {
39999
+ "id": "NEW-CTRL-126",
40000
+ "name": "MOBILE-OS-MINIMUM-PATCH-LEVEL-ENFORCEMENT",
40001
+ "description": "The defect is in the Android Framework's own filter: shouldHideDocument() in ExternalStorageProvider.java decides which directories a document request may reach, and incorrect Unicode normalization lets a normalized path walk past that decision. There is no provider to disable and no setting that re-closes the filter, so a handset is either on a build carrying the fix or it is exposed. On an Android estate that makes the Android security patch level an access condition rather than a dashboard column: an enrolled handset below the level carrying this Framework fix is denied mail, VPN and document access, instead of being flagged non-compliant while its mail keeps syncing. The install-restriction half of this control carries unusual weight for this CVE, because the packet puts the entire exploitation path behind an application the attacker controls - the crafted path arrives at shouldHideDocument() from a malicious or compromised app already on the device - so restricting installs to a managed catalogue and blocking side-loading removes the most common way that app arrives. Precondition, and it must be stated rather than assumed: install policy does not evict an app already on the handset, and the packet's own wording covers a compromised app, one that arrived legitimately and turned, which no install allowlist would have stopped. A handset suspected of already running such an app belongs on the incident path, with rotation of any credential reachable through the directories the filter was protecting, not on the install-policy path; and the lever is unavailable entirely on an estate that permits personal-profile installs. Distinguishing test: enrol a handset pinned below the fixing security patch level and confirm the access policy actually denies it the protected resources - an estate that surfaces the stale patch level in a report while the device keeps its access has recorded the exposure, not removed it. This is a holding measure for the window before the fixed build reaches the model; the packet registers a vendor patch and no live-patch path, so nothing short of the device taking that build closes the filter.",
40002
+ "evidence": "Packet vector: 'In shouldHideDocument of ExternalStorageProvider.java, there is a possible bypass of a file path filter designed to prevent access to sensitive directories due to incorrect unicode normalization. This could lead to local escalation of privilege with no additional execution privileges needed. User interaction is needed for exploitation.' attack_vector: 'A malicious or compromised app on the device supplies a Unicode-normalized path to ExternalStorageProvider's shouldHideDocument() filter, bypassing the restricted-directory check to reach files it should not be able to access, escalating local privileges with user interaction required.' CWE-176. cisa_kev true, kev_date 2024-11-07, active_exploitation confirmed, CVSS 7.3, RWEP 57, poc_available false, ai_discovered false. patch_available true, live_patch_available false, live_patch_notes null - the packet records a vendor fix and no live-patch path, and states no restart or reboot requirement.",
40003
+ "gap_closes": [
40004
+ "AU-ISM-1546",
40005
+ "ISO-27001-2022-A.8.9",
40006
+ "NIST-800-53-CM-7"
40007
+ ]
40008
+ },
40009
+ {
40010
+ "id": "NEW-CTRL-056",
40011
+ "name": "MOBILE-ENDPOINT-MDM-ENFORCED-KEV-SLA",
40012
+ "description": "For this CVE the remediation is the platform build carrying the ExternalStorageProvider fix and nothing else, so the only variables an operator controls are how fast that build lands on each handset and whether the user may decline it. The managed-device policy must drive the update on the clock that opened with the 2024-11-07 KEV listing rather than on the estate's ordinary monthly cadence, with user deferral disallowed, and completion measured per handset by its reported Android security patch level rather than by an 'assigned' or 'downloaded' state in the management console. The urgency does not come from the score: at CVSS 7.3, with no public PoC recorded and user interaction required for exploitation, this reads as a routine local privilege escalation and lands in a normal patch queue, while the packet records KEV listing with confirmed in-the-wild exploitation and RWEP 57. Precondition, and it is the one that breaks this SLA on Android specifically: policy can force only a build the model's OEM or carrier has actually released, so the fleet report has to separate two failure states that a single compliance percentage hides - handsets that could have taken the fixed build and were allowed to defer, which policy enforcement closes, and models for which no fixed build has shipped, which policy cannot close and which fall to the access-condition control above or to a replacement schedule. Distinguishing test: list enrolled handsets by model against reported security patch level and the days elapsed since the fixed level became available for that model; a report showing policy assignment rather than per-model patch level is measuring the console, not the estate.",
40013
+ "evidence": "Packet fields: cisa_kev true with kev_date 2024-11-07, active_exploitation confirmed, RWEP 57 against CVSS 7.3, poc_available false, ai_discovered false. patch_available true, live_patch_available false, live_patch_notes null. Packet vector states 'User interaction is needed for exploitation' and that the bypass 'could lead to local escalation of privilege with no additional execution privileges needed'; attack_vector names the affected component as ExternalStorageProvider's shouldHideDocument() filter in the Android Framework.",
40014
+ "gap_closes": [
40015
+ "NIS2-Art21-vulnerability-management",
40016
+ "UK-CAF-B4"
40017
+ ]
40018
+ }
40019
+ ]
39692
40020
  },
39693
40021
  "CVE-2019-16278": {
39694
40022
  "name": "Nostromo nhttpd Directory Traversal Vulnerability",
@@ -39883,7 +40211,29 @@
39883
40211
  "adequate": false,
39884
40212
  "gap": "Boundary protection assumed the RAVPN authentication path had rate-limiting; resource exhaustion from bulk auth requests bypassed standard perimeter controls."
39885
40213
  }
39886
- }
40214
+ },
40215
+ "new_control_requirements": [
40216
+ {
40217
+ "id": "NEW-CTRL-030",
40218
+ "name": "PERIMETER-DEVICE-ZERODAY-SLA-TIER",
40219
+ "description": "The affected device is the remote-access concentrator itself - Cisco ASA and FTD terminating the RAVPN service - so what fails is the trust boundary's availability rather than code execution on it, and that is precisely what routes this CVE into the wrong tier. At CVSS 5.8 it lands in the medium queue most estates service on a 30- or 90-day cycle, while the packet records CISA KEV listing on 2024-10-24, confirmed in-the-wild exploitation, and RWEP 57. Bound to this product, the tier means the Cisco software update is scheduled against the KEV clock and not the next appliance-maintenance window, because an unauthenticated attacker who exhausts RAVPN resources removes remote access for the entire remote workforce and, per the packet, may leave the device requiring a reload before that service returns. Precondition, and it removes the alternative this tier normally offers: the tier permits isolating the vulnerable interface in place of patching to the clock, and that option does not exist here - the RAVPN service exists to accept connections from unauthenticated clients on the public internet, so there is no source restriction that leaves the service usable. Narrowing which addresses may reach it is available only to an estate whose remote users all originate from a fixed set of ranges; for everyone else the clock is the only lever. The packet's note that services unrelated to VPN are unaffected should not be read as bounding the impact either, because for a remote workforce the VPN service is the access path. Distinguishing test: pull the remediation date recorded against this CVE and compare it to 2024-10-24 rather than to the ticket's CVSS-derived due date - a vulnerability-management attestation reporting that the medium-severity SLA was met is the specific way this one is missed.",
40220
+ "evidence": "Packet vector: 'A vulnerability in the Remote Access VPN (RAVPN) service of Cisco Adaptive Security Appliance (ASA) Software and Cisco Firepower Threat Defense (FTD) Software could allow an unauthenticated, remote attacker to cause a denial of service (DoS) of the RAVPN service... This vulnerability is due to resource exhaustion... Depending on the impact of the attack, a reload of the device may be required to restore the RAVPN service. Services that are not related to VPN are not affected.' CWE-772. cisa_kev true, kev_date 2024-10-24, active_exploitation confirmed, CVSS 5.8, RWEP 57, poc_available false, ai_discovered false. patch_available true, live_patch_available false, live_patch_notes null.",
40221
+ "gap_closes": [
40222
+ "AU-ISM-1546",
40223
+ "NIS2-Art21-network-security"
40224
+ ]
40225
+ },
40226
+ {
40227
+ "id": "NEW-CTRL-031",
40228
+ "name": "FIREWALL-EGRESS-TELEMETRY-SEPARATE-TRUST-ZONE",
40229
+ "description": "The device that would record this attack is the device the attack exhausts, and the packet says restoring the RAVPN service may require reloading it - so the record of what happened is held on the one component least likely to survive the event. For ASA and FTD units terminating RAVPN this control means syslog and VPN authentication logs are forwarded to a collector outside the appliance, on a separate management plane with its own credentials, before the exposure rather than after it. The rationale differs from the compromise case the control usually covers: nothing here says an attacker gains control of the appliance, so the load-bearing property is simply that the record survives the reload; keep the separate trust zone anyway, because the same collector is what makes the compromise case answerable. The alerting must key on the behaviour the packet documents and not on the outcome: a rising rate of VPN authentication requests to the RAVPN service from unauthenticated sources, correlated with the RAVPN service's own resource consumption - the packet ties this CVE to the Cisco Talos reporting on large-scale brute-force activity against VPN and SSH services, which is the same high-volume authentication signal. A rule that fires on the device becoming unreachable, or on a service restart, detects the end state after remote access is already gone. Precondition: this control does not prevent the exhaustion and does not shorten it - it is detection and post-event reconstruction only, and it holds only while the appliance can still export logs. Because resource exhaustion can degrade that export, the collector's loss of signal from an ASA or FTD unit has to be an alerting condition in its own right rather than a silent gap in the timeline. Distinguishing test: on a staging appliance, generate a sustained burst of RAVPN authentication requests, then reload the device and confirm the off-box collector still holds the request-rate record for the period before the reload.",
40230
+ "evidence": "Packet attack_vector: 'An unauthenticated remote attacker sends a large number of VPN authentication requests to the RAVPN service, exhausting device resources and causing a denial of service that may require a device reload to fully restore.' Packet vector adds: 'An attacker could exploit this vulnerability by sending a large number of VPN authentication requests to an affected device... Depending on the impact of the attack, a reload of the device may be required to restore the RAVPN service' and 'Cisco Talos discussed these attacks in the blog post Large-scale brute-force activity targeting VPNs, SSH services with commonly used login credentials.' CWE-772; cisa_kev true, kev_date 2024-10-24; active_exploitation confirmed; CVSS 5.8; RWEP 57; poc_available false.",
40231
+ "gap_closes": [
40232
+ "NIST-800-53-SI-4",
40233
+ "UK-CAF-D1"
40234
+ ]
40235
+ }
40236
+ ]
39887
40237
  },
39888
40238
  "CVE-2024-47575": {
39889
40239
  "name": "Fortinet FortiManager Missing Authentication Vulnerability",
@@ -40363,7 +40713,32 @@
40363
40713
  "adequate": false,
40364
40714
  "gap": "Patch Applications extreme-risk timelines (48 hours) are routinely missed for appliance firmware requiring scheduled maintenance windows."
40365
40715
  }
40366
- }
40716
+ },
40717
+ "new_control_requirements": [
40718
+ {
40719
+ "id": "NEW-CTRL-030",
40720
+ "name": "PERIMETER-DEVICE-ZERODAY-SLA-TIER",
40721
+ "description": "This is the tier's core case: an unauthenticated attacker reaching a perimeter device's management daemon and executing code on it. Bound to this packet, the affected estate is FortiOS, FortiProxy, FortiPAM and FortiSwitchManager within the version ranges the packet lists - four separate products, so an inventory keyed only on FortiGate firewalls will report clean while FortiProxy, FortiPAM or FortiSwitchManager units stay exposed. The vendor fixed release must be scheduled against the 2024-10-09 KEV listing, not the appliance-maintenance window, and completion measured per unit by its running version against the fixed release rather than by the change ticket being approved. Unlike most entries in this tier, the isolation alternative is genuinely available here and should run in parallel with the upgrade rather than instead of it: the packet places the attack on the FGFM FortiGate-to-FortiManager management service on TCP/541, whose only legitimate peer is the FortiManager that manages the unit, so restricting which sources may reach TCP/541 - or closing the service on units that are not centrally managed at all - bounds who can deliver the crafted packets during the window before the upgrade lands. Precondition: that restriction holds only where the legitimate peer set is actually enumerable and enforceable at the network edge. A unit whose FortiManager reaches it across untrusted transit still exposes fgfmd to anything that can route to it along that path, and the restriction does nothing for a unit that was already exploited - it bounds future delivery, it does not remove the surface. Distinguishing test: from an address outside the FortiManager peer set, attempt to open TCP/541 on each unit in the affected products and confirm it is refused; a patch-management attestation that records the fixed release as scheduled says nothing about which units are still answering the FGFM port in the meantime.",
40722
+ "evidence": "Packet vector: 'A use of externally-controlled format string in Fortinet FortiOS versions 7.4.0 through 7.4.2, 7.2.0 through 7.2.6, 7.0.0 through 7.0.13, FortiProxy versions 7.4.0 through 7.4.2, 7.2.0 through 7.2.8, 7.0.0 through 7.0.14, FortiPAM versions 1.2.0, 1.1.0 through 1.1.2, 1.0.0 through 1.0.3, FortiSwitchManager versions 7.2.0 through 7.2.3, 7.0.0 through 7.0.3 allows attacker to execute unauthorized code or commands via specially crafted packets.' attack_vector: 'An unauthenticated attacker sends crafted packets to the FGFM (FortiGate-to-FortiManager) management service on TCP/541 that contain externally-controlled format-string specifiers, corrupting memory in the fgfmd daemon to achieve remote code execution or crash the service.' CWE-134. cisa_kev true, kev_date 2024-10-09, active_exploitation confirmed, CVSS 9.8, RWEP 83, poc_available true, ai_discovered false. patch_available true, live_patch_available false, live_patch_notes null.",
40723
+ "gap_closes": [
40724
+ "AU-Essential-8-Patch",
40725
+ "NIST-800-53-SI-2",
40726
+ "NIST-800-53-SC-7",
40727
+ "NIS2-Art21-network-security"
40728
+ ]
40729
+ },
40730
+ {
40731
+ "id": "NEW-CTRL-032",
40732
+ "name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
40733
+ "description": "The packet gives an unauthenticated attacker code execution in the fgfmd daemon on the appliance, a public PoC, and confirmed in-the-wild exploitation from the 2024-10-09 KEV listing - which means that for any FortiOS, FortiProxy, FortiPAM or FortiSwitchManager unit that was answering TCP/541 to untrusted sources during that window, installing the fixed release answers the wrong question. The upgrade replaces the vulnerable binary; it does not establish that nothing was left behind by an attacker who already ran code on the unit. For this CVE the IR default is therefore configuration extraction, rebuild from a known-good image, and rotation of the secrets the unit held - administrative accounts and any credentials or keys it stored for authenticating users or upstream services - because code execution on the appliance places all of them in reach. Precondition, and it decides which units this applies to: rebuild-not-patch is scoped to units whose FGFM service was reachable from an untrusted source during the exposure window, and the running firmware version cannot tell you which those were. The reachability evidence has to come from records the appliance is not the sole holder of - edge ACL and flow data, management-network topology, or an off-box log collector - and where no such record exists for the window, the unit is treated as in scope rather than assumed clean. A unit whose TCP/541 was demonstrably never reachable from an untrusted source is a patch-in-place case. Distinguishing test: for each affected unit, produce the evidence that answers whether TCP/541 was reachable from outside the FortiManager peer set between the KEV listing and the upgrade; a flaw-remediation record showing the fixed release installed, with no answer to that question, has closed the ticket without deciding whether the device is trustworthy.",
40734
+ "evidence": "Packet attack_vector: 'An unauthenticated attacker sends crafted packets to the FGFM (FortiGate-to-FortiManager) management service on TCP/541 that contain externally-controlled format-string specifiers, corrupting memory in the fgfmd daemon to achieve remote code execution or crash the service.' Packet vector names the affected products as Fortinet FortiOS, FortiProxy, FortiPAM and FortiSwitchManager and states the flaw 'allows attacker to execute unauthorized code or commands via specially crafted packets'. CWE-134; cisa_kev true with kev_date 2024-10-09; active_exploitation confirmed; poc_available true; CVSS 9.8; RWEP 83; patch_available true; live_patch_available false; live_patch_notes null.",
40735
+ "gap_closes": [
40736
+ "ISO-27001-2022-A.8.8",
40737
+ "NIST-800-53-SI-2",
40738
+ "UK-CAF-B4"
40739
+ ]
40740
+ }
40741
+ ]
40367
40742
  },
40368
40743
  "CVE-2024-43573": {
40369
40744
  "name": "Microsoft Windows MSHTML Platform Spoofing Vulnerability",
@@ -40442,7 +40817,30 @@
40442
40817
  "adequate": false,
40443
40818
  "gap": "Least-functionality/least-privilege baselines rarely block execution of attacker-supplied .msc files by default prior to this patch — MMC did not treat untrusted console files as high-risk content."
40444
40819
  }
40445
- }
40820
+ },
40821
+ "new_control_requirements": [
40822
+ {
40823
+ "id": "NEW-CTRL-001",
40824
+ "name": "CISA-KEV-RESPONSE-SLA",
40825
+ "description": "The execution path the packet records runs at the opening user's own privilege inside mmc.exe — a crafted .msc console file references the apds.dll ActiveX control through the file's StringTable section and runs attacker JScript when the victim opens it — so the population to drive the Windows update across is the general workstation estate where users open files, not a server tier, and the estate's own inventory of who opens files is the enumeration that matters. Run that update on the clock that opened with the 2024-10-08 KEV listing rather than folding it into the next monthly rollup, and measure completion by each host's installed build rather than by 'approved' or 'downloaded' in the management console. The packet registers a vendor patch, live_patch_available false, and no live-patch note at all, so there is no vendor-mitigation state to fall back into and no rule to deploy while the rollout runs: every host either takes the update or is exposed, and the only other lever is the delivery-path control recorded alongside this one, which is the 'documented compensating controls' branch this SLA allows and must be recorded with a dated end rather than as a patched outcome. Priority follows the packet rather than the 7.8 base — a public PoC, confirmed in-the-wild exploitation and RWEP 81 put this above other 7.8-band Windows items in the same cycle, because the vulnerability-management and flaw-remediation controls cited as insufficient here are the ones that set the cadence, and a monthly-rollup cadence is exactly what leaves a KEV-listed, publicly-exploited file-open RCE reachable for weeks after the fix ships.",
40826
+ "evidence": "Packet entry 'Microsoft Windows Management Console Remote Code Execution Vulnerability' (CWE-707): cisa_kev true with kev_date 2024-10-08, active_exploitation 'confirmed', cvss 7.8, rwep_score 81, poc_available true, patch_available true, live_patch_available false, live_patch_notes null. Attack vector as recorded: \"An attacker crafts a malicious .msc console file referencing a vulnerable ActiveX control (apds.dll) via the file's StringTable section, smuggling in an old XSS flaw that executes arbitrary JScript inside mmc.exe when the victim opens the file — the 'GrimResource' technique.\" Framework gaps citing this CVE include NIST-800-53-SI-2 (Flaw Remediation), ISO/IEC 27001:2022 A.8.8 (Management of technical vulnerabilities) and EU NIS2 Art. 21 vulnerability handling.",
40827
+ "gap_closes": [
40828
+ "NIST-800-53-SI-2",
40829
+ "ISO-27001-2022-A.8.8",
40830
+ "NIS2-Art21-vulnerability-management"
40831
+ ]
40832
+ },
40833
+ {
40834
+ "id": "NEW-CTRL-120",
40835
+ "name": "DOWNLOAD-PROVENANCE-ENFORCEMENT",
40836
+ "description": "Exploitation here requires the victim to open an attacker-crafted .msc console file, so on an estate that has not yet taken the update the delivery path is the only enforceable lever. Require the untrusted-origin marking on every file arriving by mail, web download or untrusted file share, and require it to survive the container: a .msc extracted from an archive, mounted from an ISO or VHD, or renamed must inherit the marking rather than lose it, because a provenance-stripped copy reaches mmc.exe indistinguishable from a console an administrator authored locally. Pair the marking with an ingress rule that quarantines .msc content at the mail and web boundary — a saved console file is not a document type a user has an ordinary reason to receive from outside the organization, which makes this one of the few cases where restricting the file type outright costs the business nothing. Distinguishing test: deliver a .msc nested inside a ZIP through each ingress path to a managed workstation, extract it, and confirm the extracted file still carries the untrusted-origin marking and is refused by policy — a user-application-hardening attestation that enumerates Office macro and ActiveX settings passes cleanly while a provenance-stripped console file opens straight into the apds.dll path with the user's own privileges, and a least-functionality attestation that never names .msc as a restricted type passes with it. Precondition: the marking produces a warning the user can accept, not a block, so it raises the bar on casual delivery rather than removing the path; it gives nothing for a copy already resident on disk, nothing for one delivered before enforcement was turned on, and nothing for a host where the file has already been opened — that host is an incident-response case, not an ingress-policy case. This is a holding measure for the window before the vendor update reaches the workstation, not a substitute for it.",
40837
+ "evidence": "Packet attack vector: the .msc file executes arbitrary JScript inside mmc.exe \"when the victim opens the file\", establishing victim-opened delivery as the exploitation precondition; poc_available true and active_exploitation 'confirmed' with kev_date 2024-10-08; patch_available true with live_patch_available false, so the pre-update window is real. Framework gaps citing this CVE include ASD Essential Eight 'User application hardening' and NIST SP 800-53 CM-7 (Least Functionality).",
40838
+ "gap_closes": [
40839
+ "AU-Essential-8-App-Hardening",
40840
+ "NIST-800-53-CM-7"
40841
+ ]
40842
+ }
40843
+ ]
40446
40844
  },
40447
40845
  "CVE-2024-43047": {
40448
40846
  "name": "Qualcomm Multiple Chipsets Use-After-Free Vulnerability",
@@ -40553,7 +40951,39 @@
40553
40951
  "adequate": false,
40554
40952
  "gap": "Ivanti's fix shipped in May 2024 but active exploitation was still being observed and added to KEV in October 2024 — a five-month unpatched-fleet exposure window well beyond a reasonable SLA."
40555
40953
  }
40556
- }
40954
+ },
40955
+ "new_control_requirements": [
40956
+ {
40957
+ "id": "NEW-CTRL-085",
40958
+ "name": "DB-ABSTRACTION-LAYER-PARAMETERIZATION-VERIFICATION",
40959
+ "description": "The injection sink the packet names sits inside a shipped Ivanti binary — SQL injection in RecordGoodApp (PatchBiz.dll) on the Ivanti Endpoint Manager Core server, reached by a crafted goodApp.md5 value sent to /WSStatusEvents/EventHandler — so the parameterization this control requires is a property of the vendor's query construction, not of anything the operator writes. That makes the operator-side expression a verification duty: require the fixed Ivanti release on any Core server running EPM 2022 SU5 or prior, and prove the injection path is closed by exercising it rather than by reading a version. Distinguishing test, taken straight from the packet's own path: on a staging Core server, send a goodApp.md5 value carrying a SQL metacharacter to /WSStatusEvents/EventHandler and confirm it is parameterized rather than concatenated into a query. The control's second premise is the load-bearing one here — the packet's attacker is unauthenticated and on the same network, so a perimeter WAF and an assumption that the Core server is internal never see the request, leaving the query layer as the only place the input is neutralized. Precondition: this control states the property to verify, it does not implement it; the repair is the vendor's. The packet records no live-patch path, so each Core server has to be taken through the vendor update, and until that update lands the only operator-side lever is restricting which network segments can reach /WSStatusEvents/EventHandler — which bounds who can send the request but leaves the endpoint fully exploitable to anything inside a permitted segment, and is unavailable where managed endpoints must keep reaching that service for normal operation.",
40960
+ "evidence": "Packet vector: 'An unspecified SQL Injection vulnerability in Core server of Ivanti EPM 2022 SU5 and prior allows an unauthenticated attacker within the same network to execute arbitrary code.' Packet attack_vector: 'An unauthenticated attacker on the same network sends a crafted goodApp.md5 value to the EPM Core server's /WSStatusEvents/EventHandler endpoint, exploiting SQL injection in RecordGoodApp (PatchBiz.dll) to reach xp_cmdshell and execute arbitrary commands.' CWE-89; cisa_kev true, kev_date 2024-10-02, active_exploitation confirmed; poc_available true; CVSS 8.8, RWEP 70; patch_available true; live_patch_available false, live_patch_notes null.",
40961
+ "gap_closes": [
40962
+ "AU-Essential-8-Patch",
40963
+ "NIST-800-53-SI-2",
40964
+ "PCI-DSS-4.0-6.3.3"
40965
+ ]
40966
+ },
40967
+ {
40968
+ "id": "NEW-CTRL-060",
40969
+ "name": "DATABASE-SERVER-SIDE-SCRIPTING-DEFAULT-DENY",
40970
+ "description": "The packet's chain does not stop at data access: the injection in RecordGoodApp reaches xp_cmdshell and from there executes arbitrary commands on the EPM Core server. That final step is a database-engine feature that runs operating-system commands, and it is what converts an injection into the arbitrary code execution the packet's vector describes. Bound to this deployment, the control means the database instance behind the Ivanti EPM Core server carries no enabled OS-command path, and the login the Core server authenticates with cannot invoke one — with any enabled state carrying a documented, dated threat-model acceptance that names the function requiring it, rather than being inherited from an installation choice or a troubleshooting session nobody reverted. Distinguishing test: on a staging Core server, attempt an operating-system command through the database engine using the login the EPM Core server itself uses, and confirm it is refused — an application patch-level attestation says nothing about whether that path is open. Precondition, and it decides whether the control is available at all: denying the command path does not repair the injection. An unauthenticated attacker on the same network still reaches the vulnerable query through /WSStatusEvents/EventHandler and still reads and writes the EPM database, and the packet gives no basis for treating that as harmless. If the Ivanti deployment genuinely requires the privilege for a product function, this lever is unavailable and the vendor update is the only closure — establish which of those two states each Core server is in rather than assuming a default.",
40971
+ "evidence": "Packet attack_vector: the crafted goodApp.md5 value sent to '/WSStatusEvents/EventHandler' exploits 'SQL injection in RecordGoodApp (PatchBiz.dll) to reach xp_cmdshell and execute arbitrary commands.' Packet vector: the flaw 'allows an unauthenticated attacker within the same network to execute arbitrary code' against 'Core server of Ivanti EPM 2022 SU5 and prior.' CWE-89; CVSS 8.8, RWEP 70; poc_available true; patch_available true; live_patch_available false, live_patch_notes null.",
40972
+ "gap_closes": [
40973
+ "ISO-27001-2022-A.5.15",
40974
+ "UK-CAF-B4"
40975
+ ]
40976
+ },
40977
+ {
40978
+ "id": "NEW-CTRL-037",
40979
+ "name": "FLEET-COMPROMISE-IR-PLAYBOOK",
40980
+ "description": "The packet's end state is arbitrary command execution on the Core server of Ivanti Endpoint Manager — the management server of an endpoint-management product — so the exposure is the estate of endpoints that server administers, not the one host, and the response has to be scoped that way. The window matters here more than on most entries: KEV listing is 2024-10-02, active_exploitation is confirmed, and poc_available is true, so a working exploit was in circulation across whatever interval separated the listing from each operator's update. Applied to this product, the playbook covers what the Core server distributed or instructed to managed endpoints during that window, a defined quarantine criterion for endpoints that acted on those instructions, and rotation of credentials that were used or authenticated through the Core server while it was exposed. Precondition: this is response, not prevention. It stops no injection, and it applies specifically to Core servers that were reachable by an unauthenticated party on the same network during the exposure window — which, given the packet places the attacker on the same network rather than across the perimeter, includes instances an operator considers internal-only. Applying the vendor update to a Core server that already executed attacker commands neither removes what was left behind nor re-validates what it pushed downstream, and closing the finding on the patch is exactly the failure this control exists to prevent.",
40981
+ "evidence": "Packet: CWE-89 SQL injection in 'Core server of Ivanti EPM 2022 SU5 and prior' allowing 'an unauthenticated attacker within the same network to execute arbitrary code'; attack_vector ends in 'xp_cmdshell and execute arbitrary commands.' cisa_kev true, kev_date 2024-10-02; active_exploitation confirmed; poc_available true; CVSS 8.8, RWEP 70; patch_available true; live_patch_available false, live_patch_notes null.",
40982
+ "gap_closes": [
40983
+ "NIS2-Art21-vulnerability-management"
40984
+ ]
40985
+ }
40986
+ ]
40557
40987
  },
40558
40988
  "CVE-2023-25280": {
40559
40989
  "name": "D-Link DIR-820 Router OS Command Injection Vulnerability",
@@ -40928,7 +41358,31 @@
40928
41358
  "adequate": false,
40929
41359
  "gap": "Network-security measures for essential entities seldom treat the building-automation/OT bus as in-scope, leaving the KNX segment flat and reachable."
40930
41360
  }
40931
- }
41361
+ },
41362
+ "new_control_requirements": [
41363
+ {
41364
+ "id": "NEW-CTRL-118",
41365
+ "name": "OT-DEFAULT-CREDENTIAL-ELIMINATION",
41366
+ "description": "The packet states this exploit's access requirement outright: a device configured to interface with a network can be reached by an attacker with access to that network, who then interfaces with the KNX installation, purges devices without additional security options enabled, and sets a BCU key. So the segmentation half of this control is the load-bearing half here — the KNX installation's network interface must answer only from a segmented building-automation management plane holding the commissioning workstations and servers with an operational need to program the bus, not from a general office VLAN, a tenant or guest network, or any routable path from outside. The credential half is not a vendor default the operator can rotate away: the BCU key is the device's own password mechanism, and because the packet records that it often cannot be reset without entering the current key, it behaves as a first-mover control — a reachable device with no BCU key set is an unlocked device, and whoever sets one first holds it. Where the implementation supports the additional security options the packet names, enable them and set the BCU key under operator control, then escrow that key, because the same irreversibility that blocks the attacker locks the operator out of every device whose key is lost. Distinguishing test: from a segment with no commissioning role, attempt to reach the KNX installation's network interface; anything that answers is within reach of the path the packet describes, and 'the bus is on the internal network' is an assertion about topology rather than a demonstration that the interface is unreachable from untrusted segments. Preconditions: segmentation bounds who can reach the bus over the network and repairs nothing about the reset defect, and the packet is explicit that it does not close the surface — an attacker with physical access to a device exploits it the same way with no network involved at all, so device enclosure and cabinet access control belong inside this control rather than beside it. Neither half restores a device an attacker has already locked; that device falls to the vendor path the packet records, and a site that was reachable during the exposure window should be inventoried for devices that no longer accept the operator's key.",
41367
+ "evidence": "Packet entry 'KNX Association KNX Protocol Connection Authorization Option 1 Overly Restrictive Account Lockout Mechanism Vulnerability' (CWE-645), vector as recorded: \"If the device is configured to interface with a network, an attacker with access to that network could interface with the KNX installation, purge all devices without additional security options enabled, and set a BCU key, locking the device. Even if a device is not connected to a network, an attacker with physical access to the device could also exploit this vulnerability in the same way.\" Also recorded: \"The BCU key feature on the devices can be used to create a password for the device, but this password can often not be reset without entering the current password\", and the implementation-dependent qualifier \"depending on the implementation\". active_exploitation 'confirmed'; cisa_kev true, kev_date 2026-07-15. Framework gaps citing this CVE include NIST SP 800-53 SC-7 (Boundary Protection), EU NIS2 Art. 21 security of network and information systems, and UK CAF B4 (System security).",
41368
+ "gap_closes": [
41369
+ "NIST-800-53-SC-7",
41370
+ "NIS2-Art21-network-security",
41371
+ "UK-CAF-B4"
41372
+ ]
41373
+ },
41374
+ {
41375
+ "id": "NEW-CTRL-001",
41376
+ "name": "CISA-KEV-RESPONSE-SLA",
41377
+ "description": "A 2023 CVE that entered the KEV catalogue on 2026-07-15 with confirmed exploitation is the case this SLA exists for: an entry closed years earlier as a low-impact building-automation issue has to be reopened on the KEV clock, and the affected population — KNX devices that use Connection Authorization and support Option 1, which the packet qualifies as implementation-dependent — is one that normally lives in a facilities asset register rather than in the vulnerability-management system that runs the clock, so the first action this control forces is producing that list at all. The packet records a vendor update, no live-patch primitive, and a remediation that requires a reboot, so closing this means taking each affected device through the update and its restart; on a building's lighting, HVAC or access-control bus that is a maintenance window rather than a four-hour push, which is exactly why this control's third branch is the operative one here — until the update lands, the documented compensating state is the reachability restriction recorded alongside it, logged as an active mitigation with a dated end rather than reported as 'patched per SLA'. Distinguishing test is inventory-side rather than scan-side: produce the list of Option 1 KNX devices in service and show a firmware level and a dated remediation decision for each. An operating-system patch attestation and a technical-vulnerability-management attestation both pass cleanly over this estate, because no operating-system agent reports a KNX device and nothing in the scanner's coverage will ever raise it.",
41378
+ "evidence": "Packet: cisa_kev true with kev_date 2026-07-15 against CVE-2023-4346, active_exploitation 'confirmed', cvss 7.5, rwep_score 47, poc_available false, patch_available true, live_patch_available false with live_patch_notes \"No live-patching primitive for this product; the vendor update requires a reboot and is the remediation.\" Affected population per the vector: \"KNX devices that use KNX Connection Authorization and support Option 1 are, depending on the implementation, vulnerable\". Framework gaps citing this CVE include ASD Essential Eight 'Patch operating systems', ISO/IEC 27001:2022 A.8.8 and NIST SP 800-53 SI-2.",
41379
+ "gap_closes": [
41380
+ "AU-Essential-8-Patch",
41381
+ "ISO-27001-2022-A.8.8",
41382
+ "NIST-800-53-SI-2"
41383
+ ]
41384
+ }
41385
+ ]
40932
41386
  },
40933
41387
  "CVE-2026-56155": {
40934
41388
  "name": "Microsoft Active Directory Federation Services Insufficient Granularity of Access Control Vulnerability",
@@ -40965,7 +41419,38 @@
40965
41419
  "adequate": false,
40966
41420
  "gap": "Federated-identity management guidance assumes the token-signing key material is protected; it does not detect the insufficiently-granular ACL that exposes the AD FS DKM key to lateral privilege elevation."
40967
41421
  }
40968
- }
41422
+ },
41423
+ "new_control_requirements": [
41424
+ {
41425
+ "id": "NEW-CTRL-145",
41426
+ "name": "ACTIVELY-EXPLOITED-OS-LPE-REMEDIATION-WINDOW-ENFORCEMENT",
41427
+ "description": "The packet places this in Active Directory Federation Services and describes an authorized attacker elevating privileges locally: a low-privileged local principal abuses an over-permissive DKM container ACL to reach the federation master key or elevate to administrator. The account is already legitimate, so no account model is being abused — an access-control boundary inside AD FS is failing, which is precisely why the least-privilege gap and the identity-and-access-control gap recorded on this entry can pass their attestations while the flaw stays fully exploitable, and why tightening account privilege does not contain the escalation. For this CVE the control means driving the Windows update across every AD FS server in the estate on the clock that opened with the 2026-07-14 KEV listing rather than folding it into the next monthly rollup, with completion measured by each server's installed build rather than by an approval or download state in the management console. The packet records a vendor patch, no live-patch path, and an update whose remediation requires a reboot, so a server that has taken the update but not restarted still carries the vulnerable code and must be counted as exposed — and on a federation farm that restart is the step most likely to be deferred, because taking a node out interrupts every authentication depending on it. A deferral recorded as 'patched' is the specific way this remediation goes wrong here: drain and restart nodes in rotation and hold the farm open on the exposure report until the last one is back, rather than closing the ticket when the update is approved. Priority follows the packet rather than the 7.8 base — confirmed in-the-wild exploitation on the component that signs the estate's federated tokens, with the packet recording the chain from the stolen key into token-signing forgery and ransomware-style intrusion, makes this a containment step for an intrusion chain rather than a standalone endpoint item.",
41428
+ "evidence": "Packet entry 'Microsoft Active Directory Federation Services Insufficient Granularity of Access Control Vulnerability' (CWE-1220). Vector as recorded: \"Insufficient granularity of access control in Active Directory Federation Services (AD FS) allows an authorized attacker to elevate privileges locally.\" Attack vector as recorded: \"A low-privileged local principal abuses an over-permissive DKM container ACL in AD FS to access the federation master key or elevate to administrator, enabling token-signing forgery that can be chained with an RCE in ransomware-style intrusions.\" cisa_kev true with kev_date 2026-07-14, active_exploitation 'confirmed', cvss 7.8, rwep_score 57, poc_available false, patch_available true, live_patch_available false with live_patch_notes \"No live-patching primitive for this product; the vendor update requires a reboot and is the remediation.\" Framework gaps citing this CVE include ASD Essential Eight 'Patch operating systems' and EU NIS2 Art. 21 vulnerability handling.",
41429
+ "gap_closes": [
41430
+ "AU-Essential-8-Patch",
41431
+ "NIS2-Art21-vulnerability-management"
41432
+ ]
41433
+ },
41434
+ {
41435
+ "id": "NEW-CTRL-036",
41436
+ "name": "FLEET-CONTROL-PLANE-ADMIN-PRIVILEGE-TIER",
41437
+ "description": "AD FS is an identity provider — the class this control names explicitly — and the packet's precondition is a low-privileged local principal on that system, so the tier question here is not who holds domain administrator but who holds any local presence on a federation server at all. Applied to this deployment: AD FS servers are administered only from a privileged access workstation through a jumphost, under an identity separate from every other admin role, with just-in-time elevation and step-up authentication, and every other principal that can obtain a logon on the box is enumerated and either removed or justified in writing. The accounts that matter are the unglamorous ones — backup and monitoring agents, helpdesk groups, and service accounts inherited from a general-purpose server build — because each of them quietly satisfies the packet's 'low-privileged local principal' on a host holding the federation master key, and none of them appears in an attestation that lists AD FS administrators. Distinguishing test: enumerate every principal that can obtain an interactive or service logon on each AD FS server together with every principal holding read access to the DKM container, and show each one inside the federation tier; a least-privilege attestation showing a short list of named AD FS administrators passes cleanly while a general-purpose server build grants a dozen non-federation principals local presence on the same host. Precondition: this bounds the population that can reach the over-permissive ACL and repairs nothing about the ACL itself — the vendor update does that, and any principal legitimately inside the tier still reaches the flaw. It also evicts no one already resident: with active exploitation confirmed on this entry, a federation server that carried extra local principals during the exposure window belongs on the incident path, not the hardening path.",
41438
+ "evidence": "Packet attack vector: \"A low-privileged local principal abuses an over-permissive DKM container ACL in AD FS to access the federation master key or elevate to administrator\" — the exploitation precondition is local presence by a principal that need not be privileged. vector: \"allows an authorized attacker to elevate privileges locally\". active_exploitation 'confirmed', cisa_kev true, kev_date 2026-07-14. Framework gaps citing this CVE include NIST SP 800-53 AC-6 (Least Privilege) and UK NCSC CAF B2 (Identity and access control), both recorded as insufficient for this entry.",
41439
+ "gap_closes": [
41440
+ "NIST-800-53-AC-6",
41441
+ "UK-CAF-B2"
41442
+ ]
41443
+ },
41444
+ {
41445
+ "id": "NEW-CTRL-037",
41446
+ "name": "FLEET-COMPROMISE-IR-PLAYBOOK",
41447
+ "description": "The asset the packet names is the federation master key, and the end state it names is token-signing forgery — material the vendor update does not invalidate, because a key read before the patch stays valid after it. The playbook for this CVE is therefore keyed to the key rather than to the host: rotate the AD FS token-signing material and drive every relying party onto the new signing key, invalidate issued sessions and refresh tokens across the federated applications, and rotate credentials for any account whose access was obtained through federated sign-in during the exposure window. The review that goes with it is the one this attack actually permits: compare assertions accepted at the relying parties against authentication events recorded on the federation servers for the window preceding the 2026-07-14 KEV listing, and treat a cryptographically valid assertion with no matching federation-server authentication event as the finding — a token forged with the stolen signing key never transits the sign-in path, so it produces no failed authentication, no anomalous logon at the identity provider, and nothing for a rule keyed on brute-force or credential-stuffing patterns to fire on. Trigger and precondition: run this on any AD FS server where a non-federation local principal existed during the exposure window, not only where an alert fired, because waiting for detection evidence before rotating is waiting for a signal this path does not emit by construction. The rotation is also not free — every relying party must consume the new signing key, so the playbook has to name the relying-party inventory and the re-consumption step in advance rather than discovering it mid-incident. This control governs what is done after the key may have been read; the vendor update the packet records is what closes the read path itself.",
41448
+ "evidence": "Packet attack vector: the low-privileged local principal reaches \"the federation master key\", \"enabling token-signing forgery that can be chained with an RCE in ransomware-style intrusions\". active_exploitation 'confirmed'; cisa_kev true with kev_date 2026-07-14; patch_available true, live_patch_available false with live_patch_notes \"No live-patching primitive for this product; the vendor update requires a reboot and is the remediation\" — the packet records the update as remediation of the flaw, not as invalidation of material already read. Framework gap citing this CVE: ISO/IEC 27001:2022 'Identity Management + Authentication Information — federated-state extension'.",
41449
+ "gap_closes": [
41450
+ "ISO-27001-2022-A.5.16-Federated"
41451
+ ]
41452
+ }
41453
+ ]
40969
41454
  },
40970
41455
  "CVE-2026-56164": {
40971
41456
  "name": "Microsoft SharePoint Server Missing Authentication for Critical Function Vulnerability",
@@ -41441,7 +41926,29 @@
41441
41926
  "adequate": false,
41442
41927
  "gap": "Least-functionality controls that still permit the Flash Player browser plugin leave a memory-corruption RCE surface exposed; the plugin should have been disabled/removed."
41443
41928
  }
41444
- }
41929
+ },
41930
+ "new_control_requirements": [
41931
+ {
41932
+ "id": "NEW-CTRL-018",
41933
+ "name": "SCANNER-PAPER-COMPLIANCE-TEST",
41934
+ "description": "On this entry the fixed builds do not sort into one threshold, so a scan that compares a single version string is paper compliance regardless of how many hosts it covers. The packet gives 11.7.700.261 for the 11.7 branch, 12.0.0.44 for the 11.8.x-through-12.0.x range on Windows and Mac OS X, and 11.2.202.336 on Linux. A scanner set to 12.0.0.44 marks a correctly remediated 11.7.700.261 host and every correctly remediated Linux host at 11.2.202.336 as vulnerable, generating remediation work against systems already fixed; a scanner set to 11.7.700.261 passes every build in the 11.8.x-through-12.0.x range, all of which sort above that string while remaining affected until 12.0.0.44 — the direction that matters, because those hosts stay exposed with a clean report. The operational test for this entry is whether the scan resolves each install's branch and platform first and compares against the fixed build for that branch, rather than against any build merely newer than one of the three. Precondition: the check only reports on installs the scanner authenticates to and identifies by product. A per-user copy the scan does not resolve yields no finding, and no finding is indistinguishable from a clean host, so coverage has to be demonstrated by reconciling scan output against an independently built install inventory rather than by the absence of results. This control validates the comparison logic; it does not itself update anything.",
41935
+ "evidence": "Packet vector: 'Integer underflow in Adobe Flash Player before 11.7.700.261 and 11.8.x through 12.0.x before 12.0.0.44 on Windows and Mac OS X, and before 11.2.202.336 on Linux, allows remote attackers to execute arbitrary code via unspecified vectors.' CWE-191. patch_available=true; live_patch_available=false; live_patch_notes: 'No live-patching primitive for this product; the vendor update (no reboot required) is the remediation.' CISA KEV-listed 2024-09-17, active_exploitation=confirmed, CVSS 9.8, RWEP 50.",
41936
+ "gap_closes": [
41937
+ "ISO-27001-2022-A.8.8",
41938
+ "NIST-800-53-SI-2"
41939
+ ]
41940
+ },
41941
+ {
41942
+ "id": "NEW-CTRL-001",
41943
+ "name": "CISA-KEV-RESPONSE-SLA",
41944
+ "description": "Two things about this entry defeat the usual prioritisation inputs, and this control's 'later of KEV listing or patch availability' rule is what corrects both. First, the fixed builds date from 2014 while CISA listed the CVE on 2024-09-17, so the SLA clock opens at the listing — a Flash Player install still in service on that date is inside a same-day mitigation window, not a ten-year-old backlog item that age-sorting pushes below current work. Second, the packet records poc_available=false alongside active_exploitation=confirmed: an intake rule that starts its clock on public exploit-code publication never starts at all on this entry, even though the packet states the flaw is being exploited. The listing date, not PoC availability and not the CVE year, is the trigger. Applied here that means driving the fixed build for each branch — 11.7.700.261, 12.0.0.44 for the 11.8.x-through-12.0.x range, 11.2.202.336 on Linux — across every install on the KEV clock, with completion measured by each install reporting the fixed build for its own branch rather than by the update being approved or downloaded in a management console. Precondition: the control permits documented compensating controls in place of the binary fix, but the packet registers no vendor mitigation and no live-patch path for this product, so there is nothing to substitute — the vendor update, which the packet states requires no reboot, is the remediation. An install that cannot take it inside the window is an open, dated exception carried as exposed, not an SLA closure.",
41945
+ "evidence": "Packet: cisa_kev=true, kev_date 2024-09-17, active_exploitation=confirmed, poc_available=false, CVSS 9.8, RWEP 50. Vector gives fixed builds before 11.7.700.261, 11.8.x through 12.0.x before 12.0.0.44 on Windows and Mac OS X, and before 11.2.202.336 on Linux. attack_vector: 'An integer underflow during SWF parsing corrupts heap memory; a victim who loads an attacker-controlled Flash object (drive-by or malvertising) triggers arbitrary code execution in the browser context.' patch_available=true; live_patch_available=false; live_patch_notes: 'No live-patching primitive for this product; the vendor update (no reboot required) is the remediation.'",
41946
+ "gap_closes": [
41947
+ "NIST-800-53-SI-2",
41948
+ "NIS2-Art21-vulnerability-management"
41949
+ ]
41950
+ }
41951
+ ]
41445
41952
  },
41446
41953
  "CVE-2024-6670": {
41447
41954
  "name": "Progress WhatsUp Gold SQL Injection Vulnerability",
@@ -42925,7 +43432,41 @@
42925
43432
  "adequate": false,
42926
43433
  "gap": "The vendor-default-account requirement is exactly the gap: the appliance shipped with a usable default password that operators did not change, yielding unauthenticated RCE."
42927
43434
  }
42928
- }
43435
+ },
43436
+ "new_control_requirements": [
43437
+ {
43438
+ "id": "NEW-CTRL-124",
43439
+ "name": "FRAMEWORK-DEFAULT-SECRET-DETECTION",
43440
+ "description": "The packet puts the credential inside the product: remote command execution due to use of default passwords, with a remote unauthenticated attacker using the shipped default password to reach the ACI web portal and the PostgreSQL database. Because the password the attacker needs ships with ACI rather than being set per site, no amount of operator-side account hygiene reduces the exposure — which is precisely why the identity-and-access-control and IA-2 gaps are recorded against this entry: the attacker never authenticates as any named ACI administrator, so per-account privilege scoping is never consulted and the account model an identity attestation examines is bypassed rather than abused. Applied to this product the control means inventorying every ACI installation as depending on a product-shipped credential and gating each one on the fixed build for its own branch. The packet gives five separate branch lines — 5.0.1-61, 5.1.1-71, 5.2.1-69, 5.3.1-53 and 5.4.4-132 — so an installation on the 5.2 line is remediated at 5.2.1-69 and is not made safe by any build number that merely sorts higher than one of the other four. The check must be re-run after any appliance rebuild, image restore or node replacement, since those are the operations that quietly reinstate a pre-fix ACI carrying the shipped default at a site that had already been remediated. Distinguishing test: against a staging ACI at the build the estate intends to run, attempt authentication to the web portal and to the PostgreSQL service using the vendor's shipped default credential from a host holding no administrative role; anything that accepts it is exploitable, while an attestation showing every ACI administrator holds a unique named account passes cleanly the whole time. Precondition: the vendor update is what removes the dependence on the shipped default — this control is the inventory and the gate that ensure every installation reaches it, and it gives nothing on its own to a site that has not yet taken the update. The packet records no live-patch path and a vendor update that requires a reboot, so an installation that has staged the fixed build but not restarted still carries the default and must be counted as exposed. It also does not detect an installation an attacker already reached, so anything reachable during the exposure window is closed out through the rebuild-and-rotation path, not on the update.",
43441
+ "evidence": "Packet: CWE-1393; vector 'Remote command execution due to use of default passwords. The following products are affected: Acronis Cyber Infrastructure (ACI) before build 5.0.1-61, ... before build 5.1.1-71, ... before build 5.2.1-69, ... before build 5.3.1-53, ... before build 5.4.4-132.' attack_vector: 'A remote unauthenticated attacker uses the shipped default password to access the ACI web portal / PostgreSQL database, then uploads SSH keys to gain root on the appliance and execute arbitrary commands.' CISA KEV-listed 2024-07-29, active_exploitation=confirmed, poc_available=true, CVSS 9.8, RWEP 75. patch_available=true; live_patch_available=false; live_patch_notes: 'No live-patching primitive for this product; the vendor update requires a reboot and is the remediation.'",
43442
+ "gap_closes": [
43443
+ "NIST-800-53-IA-2",
43444
+ "UK-CAF-B2",
43445
+ "ISO-27001-2022-A.8.8"
43446
+ ]
43447
+ },
43448
+ {
43449
+ "id": "NEW-CTRL-032",
43450
+ "name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
43451
+ "description": "The packet's attack path does not end at code execution — it ends at installed persistence: the attacker uses the shipped default password to reach the ACI web portal and PostgreSQL, then uploads SSH keys to gain root on the appliance. A key written into the appliance's authorized-keys material survives the vendor update, because the update removes the default credential that let the attacker in, not the key that keeps them in. On this entry, therefore, 'updated to the fixed build' is not a statement about whether the appliance is still attacker-accessible, and the packet's confirmed active exploitation plus public PoC mean that distinction is operational, not theoretical. Applied here the control means any ACI installation that was reachable by an unauthenticated caller during the exposure window is handled as a suspected compromise rather than a patch ticket: capture the configuration, the SSH authorized-keys material and the local account state for analysis first; rebuild the appliance from the fixed build rather than updating in place; and rotate every credential the appliance held or could reach, including the database credentials and any keys or tokens stored for the systems it serves. Distinguishing test: on an installation that has already taken the update, enumerate the SSH authorized keys and the local accounts on the appliance and reconcile every entry against an operator-owned record of what belongs there — an unexplained key is standing root access that both the patch and the flaw-remediation attestations record as closed. Precondition: rebuilding is remediation only if the rebuild source is the fixed build for that branch. Re-imaging from the installer media the site already had reinstates the same shipped default password and returns the appliance to the exploitable state — that is the specific way this recovery goes wrong. The rebuild also requires the reboot the packet's remediation note describes, and it recovers nothing the attacker took while resident: data reachable from the appliance and credentials it stored must be treated as disclosed however cleanly the appliance comes back.",
43452
+ "evidence": "Packet attack_vector: 'A remote unauthenticated attacker uses the shipped default password to access the ACI web portal / PostgreSQL database, then uploads SSH keys to gain root on the appliance and execute arbitrary commands.' Vector: 'Remote command execution due to use of default passwords', fixed builds 5.0.1-61 / 5.1.1-71 / 5.2.1-69 / 5.3.1-53 / 5.4.4-132. CISA KEV-listed 2024-07-29, active_exploitation=confirmed, poc_available=true, CVSS 9.8, RWEP 75. patch_available=true; live_patch_available=false; live_patch_notes: 'No live-patching primitive for this product; the vendor update requires a reboot and is the remediation.'",
43453
+ "gap_closes": [
43454
+ "AU-Essential-8-Patch",
43455
+ "ISO-27001-2022-A.8.8",
43456
+ "UK-CAF-B2"
43457
+ ]
43458
+ },
43459
+ {
43460
+ "id": "NEW-CTRL-128",
43461
+ "name": "APPSERVER-REMOTING-PROTOCOL-RESTRICTION",
43462
+ "description": "The packet names two surfaces the remote unauthenticated attacker reaches with the shipped default password, and one of them is not a web surface: the PostgreSQL database on the appliance. A database remoting endpoint that answers callers before any site-controlled authentication decision is the class this control governs, and it is the surface that web-tier hardening and role-and-permission audits of ACI never touch. The requirement for this deployment is that the ACI PostgreSQL listener accepts connections only from the hosts that legitimately speak to it — the appliance's own components and the management hosts with an operational need — enforced by network ACL or host firewall, rather than assumed from 'ACI is on the internal network'. Distinguishing test: from a general user or workstation VLAN on a staging deployment, open a connection to the ACI PostgreSQL port and confirm it is dropped before the service answers; a deployment that passes its ACI administrator-account review while leaving that listener reachable from any internal segment still hands the shipped default credential a live target. Preconditions, and they are severe enough that this must never be recorded as the remediation. It bounds who can present the default password; it does not change the fact that the password is valid, which only the vendor update does. It covers the PostgreSQL half only — the packet also names the ACI web portal, which is an HTTP surface outside this control and remains reachable to everyone the portal is meant to serve, so the exposure is reduced rather than removed. It does nothing against a caller already inside the permitted segment: a compromised management host or jump box satisfies the reachability precondition in full. And it does not evict an attacker who is already resident — an SSH key uploaded during the exposure window keeps working from wherever that key is used. This is a holding measure for the window before the update and its required reboot land, not a closure.",
43463
+ "evidence": "Packet attack_vector: 'A remote unauthenticated attacker uses the shipped default password to access the ACI web portal / PostgreSQL database, then uploads SSH keys to gain root on the appliance and execute arbitrary commands.' Vector: 'Remote command execution due to use of default passwords', CWE-1393. CISA KEV-listed 2024-07-29, active_exploitation=confirmed, poc_available=true, CVSS 9.8, RWEP 75. patch_available=true; live_patch_available=false; live_patch_notes: 'No live-patching primitive for this product; the vendor update requires a reboot and is the remediation.'",
43464
+ "gap_closes": [
43465
+ "NIS2-Art21-network-security",
43466
+ "PCI-DSS-4.0-2.2.3"
43467
+ ]
43468
+ }
43469
+ ]
42929
43470
  },
42930
43471
  "CVE-2024-5217": {
42931
43472
  "name": "ServiceNow Incomplete List of Disallowed Inputs Vulnerability",
@@ -42962,7 +43503,39 @@
42962
43503
  "adequate": false,
42963
43504
  "gap": "Input-validation control expectations were not met by the GlideExpression sanitizer's incomplete disallowed-input list, allowing template-injection payloads through."
42964
43505
  }
42965
- }
43506
+ },
43507
+ "new_control_requirements": [
43508
+ {
43509
+ "id": "NEW-CTRL-041",
43510
+ "name": "PROTECTION-MECHANISM-FAILURE-CLASS-REGRESSION",
43511
+ "description": "The protection mechanism that failed here is a denylist inside the Now Platform itself: the packet places the bypass in the GlideExpression sanitizer, whose incomplete list of disallowed inputs lets a crafted jvar_page_title value submitted to /login.do carry Glide/Jelly expression syntax through to server-side template evaluation. A list that omitted one expression form is evidence about the form of the defence, not about that one payload. Bound to this product, the control means the verification battery for the Now Platform's expression sanitizer covers the family of Glide/Jelly expression encodings that can reach it, and is re-run on each Now Platform patch and hot fix rather than run once against the published jvar_page_title payload. Distinguishing test, keyed on the behaviour the packet documents: on a staging instance at the fixed patch level, submit each encoding variant of a Glide/Jelly expression in jvar_page_title to /login.do as an unauthenticated caller and confirm none reaches template evaluation — a check that replays only the one published payload passes while a sibling encoding still evaluates, which is precisely the failure CWE-184 names. Preconditions: this is a verification control and it repairs nothing — the sanitizer itself is fixed only by the vendor's June 2024 patch or hot fix, and the battery catches a re-opened form only if that form is in it, so an instance that passes a thin battery is not thereby patched. It is also a staging control: the packet records confirmed in-the-wild exploitation and a public exploit, so firing expression payloads at a production instance to 'confirm' the fix is not a substitute for applying it.",
43512
+ "evidence": "Packet attack_vector: 'An unauthenticated attacker submits a crafted jvar_page_title value to /login.do containing Glide/Jelly expression syntax; the GlideExpression sanitizer's incomplete disallowed-input list lets the payload reach server-side template evaluation, yielding remote code execution and data exfiltration.' Packet cwe_refs: CWE-184, CWE-697. Packet vector: the vulnerability 'is addressed in the listed patches and hot fixes below, which were released during the June 2024 patching cycle.' Packet: poc_available true; active_exploitation confirmed; cvss 9.2; rwep_score 74. Citing gaps record PCI-DSS-4.0-6.2.4 ('Software engineering techniques or other methods are defined and used by personnel to prevent or mitigate common software attacks') and UK-CAF-B4 (System security) against this entry.",
43513
+ "gap_closes": [
43514
+ "PCI-DSS-4.0-6.2.4",
43515
+ "UK-CAF-B4"
43516
+ ]
43517
+ },
43518
+ {
43519
+ "id": "NEW-CTRL-018",
43520
+ "name": "SCANNER-PAPER-COMPLIANCE-TEST",
43521
+ "description": "The packet names the affected population by release family — Washington DC, Vancouver, and earlier Now Platform releases — but records the fix as patches and hot fixes shipped during the June 2024 patching cycle. Those two facts do not line up inside an asset inventory: an instance recorded as 'Washington DC' or 'Vancouver' is both the vulnerable and the fixed state depending on whether the June 2024 patch or hot fix has been applied, so a scan or CMDB field carrying only the family name cannot answer the question and will read as compliant on an unpatched instance. Bound to this product, the control means the vulnerability-management record for each Now Platform instance carries the applied patch and hot-fix level rather than the release family, and that the level is read from the instance rather than inherited from a change ticket asserting it. Operational test: for every instance, pull the applied patch/hot-fix level and confirm it is at or past the June 2024 fix for its family, then on staging submit the jvar_page_title expression payload the packet describes to /login.do and confirm it does not evaluate. An estate whose scanner reports every instance as a supported release family, while none has taken the June 2024 hot fix, passes the scan and stays exploitable. Precondition: this control finds an unremediated instance, it does not remediate one — a confirmed-unpatched instance still needs the vendor patch. And because the packet records confirmed exploitation with a public exploit, an instance found unpatched now was reachable and unpatched through the exposure window, so it warrants triage of what the instance served rather than a silent patch-and-close.",
43522
+ "evidence": "Packet vector: 'ServiceNow has addressed an input validation vulnerability that was identified in the Washington DC, Vancouver, and earlier Now Platform releases. This vulnerability could enable an unauthenticated user to remotely execute code within the context of the Now Platform. The vulnerability is addressed in the listed patches and hot fixes below, which were released during the June 2024 patching cycle.' Packet: cisa_kev true, kev_date 2024-07-29, active_exploitation confirmed, poc_available true, rwep_score 74, cvss 9.2, patch_available true. Citing gaps record ISO-27001-2022-A.8.8 (Management of technical vulnerabilities) and NIS2-Art21-vulnerability-management (Vulnerability handling) against this entry.",
43523
+ "gap_closes": [
43524
+ "ISO-27001-2022-A.8.8",
43525
+ "NIS2-Art21-vulnerability-management"
43526
+ ]
43527
+ },
43528
+ {
43529
+ "id": "NEW-CTRL-001",
43530
+ "name": "CISA-KEV-RESPONSE-SLA",
43531
+ "description": "This entry is KEV-listed 2024-07-29 with exploitation confirmed and a public exploit recorded, and it is one of the cases where the usual reason a KEV clock slips does not exist: the packet records no live-patching primitive but states that the vendor update is the remediation and needs no reboot, so there is no restart to schedule and no outage window to wait on. The SLA's completion criterion for this CVE is therefore each Now Platform instance running the June 2024 patch or hot fix for its release family — not a change request raised, not a KEV due-date row closed, not 'the update is staged'. The compensating-control half is where this entry differs from a typical appliance CVE: the packet places the payload on /login.do, the platform's login page, which has to answer unauthenticated callers for the platform to be usable, so restricting reachability is simply not available as the documented interim mitigation for any instance serving remote or customer traffic — which is why the boundary-protection gap cited on this entry cannot be written up as the mitigation while the patch waits. Where an instance's login page genuinely is reachable only from a private segment, that bounds who can send the payload and does nothing else: the endpoint stays fully exploitable to anything inside that segment, so it is a holding measure for hours, never a substitute for the patch.",
43532
+ "evidence": "Packet: cisa_kev true; kev_date 2024-07-29; active_exploitation confirmed; poc_available true; rwep_score 74; cvss 9.2; patch_available true; live_patch_available false; live_patch_notes 'No live-patching primitive for this product; the vendor update (no reboot required) is the remediation.' Packet attack_vector places the crafted jvar_page_title value on /login.do, submitted by an unauthenticated attacker. Citing gaps record AU-Essential-8-Patch, NIST-800-53-SI-2 (Flaw Remediation) and NIST-800-53-SC-7 (Boundary Protection) against this entry.",
43533
+ "gap_closes": [
43534
+ "AU-Essential-8-Patch",
43535
+ "NIST-800-53-SI-2"
43536
+ ]
43537
+ }
43538
+ ]
42966
43539
  },
42967
43540
  "CVE-2024-4879": {
42968
43541
  "name": "ServiceNow Improper Input Validation Vulnerability",
@@ -43036,7 +43609,18 @@
43036
43609
  "adequate": false,
43037
43610
  "gap": "Security-of-processing obligations were unmet because personal data (phone-number registration status) was disclosable without authentication or abuse-rate controls."
43038
43611
  }
43039
- }
43612
+ },
43613
+ "new_control_requirements": [
43614
+ {
43615
+ "id": "NEW-CTRL-056",
43616
+ "name": "MOBILE-ENDPOINT-MDM-ENFORCED-KEV-SLA",
43617
+ "description": "What the packet records is not a flaw in the operator's own systems: the enumeration ran against an unauthenticated Twilio Authy API endpoint that answered whether each submitted phone number was registered, and the packet notes Authy accounts themselves were not compromised. The one operator-side surface the packet does name is the client build — the endpoint is described as accessed by Authy Android before 25.1.0 and Authy iOS before 26.1.0, and the packet records a vendor update, requiring no reboot, as the remediation. Bound to this entry, the control means managed devices on both platforms are driven to at least those builds under the KEV-class clock that opened 2024-07-23, enforced by the MDM as a required minimum app version with user deferral disallowed, rather than left to each user's store-update habits — an authenticator is exactly the app a user hesitates to touch, so a policy that merely offers the update leaves a long tail sitting below the fix. Distinguishing test: query the MDM for installed Authy versions across enrolled Android and iOS devices and confirm none sits below 25.1.0 and 26.1.0 respectively; an estate whose mobile attestation covers only the OS build reports fully compliant while the authenticator app stays below the fixed version. Preconditions, and they carry more weight than the rollout itself: moving devices to the fixed builds does not retract phone numbers already enumerated — the packet records exploitation in the wild in June 2024, and numbers read then stay in the attacker's hands as targeting data for exactly the phishing and SIM-swap activity the packet names as the downstream use. Nor is there operator-side detection to fall back on, because the requests went to the vendor's API: no telemetry inside the estate observed them and the exposed population cannot be derived locally. For that half of the exposure the remaining lever is treating the staff who hold Authy as a known-targeted set, which is a briefing and factor-choice decision this control does not deliver.",
43618
+ "evidence": "Packet vector: 'In the Twilio Authy API, accessed by Authy Android before 25.1.0 and Authy iOS before 26.1.0, an unauthenticated endpoint provided access to certain phone-number data, as exploited in the wild in June 2024. Specifically, the endpoint accepted a stream of requests containing phone numbers, and responded with information about whether each phone number was registered with Authy. (Authy accounts were not compromised, however.)' Packet attack_vector: 'An attacker submitted large batches of phone numbers to an unauthenticated Authy API endpoint, which replied indicating whether each number was registered, enabling mass enumeration of Authy users for downstream phishing and SIM-swap targeting.' Packet: cisa_kev true; kev_date 2024-07-23; active_exploitation confirmed; poc_available false; cvss 5.3; rwep_score 40; patch_available true; live_patch_available false; live_patch_notes 'No live-patching primitive for this product; the vendor update (no reboot required) is the remediation.' Citing gaps record UK-CAF-B4 (System security) against this entry.",
43619
+ "gap_closes": [
43620
+ "UK-CAF-B4"
43621
+ ]
43622
+ }
43623
+ ]
43040
43624
  },
43041
43625
  "CVE-2012-4792": {
43042
43626
  "name": "Microsoft Internet Explorer Use-After-Free Vulnerability",
@@ -43110,7 +43694,39 @@
43110
43694
  "adequate": false,
43111
43695
  "gap": "Least-privilege role design cannot remediate a vendor-shipped incorrect-default-permission that exposes secrets to non-administrative accounts; only the vendor patch or an explicit ACL fix closes it."
43112
43696
  }
43113
- }
43697
+ },
43698
+ "new_control_requirements": [
43699
+ {
43700
+ "id": "NEW-CTRL-001",
43701
+ "name": "CISA-KEV-RESPONSE-SLA",
43702
+ "description": "The packet records a vendor update as the remediation for these over-permissioned vCenter files, with no live-patch path and a fix that requires a reboot — so on this appliance the KEV clock that opened 2024-07-17 runs to the completed restart of every vCenter Server instance, not to the point the update is staged or a console reports it applied. A vCenter that has taken the update but not been restarted still carries the readable files, and restarting the management appliance is the step most likely to be deferred into the next virtualization maintenance window, which is the specific way this remediation gets recorded as done while the exposure stands. Priority has to come from the packet rather than the 6.5 base score: exploitation is confirmed in the wild, and the payoff the packet names is configuration data and secrets that enable privilege escalation and lateral movement in the virtualization estate, not the read-only outcome an information-disclosure severity band implies. poc_available is false, and that is not grounds to schedule this as routine — the packet records no public exploit alongside confirmed in-the-wild use. Distinguishing test: measure elapsed time from the KEV listing to each instance's post-update restart and report the tail per instance; a patch-compliance report counting deployed updates passes while instances await the restart that makes the fix effective.",
43703
+ "evidence": "Packet: CWE-276; CISA KEV-listed 2024-07-17 with active_exploitation confirmed; RWEP 53, CVSS 6.5, poc_available false, ai_discovered false. patch_available true, live_patch_available false, live_patch_notes 'No live-patching primitive for this product; the vendor update requires a reboot and is the remediation.' Packet attack_vector: 'A user with non-administrative access to vCenter Server reads sensitive files exposed by incorrect default file permissions, harvesting configuration data and secrets that enable privilege escalation and lateral movement in the virtualization estate.' Citing gaps name ASD Essential Eight 'Patch operating systems' and NIST SP 800-53 SI-2 (Flaw Remediation) as insufficient.",
43704
+ "gap_closes": [
43705
+ "AU-Essential-8-Patch",
43706
+ "NIST-800-53-SI-2"
43707
+ ]
43708
+ },
43709
+ {
43710
+ "id": "NEW-CTRL-036",
43711
+ "name": "FLEET-CONTROL-PLANE-ADMIN-PRIVILEGE-TIER",
43712
+ "description": "vCenter Server is the control plane for the virtualization estate the packet says this flaw enables lateral movement across, and the actor who exploits it is not an administrator — the packet's attacker holds non-administrative access to vCenter and reads secrets straight off the appliance's files. Bound to this product, the control means the privileged tier is drawn at every identity that can authenticate to vCenter at all — read-only, operator, integration and service accounts included — rather than at the vCenter administrator role: those sessions come through the privileged-access path with step-up authentication and just-in-time grant, held separately from identities used for ordinary application administration. That is exactly what the cited least-privilege and identity-and-access-control gaps do not reach here: role scoping inside vCenter is the thing the attacker is already inside of, so an estate can demonstrate that non-administrative roles carry no administrative permissions and still hand those same roles the configuration data and secrets the file permissions expose. Precondition: this bounds and instruments the population that can reach the files — it does not repair the permissions, which per the packet is the vendor update with the restart taken, and it gives nothing to an instance whose low-privilege accounts are already provisioned and in use. Distinguishing test: enumerate every principal that can open a session against vCenter, service and integration accounts included, and show each reaches it only through the tiered path; an attestation that vCenter administrators are separately tiered passes cleanly while a low-privilege role sits within reach of the same files.",
43713
+ "evidence": "Packet vector: 'The vCenter Server contains an information disclosure vulnerability due to improper permission of files. A malicious actor with non-administrative access to the vCenter Server may exploit this issue to gain access to sensitive information.' CWE-276; CISA KEV-listed 2024-07-17 with active_exploitation confirmed; RWEP 53, CVSS 6.5. patch_available true, live_patch_available false. Citing gaps name UK NCSC CAF v3.2 B2 (Identity and access control) and NIST SP 800-53 AC-6 (Least Privilege) as insufficient.",
43714
+ "gap_closes": [
43715
+ "UK-CAF-B2",
43716
+ "NIST-800-53-AC-6"
43717
+ ]
43718
+ },
43719
+ {
43720
+ "id": "NEW-CTRL-037",
43721
+ "name": "FLEET-COMPROMISE-IR-PLAYBOOK",
43722
+ "description": "What this flaw yields, per the packet, is configuration data and secrets — so the moment a patched-and-restarted vCenter is clean is not the moment the estate is. The requirement here is a rehearsed sequence for any instance that was reachable by a non-administrative account while unpatched: rotate the credentials and keys carried in the files the packet says those accounts could read, re-issue whatever those secrets authenticate, review privileged authentications made with those identities across the window, and set quarantine criteria for the systems vCenter administers, because the packet's stated payoff is lateral movement in the virtualization estate rather than compromise of the appliance alone. The window closes at the restart, not at the KEV date, and on this entry it can be long — the listing is 2024-07-17 against a defect carrying a CVE-2022 identifier. Preconditions: rotation covers only secrets the operator can enumerate, so the list must be derived from what the appliance actually holds on disk rather than from a general credential inventory; and rotation is not detection — the packet's exploitation step is a read by an account authorized to be on the appliance, with poc_available false, so there is no distinct exploit artifact to hunt and misuse has to be looked for downstream in the authentications those secrets enable. Distinguishing test: for each vCenter that ran unpatched past the KEV listing, produce the list of secrets its readable files held and show each has been rotated after the restart; an incident record closed on 'update applied' passes flaw-remediation review with every one of those secrets still valid.",
43723
+ "evidence": "Packet attack_vector: 'A user with non-administrative access to vCenter Server reads sensitive files exposed by incorrect default file permissions, harvesting configuration data and secrets that enable privilege escalation and lateral movement in the virtualization estate.' CWE-276; CISA KEV-listed 2024-07-17 with active_exploitation confirmed; RWEP 53, CVSS 6.5, poc_available false. patch_available true, live_patch_available false, live_patch_notes 'No live-patching primitive for this product; the vendor update requires a reboot and is the remediation.' Citing gaps name NIST SP 800-53 SI-2 (Flaw Remediation) and UK NCSC CAF v3.2 B2 (Identity and access control) as insufficient.",
43724
+ "gap_closes": [
43725
+ "NIST-800-53-SI-2",
43726
+ "UK-CAF-B2"
43727
+ ]
43728
+ }
43729
+ ]
43114
43730
  },
43115
43731
  "CVE-2024-28995": {
43116
43732
  "name": "SolarWinds Serv-U Path Traversal Vulnerability",
@@ -43414,7 +44030,38 @@
43414
44030
  "adequate": false,
43415
44031
  "gap": "Least-functionality that fully removes/disables the legacy Internet Explorer/MSHTML rendering path would have blunted the technique; leaving the retired engine reachable kept the attack surface alive."
43416
44032
  }
43417
- }
44033
+ },
44034
+ "new_control_requirements": [
44035
+ {
44036
+ "id": "NEW-CTRL-120",
44037
+ "name": "DOWNLOAD-PROVENANCE-ENFORCEMENT",
44038
+ "description": "Exploitation starts with a file the user opens: the packet's lure is a crafted .url internet shortcut whose content is the URL it points at, using the 'mhtml:' scheme and an '!x-usc:' directive so Windows hands the target to the retired Internet Explorer/MSHTML engine and the perceived file type is not what actually renders. Because the endpoint's decision is made from what the shortcut says, the enforceable control on an estate that has not completed the update is the ingress boundary: the mail gateway and file-share boundary apply the untrusted-origin marking themselves rather than leaving the endpoint to infer it, internet shortcut files arriving from outside the organization are held rather than delivered, and the marking survives the container — a shortcut extracted from an archive, mounted from an image, or renamed inherits the tag instead of losing it. Precondition: this narrows the delivery path, it does not close the flaw. A .url reaching the user through any path the boundary does not mark — removable media, an unmanaged share, a link followed directly in a browser — still resolves the mhtml:/!x-usc: handler chain into MSHTML, and per the packet only the vendor update, on a host that has since been restarted, removes that. Distinguishing test: deliver a .url whose displayed name and invoked handler disagree through each ingress path onto a managed workstation and confirm it arrives marked untrusted or is held; the user-application-hardening attestation cited on this entry covers macro and ActiveX settings and guidance to check file extensions, which is precisely what a file-type-spoofing lure defeats.",
44039
+ "evidence": "Packet attack_vector: 'A victim opens a crafted .url internet-shortcut whose URL uses the \"mhtml:\" scheme and an \"!x-usc:\" directive; Windows invokes the retired Internet Explorer/MSHTML engine to render attacker-hosted HTML/HTA, spoofing the perceived file type and executing code (Void Banshee delivered the Atlantida stealer this way).' CWE-451; CISA KEV-listed 2024-07-09 with active_exploitation confirmed; RWEP 79, CVSS 7.5, poc_available true. patch_available true, live_patch_available false, live_patch_notes 'No live-patching primitive for this product; the vendor update requires a reboot and is the remediation.' Citing gap names ASD Essential Eight 'User application hardening' as insufficient.",
44040
+ "gap_closes": [
44041
+ "AU-Essential-8-App-Hardening"
44042
+ ]
44043
+ },
44044
+ {
44045
+ "id": "NEW-CTRL-001",
44046
+ "name": "CISA-KEV-RESPONSE-SLA",
44047
+ "description": "Per the packet this is a vendor update with no live-patch path and a fix that requires a reboot, so the clock opened by the 2024-07-09 KEV listing runs to the completed restart of every affected Windows endpoint, not to update-deployment counts. An endpoint that has taken the update but not restarted still resolves the packet's mhtml:/!x-usc: shortcut into the retired engine, and user-workstation restarts are exactly what deployment reporting conceals — 'installed, pending restart' is the state in which this remediation is recorded as complete while the path stays live. Urgency comes from the packet's own fields rather than the 7.5 base score: poc_available is true, active_exploitation is confirmed, and the packet ties the technique to the Void Banshee delivery of the Atlantida stealer, so every hour of the window on a user endpoint is an hour of potential credential loss rather than only of exposure. Distinguishing test: measure elapsed time from the KEV listing to each endpoint's post-update restart and report the tail rather than the mean; a fleet reported compliant on installed-update counts while endpoints await restart has not closed the window.",
44048
+ "evidence": "Packet: CWE-451; CISA KEV-listed 2024-07-09 with active_exploitation confirmed; RWEP 79, CVSS 7.5, poc_available true, ai_discovered false. patch_available true, live_patch_available false, live_patch_notes 'No live-patching primitive for this product; the vendor update requires a reboot and is the remediation.' Packet attack_vector records that 'Void Banshee delivered the Atlantida stealer this way'. Citing gaps name NIST SP 800-53 SI-2 (Flaw Remediation), EU NIS2 Art.21 vulnerability handling and disclosure, and ISO/IEC 27001:2022 A.8.8 (Management of technical vulnerabilities) as insufficient.",
44049
+ "gap_closes": [
44050
+ "NIST-800-53-SI-2",
44051
+ "NIS2-Art21-patch-management",
44052
+ "ISO-27001-2022-A.8.8"
44053
+ ]
44054
+ },
44055
+ {
44056
+ "id": "NEW-CTRL-017",
44057
+ "name": "BUG-FAMILY-MITIGATION-PERSISTENCE",
44058
+ "description": "The component this flaw executes through is a retired one the OS still carries: the packet has Windows invoking the Internet Explorer/MSHTML engine to render attacker-hosted HTML/HTA because a shortcut asked for it by scheme. The vendor update fixes this defect; it does not take the engine off the host, and the invocation path that reached it is a handler the OS still resolves. The requirement here is that the compensating control an operator stands up before the update lands — an application-control policy that blocks the retired rendering path, and the HTA execution the packet describes, from being invoked out of an internet shortcut — is retained after the update with a stated review period, rather than rolled back as redundant once the fix is deployed. That is the cited least-functionality gap in operational form: least functionality reads as met because Internet Explorer is retired, while the engine behind it stays reachable to anything that names it. Preconditions: application control binds only where it is deployed and running in enforce rather than audit mode, and it governs the invocation, not the parsing — a host without that policy is carried by the update and its restart alone, and on a host where the policy is in audit mode the invocation still succeeds and is merely logged. Distinguishing test: on a fully updated managed workstation, open a test .url that uses the mhtml: scheme and confirm the policy refuses the invocation rather than the engine rendering the content; a least-functionality attestation recording that Internet Explorer is not installed passes cleanly while this path resolves.",
44059
+ "evidence": "Packet attack_vector: 'A victim opens a crafted .url internet-shortcut whose URL uses the \"mhtml:\" scheme and an \"!x-usc:\" directive; Windows invokes the retired Internet Explorer/MSHTML engine to render attacker-hosted HTML/HTA, spoofing the perceived file type and executing code.' CWE-451; CISA KEV-listed 2024-07-09 with active_exploitation confirmed; RWEP 79, CVSS 7.5, poc_available true. patch_available true, live_patch_available false, live_patch_notes 'No live-patching primitive for this product; the vendor update requires a reboot and is the remediation.' Citing gap names NIST SP 800-53 CM-7 (Least Functionality) as insufficient.",
44060
+ "gap_closes": [
44061
+ "NIST-800-53-CM-7"
44062
+ ]
44063
+ }
44064
+ ]
43418
44065
  },
43419
44066
  "CVE-2024-20399": {
43420
44067
  "name": "Cisco NX-OS Command Injection Vulnerability",
@@ -43599,7 +44246,32 @@
43599
44246
  "adequate": false,
43600
44247
  "gap": "Access enforcement failed at the application layer: the registration endpoint remained reachable and trusted a spoofed identity, so no downstream authorization control was consulted."
43601
44248
  }
43602
- }
44249
+ },
44250
+ "new_control_requirements": [
44251
+ {
44252
+ "id": "NEW-CTRL-129",
44253
+ "name": "ENTERPRISE-ERP-MANAGEMENT-FUNCTION-AUTHENTICATION",
44254
+ "description": "The registration endpoint is where Telerik Report Server decides whether a caller may hold an account, and this CVE is that decision failing open: the packet has an unauthenticated caller reach the endpoint on an already-configured instance and create an administrator through a spoofed request. Bound to this product, the control means the account-creation function on the Report Server authorizes its caller itself — an instance past initial setup refusing to enrol any account, and above all an administrator account, for a caller it has not authenticated — rather than deriving that verdict from attacker-supplied request content; and the Report Server's IIS-hosted surface is segmented so a caller with no operational need to reach it cannot present the spoofed request at all. The access-enforcement and identity-and-access controls cited as insufficient on this entry never engage on this path: the attacker holds no Report Server account, so per-account authorization is never consulted and the account model an identity attestation examines is bypassed rather than abused — the attacker supplies the account rather than abusing one. Distinguishing test: from a segment with no operational need for report administration, send unauthenticated account-creation requests to a staging Report Server that has already completed its initial setup, and confirm each is refused before any account exists; an attestation that every Report Server administrator authenticates at login passes cleanly while this path stays open. Precondition: the endpoint-side authorization is a property the vendor update establishes — this control states what to verify, it does not implement it. Until that update lands, restricting which segments can reach the Report Server bounds who can send the request but leaves the endpoint fully exploitable to anything inside the permitted segment, and it is unavailable wherever report consumers must reach the server over the network. Segmentation also says nothing about an administrator account already created through this path: such an account survives both the segmentation change and the update, so an instance reachable during the exposure window needs its administrator accounts and account-creation events reviewed rather than being closed on the patch.",
44255
+ "evidence": "The packet places the flaw in Progress Telerik Report Server, version 2024 Q1 (10.0.24.305) or earlier, on IIS, and describes an unauthenticated attacker gaining access to restricted functionality via authentication bypass by spoofing (CWE-290). The recorded attack path: an unauthenticated attacker reaches the Report Server registration endpoint on an already-configured instance and, via a spoofed request, creates a new administrator account, then commonly chains CVE-2024-1800 deserialization for remote code execution. CISA KEV-listed 2024-06-13 with confirmed in-the-wild exploitation, a public PoC, CVSS 9.8 and RWEP 68. The packet cites NIST-800-53-AC-3 (Access Enforcement), UK-CAF-B2 (Identity and access control), NIST-800-53-SC-7 (Boundary Protection) and NIS2-Art21-network-security as the framework controls this entry demonstrates are insufficient. It records a vendor patch, no live-patch path, and notes the vendor update as the remediation.",
44256
+ "gap_closes": [
44257
+ "NIST-800-53-AC-3",
44258
+ "UK-CAF-B2",
44259
+ "NIST-800-53-SC-7",
44260
+ "NIS2-Art21-network-security"
44261
+ ]
44262
+ },
44263
+ {
44264
+ "id": "NEW-CTRL-001",
44265
+ "name": "CISA-KEV-RESPONSE-SLA",
44266
+ "description": "For this entry the cost argument that normally justifies a slow patch queue is absent: the packet records a vendor update with no live-patch path and states the update requires no reboot, so nothing about applying it needs a host outage window, which removes the usual reason a reporting server sits behind a 30-day application-patching cycle. Applied here the control means every Telerik Report Server instance is enumerated and taken past the affected build on the clock that opened with the 2024-06-13 KEV listing rather than on the next quarterly application cycle, with completion measured by the build each instance actually reports — the packet names version 2024 Q1 (10.0.24.305) or earlier as affected, so an instance still reporting that build or earlier is exposed regardless of what its patch-status field says. Enumerate instances by reachability first: the exploit precondition the packet states is simply reaching the registration endpoint of an already-configured instance, so an instance answering to a broad network population is where the KEV clock matters most. Priority follows the packet rather than the CVSS band alone: confirmed in-the-wild exploitation, a public PoC and the packet's note that the bypass is commonly chained into CVE-2024-1800 deserialization make this a remote-code-execution precursor, not a standalone account-creation defect. Precondition: the update closes the bypass, it does not remove an administrator account an attacker created before it landed and it does not undo anything executed through the chained deserialization step. An instance that was reachable during the exposure window needs an administrator-account and credential review alongside the upgrade, not instead of it — flaw-remediation and technical-vulnerability-management attestations both read clean on a server that is now patched and still carries the attacker's administrator.",
44267
+ "evidence": "The packet records CISA KEV listing on 2024-06-13, active_exploitation confirmed, poc_available true, CVSS 9.8 and RWEP 68 for Progress Telerik Report Server, version 2024 Q1 (10.0.24.305) or earlier, on IIS. patch_available is true, live_patch_available is false, and live_patch_notes states: \"No live-patching primitive for this product; the vendor update (no reboot required) is the remediation.\" The packet's attack path is an unauthenticated spoofed request to the registration endpoint of an already-configured instance creating a new administrator account, commonly chained with CVE-2024-1800 deserialization for remote code execution. AU-Essential-8-Patch, ISO-27001-2022-A.8.8 and NIST-800-53-SI-2 are cited as the insufficient controls.",
44268
+ "gap_closes": [
44269
+ "AU-Essential-8-Patch",
44270
+ "ISO-27001-2022-A.8.8",
44271
+ "NIST-800-53-SI-2"
44272
+ ]
44273
+ }
44274
+ ]
43603
44275
  },
43604
44276
  "CVE-2024-26169": {
43605
44277
  "name": "Microsoft Windows Error Reporting Service Improper Privilege Management Vulnerability",
@@ -43673,7 +44345,31 @@
43673
44345
  "adequate": false,
43674
44346
  "gap": "Mobile-device patching guidance cannot close a firmware logic flaw until the OEM update lands, so the control is insufficient against active zero-day use."
43675
44347
  }
43676
- }
44348
+ },
44349
+ "new_control_requirements": [
44350
+ {
44351
+ "id": "NEW-CTRL-056",
44352
+ "name": "MOBILE-ENDPOINT-MDM-ENFORCED-KEV-SLA",
44353
+ "description": "Pixel handsets take this fix as a vendor update that the packet says requires a reboot, with no live-patch path, so remediation is the update plus a restart on every affected device — and on a handset both steps sit with the user unless enrolment makes them mandatory. For this CVE the control means the update policy on managed Pixel devices is enforced rather than advisory: automatic installation of the security update, a mandated restart window, user deferral disallowed, and completion measured by the security patch level each device reports after it has restarted rather than by 'update pushed' or 'update downloaded'. The restart is the specific step that goes wrong here — the packet ties remediation to a reboot, so a Pixel that has taken the update and not restarted still runs the vulnerable code, and counting it as patched is how this remediation is recorded complete while the exposure stands. Priority follows the packet rather than the 7.8 base score: confirmed in-the-wild exploitation and a public PoC against an escalation that needs no additional execution privileges, on a device class that leaves the managed network every day. Precondition: enforcement reaches only devices the estate actually manages. An unenrolled or personally-owned Pixel carrying organizational data is outside this control's reach entirely, and is remediated by enrolling it or withdrawing the data from it, not by leaving it uncounted on a compliance report. And the update does nothing about a device already exploited during the window before it landed — with exploitation confirmed, a device on which the crafted application ran belongs on the incident path rather than being closed on its new patch level.",
44354
+ "evidence": "The packet describes a logic-error bypass leading to local escalation of privilege with no additional execution privileges needed, and states that user interaction is needed for exploitation; the attack path is a locally present, crafted application escalating from an unprivileged context to system-level privileges on Pixel firmware / the Android Framework (CWE-670, CWE-783). CISA KEV-listed 2024-06-13, active_exploitation confirmed, poc_available true, CVSS 7.8, RWEP 73. patch_available is true, live_patch_available is false, and live_patch_notes states: \"No live-patching primitive for this product; the vendor update requires a reboot and is the remediation.\" NIS2-Art21-patch-management, NIST-800-53-SI-2, AU-ISM-1546 and ISO-27001-2022-A.8.8 are cited as the insufficient controls.",
44355
+ "gap_closes": [
44356
+ "NIS2-Art21-patch-management",
44357
+ "NIST-800-53-SI-2",
44358
+ "AU-ISM-1546",
44359
+ "ISO-27001-2022-A.8.8"
44360
+ ]
44361
+ },
44362
+ {
44363
+ "id": "NEW-CTRL-126",
44364
+ "name": "MOBILE-OS-MINIMUM-PATCH-LEVEL-ENFORCEMENT",
44365
+ "description": "The trigger the packet records is a locally present, crafted application, and the escalation runs from an unprivileged context to system-level privileges with no additional execution privileges needed — so for this entry the control's access-condition half is the load-bearing one. Applied to the Pixel devices in the estate, the build carrying the fix has to function as an access condition: mail, VPN and document access denied to a Pixel below it, not the stale patch level surfacing as a row on a compliance dashboard while the device keeps its access. Because the packet ties remediation to a reboot, the condition must be evaluated against the patch level the device reports after restarting; a device that has installed but not restarted sits below the bar. Distinguishing test: enrol a Pixel pinned below the fixed build and confirm the policy actually denies it access to protected resources — an estate that reports the stale build while the handset keeps syncing mail has recorded the exposure rather than removed it. The least-privilege control cited as insufficient here is not the lever it appears to be: the escalation begins in an unprivileged context and crosses a privilege boundary inside the platform, so per-application privilege scoping is never the thing that fails and an AC-6 attestation passes cleanly while the flaw stays fully exploitable. Precondition: restricting untrusted or side-loaded application installation raises the bar for getting the attacker's application onto a device, but it does not evict an application already installed, and it does not cover one that arrived through the normal store channel; the packet's requirement of user interaction also means the delivery step runs through a user, which policy narrows but does not eliminate. A device suspected of already running the crafted application belongs on the incident path, not the install-policy path. This is a holding measure for the window before the update and its restart land, not a substitute for them.",
44366
+ "evidence": "The packet's vector states there is a possible way to bypass due to a logic error in the code, leading to local escalation of privilege with no additional execution privileges needed, and that user interaction is needed for exploitation; the attack path is a locally present, crafted application bypassing a privilege boundary in Pixel firmware / the Android Framework to reach system-level privileges. NIST-800-53-AC-6 (Least Privilege) and UK-CAF-B4 (System security) are cited as insufficient controls on this entry. The packet records patch_available true, live_patch_available false, and live_patch_notes stating the vendor update requires a reboot and is the remediation. It names no affected Pixel model or Android release, so no build or version is asserted here beyond \"the build carrying the vendor fix\".",
44367
+ "gap_closes": [
44368
+ "NIST-800-53-AC-6",
44369
+ "UK-CAF-B4"
44370
+ ]
44371
+ }
44372
+ ]
43677
44373
  },
43678
44374
  "CVE-2024-4577": {
43679
44375
  "name": "PHP-CGI OS Command Injection Vulnerability",
@@ -44052,7 +44748,30 @@
44052
44748
  "adequate": false,
44053
44749
  "gap": "Endpoint malicious-code protection does not reliably stop in-renderer memory-corruption execution delivered from a legitimate-looking site."
44054
44750
  }
44055
- }
44751
+ },
44752
+ "new_control_requirements": [
44753
+ {
44754
+ "id": "NEW-CTRL-057",
44755
+ "name": "BROWSER-MANAGED-UPDATE-NO-DEFERRAL",
44756
+ "description": "The packet's fix boundary for this CVE is a browser build number, not a configuration change: the vector states the type confusion is present in V8 in Google Chrome prior to 125.0.6422.60. Bound to that, the control means every managed Chrome/Chromium install on the estate is driven onto a build at or above 125.0.6422.60 on the security channel, with completion measured per endpoint by the version the browser actually reports rather than by the update policy showing as applied in the management console. The deferral question is the whole control here because the packet removes the usual excuse for it: live_patch_available is false but live_patch_notes record that the vendor update requires no reboot, so nothing about this remediation needs a user's machine taken out of service. What holds an endpoint on a vulnerable build is a pinned or extended-stable ring, a staged rollout percentage, or a user-deferrable relaunch — all policy, not constraint. The user-application-hardening measure cited as insufficient on this entry does not touch the path: the packet's trigger is a victim loading a crafted HTML page whose ordinary JavaScript reaches V8, so there is no plugin to disable, no macro to block and no download to gate, and a hardening attestation covering those settings passes cleanly while the browser build stays below the fix. Distinguishing test: enumerate the reported browser version on every managed endpoint and confirm none is below 125.0.6422.60; a fleet whose console shows the update approved and pushed while endpoints still report a pre-125.0.6422.60 build is not remediated. Scope this to the Chrome/Chromium installs the packet names — it identifies V8 in Google Chrome and gives no mapping from the vulnerable build into other JavaScript-executing software, so treating every browser or embedded web view in the estate as an instance of this CVE manufactures work against software no evidence in the packet implicates. Precondition: this reaches only installs under managed update policy; an unmanaged or per-user copy is remediated by bringing it under management or removing it, not by recording the fleet as patched.",
44757
+ "evidence": "Packet facts only. vector: 'Type Confusion in V8 in Google Chrome prior to 125.0.6422.60 allowed a remote attacker to execute arbitrary code inside a sandbox via a crafted HTML page. (Chromium security severity: High)'. attack_vector: 'A victim visits an attacker-controlled page (a fake blockchain/game site in the observed campaign) that runs crafted JavaScript triggering a V8 type confusion, corrupting the heap and executing code inside the renderer sandbox.' cisa_kev true, kev_date 2024-05-20, active_exploitation 'confirmed', CVSS 9.6, RWEP 56, CWE-843, poc_available false, ai_discovered false. patch_available true; live_patch_available false with live_patch_notes 'No live-patching primitive for this product; the vendor update (no reboot required) is the remediation.' Cited as insufficient on this entry: AU-Essential-8-App-Hardening (User application hardening), ISO-27001-2022-A.8.8, NIST-800-53-SI-2.",
44758
+ "gap_closes": [
44759
+ "AU-Essential-8-App-Hardening",
44760
+ "ISO-27001-2022-A.8.8",
44761
+ "NIST-800-53-SI-2"
44762
+ ]
44763
+ },
44764
+ {
44765
+ "id": "NEW-CTRL-001",
44766
+ "name": "CISA-KEV-RESPONSE-SLA",
44767
+ "description": "For this entry the control fixes when the browser build has to land and what an operator is allowed to count as holding the line until it does. The clock opens at the 2026-era-agnostic fact the packet records: KEV listing 2024-05-20 with active_exploitation 'confirmed', against a product whose fix the packet says needs no reboot — so the interval between listing and a fleet-wide build at or above 125.0.6422.60 is measured in the estate's update-ring latency and nothing else. Where an endpoint genuinely cannot take the build inside that window, the packet supports exactly one compensating lever, and it is the delivery path rather than the vulnerable code: exploitation requires the victim's browser to load the attacker's crafted page, which in the observed campaign the packet describes as a fake blockchain/game site. Restricting which sites managed browsers may load — denying uncategorized and newly-observed destinations for the affected population — bounds who can be brought to the page. Precondition, and it must be written down as one rather than recorded as the mitigation: this bounds reach, it does not repair the type confusion. It gives nothing against a crafted page served from a domain the filter permits, and nothing at all for an endpoint that has already loaded one — with exploitation confirmed in the wild and no PoC needed by the attacker, a browser that ran the crafted script belongs on the incident path, not the filtering path. The packet registers no live-patch primitive and no vendor mitigation rule, so there is no third state to claim: an endpoint is either on the fixed build or it is running the vulnerable one behind a holding measure with a dated expiry. Distinguishing test: for every endpoint still below the fixed build, produce the named compensating measure and its removal date; an entry on the risk register with no build target and no expiry is deferral recorded as compliance.",
44768
+ "evidence": "Packet facts only. cisa_kev true, kev_date 2024-05-20; active_exploitation 'confirmed'; poc_available false; ai_discovered false; RWEP 56, CVSS 9.6. patch_available true; live_patch_available false; live_patch_notes 'No live-patching primitive for this product; the vendor update (no reboot required) is the remediation.' vector names the fixed boundary as Google Chrome prior to 125.0.6422.60. attack_vector: 'A victim visits an attacker-controlled page (a fake blockchain/game site in the observed campaign) that runs crafted JavaScript triggering a V8 type confusion, corrupting the heap and executing code inside the renderer sandbox.' Cited as insufficient on this entry: ISO-27001-2022-A.8.8 (Management of technical vulnerabilities), NIST-800-53-SI-2 (Flaw Remediation).",
44769
+ "gap_closes": [
44770
+ "ISO-27001-2022-A.8.8",
44771
+ "NIST-800-53-SI-2"
44772
+ ]
44773
+ }
44774
+ ]
44056
44775
  },
44057
44776
  "CVE-2023-43208": {
44058
44777
  "name": "NextGen Healthcare Mirth Connect Deserialization of Untrusted Data Vulnerability",
@@ -44301,7 +45020,22 @@
44301
45020
  "adequate": false,
44302
45021
  "gap": "This was an actively exploited zero-day at patch release; any remediation cadence slower than the May 2024 Patch Tuesday left endpoints escalatable to SYSTEM during live QakBot campaigns."
44303
45022
  }
44304
- }
45023
+ },
45024
+ "new_control_requirements": [
45025
+ {
45026
+ "id": "NEW-CTRL-145",
45027
+ "name": "ACTIVELY-EXPLOITED-OS-LPE-REMEDIATION-WINDOW-ENFORCEMENT",
45028
+ "description": "The packet places this in the Windows DWM Core Library and describes local code triggering a heap buffer overflow — an integer-division size miscalculation in CCommandBuffer::Initialize — to corrupt heap memory and reach SYSTEM. The attacker is already executing on the host, so nothing about this escalation consults an account model; a memory-safety boundary inside a shipped OS component is failing. For this CVE the control means the Windows update carrying the DWM Core Library fix is driven across every affected host on the clock that opened with the 2024-05-14 KEV listing rather than folded into the next monthly rollup, and that completion is measured per host against the installed build rather than by 'approved' or 'downloaded' in the management console. The packet makes the restart the load-bearing step and the specific way this remediation gets recorded wrongly: live_patch_available is false and live_patch_notes state the vendor update requires a reboot and is the remediation, so a host that has installed the update and not yet restarted is still running the vulnerable DWM Core Library and must be counted as exposed. On a general desktop estate the restart is the step users defer indefinitely, which is exactly how a patch dashboard reads compliant over a fleet that still carries the flaw. Priority follows the packet rather than the 7.8 base score: a public PoC, confirmed in-the-wild exploitation, and the packet's record that QakBot chained this after initial access make it the containment step in an intrusion chain, not a routine endpoint item — every host that has taken an initial-access stage already satisfies this flaw's only precondition, which is local code execution. Distinguishing test: join the fleet's patch state to each host's last boot time and confirm no host reports the fix installed with a boot time preceding the install; any host in that set is exposed while the compliance report is green. Precondition and limit: this is a remediation-window control and nothing more. It does not detect exploitation, and on a host where the chain already ran, the reboot removes the vulnerable code but not the SYSTEM-level access the attacker established through it — with exploitation confirmed and the packet naming a chain after initial access, a host with corroborating intrusion evidence belongs on the incident path in parallel with, not after, the update.",
45029
+ "evidence": "Packet facts only. attack_vector: 'Local code triggers a heap buffer overflow in the DWM Core Library caused by an integer-division size miscalculation in CCommandBuffer::Initialize, corrupting heap memory to gain SYSTEM privileges; QakBot chained it after initial access.' vector: 'Windows DWM Core Library Elevation of Privilege Vulnerability'. CWE-122 and CWE-787; cisa_kev true, kev_date 2024-05-14; active_exploitation 'confirmed'; poc_available true; ai_discovered false; RWEP 79, CVSS 7.8. patch_available true; live_patch_available false; live_patch_notes 'No live-patching primitive for this product; the vendor update requires a reboot and is the remediation.' Cited as insufficient on this entry: AU-Essential-8-Patch, ISO-27001-2022-A.8.8, NIS2-Art21-patch-management, NIST-800-53-SI-2, UK-CAF-B4.",
45030
+ "gap_closes": [
45031
+ "AU-Essential-8-Patch",
45032
+ "ISO-27001-2022-A.8.8",
45033
+ "NIS2-Art21-patch-management",
45034
+ "NIST-800-53-SI-2",
45035
+ "UK-CAF-B4"
45036
+ ]
45037
+ }
45038
+ ]
44305
45039
  },
44306
45040
  "CVE-2024-4671": {
44307
45041
  "name": "Google Chromium Visuals Use-After-Free Vulnerability",
@@ -46255,7 +46989,30 @@
46255
46989
  "adequate": false,
46256
46990
  "gap": "Technical-vulnerability management as written does not elevate a KEV-listed, actively-exploited appliance flaw above routine CVEs, so it under-prioritises the emergency reboot window."
46257
46991
  }
46258
- }
46992
+ },
46993
+ "new_control_requirements": [
46994
+ {
46995
+ "id": "NEW-CTRL-030",
46996
+ "name": "PERIMETER-DEVICE-ZERODAY-SLA-TIER",
46997
+ "description": "A NetScaler ADC or Gateway configured as a Gateway or AAA virtual server is the remote-access trust boundary itself, and the packet's requests arrive at that boundary with no authentication, crash the packet engine and can read adjacent memory. The tier the frameworks lack is what applies here: remediation measured from the 2024-01-17 KEV listing rather than from the next appliance maintenance window, and completion measured per appliance rather than per version approved in a change record. The packet's own precondition scopes the work — the flaw is reached on an appliance configured as a Gateway or AAA virtual server, so the enumeration that gates remediation is which units carry that configuration, not how many NetScaler units exist. That distinction also determines whether the control's isolation half is available at all: where a unit carries an unused Gateway or AAA virtual server, removing that vserver removes the reachable path; where the vserver is in service, isolation is not a lever, because it is published to untrusted networks by design, and the fixed release is then the only remediation. State that plainly rather than recording 'restrict access to the management interface' as the interim mitigation — the exploited surface here is the user-facing remote-access vserver, not the management plane. The packet records no live-patch mechanism and states remediation requires applying the fixed release and rebooting, so an appliance that has taken the release without the reboot still runs the vulnerable code and must be counted as exposed. Distinguishing test: produce, per appliance, whether a Gateway or AAA virtual server is configured and the build actually running since its last restart; a fleet-wide change record showing the fixed release approved, against an appliance still serving on a pre-fix build, is a paper close.",
46998
+ "evidence": "Packet: CISA KEV-listed 2024-01-17, active_exploitation confirmed, CVSS 7.5, RWEP 60, poc_available false. Vector: 'Improper Restriction of Operations within the Bounds of a Memory Buffer in NetScaler ADC and NetScaler Gateway allows Unauthenticated Denial of Service and Out-Of-Bounds Memory Read'. attack_vector: 'An unauthenticated attacker sends crafted requests to a NetScaler appliance configured as a Gateway or AAA virtual server, triggering an out-of-bounds memory operation that crashes the packet engine (denial of service) and can leak adjacent memory.' patch_available true, live_patch_available false, live_patch_notes: 'No vendor live-patch mechanism; remediation requires applying the fixed release and rebooting.'",
46999
+ "gap_closes": [
47000
+ "AU-Essential-8-Patch",
47001
+ "NIST-800-53-SI-2",
47002
+ "ISO-27001-2022-A.8.8"
47003
+ ]
47004
+ },
47005
+ {
47006
+ "id": "NEW-CTRL-031",
47007
+ "name": "FIREWALL-EGRESS-TELEMETRY-SEPARATE-TRUST-ZONE",
47008
+ "description": "What this exploitation emits is documented in the packet: unauthenticated requests to a Gateway or AAA virtual server, followed by packet-engine crashes, with adjacent memory read out. A packet-engine crash on its own is indistinguishable from a fault; it becomes evidence only when it can be correlated with the unauthenticated request that preceded it, and that correlation needs both records — the vserver access record and the crash/restart record — side by side. The appliance is the component failing, so its own storage is the least dependable place to hold them. For this device the control means NetScaler syslog together with the Gateway and AAA vserver access records forwarding to a SIEM in a separate trust zone with its own management plane and credentials, retained across the window between the 2024-01-17 KEV listing and the completion of the reboot each appliance requires. Precondition, stated rather than implied: this is a detection-and-evidence control, not a mitigation — it does not prevent the out-of-bounds read or the crash, it does not reduce the exposure of a unit serving a Gateway vserver, and it must never be the reason an appliance's fixed release and reboot are deferred. It also depends on the forwarding path being up: while the packet engine is down the stream stops, so a gap in the stream that brackets a restart is itself the signal to investigate, not an absence of one, and the collector has to alarm on an appliance that goes quiet rather than only on the events it sends.",
47009
+ "evidence": "Packet attack_vector: 'An unauthenticated attacker sends crafted requests to a NetScaler appliance configured as a Gateway or AAA virtual server, triggering an out-of-bounds memory operation that crashes the packet engine (denial of service) and can leak adjacent memory.' CISA KEV-listed 2024-01-17, active_exploitation confirmed, poc_available false, CVSS 7.5, RWEP 60. live_patch_notes: 'No vendor live-patch mechanism; remediation requires applying the fixed release and rebooting' — the reboot is what bounds the window this retention has to cover. Citing gaps include UK-CAF-B4 (System security) and NIS2-Art21-network-security, neither of which requires appliance data-plane events to be retained off the appliance.",
47010
+ "gap_closes": [
47011
+ "UK-CAF-B4",
47012
+ "NIS2-Art21-network-security"
47013
+ ]
47014
+ }
47015
+ ]
46259
47016
  },
46260
47017
  "CVE-2023-6548": {
46261
47018
  "name": "Citrix NetScaler ADC and NetScaler Gateway Code Injection Vulnerability",
@@ -48028,7 +48785,40 @@
48028
48785
  "adequate": false,
48029
48786
  "gap": "Protection-against-malware controls that depend on the OS trust prompt are insufficient when the file arrives without the MOTW marking that would trigger scanning/warnings."
48030
48787
  }
48031
- }
48788
+ },
48789
+ "new_control_requirements": [
48790
+ {
48791
+ "id": "NEW-CTRL-120",
48792
+ "name": "DOWNLOAD-PROVENANCE-ENFORCEMENT",
48793
+ "description": "This CVE is the Mark-of-the-Web tag failing to be applied at all: the packet describes an attacker crafting a delivered file so Windows does not tag it, after which SmartScreen and Office Protected View do not trigger when the victim opens it. That makes half of this control inert here — requiring MOTW-tagged documents to open in Protected View does nothing for a file that carries no tag. The load-bearing half is the delivery boundary applying and preserving the untrusted-origin marking itself: the mail gateway, the web proxy and the untrusted file-share boundary mark externally-sourced files as they cross into the estate, so the sandbox decision is taken from provenance the operator established rather than from the OS tagging path this CVE defeats, and the marking survives the container it arrives in so extraction or renaming does not drop it. Distinguishing test keyed on the behaviour the packet documents: send, through each ingress path, a file constructed so Windows does not apply the tag, and confirm it still reaches the handler marked untrusted and opens in the reduced-privilege render — an attestation that Protected View and SmartScreen are enabled in policy passes cleanly against this CVE, because that policy is never consulted for a file that was never tagged. Precondition: this covers only channels that cross a boundary the operator controls. A file arriving on removable media, through a personal sync client, or over a channel the gateway cannot inspect still reaches the handler untagged, and for that population the only remaining lever is the Microsoft Windows October 2023 cumulative update the packet names — the packet records no live-patch path, so nothing restores the tagging behaviour on the host short of that update.",
48794
+ "evidence": "Packet: CWE-693, 'Windows Mark of the Web Security Feature Bypass Vulnerability'. Attack path: 'An attacker crafts a delivered file so Windows fails to apply the Mark-of-the-Web tag; when the victim opens it, SmartScreen and Office Protected View do not trigger, smoothing execution of the next stage in a phishing chain.' CISA KEV 2023-11-16, active_exploitation confirmed, CVSS 5.4, RWEP 55, poc_available false. patch_available true, live_patch_available false; live-patch note: 'No live patch; requires the Microsoft Windows October 2023 cumulative update.' Cited gaps include AU-Essential-8-App-Hardening (User application hardening) and ISO-27001-2022-A.8.7 (Protection against malware).",
48795
+ "gap_closes": [
48796
+ "AU-Essential-8-App-Hardening",
48797
+ "ISO-27001-2022-A.8.7"
48798
+ ]
48799
+ },
48800
+ {
48801
+ "id": "NEW-CTRL-041",
48802
+ "name": "PROTECTION-MECHANISM-FAILURE-CLASS-REGRESSION",
48803
+ "description": "Mark-of-the-Web is one of the protection-mechanism classes this control names, and this entry is that class failing by construction — CWE-693, with the packet describing SmartScreen and Protected View not triggering because the tag was never applied. For this estate the control means the detonation chamber, the EDR rules and the application-control policy are regression-tested against the MOTW class on every patch deployment, with the battery built from the behaviour the packet documents rather than from tool signatures or process-crash indicators: deliver a file that arrives without the tag, confirm the estate still detonates and evaluates it, and confirm an alert fires when the handler that opened it launches the next stage of the chain. A battery that only shows SmartScreen prompting on a normally-tagged download validates the one path this CVE avoids, and will pass while the estate stays exposed. Precondition: this is a verification and detection control. It reveals that the class is still bypassable and gives a second signal when it is; it does not restore the tagging behaviour, which only the Microsoft Windows October 2023 cumulative update the packet names does. Because the packet records no live-patch path, an unpatched host stays bypassable however well the battery performs, and a behavioural alert that fires once the next stage has executed is a detection rather than a prevention — it shortens dwell time, it does not stop the chain.",
48804
+ "evidence": "Packet: CWE-693 protection-mechanism failure; the attack path states that with the tag absent 'SmartScreen and Office Protected View do not trigger, smoothing execution of the next stage in a phishing chain.' active_exploitation confirmed; CISA KEV 2023-11-16; poc_available false. patch_available true, live_patch_available false; live-patch note names the Microsoft Windows October 2023 cumulative update as the requirement. Cited gaps include ISO-27001-2022-A.8.7 (Protection against malware), NIST-800-53-SI-4 (System Monitoring) and UK-CAF-B4 (System security).",
48805
+ "gap_closes": [
48806
+ "ISO-27001-2022-A.8.7",
48807
+ "NIST-800-53-SI-4",
48808
+ "UK-CAF-B4"
48809
+ ]
48810
+ },
48811
+ {
48812
+ "id": "NEW-CTRL-001",
48813
+ "name": "CISA-KEV-RESPONSE-SLA",
48814
+ "description": "The packet's own numbers are the argument for this control on this entry: CVSS 5.4 is the band most vulnerability-management programs schedule into a routine monthly cycle, while the packet records RWEP 55, a CISA KEV listing on 2023-11-16 and confirmed in-the-wild exploitation — because the bypass is a step that smooths a phishing chain rather than an impact in itself, and severity scoring of the step under-reads the chain. The control's clock is unusual here in a way worth stating: the fix the packet names, the Microsoft Windows October 2023 cumulative update, was already available when CISA listed the CVE, so on this entry the SLA is not waiting on a vendor — the measured quantity is the estate's own deployment lag, and hosts count as remediated by the build actually installed rather than by the update showing approved or downloaded in the management console. Precondition: this control governs deployment speed and nothing else. It says nothing about a file that already arrived untagged before the update landed, so the delivery-boundary and class-regression controls on this entry are not superseded by it; and because the packet records no live-patch path, there is no way to shorten the exposure window other than deploying the update itself.",
48815
+ "evidence": "Packet: CISA KEV listed 2023-11-16 with active_exploitation confirmed; CVSS 5.4 against RWEP 55; poc_available false. patch_available true, live_patch_available false; live-patch note: 'No live patch; requires the Microsoft Windows October 2023 cumulative update' — an October 2023 update against a 2023-11-16 KEV listing. Cited gaps include NIST-800-53-SI-2 (Flaw Remediation) and NIS2-Art21-patch-management (Vulnerability handling and disclosure).",
48816
+ "gap_closes": [
48817
+ "NIST-800-53-SI-2",
48818
+ "NIS2-Art21-patch-management"
48819
+ ]
48820
+ }
48821
+ ]
48032
48822
  },
48033
48823
  "CVE-2023-1671": {
48034
48824
  "name": "Sophos Web Appliance Command Injection Vulnerability",
@@ -51444,7 +52234,41 @@
51444
52234
  "adequate": false,
51445
52235
  "gap": "A.8.8 would surface FG-IR-25-934 as a vulnerability to patch, but because exploitation requires an existing filesystem-level compromise, A.8.8's patch-centric remedy never triggers the compromise-recovery process needed to remove the attacker's symlink foothold."
51446
52236
  }
51447
- }
52237
+ },
52238
+ "new_control_requirements": [
52239
+ {
52240
+ "id": "NEW-CTRL-032",
52241
+ "name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
52242
+ "description": "This CVE is the case the control exists for, stated by the advisory text itself: the flaw bypasses the patch developed for the symbolic-link persistency mechanism observed in some post-exploit cases, and its stated precondition is an attacker who has already compromised the product via another vulnerability, at filesystem level. On a FortiOS unit with evidence of that prior compromise, the upgrade is not eviction — it closes the current bypass while leaving whatever the attacker placed on the filesystem, and the packet shows this is the second time a patch has been asked to do that job and the second time it did not hold. For such a unit the default response is configuration extraction for review, rebuild from vendor image, and rotation of the credentials the device held or handled — administrative accounts first, then the SSL-VPN user credentials, since the packet's outcome is re-exposure of sensitive files on the device and restoration of the attacker's foothold through the SSL-VPN web surface. Preconditions, both directions: the rebuild path applies only to units with evidence of prior filesystem-level compromise; for every other affected unit the vendor upgrade is the remediation and is still mandatory. And the upgrade is required on the rebuilt unit too — the packet records no live-patch mechanism and states remediation requires upgrading to FortiOS 7.6.2 / 7.4.7, or migrating 7.2 / 7.0 / 6.4 to a supported fixed release, which reboots the appliance, so an image restored to a pre-fix build reopens the same path. What this control refuses is the reverse substitution: treating the upgrade as eviction on a device whose filesystem an attacker already reached.",
52243
+ "evidence": "Packet vector: the flaw in FortiOS 7.6.0-7.6.1, 7.4.0-7.4.6, 7.2 all versions, 7.0 all versions and 6.4 all versions 'may allow a remote unauthenticated attacker to bypass the patch developed for the symbolic link persistency mechanism observed in some post-exploit cases, via crafted HTTP requests. An attacker would need first to have compromised the product via another vulnerability, at filesystem level.' attack_vector: an attacker who has already compromised a FortiOS device at the filesystem level 're-create[s] the symbolic-link read Fortinet's earlier patch was designed to block, re-exposing sensitive files and restoring post-exploit persistence.' CISA KEV-listed 2026-07-27, active_exploitation confirmed. patch_available true, live_patch_available false, live_patch_notes: 'No vendor live-patch mechanism for FortiOS; remediation requires upgrading to FortiOS 7.6.2 / 7.4.7 (or migrating 7.2/7.0/6.4 to a supported fixed release), which reboots the appliance.'",
52244
+ "gap_closes": [
52245
+ "AU-Essential-8-Patch",
52246
+ "NIST-800-53-SI-2",
52247
+ "ISO-27001-2022-A.8.8",
52248
+ "NIS2-Art21-patch-management"
52249
+ ]
52250
+ },
52251
+ {
52252
+ "id": "NEW-CTRL-042",
52253
+ "name": "INCOMPLETE-PATCH-SEQUENCE-SEVERITY-MULTIPLIER",
52254
+ "description": "The packet names this defect's position in a sequence rather than leaving it to be inferred: it bypasses the patch developed for the symbolic-link persistency mechanism, so it is at minimum the second entry on that same primitive and the earlier fix is now demonstrated incomplete. Two consequences for how a FortiOS vulnerability queue treats it. Its own ranking first: the packet records CVSS 5.9 and RWEP 46, a mid-band pair that a severity-sorted queue places behind higher-scored appliance items, against a KEV listing of 2026-07-27 and confirmed in-the-wild exploitation of a mechanism whose entire function is restoring an attacker's foothold on a device that was already compromised. The multiplier is what corrects that ordering, and on this entry it is the difference between the upgrade landing in the current cycle and landing in the next one. Its forward implication second: a primitive that has now been patched once and bypassed once should be carried as likely to be bypassed again, so the symbolic-link read path reachable through the FortiOS SSL-VPN belongs on a standing watch list for the next advisory rather than being closed out when 7.6.2 / 7.4.7 is deployed. Distinguishing test: ask the vulnerability-management program to produce, for this CVE, the record linking it to the earlier symlink-persistency fix it bypasses; a program that scores each Fortinet advisory as a discrete mid-band item cannot produce that link, and will rank the next bypass on the same primitive exactly the same way. Precondition: this control changes prioritization and tracking only — it schedules the upgrade sooner, it does not remediate anything on its own.",
52255
+ "evidence": "Packet vector: the flaw 'may allow a remote unauthenticated attacker to bypass the patch developed for the symbolic link persistency mechanism observed in some post-exploit cases, via crafted HTTP requests' — the packet identifies the bypassed prior patch on the same primitive. CVSS 5.9, RWEP 46, poc_available false, CISA KEV-listed 2026-07-27, active_exploitation confirmed. live_patch_notes: remediation requires upgrading to FortiOS 7.6.2 / 7.4.7 (or migrating 7.2/7.0/6.4 to a supported fixed release), which reboots the appliance; live_patch_available false.",
52256
+ "gap_closes": [
52257
+ "ISO-27001-2022-A.8.8",
52258
+ "NIST-800-53-SI-2",
52259
+ "NIS2-Art21-patch-management"
52260
+ ]
52261
+ },
52262
+ {
52263
+ "id": "NEW-CTRL-031",
52264
+ "name": "FIREWALL-EGRESS-TELEMETRY-SEPARATE-TRUST-ZONE",
52265
+ "description": "The packet's stated precondition settles where this appliance's logs can be trusted: the attacker already holds the device at filesystem level, so on-box records are attacker-writable, and the exact events that matter — the crafted HTTP requests to the SSL-VPN that re-create the symbolic-link read, and the file reads that follow — are the ones an attacker on the box has both motive and access to remove. Those requests also arrive through the same web surface that serves legitimate SSL-VPN users, so they are separable in the record rather than at the connection. For this appliance the control means FortiOS event and traffic logs, including SSL-VPN web request and file-access events, forwarding to a collector in a separate trust zone with its own credentials and management path, retained across the whole exposure window rather than the appliance's local rotation. Preconditions, and they are the load-bearing part here: this preserves evidence and makes the re-persistence visible, it does not block the symbolic-link read and it does not substitute for the upgrade to FortiOS 7.6.2 / 7.4.7 (or migration off 7.2 / 7.0 / 6.4) and the reboot that upgrade requires. On a device already compromised at filesystem level the attacker can also stop the forwarder, so the collector must alarm on a FortiOS unit that goes silent and a silent unit must be treated as an incident rather than a logging fault. And it gives nothing retroactively: a device compromised before forwarding was configured has no off-box record to consult, which is why this has to be standing configuration rather than a response to this advisory.",
52266
+ "evidence": "Packet attack_vector: 'An attacker who has already compromised a FortiOS device at the filesystem level sends crafted HTTP requests to the SSL-VPN that re-create the symbolic-link read Fortinet's earlier patch was designed to block, re-exposing sensitive files and restoring post-exploit persistence.' Vector states the attacker 'would need first to have compromised the product via another vulnerability, at filesystem level.' CISA KEV-listed 2026-07-27, active_exploitation confirmed, poc_available false. live_patch_available false; live_patch_notes: remediation requires upgrading to FortiOS 7.6.2 / 7.4.7 (or migrating 7.2/7.0/6.4 to a supported fixed release), which reboots the appliance. Citing gap UK-CAF-B4 (System security) does not require appliance logs to be held outside the appliance.",
52267
+ "gap_closes": [
52268
+ "UK-CAF-B4"
52269
+ ]
52270
+ }
52271
+ ]
51448
52272
  },
51449
52273
  "CVE-2026-16812": {
51450
52274
  "name": "Arista VeloCloud Orchestrator On-Prem OS Command Injection Vulnerability",
@@ -51749,7 +52573,40 @@
51749
52573
  "adequate": false,
51750
52574
  "gap": "A.5.15 access control relies on an enforced authorization model; the insufficiently restrictive HTTPD configuration in Sentry <= 9.18.0 bypasses that model on the admin API, so documented access-control policy does not prevent the unauthenticated administrative takeover exploited in 2023."
51751
52575
  }
51752
- }
52576
+ },
52577
+ "new_control_requirements": [
52578
+ {
52579
+ "id": "NEW-CTRL-134",
52580
+ "name": "DEVICE-MANAGEMENT-GATEWAY-CONFIG-ENDPOINT-AUTH-INPUT-NEUTRALIZATION",
52581
+ "description": "Ivanti MobileIron Sentry is the device-management gateway this control governs, and only the authorization half of it is load-bearing here — this flaw carries no attacker-supplied file or path, so the input-neutralization half has nothing to act on. The packet places the defect in an insufficiently restrictive Apache HTTPD configuration fronting the MICS Admin Portal: the administrative interface takes its authentication verdict from that fronting configuration instead of deciding it at the function, so an unauthenticated request to TCP/8443 reaches the System Manager API behind it and runs commands as root. Bound to this product, the control means each MICS administrative function on Sentry authorizes its own caller before the function executes, and no Sentry appliance is left with TCP/8443 reachable from a segment with no operational need to administer it. This is also why the access-control and identity gaps recorded against this entry cannot close the path: the attacker never authenticates as any Sentry administrator, so per-account privilege scoping is never consulted and the account model those attestations examine is bypassed rather than abused. Distinguishing test: from a segment with no Sentry administration role, send an unauthenticated request to the MICS Admin Portal on TCP/8443 of a staging appliance and confirm it is refused before the System Manager API is reached — an attestation that every Sentry administrator authenticates at login passes cleanly while this path stays open. Precondition: the endpoint-side authorization is a property the Ivanti fixed release establishes; this control states what to verify, it does not implement it. The packet records a vendor patch with no live-patch path, so remediation is upgrading Sentry 9.18.0 and below to the Ivanti fixed release and restarting the appliance. Until that lands, restricting which segments can reach TCP/8443 bounds who can send the request but leaves the portal fully exploitable to anything inside the permitted segment, and it is unavailable wherever the administrative interface must stay reachable for normal operation.",
52582
+ "evidence": "Packet: CWE-863 in the MICS Admin Portal of Ivanti MobileIron Sentry 'versions 9.18.0 and below, which may allow an attacker to bypass authentication controls on the administrative interface due to an insufficiently restrictive Apache HTTPD configuration'. Attack path: 'An unauthenticated request to the MICS admin portal on TCP/8443 bypasses authentication ... then abuses the System Manager API to execute commands as root and drop a webshell.' CVSS 9.8, RWEP 76, poc_available true, CISA KEV 2023-08-22, active_exploitation confirmed. patch_available true, live_patch_available false; live-patch note: 'remediation requires upgrading Sentry to the Ivanti fixed release (RPM/appliance update) and restarting the appliance'. Cited gaps on this entry include boundary protection (NIST-800-53-SC-7) and access control / identity management (ISO-27001-2022-A.5.15, UK-CAF-B2, NIS2-Art21-identity-management).",
52583
+ "gap_closes": [
52584
+ "UK-CAF-B2",
52585
+ "ISO-27001-2022-A.5.15",
52586
+ "NIS2-Art21-identity-management",
52587
+ "NIST-800-53-SC-7"
52588
+ ]
52589
+ },
52590
+ {
52591
+ "id": "NEW-CTRL-032",
52592
+ "name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
52593
+ "description": "The packet's chain does not stop at authentication bypass: it ends in command execution as root and a webshell dropped on the Sentry appliance, with exploitation confirmed in the wild since the 2023-08-22 KEV listing. Applying the Ivanti fixed release to an appliance that was reachable during that window replaces the permissive Apache HTTPD configuration but leaves in place anything the attacker wrote with root privilege — the webshell the packet names is the first artifact to expect, not the only one that fits the primitive. Bound to this product, the control means any Sentry whose MICS Admin Portal on TCP/8443 was reachable during the exposure window is handled as compromised until shown otherwise: configuration and logs pulled off for analysis, the appliance rebuilt onto the fixed release from vendor media rather than upgraded in place, and every credential the MDM handled rotated — which is the packet's own remediation instruction, not an addition to it. Distinguishing test: for each remediated appliance, show the build in service came from a rebuild or vendor-media restore and that MDM-handled credentials were rotated; an appliance whose upgrade completed while its filesystem was never examined satisfies a flaw-remediation attestation and still carries the webshell. Precondition: a rebuild removes only what is on the appliance. It does not invalidate credentials or trust material the attacker already read, which is why rotation belongs in the same action rather than as a follow-up; and restoring a configuration backup taken inside the exposure window can carry attacker-modified configuration back onto the clean build, so configuration is re-applied selectively rather than wholesale.",
52594
+ "evidence": "Packet: attack path is 'An unauthenticated request to the MICS admin portal on TCP/8443 ... then abuses the System Manager API to execute commands as root and drop a webshell.' active_exploitation confirmed; CISA KEV 2023-08-22; RWEP 76; poc_available true. patch_available true, live_patch_available false, with the live-patch note requiring 'upgrading Sentry to the Ivanti fixed release (RPM/appliance update) and restarting the appliance, plus rotating any credentials handled by a potentially compromised MDM'. The entry's cited patch gap is AU-Essential-8-Patch (Patch operating systems).",
52595
+ "gap_closes": [
52596
+ "AU-Essential-8-Patch"
52597
+ ]
52598
+ },
52599
+ {
52600
+ "id": "NEW-CTRL-037",
52601
+ "name": "FLEET-COMPROMISE-IR-PLAYBOOK",
52602
+ "description": "The packet ties this appliance to an MDM — its remediation note requires rotating any credentials handled by a potentially compromised MDM — so a root-level compromise of Sentry has a blast radius measured in managed devices and the credentials that flowed through them, not in one appliance. The playbook for this product hunts what the packet documents rather than a generic malware signature sweep: requests to the MICS Admin Portal on TCP/8443 with no preceding authentication event, command execution in root context originating from the System Manager API, and content written into the paths the appliance serves (the webshell). The window opens at the earliest date the portal was reachable, and inside it the playbook's actions are the identity ones frameworks do not prescribe post-compromise: rotate every credential the MDM handled, invalidate device-trust state, and review configuration profiles pushed to managed devices during the window. Precondition: these actions must be issued from a control plane the attacker does not hold. Pushing revocations or profiles from a Sentry that is still compromised routes them through the attacker's foothold, so the appliance rebuild precedes them. And this is a response capability, not a fix — it repairs nothing in the authorization path, and it only helps if it was rehearsed before the 2023-08-22 listing rather than drafted during the incident.",
52603
+ "evidence": "Packet: live_patch_notes states remediation includes 'rotating any credentials handled by a potentially compromised MDM'; the product is Ivanti MobileIron Sentry. Attack path reaches 'execute commands as root and drop a webshell' from an unauthenticated request to the MICS admin portal on TCP/8443. active_exploitation confirmed; CISA KEV 2023-08-22; CVSS 9.8; RWEP 76. Cited gaps include NIS2-Art21-identity-management (Identity and access management) and ISO-27001-2022-A.5.15 (Access control).",
52604
+ "gap_closes": [
52605
+ "NIS2-Art21-identity-management",
52606
+ "ISO-27001-2022-A.5.15"
52607
+ ]
52608
+ }
52609
+ ]
51753
52610
  },
51754
52611
  "CVE-2023-27532": {
51755
52612
  "name": "Veeam Backup & Replication Cloud Connect Missing Authentication for Critical Function Vulnerability",