@blamejs/exceptd-skills 0.19.20 → 0.19.21

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.
@@ -33794,7 +33794,41 @@
33794
33794
  },
33795
33795
  "ai_discovered_zeroday": false,
33796
33796
  "ai_discovery_source": "human_researcher",
33797
- "ai_assist_factor": "none"
33797
+ "ai_assist_factor": "none",
33798
+ "new_control_requirements": [
33799
+ {
33800
+ "id": "NEW-CTRL-030",
33801
+ "name": "PERIMETER-DEVICE-ZERODAY-SLA-TIER",
33802
+ "description": "The EDS5000 is a device server sitting between legacy serial equipment and the IP network, so on this estate it is the trust boundary itself, and the packet's defect is a pre-auth one: the network-reachable HTTP RPC module concatenates the attacker-supplied username directly into a shell command while logging a failed authentication attempt, so a crafted username executes as root without any valid credential ever being presented. That combination is what puts this device in a distinct SLA tier rather than an appliance patch window. The clock is the KEV clock that opened 2026-06-23 with a 2026-06-26 due date — days — not the 30-day flaw-remediation SLA or the monthly/fortnightly Essential-Eight cadence the cited gaps are scored against, and not the normal vulnerability-management cadence A.8.8 leaves undefined. Completion is measured per unit by the firmware actually running: the packet fixes this at 2.2.0.0R1 against 2.1.0.0R3 and earlier, patch_required_reboot is true and live_patch_available is false, so a unit that has downloaded firmware but has not restarted onto it is still executing the vulnerable RPC handler and must be counted as exposed rather than as patched. On a device bridging live serial equipment that restart is the step most likely to be deferred to an OT maintenance window, and a deferral recorded as patched is the specific way this remediation goes wrong. Where a unit genuinely cannot be restarted inside the KEV window, the tier's alternative applies — isolate the HTTP RPC interface from every network that does not need to reach it — but that is an interim state carrying a dated restart, not a closure: the packet records the vendor update as the remediation with the named compensating controls holding only until it lands. Scope to the EDS5000, which is the product the packet names at 2.1.0.0R3 and earlier; it gives no mapping into other Lantronix device servers.",
33803
+ "evidence": "Packet: CISA KEV added 2026-06-23 with due date 2026-06-26, active_exploitation confirmed, poc_available true, CVSS 9.8, RWEP 77. vector: \"The EDS5000 HTTP RPC module is reachable over the network. When logging a failed authentication attempt it concatenates the attacker-supplied username directly into a shell command without sanitization (CWE-94), so a crafted username executes arbitrary OS commands as root.\" affected_versions: \"Lantronix EDS5000 firmware 2.1.0.0R3 and earlier\", \"Fixed in firmware 2.2.0.0R1\". patch_available true, patch_required_reboot true, live_patch_available false, live_patch_notes: \"No live-patch path for this product class; remediation is the vendor update plus the named compensating controls until it lands.\" NIST-800-53-SI-2 gap: the routine 30-day SLA is far longer than the exploitation window; the operationally-meaningful clock is days. ISO-27001-2022-A.8.8 gap: \"appropriate timescales\" undefined, must collapse to the CISA due date. AU-Essential-8-Patch gap: maturity scored on cadence, not KEV-anchored emergency response. UK-CAF-B4 gap: \"the managed cycle itself is the gap here.\"",
33804
+ "gap_closes": [
33805
+ "NIST-800-53-SI-2",
33806
+ "ISO-27001-2022-A.8.8",
33807
+ "AU-Essential-8-Patch",
33808
+ "UK-CAF-B4"
33809
+ ]
33810
+ },
33811
+ {
33812
+ "id": "NEW-CTRL-118",
33813
+ "name": "OT-DEFAULT-CREDENTIAL-ELIMINATION",
33814
+ "description": "On this entry only the segmentation half of this control is a lever, and the packet says why outright: the injection fires while the EDS5000 is logging a FAILED authentication attempt, so the attacker never presents a working credential and there is no vendor-default or shared account for the operator to rotate away — credential elimination does not touch this path. Reachability is what bounds it. Applied to this device, the control means the EDS5000's HTTP RPC interface answers only from a segmented engineering and management plane — the hosts with an operational need to configure the device server — and not from the internet, a flat plant network, or a general business VLAN, which is where the packet records exploitation actually happening against internet-facing and network-accessible units. That restriction is also the only thing keeping the IT/OT conduit from becoming the pivot: root on this box lets an attacker intercept and manipulate the serial streams of the PLCs and RTUs behind it, so a management interface reachable from the IT side is exactly the zone bridge the segmentation model assumes does not exist. Distinguishing test: from a general business VLAN and from an external address, attempt to reach the EDS5000's HTTP RPC interface on a staging unit; anything that answers is within reach of the published exploit, because past that point the attacker supplies nothing but a crafted username. Precondition: this bounds the population that can send the request, it does not repair the concatenation. Any compromised engineering workstation, contractor laptop or jump host already inside the permitted segment satisfies the exploit's requirement in full, and the control gives nothing where the interface must stay reachable for normal operation. It is a holding measure for the window before firmware 2.2.0.0R1 and its restart land — the packet records the vendor update plus the named compensating controls as the remediation, with those controls holding only until the update arrives.",
33815
+ "evidence": "Packet vector: the HTTP RPC module is reachable over the network and injects on the failed-authentication logging path, so exploitation requires no valid credential; CVSS 9.8. active_exploitation_notes: \"KEV-confirmed (added 2026-06-23, due 2026-06-26). Actively exploited against internet-facing/network-accessible EDS5000 device servers... the device bridges serial OT assets (PLCs/RTUs) to IP, so exploitation enables OT pivot.\" vector: \"root control lets the attacker intercept/manipulate serial streams and pivot into connected OT networks.\" NIS2-Art21-network-security gap: perimeter and segmentation controls assume the appliance is trustworthy; an unauthenticated root OS command injection in the network device itself defeats that assumption. IEC-62443-3-3 gap: zone-and-conduit segmentation is the compensating control, but an internet-reachable device server with a root-level command injection bridges the IT and OT zones it is supposed to keep apart. live_patch_notes: \"remediation is the vendor update plus the named compensating controls until it lands.\"",
33816
+ "gap_closes": [
33817
+ "NIS2-Art21-network-security",
33818
+ "IEC-62443-3-3"
33819
+ ]
33820
+ },
33821
+ {
33822
+ "id": "NEW-CTRL-032",
33823
+ "name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
33824
+ "description": "The packet records confirmed in-the-wild exploitation of internet-facing and network-accessible EDS5000 units by an exploit that lands as root, so for any unit that was reachable during the exposure window the firmware update is not the end state. Upgrading to 2.2.0.0R1 closes the RPC concatenation; it establishes nothing about what root-level access already did to the unit — its stored configuration, its serial port and host mappings, its administrative and any stored network credentials — and it gives no answer at all on the serial side, where the packet places the real consequence: root on the gateway lets an attacker intercept and manipulate the streams of the PLCs and RTUs it bridges. The requirement for this device is therefore that a suspected-exposed EDS5000 is rebuilt from a known-good configuration rather than patched in place, with every credential it held or that transited it rotated, and with the connected serial equipment's own state compared against a known-good copy rather than assumed intact because the gateway now reports fixed firmware. This is the part of the response that survives the patch, and it is the part the OT-security guidance cited on this entry has no step for — that guide treats the serial-to-IP gateway as a trusted conduit, so once the conduit itself has executed attacker code there is no defined path back to trust, and a segmentation-only reading leaves the compromised gateway sitting inside the zone it was meant to divide. Precondition: this applies to units that were reachable from an untrusted network during the exposure window, and establishing which those were requires reachability records or logs held off the device — a device whose own root account was taken is not the authority on its own integrity, and its local logs are not evidence of a clean unit.",
33825
+ "evidence": "Packet: active_exploitation confirmed; active_exploitation_notes \"Actively exploited against internet-facing/network-accessible EDS5000 device servers. No named actor; the device bridges serial OT assets (PLCs/RTUs) to IP, so exploitation enables OT pivot.\" vector: a crafted username \"executes arbitrary OS commands as root... root control lets the attacker intercept/manipulate serial streams and pivot into connected OT networks.\" poc_available true, CVSS 9.8, RWEP 77. patch_available true (fixed in firmware 2.2.0.0R1), patch_required_reboot true, live_patch_available false. NIST-800-82r3 gap: \"800-82r3 treats the serial-to-IP gateway as a trusted conduit; root compromise via this root OS command injection turns the gateway into an OT pivot, which a segmentation-only reading of the guide does not address.\" IEC-62443-3-3 gap: the internet-reachable device server bridges the IT and OT zones it is supposed to keep apart.",
33826
+ "gap_closes": [
33827
+ "NIST-800-82r3",
33828
+ "IEC-62443-3-3"
33829
+ ]
33830
+ }
33831
+ ]
33798
33832
  },
33799
33833
  "CVE-2026-34910": {
33800
33834
  "name": "Ubiquiti UniFi OS Improper Input Validation Vulnerability",
@@ -34777,7 +34811,31 @@
34777
34811
  },
34778
34812
  "ai_discovered_zeroday": false,
34779
34813
  "ai_discovery_source": "vendor_research",
34780
- "ai_assist_factor": "none"
34814
+ "ai_assist_factor": "none",
34815
+ "new_control_requirements": [
34816
+ {
34817
+ "id": "NEW-CTRL-145",
34818
+ "name": "ACTIVELY-EXPLOITED-OS-LPE-REMEDIATION-WINDOW-ENFORCEMENT",
34819
+ "description": "The packet places exploitation behind a pre-authenticated local user who already holds a pre-defined admin role, or a user-defined role with admin-level privileges, on the Brocade Fabric OS switch — the account is legitimate, so no account model is being abused; a privilege boundary inside the switch is failing and the result is full root code execution. That is why tightening role assignment does not contain this: holding the admin role is the exploit's precondition, not its abuse. For this CVE the control means the firmware carrying the fix is driven across the affected switches on the clock that opened with the 2025-04-28 KEV listing against the 2025-05-19 CISA due date, rather than folded into the next SAN change window, with completion measured by the firmware level each switch is running. Take the population from affected_versions: Fabric OS 9.1.0 through 9.1.1d6 inclusive is the affected train and 9.1.1d7 is the remediated build. The 9.2.x and 10.x trains are not listed as affected by this advisory and are covered separately under advisory doc 25000 — do not sweep them as instances of this CVE, and equally do not mark them clear on this entry, because their status comes from that other advisory. Precondition, and the specific way this remediation is recorded wrong: live_patch_available is false and patch_required_reboot is true, so a switch with 9.1.1d7 downloaded or staged is still executing the vulnerable code until it is running that build, and on a fabric switch that final step is the one most likely to be deferred — a deferral entered as patched is the failure mode to guard against. Because exploitation is confirmed and the primitive lets the attacker run any Fabric OS command or modify the OS itself, including inserting custom subroutines, a switch whose admin surface was reachable by a non-root account during the exposure window needs its firmware and configuration compared against a known-good baseline and its credentials rotated, rather than being closed out on the upgrade record.",
34820
+ "evidence": "Packet facts only: the vector states exploitation requires a pre-authenticated local user already holding a pre-defined admin role or a user-defined role with admin-level privileges, that an IP-address input-validation flaw lets that user smuggle arbitrary code into a command path executing as root, that the primitive yields full root code execution allowing any Fabric OS command or modification of the OS itself (e.g. inserting custom subroutines), and that the net effect is admin-to-root privilege escalation on the SAN fabric switch. cisa_kev true with kev_date 2025-04-28; active_exploitation confirmed, with active_exploitation_notes recording Broadcom's advisory statement that the vulnerability \"has been actively exploited in the field\"; poc_available true; rwep_score 75 against cvss 6.7. patch_available true, patch_required_reboot true, live_patch_available false, with live_patch_notes stating there is no live-patch path for this product class. affected_versions gives 9.1.0 through 9.1.1d6 (inclusive) affected, fixed in 9.1.1d7, and states 9.2.x and 10.x are not listed as affected by this advisory and are covered separately under advisory doc 25000. The 2025-05-19 CISA due date is taken from the NIST-800-53-SI-2 gap text.",
34821
+ "gap_closes": [
34822
+ "AU-Essential-8-Patch",
34823
+ "ISO-27001-2022-A.8.8",
34824
+ "NIST-800-53-SI-2",
34825
+ "UK-CAF-B4"
34826
+ ]
34827
+ },
34828
+ {
34829
+ "id": "NEW-CTRL-135",
34830
+ "name": "CONTROL-PANEL-PLUGIN-USER-SURFACE-MUST-NOT-REACH-ROOT-OPERATIONS",
34831
+ "description": "Fabric OS's restricted admin shell is the constrained user surface this control governs, and the packet describes the forbidden pattern exactly: a flaw in IP-address input validation lets an admin-role user smuggle arbitrary code into a command path that executes as root, breaking out of that shell — which, as the packet notes, defeats the root-access removal Broadcom introduced starting in Fabric OS 9.1.0. Applied to this switch the requirement is that the privileged operations behind the admin shell sit behind their own authorization boundary, reachable only through a constrained and validated interface, so that the shell's own handling of an operator-supplied field — here an IP address — is not the single thing standing between an admin-level account and root. This is also the answer to the boundary-protection and network-security gaps cited on this entry: the switch's trustworthiness cannot be inherited from the segment it sits in, because the escalation happens inside the appliance the segmentation treats as the boundary, so a fabric that passes a segmentation review is not thereby protected. Preconditions, both load-bearing. First, the vendor firmware is what repairs the internal boundary — this control states the property to verify, it does not implement it; until the switch is running 9.1.1d7 the boundary is broken regardless of what is verified. Second, the only operator-side lever before that is restricting which accounts hold an admin or admin-equivalent role and which management segment a Fabric OS session may be opened from, and that bounds the population able to attempt the escalation without closing it — any account that legitimately reaches the admin shell still reaches root. The packet's CVSS 4.0 rescoring to adjacent access is the reason to enforce that reachability limit at the management network rather than treating the flaw as local-only.",
34832
+ "evidence": "Packet facts only: the vector states the flaw is in IP-address input validation, that it lets an admin-level user smuggle arbitrary code into a command path executing as root, that this breaks out of the restricted admin shell, and that it defeats the root-access removal Broadcom introduced starting in Fabric OS 9.1.0; it also records CVSS 3.1 AV:L / PR:H with a CVSS 4.0 rescoring to AV:A adjacent. affected_versions gives 9.1.1d7 as the fixed build; patch_available true, patch_required_reboot true, live_patch_available false. The NIST-800-53-SC-7 gap states boundary protection treats this appliance as the boundary so the control protects nothing in front of it once the device itself carries the flaw; the NIS2-Art21-network-security gap states perimeter and segmentation controls assume the appliance is trustworthy and that a code injection to root in the network device defeats that assumption. active_exploitation is confirmed per the packet.",
34833
+ "gap_closes": [
34834
+ "NIST-800-53-SC-7",
34835
+ "NIS2-Art21-network-security"
34836
+ ]
34837
+ }
34838
+ ]
34781
34839
  },
34782
34840
  "CVE-2025-42599": {
34783
34841
  "name": "Qualitia Active! Mail Stack-Based Buffer Overflow Vulnerability",
@@ -41365,7 +41423,31 @@
41365
41423
  "adequate": false,
41366
41424
  "gap": "Many affected cameras remain on end-of-life firmware years after the fix shipped; Essential 8's patch-application pillar requires an inventory and update mechanism that consumer IoT vendors typically don't provide."
41367
41425
  }
41368
- }
41426
+ },
41427
+ "new_control_requirements": [
41428
+ {
41429
+ "id": "NEW-CTRL-127",
41430
+ "name": "UNSUPPORTED-NETWORK-DEVICE-ENUMERATION-AND-RETIREMENT",
41431
+ "description": "Two facts in this packet have to be resolved per camera before anything else. A vendor firmware fix exists — patch_available is true and the flaw-remediation gap records it shipping 2022-01-19 — and the Essential-Eight gap records that many affected cameras remain on end-of-life firmware years later because consumer IoT vendors provide no inventory or update mechanism. So the requirement is an inventory naming every Reolink RLC-410W in service with its hardware revision, its running firmware version, and an end-of-support status obtained from Reolink rather than assumed in either direction: the packet gives the vulnerable level as v3.0.0.136_20121102 and earlier but does not name the fixed build, so that level has to come from the vendor for that exact model and revision. Cameras whose revision has firmware carrying the fix are remediation items on the clock that opened with the 2024-12-18 KEV listing, and because patch_required_reboot is true and live_patch_available is false, a camera that has taken firmware but has not restarted onto it is still running the vulnerable SetDdns handler and counts as exposed. Cameras whose revision has no fixed firmware cannot be patched at all and are replacement items needing a dated removal schedule; a risk acceptance with no removal date leaves a device with a public exploit and confirmed exploitation watching a premises indefinitely. Scope this to the RLC-410W — the packet ties the DDNS-field injection to that model at that firmware level and gives no mapping into other Reolink models or other vendors' cameras, so sweeping every IP camera in the estate manufactures replacement work against hardware no evidence implicates. And because exploitation is confirmed and the flaw yields command execution on the camera itself, a unit that was exposed is not remediated by firmware alone: its configuration and its administrative credential have to be rebuilt from a known-good baseline rather than carried through the update.",
41432
+ "evidence": "Packet: CISA KEV 2024-12-18, active_exploitation confirmed, poc_available true, CVSS 7.2, RWEP 66. patch_available true, patch_required_reboot true, live_patch_available false, live_patch_notes null. NIST-800-53-SI-2 gap: \"A firmware patch exists (vendor-fixed 2022-01-19), but the KEV listing three years later shows widespread unpatched devices; flaw-remediation SLAs do not reach consumer/SMB IoT fleets with no centralized patch management.\" AU-Essential-8-Patch gap: \"Many affected cameras remain on end-of-life firmware years after the fix shipped; Essential 8's patch-application pillar requires an inventory and update mechanism that consumer IoT vendors typically don't provide.\" UK-CAF-B4 gap: \"Secure-configuration baselines don't segment or retire consumer IP cameras...\" affected_versions: \"Reolink RLC-410W firmware v3.0.0.136_20121102 and earlier\".",
41433
+ "gap_closes": [
41434
+ "AU-Essential-8-Patch",
41435
+ "NIST-800-53-SI-2",
41436
+ "UK-CAF-B4"
41437
+ ]
41438
+ },
41439
+ {
41440
+ "id": "NEW-CTRL-134",
41441
+ "name": "DEVICE-MANAGEMENT-GATEWAY-CONFIG-ENDPOINT-AUTH-INPUT-NEUTRALIZATION",
41442
+ "description": "The camera's device-network-settings API is the configuration endpoint this control governs, and the defect sits inside it: the SetDdns call takes the operator-supplied domain parameter into the ddns->domain variable without validating it and passes it into a system-level command, so shell metacharacters in that one field execute as OS commands on the camera, reached by nothing more than an HTTP request. Bound to this product, the control means the RLC-410W's network-settings API validates and neutralizes every field it forwards into a command — the DDNS domain among them — before that command runs, instead of treating the value as safe because the caller authenticated as the camera's administrator; and that no RLC-410W is left with its HTTP administration surface reachable from a general user LAN or from the internet. This is precisely why the least-privilege gap cited on this entry does not close the path: the attacker is exercising the administrator role as designed, so scoping privileges more tightly changes nothing about a configuration field that reaches a shell, and an access-control attestation showing one named administrator per camera passes cleanly while the injection stays live. Distinguishing test: on a spare RLC-410W, submit a SetDdns request whose domain parameter carries shell metacharacters and confirm the value is rejected or neutralized before any command runs — not merely that the API demanded a login first. Precondition on each half, because both are commonly over-claimed. The field validation is a property the vendor firmware establishes; this control states what to verify, it does not implement it, and until the fixed firmware and its reboot land the endpoint stays fully exploitable to anyone who reaches it holding the admin credential. Restricting which segments can reach the camera's administration interface bounds that population but does not close the path — the packet's own least-privilege gap names default, reused and phished admin credentials as the way in, so any host inside the permitted segment, including the workstation or phone that legitimately administers the camera, satisfies the exploit's precondition in full.",
41443
+ "evidence": "Packet vector: \"the ddns->domain variable, that has the value of the domain parameter provided through the SetDdns API, is not validated properly. This would lead to an OS command injection. An attacker can send an HTTP request to trigger this vulnerability.\" attack_vector: an authenticated attacker embeds shell metacharacters in the DDNS domain field of the network-configuration API and the device passes them unsanitized into a system-level command. NIST-800-53-AC-6 gap: \"The DDNS configuration API trusts authenticated admin input without sanitizing it; least-privilege alone does not stop command injection once admin credentials are reused, defaulted, or phished.\" ISO-27001-2022-A.8.9 gap: \"Secure configuration management for the device's network-settings API did not include input validation; the config interface accepts unsanitized shell metacharacters by design.\" NIS2-Art21-network-security gap: \"Consumer/SMB IP cameras ... are rarely network-segmented; Art. 21 network security requires isolating IoT camera management interfaces from the general LAN.\" patch_available true, patch_required_reboot true, live_patch_available false.",
41444
+ "gap_closes": [
41445
+ "NIST-800-53-AC-6",
41446
+ "ISO-27001-2022-A.8.9",
41447
+ "NIS2-Art21-network-security"
41448
+ ]
41449
+ }
41450
+ ]
41369
41451
  },
41370
41452
  "CVE-2019-11001": {
41371
41453
  "name": "Reolink Multiple IP Cameras OS Command Injection Vulnerability",
@@ -41402,7 +41484,42 @@
41402
41484
  "adequate": false,
41403
41485
  "gap": "No confirmed vendor firmware fix has been identified for all affected models, and CISA's own required action notes the product may be EoL/EoS; flaw remediation cannot be satisfied where no patch exists."
41404
41486
  }
41405
- }
41487
+ },
41488
+ "new_control_requirements": [
41489
+ {
41490
+ "id": "NEW-CTRL-122",
41491
+ "name": "EOL-ASSET-DECOMMISSION",
41492
+ "description": "This entry is the pure form of the case the control exists for, because the interim half does not apply at all: patch_available is false, live_patch_available is false, and the packet records that CISA's own required action notes the product may be end-of-life / end-of-service. There is no fixed build to reach on these cameras, so removal or replacement is not the terminal state after an interim patch — it is the only state. Scope the inventory to exactly the five models the packet names — RLC-410W, C1 Pro, C2 Pro, RLC-422W and RLC-511W, at firmware through 1.0.227 — and give each unit in service a dated replacement schedule; a risk acceptance with no removal date leaves a KEV-listed root command injection with a public proof of concept and confirmed exploitation running indefinitely, which is what the Essential Eight gap means when it says decommissioning is the only durable control. Do not widen past those five: the packet ties the TestEmail/addr1 sink to those models and gives no mapping into other Reolink lines or other vendors' cameras, so treating every IP camera in the estate as an instance of this CVE manufactures replacement work and budget against hardware no evidence implicates — extend only where a verified source names another model carrying the same firmware. And because the injected command runs as root on the device, replacement alone does not close a unit that was exposed: its stored configuration and any credential it held or that transited it must be treated as compromised and rotated rather than carried onto the replacement.",
41493
+ "evidence": "Packet facts only: patch_available false, live_patch_available false, live_patch_notes null; cisa_kev true with kev_date 2024-12-18 and active_exploitation confirmed; poc_available true; rwep_score 75 against cvss 7.2. The affected and affected_versions fields name Reolink RLC-410W, C1 Pro, C2 Pro, RLC-422W and RLC-511W at firmware through 1.0.227, with the injection reached through the TestEmail notification-configuration feature's addr1 field and executed as root. The NIST-800-53-SI-2 gap states no confirmed vendor firmware fix has been identified for all affected models and that CISA's required action notes the product may be EoL/EoS; the AU-Essential-8-Patch gap states decommissioning is the only durable control; the UK-CAF-B4 gap states network segmentation or device replacement is the only control the framework leaves available. No firmware version, advisory identifier or date beyond these is asserted.",
41494
+ "gap_closes": [
41495
+ "AU-Essential-8-Patch",
41496
+ "NIST-800-53-SI-2",
41497
+ "NIS2-Art21-vulnerability-management",
41498
+ "UK-CAF-B4"
41499
+ ]
41500
+ },
41501
+ {
41502
+ "id": "NEW-CTRL-001",
41503
+ "name": "CISA-KEV-RESPONSE-SLA",
41504
+ "description": "The control admits three ways to satisfy its clock — patch, live patch, or documented compensating controls — and on this entry only the third exists, which is what makes it worth attaching rather than routine. patch_available is false and live_patch_available is false, so the deliverable inside the window that opened with the 2024-12-18 KEV listing is a written, per-unit compensating-control statement, and specifically not a \"pending vendor firmware\" note, because the packet records no firmware to wait for. The compensating control the packet's own NIS2 and CAF gaps name is isolation: each camera's administrative interface — the notification-configuration surface that carries TestEmail — answers only from the segment that operates it, and from no path reachable outside that segment. State the precondition plainly, because it is the whole reason this is a holding measure and not a fix: exploitation requires an authenticated admin session against that feature, so isolation bounds who can reach the sink but removes nothing for any host already inside the permitted segment or for anyone holding the admin credential. A camera that must stay reachable from a general client network has no segment that removes the path at all — only isolation of that network from anything that matters — and those units belong at the front of the replacement schedule rather than in the compensating-control column.",
41505
+ "evidence": "Packet facts only: cisa_kev true with kev_date 2024-12-18 and active_exploitation confirmed; patch_available false, live_patch_available false, live_patch_notes null; poc_available true. The vector and attack_vector state that an authenticated admin submits shell metacharacters in the addr1 field of the TestEmail notification-test feature and the device executes them as an OS command running as root. The NIS2-Art21-vulnerability-management gap states EU operators with these models deployed have no confirmed patch path and that Art. 21 requires network isolation or device replacement as the compensating control; the UK-CAF-B4 gap likewise names network segmentation or device replacement as the only remaining control; the NIST-800-53-SI-2 gap states flaw remediation cannot be satisfied where no patch exists. No claim is made about internet exposure, port forwarding, or a default credential, none of which this packet establishes.",
41506
+ "gap_closes": [
41507
+ "NIST-800-53-SI-2",
41508
+ "NIS2-Art21-vulnerability-management",
41509
+ "AU-Essential-8-Patch"
41510
+ ]
41511
+ },
41512
+ {
41513
+ "id": "NEW-CTRL-038",
41514
+ "name": "MITIGATION-ACTIVE-PATCH-PENDING-VERDICT-CLASS",
41515
+ "description": "The three verdict states this control requires are where the frameworks cited on this entry actually break. State (a) — binary patch deployed — is unreachable here, because patch_available is false and no vendor fix is recorded for all affected models, so every unit sits in either the compensating-control state or full exposure. A patch-compliance report that renders \"no patch available\" as not-applicable, suppressed, or an accepted exception therefore marks a root-exploitable KEV-listed camera as compliant, which is exactly what the SI-2 gap means by remediation being unsatisfiable and the Essential Eight gap means by the maturity level being unreachable for this device line. Bound to these cameras, the requirement is that each unit carries an explicit verdict of \"isolation active, no vendor fix exists\" with a dated replacement action attached, distinguishable in the report from units where nothing has been done. The softer verdicts are wrong here for a product-specific reason the packet supplies: the device's notification-configuration surface passes its input to a root OS command by design defect, so no configuration change and no account-privilege change converts a unit into a remediated one. Distinguishing test: pull the fleet's patch-compliance report and confirm the affected models appear as an open, dated compensating-control item — an estate whose report shows them as not-applicable, or as awaiting vendor firmware, has recorded the exposure rather than tracked it.",
41516
+ "evidence": "Packet facts only: patch_available false and live_patch_available false, so no binary-patch state exists for this entry; cisa_kev true with kev_date 2024-12-18, active_exploitation confirmed, poc_available true. The NIST-800-53-SI-2 gap states flaw remediation cannot be satisfied where no patch exists; the AU-Essential-8-Patch gap states Essential 8's patch-application maturity level is unreachable for this device line with no confirmed fix and possible EoL/EoS status. The NIST-800-53-AC-6 gap states the TestEmail feature trusts authenticated admin input without sanitizing it so least-privilege on the admin account does not prevent the injection, and the ISO-27001-2022-A.8.9 gap states secure configuration management for notification-testing functionality never validated input — the basis for the statement that no configuration or account state remediates a unit. Those two gaps inform the reasoning but are not claimed as closed.",
41517
+ "gap_closes": [
41518
+ "NIST-800-53-SI-2",
41519
+ "AU-Essential-8-Patch"
41520
+ ]
41521
+ }
41522
+ ]
41406
41523
  },
41407
41524
  "CVE-2018-14933": {
41408
41525
  "name": "NUUO NVRmini Devices OS Command Injection Vulnerability",
@@ -41439,7 +41556,39 @@
41439
41556
  "adequate": false,
41440
41557
  "gap": "NUUO has declared the NVRmini line end-of-life with no fix; flaw-remediation SLAs cannot be met where no vendor patch exists, so the required action is decommissioning rather than patching."
41441
41558
  }
41442
- }
41559
+ },
41560
+ "new_control_requirements": [
41561
+ {
41562
+ "id": "NEW-CTRL-122",
41563
+ "name": "EOL-ASSET-DECOMMISSION",
41564
+ "description": "patch_available is false, and the packet states why: NUUO has declared the NVRmini line end-of-life with no fix, and the packet records CISA's required action as decommissioning rather than patching. There is no fixed firmware to reach and no live-patch path, so for this CVE the control has only its terminal half — every NUUO NVRmini network video recorder in service is a replacement item on a dated schedule, and the compliance record for this entry closes on removal, not on a firmware level. Two things follow. First, the inventory has to be built by the method that will actually find these units: the packet's own monitoring gap notes that security-monitoring outcomes seldom cover end-of-life NVR appliances, which is the same reason they are missing from asset registers, so sweep for the recorder's web management surface from the network as well as reading the register, and cover the branch, retail and facilities sites where a surveillance system was commissioned outside IT. Second, scope to what the packet names: it ties the CWE-78 sink to upgrade_handle.php on NUUO NVRmini devices and gives no mapping into other NUUO products or into other vendors' recorders, so treating every NVR in the estate as an instance of this CVE manufactures findings and replacement work against hardware no evidence implicates. Precondition on the interval before each unit is physically removed: unauthenticated network reachability is the entire exploit precondition, so isolating the device is the only holding measure — it is a holding measure and not the closure, and a risk acceptance with no removal date leaves a CVSS 9.8 unauthenticated command-execution path with a public PoC and confirmed exploitation in service indefinitely. And because exploitation is confirmed and the attacker runs commands on the recorder itself, a unit that was reachable during the exposure window is presumed compromised: it is removed rather than re-homed onto a quieter segment, and credentials it held or that transited it are rotated.",
41565
+ "evidence": "Packet: patch_available false, live_patch_available false, live_patch_notes null. NIST-800-53-SI-2 gap: 'NUUO has declared the NVRmini line end-of-life with no fix; flaw-remediation SLAs cannot be met where no vendor patch exists, so the required action is decommissioning rather than patching.' ISO-27001-2022-A.8.8 gap: 'Technical vulnerability management assumes a remediation path exists; for this EoL device it does not, so the control's compliance model must shift to asset retirement.' AU-Essential-8-Patch gap: 'Patch-application maturity is unreachable for an EoL device with no vendor fix; the compensating control is decommissioning per CISA's required action.' UK-CAF-C1 gap: 'Security-monitoring outcomes seldom cover EoL NVR appliances'. vector: 'upgrade_handle.php on NUUO NVRmini devices allows Remote Command Execution via shell metacharacters in the uploaddir parameter for a writeuploaddir command.' CWE-78; CVSS 9.8; RWEP 79; poc_available true; cisa_kev true with kev_date 2024-12-18; active_exploitation confirmed, with active_exploitation_notes citing 'continued exploitation of end-of-life devices still deployed in the field'.",
41566
+ "gap_closes": [
41567
+ "NIST-800-53-SI-2",
41568
+ "ISO-27001-2022-A.8.8",
41569
+ "AU-Essential-8-Patch"
41570
+ ]
41571
+ },
41572
+ {
41573
+ "id": "NEW-CTRL-054",
41574
+ "name": "BACKUP-TIER-NETWORK-ISOLATION",
41575
+ "description": "A NUUO NVRmini is the recording and retention tier of a surveillance installation — the box that holds the footage — and the packet's exploit path reaches it with no credential and no user interaction: an unauthenticated request to upgrade_handle.php invoking the writeuploaddir command with shell metacharacters in the uploaddir parameter, ending in OS command execution on the recorder. With patch_available false and the product line end-of-life, reachability is not one lever among several; until the unit is removed it is the only one the operator holds, and it is the operator-side form of the least-functionality requirement this entry records as missing, since the vendor will not be authenticating or removing that endpoint. Applied to this device it means the NVRmini's web management surface answers only from a segmented surveillance or operations subnet, or from an authenticated VPN — not from a general user VLAN, and not from the internet through the router port-forward or UPnP mapping that a remote-viewing requirement typically creates on a small-site recorder, which is how this class of appliance acquires internet exposure in the first place. Constrain the outbound path as well: the packet's monitoring gap records botnet enlistment of the recorder following compromise, so a rooted NVRmini reaching arbitrary destinations is the documented outcome rather than a hypothetical one. The distinguishing test: from a general user VLAN and from an external address, request upgrade_handle.php on the unit — anything that answers is within reach of the published exploit, and 'the recorder is on the internal network' is an assertion about topology, not a demonstration that the surface is unreachable from untrusted segments. Two preconditions must be stated rather than assumed. Isolation bounds who can send the request; it does not repair the missing authentication on the endpoint, so any host inside the permitted segment — a compromised workstation, a jump host, the camera VLAN itself — still reaches an unauthenticated command-execution path. And it does nothing for a unit already compromised during the exposure window, which belongs on the incident path. This is a holding measure for the interval before removal, never a closure.",
41576
+ "evidence": "Packet attack_vector: 'An unauthenticated attacker sends a crafted request to upgrade_handle.php invoking the writeuploaddir command with shell metacharacters embedded in the uploaddir parameter, resulting in direct OS command execution on the NVR.' NIST-800-53-CM-7 gap: 'An unauthenticated remote-command-execution path in the firmware-upgrade handler should never have been network-reachable; least-functionality review would have caught missing authentication on this endpoint.' NIS2-Art21-vulnerability-management gap: 'EU operators with NVRmini devices still deployed have no patch path; Art. 21 requires network isolation or replacement as the compensating control for unremediable flaws.' UK-CAF-C1 gap names 'subsequent botnet enlistment of the camera recorder'. patch_available false, live_patch_available false; CWE-78; CVSS 9.8; poc_available true; active_exploitation confirmed; kev_date 2024-12-18.",
41577
+ "gap_closes": [
41578
+ "NIST-800-53-CM-7",
41579
+ "NIS2-Art21-vulnerability-management"
41580
+ ]
41581
+ },
41582
+ {
41583
+ "id": "NEW-CTRL-031",
41584
+ "name": "FIREWALL-EGRESS-TELEMETRY-SEPARATE-TRUST-ZONE",
41585
+ "description": "On this entry the control's premise applies in its strongest form: the NVRmini cannot be its own log source at all. The packet's flaw hands an unauthenticated remote caller OS command execution on the recorder, so anything the device reports about itself is attacker-controlled, there is no vendor fix coming that would change that, and an end-of-life appliance carries no endpoint agent — which is precisely why the entry's monitoring gap records that compromise and the botnet enlistment that follows proceed unobserved. The separate-trust-zone collector therefore has to be fed by the network boundary in front of the recorder rather than by the recorder itself, and held where the compromised device cannot reach or alter it. Key the detection on the two behaviours the packet documents, not on a proxy for them. The first is the exploit request as it crosses the boundary: unauthenticated HTTP requests to upgrade_handle.php carrying the writeuploaddir command with shell metacharacters in the uploaddir parameter — this is a device whose management surface should see a small, predictable set of callers, so requests to that path from anything but an operator host are the signal, and a single successful request is the whole exploit. The second is what the packet says happens after: outbound connections from the recorder to destinations outside the small set it normally speaks to, which is the botnet enlistment named in the monitoring gap. Ask what an exploit doing exactly what the packet describes would emit — one crafted HTTP request in, then new outbound sessions — and note what will not see it: the recorder's own logs, signature-based endpoint tooling that has nothing to run on, and any rule keyed on a process crash or on named exploit tooling, since the request is served by the device's normal web handler and nothing crashes. Precondition: this requires boundary telemetry already being collected and shipped off-device before the attempt, and on the branch and facilities segments where these recorders sit that is exactly where it is least often enabled; a rule written afterwards against telemetry nobody was collecting produces nothing. Detection also prevents nothing here — with no patch available it bounds the window to alert-and-response time on a device whose only closure is removal.",
41586
+ "evidence": "Packet UK-CAF-C1 gap: 'Security-monitoring outcomes seldom cover EoL NVR appliances, so unauthenticated command-injection compromise and subsequent botnet enlistment of the camera recorder proceed unobserved with no vendor fix to close the endpoint.' vector: 'upgrade_handle.php on NUUO NVRmini devices allows Remote Command Execution via shell metacharacters in the uploaddir parameter for a writeuploaddir command.' attack_vector: 'An unauthenticated attacker sends a crafted request to upgrade_handle.php... resulting in direct OS command execution on the NVR.' patch_available false, live_patch_available false, live_patch_notes null; active_exploitation confirmed with active_exploitation_notes recording 'continued exploitation of end-of-life devices still deployed in the field'; poc_available true; kev_date 2024-12-18.",
41587
+ "gap_closes": [
41588
+ "UK-CAF-C1"
41589
+ ]
41590
+ }
41591
+ ]
41443
41592
  },
41444
41593
  "CVE-2024-55956": {
41445
41594
  "name": "Cleo Multiple Products Unauthenticated File Upload Vulnerability",
@@ -41818,7 +41967,40 @@
41818
41967
  "adequate": false,
41819
41968
  "gap": "Vulnerability handling did not anticipate that authentication middleware scoped only to POST requests was trivially bypassable via GET."
41820
41969
  }
41821
- }
41970
+ },
41971
+ "new_control_requirements": [
41972
+ {
41973
+ "id": "NEW-CTRL-129",
41974
+ "name": "ENTERPRISE-ERP-MANAGEMENT-FUNCTION-AUTHENTICATION",
41975
+ "description": "CyberPanel's secMiddleware is where the panel makes its authentication decision, and this CVE is that layer failing open along a dimension nobody tested: the middleware enforces only on POST, so a GET to /dns/getresetstatus or /ftp/getresetstatus reaches getresetstatus in dns/views.py and ftp/views.py with no authentication at all, and the statusfile property is then carried unsanitized into a shell command. Bound to this product the control means each management function in the panel authorizes its own caller before the view body runs, rather than inheriting a verdict from the middleware fronting it, and that the authorization decision is independent of HTTP verb — a middleware that dispatches on request method is a middleware with an unauthenticated path by construction. The second half is reachability: the packet records roughly 22,000 internet-facing instances compromised, so a panel administrative surface that answers from the open internet is the precondition the campaign relied on. The least-privilege framing the entry's access-enforcement gap is scored against never applies on this path, because the attacker holds no CyberPanel account at any privilege — per-account scoping is never consulted, so the account model an access-control attestation examines is bypassed rather than abused. Distinguishing test on a staging CyberPanel: issue unauthenticated requests to each reset-status endpoint using every HTTP verb the framework will route, not only the one the application documents, and confirm each is refused before the view function executes — an attestation that every panel administrator authenticates at login passes cleanly while the GET path stays wide open.",
41976
+ "evidence": "The packet's vector and affected fields state that getresetstatus in dns/views.py and ftp/views.py allows remote attackers to bypass authentication and execute arbitrary commands via /dns/getresetstatus or /ftp/getresetstatus by bypassing secMiddleware (which is only for a POST request) and using shell metacharacters in the statusfile property. attack_vector confirms the sequence: GET instead of POST to bypass the middleware, then shell metacharacters in statusfile. active_exploitation_notes records mass exploitation within days of disclosure by the PSAUX ransomware campaign in October 2024, compromising roughly 22,000 internet-facing CyberPanel instances. cvss 10, rwep_score 70, poc_available true, cisa_kev true (2024-12-04). The cited NIST-800-53-AC-3 gap states access enforcement was implemented only for POST requests; the ISO-27001-2022-A.8.28 gap states secure coding should have caught middleware guarding only POST; the AU-Essential-8-Patch gap states the patch control alone does not address the underlying authentication-middleware design flaw; the UK-CAF-B4 gap states this class of flaw remained internet-exposed at scale.",
41977
+ "gap_closes": [
41978
+ "NIST-800-53-AC-3",
41979
+ "ISO-27001-2022-A.8.28",
41980
+ "AU-Essential-8-Patch",
41981
+ "UK-CAF-B4"
41982
+ ]
41983
+ },
41984
+ {
41985
+ "id": "NEW-CTRL-032",
41986
+ "name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
41987
+ "description": "CyberPanel is the management plane for every site and service the host serves, reached over the internet, and the packet's exploitation record is not a handful of intrusions — roughly 22,000 internet-facing instances were compromised within days of disclosure by the PSAUX ransomware campaign in October 2024 through an unauthenticated OS-command-execution path. For any instance that was internet-reachable while running an affected build (through 2.3.6, or 2.3.7 before the fix), the requirement is that moving to the build carrying commit 1c0c6cb is treated as closing the entry path only: the panel host is rebuilt from a known-good baseline, and every credential it held or that transited it — panel administrator, hosted-site, DNS and FTP account material — is rotated. Arbitrary OS command execution through the reset-status endpoint leaves whatever the attacker wrote in place, and updating the code removes none of it, which is why the flaw-remediation control this entry cites can be satisfied on paper by an instance that is still under attacker control. Precondition, stated so this is not applied indiscriminately: the rebuild path is for instances that were reachable while unpatched during the exposure window; an install that was never exposed is a straight update, and an operator who cannot establish which it was should treat it as the former, because the packet's mass-scanning-scale campaign gives no basis for assuming a reachable panel went untouched.",
41988
+ "evidence": "active_exploitation_notes: mass-exploited within days of disclosure by the PSAUX ransomware campaign in October 2024, compromising roughly 22,000 internet-facing CyberPanel instances by chaining the HTTP-verb auth bypass with shell metacharacter injection. active_exploitation is confirmed and poc_available is true. The vector states the flaw allows remote attackers to bypass authentication and execute arbitrary commands, and gives the affected population as versions through 2.3.6 and unpatched 2.3.7, fixed at commit 1c0c6cb. The cited NIST-800-53-SI-2 gap states patch-SLA cadence did not prevent the 22,000-instance mass-exploitation event; the UK-CAF-B4 gap states system-security lifecycle management allowed a hosting control panel with this class of flaw to remain internet-exposed at scale. The packet records no live-patch path (live_patch_available false, live_patch_notes null) and no vendor-named interim mitigation.",
41989
+ "gap_closes": [
41990
+ "NIST-800-53-SI-2",
41991
+ "UK-CAF-B4"
41992
+ ]
41993
+ },
41994
+ {
41995
+ "id": "NEW-CTRL-001",
41996
+ "name": "CISA-KEV-RESPONSE-SLA",
41997
+ "description": "The packet's timeline is both the argument for this control and its honest limit on this entry. PSAUX mass exploitation ran in October 2024, within days of disclosure, while the KEV listing is dated 2024-12-04 — so a KEV-anchored clock had no force during the campaign itself, and the population compromised then belongs on the rebuild path rather than the patch path. What the clock governs is the long tail: instances still running an affected build (through 2.3.6, or 2.3.7 unpatched) after the listing, which for a hosting control panel installed per-server, often by a reseller or an end customer and rarely under any central software-management console, is the larger population and the one no enterprise patch cadence is even aware of. The requirement is therefore an enumeration before a clock: identify every CyberPanel install the organization operates or hosts, including those on customer-controlled servers, and move each to the build carrying commit 1c0c6cb on the KEV clock rather than a routine application-patch cycle, with completion measured by the build each install actually runs. The packet records no live-patch mechanism and names no vendor interim mitigation, so the only holding measure while that enumeration runs is restricting which networks can reach the panel's HTTP surface — and that lever is unavailable wherever the panel must answer from the internet to do its job, which describes most of the affected population.",
41998
+ "evidence": "cisa_kev true with kev_date 2024-12-04; active_exploitation_notes place the PSAUX mass-exploitation campaign in October 2024, within days of disclosure, against roughly 22,000 internet-facing instances — before the KEV listing. affected_versions: through 2.3.6, 2.3.7 unpatched at disclosure, fixed at commit 1c0c6cb. patch_available true, live_patch_available false, live_patch_notes null — the packet names no vendor interim mitigation. cvss 10, rwep_score 70, poc_available true. The cited NIST-800-53-SI-2 gap states patch-SLA cadence did not prevent a mass-exploitation event that occurred within days of public disclosure.",
41999
+ "gap_closes": [
42000
+ "NIST-800-53-SI-2"
42001
+ ]
42002
+ }
42003
+ ]
41822
42004
  },
41823
42005
  "CVE-2024-11680": {
41824
42006
  "name": "ProjectSend Improper Authentication Vulnerability",
@@ -42440,7 +42622,40 @@
42440
42622
  "adequate": false,
42441
42623
  "gap": "Boundary protection guidance directly addresses this threat: the vendor's own advisory states risk is greatest when the management interface is reachable from the internet or an untrusted network, which is a configuration control independent of patching."
42442
42624
  }
42443
- }
42625
+ },
42626
+ "new_control_requirements": [
42627
+ {
42628
+ "id": "NEW-CTRL-030",
42629
+ "name": "PERIMETER-DEVICE-ZERODAY-SLA-TIER",
42630
+ "description": "A PAN-OS firewall is the trust boundary, so a root-privilege command injection in its management web interface cannot sit in the same SLA tier as ordinary application patching — the tier requirement here is the vendor hotfix deployed on the clock that opened with the 2024-11-18 KEV listing, or isolation of the management interface until it is, and not the standard 14/30-day cycle. Scope the sweep from the packet's affected field rather than the word firewall: PA-Series, VM-Series and CN-Series firewalls, Panorama, and WildFire appliances all carry this interface, and Cloud NGFW and Prisma Access are explicitly excluded, so an estate that patches its PA-Series units while Panorama and the WildFire appliances stay behind is not remediated. Each branch has its own fixed build — 10.1.14-h6, 10.2.12-h2, 11.0.6-h1, 11.1.5-h1, 11.2.4-h1 — so the completion record is the running build per unit against the fixed build for that unit's branch, not a count of units with a hotfix downloaded. The packet records patch_required_reboot true with no live-patch path, so a unit that has loaded the image but has not rebooted onto it is still executing the vulnerable code and counts as exposed; on a production firewall that reboot is the step most likely to be deferred into a maintenance window, and a deferral recorded as patched is the specific way this remediation goes wrong.",
42631
+ "evidence": "KEV-listed 2024-11-18 with active_exploitation confirmed, poc_available true, RWEP 82, CVSS 7.2. active_exploitation_notes record exploitation in the wild chained with CVE-2024-0012 (PAN-OS management-interface authentication bypass) for unauthenticated root-level command execution on internet-exposed firewalls, a CISA KEV known-ransomware-actor flag, and Palo Alto Networks/Unit 42 confirming mass exploitation against devices with an internet-facing management interface. affected names PA-Series, VM-Series, CN-Series firewalls, Panorama and WildFire appliances, with Cloud NGFW and Prisma Access not affected; affected_versions give PAN-OS 10.1 prior to 10.1.14-h6, 10.2 prior to 10.2.12-h2, 11.0 prior to 11.0.6-h1, 11.1 prior to 11.1.5-h1, 11.2 prior to 11.2.4-h1. patch_available true, patch_required_reboot true, live_patch_available false, live_patch_notes null. The NIST-800-53-SI-2 gap records that hotfixes shipped across all supported branches but mass exploitation began before many organizations completed emergency patching; the AU-Essential-8-Patch gap records attackers scanning and exploiting exposed management interfaces within days of disclosure against a 48-hour bar; the UK-CAF-B4 gap records patch timelines for critical perimeter infrastructure tested by the compressed window between advisory publication and confirmed mass exploitation.",
42632
+ "gap_closes": [
42633
+ "AU-Essential-8-Patch",
42634
+ "NIST-800-53-SI-2",
42635
+ "UK-CAF-B4"
42636
+ ]
42637
+ },
42638
+ {
42639
+ "id": "NEW-CTRL-036",
42640
+ "name": "FLEET-CONTROL-PLANE-ADMIN-PRIVILEGE-TIER",
42641
+ "description": "Panorama administers the firewall estate and each PAN-OS unit's management web interface administers the traffic policy, so this is a control plane whose administrative surface must be treated as its own tier rather than folded into general admin — reached only from a dedicated management network through a jumphost or privileged workstation, never answering from the internet or a general user segment, and enumerated as such for PA-Series, VM-Series and CN-Series firewalls, Panorama, and the WildFire appliances the packet names. The reachability half of the tier is the load-bearing half for this CVE, and the precondition has to be said plainly: the packet's own attack_vector has the injection chained with CVE-2024-0012, an authentication bypass on the same interface, so the attacker never presents a credential and the tier's credential-strength elements — step-up authentication, just-in-time elevation, separate admin identity — give nothing against the observed campaign. Only the restriction on who can reach the interface bounds it, and it bounds rather than closes: any host inside the permitted management segment still reaches the injection path, so a compromised jump host satisfies the precondition in full. Distinguishing test: from a general user VLAN and from an external address, attempt to load the PAN-OS management web interface on each unit and confirm nothing answers — an audit confirming every firewall administrator holds a unique, MFA-backed account passes cleanly while the interface stays reachable from an untrusted network.",
42642
+ "evidence": "The packet's affected field states that a PAN-OS administrator — or an attacker who first bypasses authentication via CVE-2024-0012 — can perform OS command injection executed with root privileges on the management web interface, and the attack_vector states that in the observed mass-exploitation campaign an unauthenticated attacker with network access to an internet-exposed management interface could achieve root command execution directly. The NIST-800-53-SC-7 gap records the vendor's own advisory stating risk is greatest when the management interface is reachable from the internet or an untrusted network, which is a configuration control independent of patching; the ISO-27001-2022-A.8.22 gap records that segregation of networks is the controlling measure and that the ransomware campaigns targeted exactly the instances where the interface was internet-exposed rather than confined to an isolated management network; the NIS2-Art21-network-security gap records internet-exposed management interfaces on perimeter firewalls as precisely the covered scenario, with the KEV ransomware flag underscoring criticality for regulated sectors.",
42643
+ "gap_closes": [
42644
+ "NIST-800-53-SC-7",
42645
+ "ISO-27001-2022-A.8.22",
42646
+ "NIS2-Art21-network-security"
42647
+ ]
42648
+ },
42649
+ {
42650
+ "id": "NEW-CTRL-032",
42651
+ "name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
42652
+ "description": "For any PAN-OS unit whose management web interface was reachable from the internet or another untrusted network during the exposure window, reaching 10.1.14-h6 / 10.2.12-h2 / 11.0.6-h1 / 11.1.5-h1 / 11.2.4-h1 is not the remediation record — the packet describes mass exploitation of exactly that population and a chained path ending in root command execution on the device, and a hotfix plus reboot removes the injection path without removing anything root already did. The default for those units is therefore configuration export for forensic comparison, rebuild onto the fixed build from a known-good image, rotation of every administrative credential and key material the device held, and a review of the running security policy and configuration against a known-good copy, since the vector is explicit that actions are performed with root privileges and policy modification is within reach. This is what the flaw-remediation control does not carry: its verdict is satisfied by a version number, so a firewall that was rooted before the emergency patch landed is marked remediated while the attacker's residue survives the upgrade. Precondition on scope: this applies to units whose management interface was reachable from an untrusted network during the window, which is the population the packet's campaign describes; a unit whose management interface has only ever answered on an isolated management network is a patch-and-reboot item, and treating the whole estate as compromised manufactures rebuild work the evidence does not support.",
42653
+ "evidence": "active_exploitation_notes record active exploitation in the wild chained with CVE-2024-0012 for unauthenticated root-level command execution on internet-exposed firewalls, a CISA KEV known-ransomware-actor flag, and Palo Alto Networks/Unit 42 confirming mass exploitation against devices with an internet-facing management interface; KEV listing 2024-11-18, poc_available true, RWEP 82. The vector states that the vulnerability allows a PAN-OS administrator with access to the management web interface to perform actions on the firewall with root privileges. The NIST-800-53-SI-2 gap records that hotfixes shipped across all supported PAN-OS branches but mass exploitation began before many organizations completed emergency patching of internet-facing firewalls — that is, devices were reached before the patch, which is the condition under which a version-based remediation verdict is wrong. patch_required_reboot is true, live_patch_available is false and live_patch_notes is null, so no interim vendor mitigation covered the interval.",
42654
+ "gap_closes": [
42655
+ "NIST-800-53-SI-2"
42656
+ ]
42657
+ }
42658
+ ]
42444
42659
  },
42445
42660
  "CVE-2024-1212": {
42446
42661
  "name": "Progress Kemp LoadMaster OS Command Injection Vulnerability",
@@ -42477,7 +42692,39 @@
42477
42692
  "adequate": false,
42478
42693
  "gap": "Boundary protection didn't stop exploitation because the LoadMaster management interface was reachable from untrusted networks; restricting management-plane access was vendor guidance, not an enforced default."
42479
42694
  }
42480
- }
42695
+ },
42696
+ "new_control_requirements": [
42697
+ {
42698
+ "id": "NEW-CTRL-030",
42699
+ "name": "PERIMETER-DEVICE-ZERODAY-SLA-TIER",
42700
+ "description": "Progress Kemp LoadMaster is an application delivery controller and load balancer — the edge load-balancer class this tier names — and the packet's flaw is an unauthenticated command injection in the appliance's own management interface, so the device that terminates and steers traffic for everything behind it is what gets taken over. Applied here the tier means every LoadMaster reaches its branch's fixed build on the KEV clock that opened 2024-11-18 rather than on an appliance-maintenance cadence, and where that cannot be met, the management interface is isolated until it can. Completion has to be counted per unit against its own branch: the packet's affected range starts after 7.2.48.1 with fixes at 7.2.48.10, 7.2.54.8 and 7.2.59.2, so the target build depends on which branch the unit is on, and the range explicitly includes LoadMaster Multi-Tenant (MT) VFNs — an estate that updates its standalone appliances while the MT virtual functions stay on a pre-fix build has not finished and will report clean on a sweep scoped to appliances. The packet records patch_required_reboot true with no live-patch path, so a unit that has taken the firmware but has not rebooted onto it is still executing the vulnerable code and counts as exposed. Precondition that has to be stated plainly: the KEV clock opened 2024-11-18 but the packet dates in-the-wild exploitation to at least April 2024, so meeting the tier bounds future exposure and is not evidence the unit was never reached — a LoadMaster that was reachable across that window needs forensic triage and rotation of the default 'bal' administrative credential rather than closure on the patch record.",
42701
+ "evidence": "The packet records cisa_kev true with kev_date 2024-11-18, active_exploitation confirmed and exploited in the wild since at least April 2024, poc_available true, CVSS 10 with rwep_score 77, patch_available true, patch_required_reboot true, live_patch_available false and live_patch_notes null. affected identifies the product as a Progress Kemp LoadMaster application delivery controller/load balancer with unauthenticated command injection via the management web interface, affecting all LoadMaster releases after 7.2.48.1 including Multi-Tenant (MT) VFNs; affected_versions lists releases after 7.2.48.1 and before 7.2.48.10, before 7.2.54.8, before 7.2.59.2, and LoadMaster Multi-Tenant (MT) VFNs. The active-exploitation note records post-exploitation escalation from the default 'bal' admin account to root by abusing sudo entries. The cited flaw-remediation gap states the standard SLA is far slower than the roughly seven-month gap between silent April 2024 exploitation and the November 2024 KEV due date.",
42702
+ "gap_closes": [
42703
+ "NIST-800-53-SI-2",
42704
+ "AU-Essential-8-Patch"
42705
+ ]
42706
+ },
42707
+ {
42708
+ "id": "NEW-CTRL-134",
42709
+ "name": "DEVICE-MANAGEMENT-GATEWAY-CONFIG-ENDPOINT-AUTH-INPUT-NEUTRALIZATION",
42710
+ "description": "The defect sits on LoadMaster's management web interface: the packet has an unauthenticated remote attacker reaching that interface and executing arbitrary system commands, so the endpoint's own authorization decision and its handling of caller-supplied content are the only things standing between an untrusted caller and command execution on the appliance. Bound to this product the control means the management interface authorizes its caller before request content reaches any command construction, and neutralizes that content rather than passing it into a shell; and that no LoadMaster instance — standalone appliance or MT VFN — is left with its management interface reachable from a segment with no operational need to reach it, in particular from the internet or a general user VLAN. This is also why the least-privilege reading of the appliance's account model does not help: the attacker holds no LoadMaster operator account at the point of injection, so per-account scoping is never consulted. Distinguishing test: from a segment with no load-balancer administration role, send an unauthenticated request carrying shell metacharacters to the management interface of a staging LoadMaster and confirm it is refused before any command runs. Preconditions: the endpoint-side authorization and input neutralization are properties the vendor firmware establishes — this control states what to verify, it does not implement it. Until that firmware and its reboot land, restricting which segments can reach the management interface bounds who can send the request but leaves the injection fully reachable from anything inside the permitted segment, and it gives nothing on a deployment where the interface must stay reachable for normal administration.",
42711
+ "evidence": "The packet's vector states that unauthenticated remote attackers can access the system through the LoadMaster management interface, enabling arbitrary system command execution, with cwe_refs CWE-78. The attack_vector describes an unauthenticated crafted request to the management web interface injecting OS commands that execute in the context of the web service, followed by a sudo-abuse step escalating from the default admin account to root. The cited boundary-protection gap records that the management interface was reachable from untrusted networks and that restricting management-plane access was vendor guidance rather than an enforced default; the NIS2 network-security gap records EU operators lacking the management-plane segmentation CISA's mitigation calls for; the UK CAF gap records secure-configuration guidance as insufficient to prevent an unauthenticated command injection in a security-critical appliance's admin interface.",
42712
+ "gap_closes": [
42713
+ "NIST-800-53-SC-7",
42714
+ "NIS2-Art21-network-security",
42715
+ "UK-CAF-B4"
42716
+ ]
42717
+ },
42718
+ {
42719
+ "id": "NEW-CTRL-031",
42720
+ "name": "FIREWALL-EGRESS-TELEMETRY-SEPARATE-TRUST-ZONE",
42721
+ "description": "The packet's post-exploitation step is what makes this control load-bearing on a LoadMaster: the attacker escalates from the default 'bal' administrative account to root by abusing sudo entries, and root on the appliance owns whatever record the appliance was keeping of how it was reached. The requirement here is that LoadMaster's syslog, administrative-access and authentication events leave the unit in real time to a collector in a separate trust zone — different management plane, different credentials, different authentication path — instead of being retained on the appliance the attacker roots. What that collector has to carry is the behaviour the packet documents rather than a generic appliance feed: requests to the management web interface that are followed by command execution in the web service's context, and sudo invocations by the 'bal' account, since those two are precisely the recorded exploitation path and the recorded escalation. Preconditions: this is a detection and post-incident control, not a mitigation — it does not stop the injection, and it produces nothing unless forwarding was already configured before the attempt. It also cannot recover what a rooted unit deleted locally in a period when nothing was being forwarded, which matters here because the packet dates exploitation to at least April 2024, months before the 2024-11-18 KEV listing that prompted most operators to look at these appliances at all.",
42722
+ "evidence": "The packet's active-exploitation note records that post-exploitation attackers escalate from the default 'bal' admin account to root by abusing sudo entries, with exploitation in the wild since at least April 2024 and the KEV listing on 2024-11-18. The attack_vector records OS commands executing in the context of the web service followed by the sudo-abuse escalation to root. The cited monitoring gap states that A.8.16 monitoring of a load balancer rarely inspects management-interface command execution, so a CVSS 10 unauthenticated injection yielding full command execution on the LoadMaster runs without the logging or alerting the control nominally provides for a security-critical appliance.",
42723
+ "gap_closes": [
42724
+ "ISO-27001-2022-A.8.16"
42725
+ ]
42726
+ }
42727
+ ]
42481
42728
  },
42482
42729
  "CVE-2024-0012": {
42483
42730
  "name": "Palo Alto Networks PAN-OS Management Interface Authentication Bypass Vulnerability",
@@ -43620,7 +43867,29 @@
43620
43867
  "adequate": false,
43621
43868
  "gap": "Component-inventory and least-functionality practices didn't flag an unreviewed bundled third-party utility as an independent attack surface within SL1."
43622
43869
  }
43623
- }
43870
+ },
43871
+ "new_control_requirements": [
43872
+ {
43873
+ "id": "NEW-CTRL-021",
43874
+ "name": "TIER-3-DEPENDENCY-INVENTORY",
43875
+ "description": "The packet's own description of this flaw is the inventory gap stated as a fact: an unspecified vulnerability in an unspecified third-party component packaged with ScienceLogic SL1. The operator's asset record says 'ScienceLogic SL1, 11.2.x' and stops there, so the component that actually carried the remote code execution was never an item anyone tracked, scanned, threat-modelled or held a patch SLA against — which is exactly what the least-functionality and component-inventory control cited on this entry failed to catch. For this platform the requirement is that the inventory extends past the purchased product into what the product bundles: obtain from ScienceLogic a component manifest for each SL1 release in service, and where the vendor will not name what it packages, record the platform as a surface of unmeasured composition rather than as a satisfied inventory line, and carry that as an accepted risk with an owner instead of an invisible one. The distinguishing test is producing the artifact, not running a scan: for each SL1 release in the estate — the packet's affected lines run 10.1.x, 10.2.x, 11.1.x, 11.2.x, 11.3.x, 12.1.x, 12.2.x and 12.x — produce the list of third-party components it packages and the version of each. An estate that can produce a complete software inventory of every device SL1 monitors, which is what the platform exists to do, while unable to produce the composition of the monitoring platform itself, has inventoried everything except the asset that reads all the others. Precondition, and it is a real one: this control cannot name a component the vendor declines to name, and the advisory in this packet never does, so it produces no detection and no patch on its own. What it produces is an accurate record of an unmeasured surface and the procurement lever to change that at the next renewal; the remediation for this specific CVE remains the vendor platform update.",
43876
+ "evidence": "The packet's vector states SL1 (formerly EM7) is affected by an unspecified vulnerability involving an unspecified third-party component packaged with SL1, and the affected field describes SL1 releases bundling a vulnerable, unnamed third-party utility that allows remote code execution. affected_versions enumerate 10.1.x, 10.2.x, 11.1.x, 11.2.x, 11.3.x, 12.1.x < 12.1.3, 12.2.x < 12.2.3 and 12.x < 12.3. The cited NIST-800-53-CM-7 gap states component-inventory and least-functionality practices didn't flag an unreviewed bundled third-party utility as an independent attack surface within SL1; the cited NIS2-Art21-vulnerability-management gap states supply-chain vulnerability management for bundled third-party components within a monitored MSP platform failed to catch the exposure before exploitation. active_exploitation is confirmed and cisa_kev is true (2024-10-21).",
43877
+ "gap_closes": [
43878
+ "NIST-800-53-CM-7",
43879
+ "NIS2-Art21-vulnerability-management"
43880
+ ]
43881
+ },
43882
+ {
43883
+ "id": "NEW-CTRL-001",
43884
+ "name": "CISA-KEV-RESPONSE-SLA",
43885
+ "description": "On this entry the control's honest scope is the post-listing population, and saying so is part of applying it correctly. The packet records exploitation of ScienceLogic SL1 as a zero-day against Rackspace's MyRack portal, a hosted SL1 deployment, before any vendor fix existed — no response SLA has force in that window, which is precisely what this entry's flaw-remediation and patch-cadence gaps record. What the 2024-10-21 KEV listing establishes is that no SL1 deployment lacks a target build: the packet gives remediated releases at 12.1.3+, 12.2.3+ and 12.3+, with remediations made available back through the 10.1.x, 10.2.x, 11.1.x, 11.2.x and 11.3.x lines, so 'our appliances are on an older line' is not an available deferral. The requirement is that every SL1 appliance and collector moves to its own line's remediated release on the KEV clock rather than on the routine platform-upgrade cycle a monitoring system usually sits in, with completion measured by the release each appliance reports as running rather than by a change ticket marked approved — the packet records no live-patch path, so the platform update is the remediation and nothing bridges the interval before it lands. Two things shape priority beyond the base score. The platform is the one that watches everything else, so its own degradation reads as an operations event: in the observed case the compromise surfaced as a monitoring-graph outage rather than as a security detection. And the packet records the intrusion exposing customer account names, usernames, device details and encrypted internal credentials — so for a deployment that was exposed, the stored material it held is treated as disclosed and rotated as part of the response, because the update does not invalidate anything already read out.",
43886
+ "evidence": "cisa_kev true with kev_date 2024-10-21; active_exploitation confirmed; active_exploitation_notes record exploitation as a zero-day against Rackspace's MyRack monitoring portal (a hosted ScienceLogic SL1 deployment), disrupting monitoring-graph availability and exposing customer account names, usernames, device details, and encrypted internal credentials, and note CISA does not flag it as ransomware-associated. The vector states the vulnerability is addressed in SL1 12.1.3+, 12.2.3+ and 12.3+, with remediations made available for all SL1 versions back to the 10.1.x, 10.2.x, 11.1.x, 11.2.x and 11.3.x lines. patch_available true, live_patch_available false, live_patch_notes null. cvss 9.8, rwep_score 46, poc_available false. The cited NIST-800-53-SI-2 gap states flaw-remediation SLAs can't apply pre-disclosure because the component's vulnerability was unknown to the vendor until active zero-day exploitation was discovered; the cited AU-Essential-8-Patch gap states patch-maturity cadence is meaningless against a zero-day exploited before any vendor fix existed.",
43887
+ "gap_closes": [
43888
+ "NIST-800-53-SI-2",
43889
+ "AU-Essential-8-Patch"
43890
+ ]
43891
+ }
43892
+ ]
43624
43893
  },
43625
43894
  "CVE-2024-40711": {
43626
43895
  "name": "Veeam Backup and Replication Deserialization Vulnerability",
@@ -44646,26 +44915,60 @@
44646
44915
  "adequate": false,
44647
44916
  "gap": "NIS2 vulnerability-handling expects prompt remediation, but Ivanti CSA 4.6 was already flagged End-of-Life when the flaw was disclosed, leaving organizations with no vendor-supported patch path other than full migration."
44648
44917
  }
44649
- }
44650
- },
44651
- "CVE-2026-58644": {
44652
- "name": "Microsoft SharePoint Deserialization of Untrusted Data Vulnerability (CVE-2026-58644)",
44653
- "lesson_date": "2026-07-11",
44654
- "attack_vector": {
44655
- "description": "An unauthenticated attacker sends a crafted serialized .NET payload to an internet-facing SharePoint endpoint; unsafe deserialization triggers a gadget chain that executes attacker code as the SharePoint service account, typically followed by a web-shell drop.",
44656
- "privileges_required": "none (unauthenticated network attacker)",
44657
- "complexity": "low — network-reachable, no authentication and no user interaction required per the CVSS vector.",
44658
- "ai_factor": "Not AI-discovered — coordinated disclosure via Microsoft MSRC. No AI involvement documented."
44659
44918
  },
44660
- "defense_chain": {
44661
- "prevention": {
44662
- "what_would_have_worked": "Apply the MSRC security update immediately, enable AMSI integration for SharePoint, and restrict inbound access to the SharePoint web front-end.",
44663
- "was_this_required": true,
44664
- "framework_requiring_it": "CISA BOD 22-01 (KEV remediation, added 2026-07-16)",
44665
- "adequacy": "Patch is authoritative, but the 3-day due date means unpatched internet-facing instances are likely already compromised; assume-breach triage is needed alongside patching."
44666
- },
44667
- "detection": {
44668
- "what_would_have_worked": "Alert on w3wp.exe spawning shells, new .aspx files under the web root, and anonymous POSTs carrying serialized objects.",
44919
+ "new_control_requirements": [
44920
+ {
44921
+ "id": "NEW-CTRL-122",
44922
+ "name": "EOL-ASSET-DECOMMISSION",
44923
+ "description": "The packet supplies both facts this control turns on: a vendor fix exists — Ivanti CSA 4.6 Patch 519 — and the 4.6 branch itself is recorded as End-of-Life, with the NIS2, ISO, AU-ISM and UK-CAF gaps each stating in their own vocabulary that there is no supported remediation path beyond migration. So for this product a unit that reaches Patch 519 is fixed for this specific path traversal and holds no security-update path for anything found in that branch afterward: Patch 519 is the interim state and removal of the 4.6 appliance is the terminal one. In operational terms, inventory every Ivanti Cloud Services Appliance in service with its branch and patch level; put any unit below Patch 519 on the clock that opened with the 2024-09-19 KEV listing against CISA's 2024-10-10 due date; and put every 4.6 unit, including those that reach Patch 519, on a dated migration schedule off the branch — a risk acceptance with no removal date leaves an internet-facing appliance with a public PoC and confirmed exploitation in service indefinitely, and it is precisely what lets a patch-compliance report mark this estate clean. Scope the inventory to what the packet names: the CSA appliance, its broker web server and its PHP CGI path handling. The packet ties the URL-decoding-order defect to that appliance and gives no mapping into other Ivanti products, so sweeping the wider estate as instances of this CVE manufactures replacement work against software no evidence implicates. Precondition on the interim half: patch_required_reboot is true and no live-patch path is recorded, so a unit that has taken Patch 519 without the restart is still executing the vulnerable code and counts as exposed. And because exploitation is confirmed and the packet describes webshells and reverse-shell implants deployed through this appliance, a unit that was internet-reachable while unpatched is not made clean by either the patch or the migration on its own — its disposition is rebuild and credential rotation, not a configuration carried forward onto its replacement.",
44924
+ "evidence": "affected_versions: 'Ivanti CSA 4.6.x before Patch 519 (branch now End-of-Life)'; patch_available true, patch_required_reboot true, live_patch_available false, live_patch_notes null; cisa_kev true, kev_date 2024-09-19, active_exploitation_notes 'CISA KEV added 2024-09-19 (due 2024-10-10)'; NIS2-Art21-vulnerability-handling gap: 'Ivanti CSA 4.6 was already flagged End-of-Life when the flaw was disclosed, leaving organizations with no vendor-supported patch path other than full migration'; AU-ISM-1546 gap: control 1546 'cannot be satisfied for a product the vendor states will receive no further security updates'; ISO-27001-2022-A.8.8 gap: 'an EOL appliance falls outside normal patch-remediation SLAs, requiring a decommission/migration control instead of a patch cycle'; UK-CAF-B4 gap: 'running an EOL CSA 4.6 branch in production is itself a CAF B4 gap independent of this specific CVE'; affected: the CSA 'broker' web server and PHP CGI path-handling; poc_available true; active_exploitation_notes record webshells and reverse-shell implants deployed on internet-facing CSA appliances by suspected nation-state actors chaining CVE-2024-8190.",
44925
+ "gap_closes": [
44926
+ "NIS2-Art21-vulnerability-handling",
44927
+ "ISO-27001-2022-A.8.8",
44928
+ "AU-ISM-1546",
44929
+ "UK-CAF-B4"
44930
+ ]
44931
+ },
44932
+ {
44933
+ "id": "NEW-CTRL-032",
44934
+ "name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
44935
+ "description": "Every trigger condition this control names is present in the packet: an internet-facing appliance, a remote unauthenticated path into restricted administrative functionality, confirmed exploitation, and — the part that makes patch-in-place the wrong default — attacker persistence already established, with webshells and reverse-shell implants deployed after the traversal was chained with CVE-2024-8190 for command execution. Applied to the Ivanti CSA, that means any appliance internet-reachable while below Patch 519 defaults to configuration export for forensics, rebuild, and rotation of every credential and secret the appliance held or that transited it during the exposure window, rather than to installing Patch 519 and closing the ticket. Patch 519 repairs the inconsistent URL-decoding between the broker web server and PHP CGI; it evicts nothing an implant established through it, and neither does the restart the fix requires. Two things specific to this entry make the rebuild step sharper than usual. First, the disposition is not rebuild-onto-the-same-branch: restoring the 4.6 configuration onto a fresh 4.6 unit carries forward both the End-of-Life status and any attacker-modified configuration, so the rebuild is the moment the migration off the branch happens. Second, the packet attributes the activity to suspected nation-state actors, so implants should be assumed to be bespoke rather than expected to match a signature. Precondition: this control is a disposition rule, not a detection method — it does not tell an operator whether a given appliance was reached. Where the exposure window cannot be bounded from evidence held off the appliance, an appliance that was internet-reachable while unpatched has to be treated as compromised rather than cleared, because the artefacts that would show otherwise sit on the device the attacker controlled.",
44936
+ "evidence": "active_exploitation_notes: 'Suspected nation-state actors chained this path traversal with CVE-2024-8190 (OS command injection) to bypass authentication and execute arbitrary commands on internet-facing CSA appliances, deploying webshells and reverse-shell implants'; attack_vector: an unauthenticated attacker sends a %3F-encoded path segment against the CSA broker web server, exploiting inconsistent URL-decoding order between the broker and PHP CGI, yielding authenticated command execution and webshell deployment when chained; vector: 'Path Traversal in the Ivanti CSA before 4.6 Patch 519 allows a remote unauthenticated attacker to access restricted functionality'; cisa_kev true (2024-09-19, due 2024-10-10), active_exploitation 'confirmed', poc_available true, rwep_score 76, cvss 9.4; patch_available true with patch_required_reboot true and live_patch_available false; affected_versions record the 4.6 branch as End-of-Life; NIS2-Art21-vulnerability-handling and ISO-27001-2022-A.8.8 gaps both record that a patch cycle is not the available remediation for this appliance.",
44937
+ "gap_closes": [
44938
+ "NIS2-Art21-vulnerability-handling",
44939
+ "ISO-27001-2022-A.8.8"
44940
+ ]
44941
+ },
44942
+ {
44943
+ "id": "NEW-CTRL-030",
44944
+ "name": "PERIMETER-DEVICE-ZERODAY-SLA-TIER",
44945
+ "description": "The CSA is itself the boundary this flaw defeats, which is what the boundary-protection gap on this entry says: the control assumes the appliance correctly parses and enforces path restrictions at its network edge, and the URL-decoding-order bug smuggled traversal past that parser entirely. A defect of that shape on a device that IS the trust boundary does not belong in a severity-keyed patch timeframe — which is the second gap here, since the Australian ISM control prescribes timeframes based on severity and cannot deliver them for this product at all past Patch 519. The requirement for this appliance is a distinct tier: an unauthenticated-reachable defect on the CSA is mitigated within hours of the KEV listing rather than within a 14- or 30-day window, measured against CISA's 2024-10-10 due date on a 2024-09-19 listing, and the tier must state its own exit condition — for an End-of-Life branch that condition is migration, not a patch level. Precondition, and this is where this control is most often over-claimed: the alternative the tier normally offers — isolate the vulnerable interface — is not generally available here. The packet's exploited population is internet-facing CSA appliances, so restricting who can send the %3F-encoded request works only where the set of legitimate client addresses is enumerable and can be enforced ahead of the appliance; where the appliance must stay reachable from untrusted networks there is no segment that removes the path, and recording a reachability restriction as the mitigation while the broker web server still answers the internet leaves the flaw fully exploitable. Under those conditions the tier's only honest exit is the migration the decommission requirement describes.",
44946
+ "evidence": "NIST-800-53-SC-7 gap: 'SC-7 boundary protection assumes the appliance correctly parses and enforces path restrictions at its network edge; the URL-decoding-order bug let attackers smuggle traversal past the boundary parser entirely'; AU-ISM-1546 gap: 'ISM control 1546 (patching within timeframes based on severity) cannot be satisfied for a product the vendor states will receive no further security updates'; vector: remote unauthenticated attacker accesses restricted functionality in Ivanti CSA before 4.6 Patch 519; active_exploitation_notes: KEV added 2024-09-19 (due 2024-10-10), exploitation against internet-facing CSA appliances; affected: the CSA 'broker' web server and PHP CGI path-handling allowing unauthenticated access to restricted administrative functionality; affected_versions: CSA 4.6.x before Patch 519, branch now End-of-Life; cvss 9.4, rwep_score 76, poc_available true, patch_required_reboot true, live_patch_available false.",
44947
+ "gap_closes": [
44948
+ "NIST-800-53-SC-7",
44949
+ "AU-ISM-1546"
44950
+ ]
44951
+ }
44952
+ ]
44953
+ },
44954
+ "CVE-2026-58644": {
44955
+ "name": "Microsoft SharePoint Deserialization of Untrusted Data Vulnerability (CVE-2026-58644)",
44956
+ "lesson_date": "2026-07-11",
44957
+ "attack_vector": {
44958
+ "description": "An unauthenticated attacker sends a crafted serialized .NET payload to an internet-facing SharePoint endpoint; unsafe deserialization triggers a gadget chain that executes attacker code as the SharePoint service account, typically followed by a web-shell drop.",
44959
+ "privileges_required": "none (unauthenticated network attacker)",
44960
+ "complexity": "low — network-reachable, no authentication and no user interaction required per the CVSS vector.",
44961
+ "ai_factor": "Not AI-discovered — coordinated disclosure via Microsoft MSRC. No AI involvement documented."
44962
+ },
44963
+ "defense_chain": {
44964
+ "prevention": {
44965
+ "what_would_have_worked": "Apply the MSRC security update immediately, enable AMSI integration for SharePoint, and restrict inbound access to the SharePoint web front-end.",
44966
+ "was_this_required": true,
44967
+ "framework_requiring_it": "CISA BOD 22-01 (KEV remediation, added 2026-07-16)",
44968
+ "adequacy": "Patch is authoritative, but the 3-day due date means unpatched internet-facing instances are likely already compromised; assume-breach triage is needed alongside patching."
44969
+ },
44970
+ "detection": {
44971
+ "what_would_have_worked": "Alert on w3wp.exe spawning shells, new .aspx files under the web root, and anonymous POSTs carrying serialized objects.",
44669
44972
  "was_this_required": false,
44670
44973
  "framework_requiring_it": null,
44671
44974
  "adequacy": "Detection catches post-exploitation web shells but not the initial deserialization itself."
@@ -45126,7 +45429,39 @@
45126
45429
  "adequate": false,
45127
45430
  "gap": "The KEV due date is three days after listing; a standard flaw-remediation SLA measured in weeks leaves the internet-facing AMC exploitable well past the observed exploitation window."
45128
45431
  }
45129
- }
45432
+ },
45433
+ "new_control_requirements": [
45434
+ {
45435
+ "id": "NEW-CTRL-001",
45436
+ "name": "CISA-KEV-RESPONSE-SLA",
45437
+ "description": "The clock this appliance runs on is not the organization's patch cadence. CISA listed CVE-2026-15410 on 2026-07-14 with a three-day due date against confirmed in-the-wild abuse of SMA1000 SSL-VPN appliances, while the flaw-remediation gap on this entry records a standard SLA measured in weeks. Applied to this product, the control means every SMA1000 series unit is driven to the SNWLID-2026-0008 fixed release on the KEV clock rather than folded into the next appliance-maintenance window, with completion measured per unit by the firmware the appliance is actually running rather than by 'approved' or 'downloaded' in a management record. The packet registers no live-patch primitive and a vendor update that requires a reboot, so a unit that has staged the firmware but has not restarted onto it is still executing the vulnerable code and must be counted as exposed — on a remote-access appliance that restart is the step most likely to be deferred, because taking it drops the sessions the appliance exists to carry, and a deferral recorded as patched is the specific way this remediation goes wrong. Scope the sweep to the SMA1000 series named in the packet's affected and affected_versions fields, and widen only where a verified source identifies another product carrying the same code. Precondition: this control is a scheduling and verification requirement, not a mitigation — the packet gives the vendor update as the remediation with no live-patch path, so nothing here reduces exposure during the window before that release and its reboot land.",
45438
+ "evidence": "cisa_kev true with kev_date 2026-07-14 and active_exploitation confirmed; the packet's active_exploitation_notes record a three-day due date signalling observed in-the-wild abuse of SMA1000 SSL-VPN appliances. patch_available true, live_patch_available false, patch_required_reboot true, with live_patch_notes stating 'No live-patching primitive for this product; the vendor update requires a reboot and is the remediation.' affected_versions gives 'SMA1000 firmware prior to the SNWLID-2026-0008 fixed release'. The NIST-800-53-SI-2 gap states the KEV due date is three days after listing and a standard flaw-remediation SLA measured in weeks leaves the internet-facing AMC exploitable well past the observed exploitation window; the AU-Essential-8-Patch gap states Essential Eight patch timelines for internet-facing services can lag the emergency vendor mitigation this appliance needs before the CISA due date.",
45439
+ "gap_closes": [
45440
+ "NIST-800-53-SI-2",
45441
+ "AU-Essential-8-Patch"
45442
+ ]
45443
+ },
45444
+ {
45445
+ "id": "NEW-CTRL-134",
45446
+ "name": "DEVICE-MANAGEMENT-GATEWAY-CONFIG-ENDPOINT-AUTH-INPUT-NEUTRALIZATION",
45447
+ "description": "The SMA1000 Appliance Management Console is the device-management surface this control governs, and the packet puts the defect squarely on it: the AMC accepts an administrator-supplied management field and generates and executes arbitrary OS commands from it. Bound to this appliance the requirement has two halves. First, every AMC field that feeds a system-level operation validates and neutralizes its content before the command is constructed, so management input cannot select what the appliance executes at the OS level. Second, no SMA1000 is left with its AMC answering from a segment that has no operational need to administer it — that is the network-security half, and the packet's own gap records the console exposed to reachable networks while segmentation is what keeps a post-authentication code-injection path from becoming a network foothold. Distinguishing test for this product: on a staging SMA1000, submit shell metacharacters in each AMC management field that reaches a system operation and confirm the value is rejected before anything executes; and from a general user VLAN, attempt to load the AMC and confirm it does not answer. An appliance that passes an administrator-account review while its console answers from any internal segment is still one credential away from the published path. Precondition, and this is where the control is most often over-claimed: input neutralization inside the AMC is a property the SNWLID-2026-0008 release establishes — this control states what to verify, it does not implement it. Until that release and its reboot land, restricting which segments reach the AMC bounds who can attempt the injection but leaves it fully exploitable from inside the permitted segment, and it is unavailable where the console must stay reachable for routine remote administration.",
45448
+ "evidence": "The packet's affected field: 'SonicWall SMA1000 series appliances, Appliance Management Console (AMC), where a remote authenticated administrator can inject and execute arbitrary OS commands under specific conditions.' attack_vector: an attacker holding administrator access to the SMA1000 AMC injects OS command syntax into an accepted management field, causing the appliance to execute attacker-chosen commands at the underlying OS level. cwe_refs lists CWE-94. The ISO-27001-2022-A.8.28 gap states the SMA1000 AMC generates and executes code from administrator-supplied input without command-execution guards, turning any privileged credential into arbitrary OS commands on the appliance host; the NIS2-Art21-network-security gap states exposing the SMA1000 management console to reachable networks violates the segmentation needed to keep a post-auth RCE from becoming a network foothold; the UK-CAF-B4 gap states the appliance trusts privileged input without command-execution guards. patch_available true with the fixed release named as SNWLID-2026-0008, patch_required_reboot true, live_patch_available false.",
45449
+ "gap_closes": [
45450
+ "ISO-27001-2022-A.8.28",
45451
+ "NIS2-Art21-network-security",
45452
+ "UK-CAF-B4"
45453
+ ]
45454
+ },
45455
+ {
45456
+ "id": "NEW-CTRL-036",
45457
+ "name": "FLEET-CONTROL-PLANE-ADMIN-PRIVILEGE-TIER",
45458
+ "description": "Exploitation of this flaw requires an authenticated administrator session on the SMA1000 Appliance Management Console, so that credential is the entire access precondition — and what it opens is the control plane for remote access into the estate, an appliance whose administrator can rewrite how everyone else connects. That is exactly why the least-privilege control cited as insufficient on this entry passes its attestation while the flaw stays exploitable: the privilege being abused is one the account legitimately holds, so per-account scoping is never the thing that fails. Applied to this deployment, the control means SMA1000 AMC administrators are enumerated as a control-plane tier distinct from application administrators — reachable only through a privileged-access jump host, with per-session step-up on a phishing-resistant factor, just-in-time elevation under approval, and an identity used for nothing else — so that a credential phished, reused or coerced somewhere else does not carry into the console that can execute OS commands on the appliance host. Precondition, stated plainly: this bounds who can obtain an AMC session; it does not close the injection. Anyone who does reach an administrator session still gets arbitrary OS commands on the appliance, and it offers nothing against an administrator acting maliciously or against a session already established. It is a holding measure for the window before the SNWLID-2026-0008 release and its reboot, not a substitute for them.",
45459
+ "evidence": "The packet's active_exploitation_notes state that exploitation requires an authenticated administrator session on the Appliance Management Console, and affected describes a remote authenticated administrator injecting and executing arbitrary OS commands. The NIST-800-53-AC-6 gap states least-privilege assumes admin accounts are trustworthy, but this flaw turns any compromised or coerced administrator credential into arbitrary OS command execution on the appliance host. active_exploitation is confirmed with cisa_kev true (kev_date 2026-07-14). patch_available true (fixed release SNWLID-2026-0008), patch_required_reboot true, live_patch_available false.",
45460
+ "gap_closes": [
45461
+ "NIST-800-53-AC-6"
45462
+ ]
45463
+ }
45464
+ ]
45130
45465
  },
45131
45466
  "CVE-2008-4128": {
45132
45467
  "name": "Cisco IOS Cross-Site Request Forgery Vulnerability",
@@ -45302,7 +45637,30 @@
45302
45637
  "adequate": false,
45303
45638
  "gap": "Oracle's quarterly CPU cadence plus enterprise change windows leaves ADF/WebLogic unpatched for months; the observed exploitation window is far shorter than the typical Fusion Middleware patch SLA."
45304
45639
  }
45305
- }
45640
+ },
45641
+ "new_control_requirements": [
45642
+ {
45643
+ "id": "NEW-CTRL-001",
45644
+ "name": "CISA-KEV-RESPONSE-SLA",
45645
+ "description": "Oracle ADF Faces is the case this control exists for, because the product's own release rhythm is the gap the entry records: the flaw-remediation gap on this entry names Oracle's quarterly critical-patch cadence plus enterprise change windows as leaving ADF and its WebLogic host unpatched for months, and the Essential Eight gap names patch timelines of up to a month, both against an unauthenticated network-reachable deserialization that the packet records as actively exploited. Bound to this product, the control means the KEV listing of 2024-09-18 opens the clock and the Fusion Middleware estate is driven to the fixed level on that clock rather than parked until the next quarterly window. The population is enumerable exactly — the packet names Oracle ADF 12.2.1.3.0 and 12.2.1.4.0 — but it is easy to under-count, because the vector notes ADF is downloaded via Oracle JDeveloper and most operators inventory the deployment as a WebLogic application rather than as ADF, so the enumeration has to be of every WebLogic domain serving an ADF or ADF Faces application, not of an ADF line item in a software register. Remediation and its precondition: the packet records patch_available true, live_patch_available false, and that the vendor update requires no reboot — no host reboot, which is not the same as the fix being live. The ADF Faces runtime is loaded into the running WebLogic managed server's JVM, so a domain whose libraries have been replaced but whose managed servers have not been restarted onto them is still serving the vulnerable deserialization path; completion is measured on what the running managed server is executing, and on an internet-facing production domain that restart is precisely the step a change window defers.",
45646
+ "evidence": "CISA KEV added 2024-09-18; active_exploitation confirmed; active_exploitation_notes: 'Added to CISA KEV 2024-09-18 as an actively-exploited unauthenticated RCE in Oracle ADF Faces (Fusion Middleware / WebLogic-hosted)... internet-facing WebLogic estates are routinely swept for this by opportunistic and access-broker actors.' CVSS 9.8, RWEP 72, poc_available true. affected_versions: 12.2.1.3.0 and 12.2.1.4.0; the vector states 'Oracle Application Development Framework (ADF) is downloaded via Oracle JDeveloper Product' and that successful attack results in 'takeover of Oracle Application Development Framework (ADF)'. patch_available true, live_patch_available false, patch_required_reboot false, live_patch_notes: 'No live-patching primitive for this product; the vendor update (no reboot required) is the remediation.' The NIST-800-53-SI-2 gap records the quarterly CPU cadence and change windows leaving ADF/WebLogic unpatched for months; the AU-Essential-8-Patch gap records maturity timelines of up to a month exceeding the active-exploitation window; the ISO-27001-2022-A.8.8 gap records that treating Fusion Middleware as a slow-moving app tier misses that this unauthenticated 9.8 deserialization RCE requires KEV-speed emergency patching.",
45647
+ "gap_closes": [
45648
+ "NIST-800-53-SI-2",
45649
+ "AU-Essential-8-Patch",
45650
+ "ISO-27001-2022-A.8.8"
45651
+ ]
45652
+ },
45653
+ {
45654
+ "id": "NEW-CTRL-038",
45655
+ "name": "MITIGATION-ACTIVE-PATCH-PENDING-VERDICT-CLASS",
45656
+ "description": "This entry's NIS2 gap names the interim measure directly — deserialization-gadget filtering at the web tier while an internet-facing WebLogic estate waits on the patch — and the requirement here is that such filtering be recorded as its own verdict state, mitigation active with no binary patch, carrying a dated action item, and never rolled up as patched-per-SLA on the vulnerability register. That distinction is load-bearing for this specific flaw rather than a bookkeeping preference. The malicious request is an ordinary unauthenticated HTTP request to an ADF Faces resource-loader endpoint carrying a serialized Java object, which the packet identifies as a LambdaIdentity gadget, so the filter is matching a gadget shape inside traffic that is otherwise well-formed and expected — it is a signature on one known chain, not a repair of the deserialization sink. Preconditions, all of which the register entry has to carry alongside the mitigation: the filter only inspects request paths that traverse it, so a caller that reaches a managed server directly, an administrative or secondary listener, or any virtual host not fronted by the proxy is unfiltered and fully exploitable; a filter tuned to the named gadget does not cover a different chain into the same unauthenticated sink, which is why residual risk stays open until the fixed level is running; and because the packet records a public proof-of-concept and confirmed exploitation from the 2024-09-18 KEV listing, a filter deployed now bounds new attempts but removes nothing an earlier successful exploitation left behind, so a domain that was internet-facing and unpatched through the exposure window belongs on the incident path rather than being closed on the mitigation record.",
45657
+ "evidence": "The NIS2-Art21-vulnerability-management gap on this entry: 'Baseline vuln-handling processes do not mandate the WAF deserialization-gadget filtering needed while patching a preauth Java deserialization flaw on internet-facing WebLogic.' attack_vector: 'An unauthenticated attacker sends a crafted HTTP request to an ADF Faces resource-loader endpoint carrying a serialized Java gadget (LambdaIdentity); the server deserializes it without validation, executing arbitrary commands and taking over the WebLogic-hosted application.' poc_available true; active_exploitation confirmed; CISA KEV 2024-09-18; CVSS 9.8. patch_available true with live_patch_available false, so no vendor live-patch stands between the mitigation state and the fixed build. The ISO-27001-2022-A.8.8 gap records that technical-vulnerability management treating Fusion Middleware as a slow-moving app tier misses the KEV-speed requirement.",
45658
+ "gap_closes": [
45659
+ "NIS2-Art21-vulnerability-management",
45660
+ "ISO-27001-2022-A.8.8"
45661
+ ]
45662
+ }
45663
+ ]
45306
45664
  },
45307
45665
  "CVE-2020-0618": {
45308
45666
  "name": "Microsoft SQL Server Reporting Services Remote Code Execution Vulnerability",
@@ -45339,7 +45697,40 @@
45339
45697
  "adequate": false,
45340
45698
  "gap": "SSRS is often a long-lived internal BI server outside the standard OS patch cadence; a 21-day KEV due date lags the observed exploitation of exposed instances."
45341
45699
  }
45342
- }
45700
+ },
45701
+ "new_control_requirements": [
45702
+ {
45703
+ "id": "NEW-CTRL-001",
45704
+ "name": "CISA-KEV-RESPONSE-SLA",
45705
+ "description": "The shape of this entry is unusual and it changes what the SLA clock is for: the vendor fix long predates the KEV listing, so an organization finding this in 2024 is not late on a patch cycle it was running — it is holding an SSRS instance the patch cycle never reached. The clock that matters therefore starts at the 2024-09-18 KEV listing, and the first action is enumeration, not deployment. Scope it from the affected versions the packet names: SQL Server 2012 SP4, 2014 SP2/SP3 and 2016 SP2 Reporting Services, every instance across all three families. An OS-patch report is not evidence about any of them — the entry's own flaw-remediation gap records that SSRS is often a long-lived internal BI server outside the standard OS patch cadence, which is precisely how an instance survives four years below the fixed build. Order the work by exposure rather than by CVSS band: the packet records exploitation against internet-exposed instances, and the sink needs only one low-privileged authenticated account, so an instance reachable from outside or from a broad user population is the first item and not an average one. Completion is measured on the Report Server build in service. patch_required_reboot is true and the packet records no live-patching primitive for this product, with the vendor update plus a reboot being the remediation, so an instance that has installed the update and not restarted is still running the vulnerable code and must be counted as exposed rather than as patched. And the SLA item does not close on the reboot alone where the instance was reachable during the exposure window — that instance is an incident item, since code execution here runs as the Report Server service account.",
45706
+ "evidence": "Packet: Microsoft SQL Server Reporting Services mishandles page requests, deserializing attacker-controlled ViewState (CWE-502) from an authenticated user into remote code execution as the Report Server service account. affected_versions: SQL Server 2012 SP4 (SSRS), SQL Server 2014 SP2/SP3 (SSRS), SQL Server 2016 SP2 (SSRS). CISA KEV added 2024-09-18, active_exploitation confirmed, poc_available true; CVSS 8.8, RWEP 77. The packet records active exploitation against internet-exposed SSRS instances, with a low-privileged authenticated user posting a crafted __VIEWSTATE to a report page to run code as the Report Server service account. patch_available true, patch_required_reboot true, live_patch_available false, with live-patch notes recording no live-patching primitive for this product and the vendor update plus reboot as the remediation. The flaw-remediation gap records that SSRS is often a long-lived internal BI server outside the standard OS patch cadence and that the 21-day KEV due date lags observed exploitation of exposed instances; the Essential Eight gap records that application patch timelines lag near-immediate exploitation of exposed SSRS endpoints; the patch-management gap records that reporting-services patch SLAs treat BI middleware as low priority; the system-security gap records that patch governance rarely tracks SQL Server Reporting Services as an at-risk asset.",
45707
+ "gap_closes": [
45708
+ "NIST-800-53-SI-2",
45709
+ "AU-Essential-8-Patch",
45710
+ "NIS2-Art21-patch-management",
45711
+ "UK-CAF-B4"
45712
+ ]
45713
+ },
45714
+ {
45715
+ "id": "NEW-CTRL-125",
45716
+ "name": "SERVICE-INTERNAL-PROTOCOL-DESERIALIZATION-HARDENING",
45717
+ "description": "__VIEWSTATE is the service-internal protocol field this control governs on SSRS: a serialized object graph the server hands the browser and accepts back, which the report-rendering path reconstructs through LosFormatter/ObjectStateFormatter and turns into code running as the Report Server service account. Unlike the unauthenticated-broker case the control was first written against, SSRS does authenticate its caller — the packet's path needs a low-privileged authenticated user — so authentication is not the boundary that fails, and an access-review attestation showing every SSRS user is a named account passes cleanly while the path stays fully open. Two requirements bite instead. First, the report endpoints answer only from segments with an operational need to render reports, rather than inheriting safety from the assumption that a BI server is internal — the packet's boundary-protection gap records exactly the opposite state, endpoints left reachable from internal or VPN networks where a single low-privileged account is enough to reach the sink. Second, what the endpoint is permitted to reconstruct from request-supplied serialized state is constrained rather than trusted. Preconditions, and the first one is where this control gets over-claimed: an SSRS instance exists to serve report consumers, so on an instance serving a general staff population there is no segment restriction that removes the path — restriction bounds who can present the payload, and every account inside the permitted segment still reaches the sink. It bounds exposure; it does not close it. The endpoint-side property is established by the vendor update, not by this control, which states what to verify. Distinguishing test for this product: from a segment with no reporting role on a staging instance, attempt to reach a report-rendering endpoint and confirm it is refused before any authentication exchange; then, holding a deliberately low-privileged account inside the permitted segment, post a crafted __VIEWSTATE and confirm it is rejected rather than deserialized.",
45718
+ "evidence": "Packet: a low-privileged authenticated user POSTs a crafted __VIEWSTATE payload to an SSRS report-rendering page; SSRS deserializes it insecurely (LosFormatter/ObjectStateFormatter), executing attacker code as the Report Server service account. poc_available true, active_exploitation confirmed, CISA KEV added 2024-09-18; CVSS 8.8, RWEP 77. The boundary-protection gap on this entry records that boundary controls frequently leave SSRS report endpoints reachable from internal or VPN networks where a single low-privileged account is enough to reach the sink. patch_available true with patch_required_reboot true and live_patch_available false, the vendor update plus reboot being the remediation.",
45719
+ "gap_closes": [
45720
+ "NIST-800-53-SC-7"
45721
+ ]
45722
+ },
45723
+ {
45724
+ "id": "NEW-CTRL-032",
45725
+ "name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
45726
+ "description": "SSRS is BI middleware rather than a perimeter appliance, but the packet puts it internet-exposed with confirmed exploitation and a public PoC, and the outcome is code execution as the Report Server service account — which is the condition this control exists for. For an instance whose report endpoints were reachable from untrusted networks while it ran below the fixed build, neither the update nor the reboot is remediation: the fix closes the deserialization path and removes nothing an attacker wrote through it, and it does not invalidate anything the attacker took. The default for that instance is rebuild plus rotation rather than update-in-place — reinstate the report server from a known-good baseline rather than from its live filesystem, and rotate the Report Server service account credential together with every credential that account could use, because the entire point of this sink is that the attacker's code ran holding it. Preconditions and limits: the trigger is the exposure window, not a matched indicator. poc_available is true, but the packet names no actor and no artifact set, so an estate waiting for an IoC before opening the case will not open it — reachability below the fixed build during the window is the criterion. A rebuild that restores the instance from a backup taken inside that window reinstates whatever was written through the path, so the restore point has to predate the exposure or be validated independently. And this control governs the response to an instance that was exposed; it neither detects the original intrusion nor substitutes for the update, which the packet records as the remediation and which still has to land with its reboot on the rebuilt instance.",
45727
+ "evidence": "Packet: active_exploitation confirmed with poc_available true; the packet records exploitation against internet-exposed SQL Server Reporting Services instances, with a low-privileged authenticated user posting a crafted __VIEWSTATE to a report page to run code as the Report Server service account, and notes that ransomware use is unconfirmed by CISA but that the flaw is a common ransomware-adjacent foothold on exposed BI servers. CISA KEV added 2024-09-18; CVSS 8.8, RWEP 77. patch_available true, patch_required_reboot true, live_patch_available false, with live-patch notes recording no live-patching primitive for this product and the vendor update plus reboot as the remediation. The flaw-remediation gap records that the KEV due date lags the observed exploitation of exposed instances; the technical-vulnerability gap records that SSRS is rarely inventoried as internet-adjacent, so the deserialization sink goes untracked past the exploitation window.",
45728
+ "gap_closes": [
45729
+ "NIST-800-53-SI-2",
45730
+ "ISO-27001-2022-A.8.8"
45731
+ ]
45732
+ }
45733
+ ]
45343
45734
  },
45344
45735
  "CVE-2024-27348": {
45345
45736
  "name": "Apache HugeGraph-Server Improper Access Control Vulnerability",
@@ -46226,7 +46617,28 @@
46226
46617
  "adequate": false,
46227
46618
  "gap": "WPS Office is user-installed productivity software often outside enterprise patch tooling, so the fix lags the one-click in-the-wild exploitation."
46228
46619
  }
46229
- }
46620
+ },
46621
+ "new_control_requirements": [
46622
+ {
46623
+ "id": "NEW-CTRL-001",
46624
+ "name": "CISA-KEV-RESPONSE-SLA",
46625
+ "description": "The obstacle to meeting a KEV clock on Kingsoft WPS Office is not the change window, it is the inventory: this entry's flaw-remediation gap records WPS Office as user-installed productivity software that often sits outside enterprise patch tooling, so the population that has to be driven to the fixed build is largely invisible to the software-distribution console that would normally produce the compliance evidence. Bound to this product, the control means the clock opens at the 2024-09-03 KEV listing and is met by enumerating Windows hosts carrying a WPS Office build inside the affected range from endpoint inventory of the installed binaries rather than from managed-package records, then driving each to 12.2.0.16412 or later — the packet's range runs from 12.2.0.13110 up to but excluding 12.2.0.16412. Where a per-user copy is not manageable, removing it is the remediation; recording it as present-and-pending leaves the one-click path live on that desktop. Priority follows the packet rather than the software's category: this is a productivity suite most vulnerability programmes queue behind server-side findings, yet the packet records a public proof-of-concept and weaponization as a single-click exploit by an espionage group delivering a backdoor, which makes it an initial-access item. Remediation shape and its precondition: patch_available is true, live_patch_available is false, and the packet states the vendor update requires no reboot — no host reboot, which does not mean the fix is live on the desktop. The vulnerable code is the promecefpluginhost.exe plugin host that WPS Office spawns, so an installation that has taken the update while a WPS session is still open continues to serve that path from the pre-fix install; completion is measured on the build the running installation reports after the application has been closed and relaunched.",
46626
+ "evidence": "CISA KEV added 2024-09-03; active_exploitation confirmed; poc_available true; CVSS 9.3; RWEP 68. affected: 'Kingsoft WPS Office for Windows: promecefpluginhost.exe performs improper path validation, letting a crafted document load an arbitrary Windows library (DLL).' affected_versions: '12.2.0.13110 through 12.2.0.16412 (exclusive) on Windows'. active_exploitation_notes: 'Weaponized as a one-click exploit by the South-Korea-aligned APT-C-60 espionage group: a booby-trapped spreadsheet (uploaded to VirusTotal Feb 2024) triggers promecefpluginhost.exe to load an attacker-supplied DLL, deploying the SpyGlace backdoor.' patch_available true; patch_required_reboot false; live_patch_available false; live_patch_notes: 'No live-patching primitive for this product; the vendor update (no reboot required) is the remediation.' The NIST-800-53-SI-2 gap records that 'WPS Office is user-installed productivity software often outside enterprise patch tooling, so the fix lags the one-click in-the-wild exploitation'; the NIS2-Art21-vulnerability-handling gap records that 'vulnerability handling for third-party office suites is under-scoped, delaying response to an actively weaponized single-click flaw'.",
46627
+ "gap_closes": [
46628
+ "NIST-800-53-SI-2",
46629
+ "NIS2-Art21-vulnerability-handling"
46630
+ ]
46631
+ },
46632
+ {
46633
+ "id": "NEW-CTRL-120",
46634
+ "name": "DOWNLOAD-PROVENANCE-ENFORCEMENT",
46635
+ "description": "Every recorded instance of this flaw starts with an attacker-supplied spreadsheet arriving at a user: the packet's attack path is a victim opening, or single-clicking a link inside, a malicious WPS spreadsheet, and the weaponized sample is described as a deceptive spreadsheet document. On any desktop still inside the affected build range the delivery path is therefore the only lever the operator holds, and this control's requirement bound to that path is that externally-sourced office documents are marked with their untrusted origin by the boundary that receives them — mail gateway, web download, untrusted file share — that the marking survives whatever container the document is delivered in, so extraction from an archive, mounting from an image, or a rename does not strip it, and that a document whose origin cannot be established as trusted is quarantined or blocked rather than delivered to the desktop. This is the complement of the malware-protection gap on this entry rather than a restatement of it: the loader is a legitimately signed WPS binary and the payload is an attacker-supplied DLL, so detection on the payload is what fails, and handling the delivery vehicle by verified provenance is what does not depend on recognising the payload. Precondition, and it is a real limitation here rather than a formality: the sandboxing half of this control depends on the document handler consulting the provenance marking, and the packet establishes nothing about whether WPS Office honours a Windows origin marking. Where it does not, the enforceable half is entirely what the gateway and file-share boundary do with the file before the user receives it — once the spreadsheet is open in an unpatched WPS Office, the marking does not stop promecefpluginhost.exe from resolving the attacker-supplied plugin path. It also gives nothing against a document delivered through a channel that applies no marking, or one already sitting on the endpoint from before the policy. This is a holding measure for the window before the fixed build lands, not a closure. The distinguishing test keys on the real delivery behaviour: send an externally-sourced spreadsheet through each ingress path, including one nested inside an archive, and confirm it arrives marked or quarantined rather than clean — an attestation covering macro and OLE settings passes while a booby-trapped spreadsheet reaches the user with its origin stripped.",
46636
+ "evidence": "attack_vector: 'A victim opens (or single-clicks a link inside) a malicious WPS spreadsheet that invokes the custom ksoqing protocol; promecefpluginhost.exe fails to validate the supplied plugin path and loads an attacker-controlled DLL, executing the SpyGlace backdoor.' The vector records that 'the vulnerability was found weaponized as a single-click exploit in the form of a deceptive spreadsheet document', and active_exploitation_notes records a booby-trapped spreadsheet uploaded to VirusTotal in Feb 2024. The ISO-27001-2022-A.8.7 gap: 'Malware-protection controls miss document-borne library-load abuse because the loader is a signed WPS binary.' patch_available true with live_patch_available false, so the interim window runs until the fixed build (12.2.0.16412 or later per affected_versions) is running. active_exploitation confirmed; poc_available true.",
46637
+ "gap_closes": [
46638
+ "ISO-27001-2022-A.8.7"
46639
+ ]
46640
+ }
46641
+ ]
46230
46642
  },
46231
46643
  "CVE-2021-20124": {
46232
46644
  "name": "Draytek VigorConnect Path Traversal Vulnerability (CVE-2021-20124)",
@@ -46263,7 +46675,40 @@
46263
46675
  "adequate": false,
46264
46676
  "gap": "Boundary protection is the real mitigation here — the file-read is only exploitable when the WebServlet is internet-reachable, yet SC-7 controls frequently leave device-management portals exposed."
46265
46677
  }
46266
- }
46678
+ },
46679
+ "new_control_requirements": [
46680
+ {
46681
+ "id": "NEW-CTRL-122",
46682
+ "name": "EOL-ASSET-DECOMMISSION",
46683
+ "description": "The packet carries both halves of this control's premise for DrayTek VigorConnect. A vendor update is recorded as available, and at the same time the flaw-remediation gap calls VigorConnect end-of-support-era management software where remediation fails when no vendor patch is applied and operators must instead discontinue or firewall the product, while the Essential Eight gap states that for legacy VigorConnect the only compliant action is removal. So on an install that can still take an update, reaching an updated build is an interim state; the terminal state is removing or replacing the management platform, because a host left on an unsupported management product is exposed not only to this unauthenticated root-level file read but to everything found in that product since its last build. Scope the inventory to what the packet names — VigorConnect installs, with the affected version recorded as 1.6.0-B3 — and not to the network devices VigorConnect administers, which the packet does not tie to this defect; sweeping the managed devices manufactures replacement work against equipment no evidence implicates. Per install, record the running VigorConnect version, whether an update carrying the fix is obtainable for it, and a dated removal or replacement date where it is not: a risk acceptance with no removal date leaves a KEV-listed flaw with a public PoC and confirmed exploitation in service indefinitely. Precondition on the interim half: patch_required_reboot is false, which means no host reboot — not that the fix is live the moment the update is laid down. The VigorConnect service keeps executing the code it started with, so completion has to be measured on the version the running WebServlet reports rather than on the installer having run.",
46684
+ "evidence": "Packet records patch_available true, patch_required_reboot false, live_patch_available false with live_patch_notes 'No live-patching primitive for this product; the vendor update (no reboot required) is the remediation'; affected_versions is 1.6.0-B3. The NIST-800-53-SI-2 gap states VigorConnect is end-of-support-era management software and that flaw remediation fails when no vendor patch is applied, with operators required to discontinue or firewall the product; the AU-Essential-8-Patch gap states Essential Eight patching assumes a supported product with available updates and that for legacy VigorConnect the only compliant action is removal, which the control does not force. The ISO-27001-2022-A.8.8 gap states technical vulnerability management often omits network-appliance companion software like VigorConnect from the asset register, so the traversal flaw goes untracked. cisa_kev true (2024-09-03), active_exploitation confirmed, poc_available true, rwep_score 63, cvss 7.5.",
46685
+ "gap_closes": [
46686
+ "AU-Essential-8-Patch",
46687
+ "NIST-800-53-SI-2",
46688
+ "ISO-27001-2022-A.8.8"
46689
+ ]
46690
+ },
46691
+ {
46692
+ "id": "NEW-CTRL-134",
46693
+ "name": "DEVICE-MANAGEMENT-GATEWAY-CONFIG-ENDPOINT-AUTH-INPUT-NEUTRALIZATION",
46694
+ "description": "VigorConnect is the device-management platform this control governs, and the defect sits on its WebServlet file-download endpoint: the endpoint performs no path validation, so an unauthenticated caller reads arbitrary files from the underlying operating system with root privileges. Bound to this product the control means the download endpoint authorizes its caller before any file is opened, and resolves the requested path to canonical absolute form and verifies the result is still under the directory it is meant to serve before the handle is opened — containment must be enforced on the read direction here, because the privileged operation is a root-level read rather than a write, and filtering the request string is not the same as checking the resolved path. It also means no VigorConnect instance is left with the WebServlet reachable from a segment with no operational need for the management console. The packet's own attack vector has the caller unauthenticated, which is why the endpoint's own authorization decision rather than the surrounding account model is the only thing between an untrusted network and the root read: an identity-and-access attestation recording that every VigorConnect administrator authenticates at login passes cleanly while this path stays fully open. Distinguishing test: from a segment with no management role, send a directory-traversal request to the WebServlet download endpoint on a staging install and confirm it is refused before any file is read — 'the management server is internal' is a statement about topology, not a demonstration that the endpoint is unreachable from untrusted networks. Precondition: the endpoint-side authorization and path validation are properties the vendor update establishes; this control states what to verify, it does not implement it. Until the update is in service, restricting which segments can reach the WebServlet bounds who can send the request but leaves the endpoint fully exploitable to anything inside the permitted segment, and it is unavailable where the console must stay reachable for remote administration.",
46695
+ "evidence": "Packet affected: the VigorConnect WebServlet file-download endpoint performs no path validation, letting an unauthenticated attacker read arbitrary OS files with root privileges; attack_vector: an unauthenticated attacker sends a directory-traversal request to the WebServlet download endpoint and retrieves arbitrary files from the host with root privileges. The NIST-800-53-SC-7 gap states the file-read is only exploitable when the WebServlet is internet-reachable, yet SC-7 controls frequently leave device-management portals exposed; the NIS2-Art21-network-security gap states network-security measures rarely segment out-of-band management consoles, leaving the unauthenticated root-level file read reachable from untrusted networks; the UK-CAF-B2 gap states identity-and-access outcomes assume the management console authenticates callers, but this endpoint reads arbitrary files as root without auth. active_exploitation_notes: GreyNoise and Tenable reported active exploitation of internet-exposed VigorConnect management servers, with dozens of source IPs observed reading arbitrary files as root (CISA KEV 2024-09-03).",
46696
+ "gap_closes": [
46697
+ "NIST-800-53-SC-7",
46698
+ "NIS2-Art21-network-security",
46699
+ "UK-CAF-B2"
46700
+ ]
46701
+ },
46702
+ {
46703
+ "id": "NEW-CTRL-037",
46704
+ "name": "FLEET-COMPROMISE-IR-PLAYBOOK",
46705
+ "description": "VigorConnect is the management plane for the devices it administers, and this flaw hands an unauthenticated caller a root-level read of everything the host holds — which the packet's identity-and-access gap describes as handing the attacker the credentials and configuration that seed follow-on access. An update does not un-disclose them, which is why a remediation record that ends at the fixed build closes this entry while the attacker still holds working credentials. For this product the playbook means treating any install whose WebServlet was reachable from an untrusted network during the exploitation period the packet records as having had its files read: rotate the VigorConnect host's own administrative credentials, rotate every device credential and secret the platform stored, re-issue rather than reuse key material recovered from those files, and review the configuration of the devices the platform manages for changes made with those credentials since the exposure window opened. Precondition and limit, which matter more than usual here: this CVE's primitive is a read, so exploitation of it writes nothing to the host and leaves no attacker-installed artifact to serve as the trigger — whether an install was reached has to be determined from whether the WebServlet was reachable during the window, not from host-side indicators. And the playbook reduces nothing about the exploit surface itself; it bounds what an attacker can do with material already taken, and it presumes the credentials the platform stored can be enumerated and rotated at all.",
46706
+ "evidence": "Packet UK-CAF-B2 gap: identity-and-access outcomes assume the management console authenticates callers, but this WebServlet endpoint reads arbitrary files as root without auth, 'handing an attacker the credentials and config that seed follow-on access'. active_exploitation confirmed, with active_exploitation_notes recording GreyNoise and Tenable reporting active exploitation of internet-exposed VigorConnect management servers and dozens of source IPs observed reading arbitrary files as root; CISA KEV 2024-09-03; poc_available true; ransomware use not confirmed. The vector is a file-download/local-file-inclusion primitive (download arbitrary files with root privileges), not code execution.",
46707
+ "gap_closes": [
46708
+ "UK-CAF-B2"
46709
+ ]
46710
+ }
46711
+ ]
46267
46712
  },
46268
46713
  "CVE-2021-20123": {
46269
46714
  "name": "DrayTek VigorConnect Path Traversal Vulnerability (CVE-2021-20123)",
@@ -46300,7 +46745,31 @@
46300
46745
  "adequate": false,
46301
46746
  "gap": "SC-7 boundary protection does not by itself force a device-management portal off the public Internet, which is the decisive exposure here."
46302
46747
  }
46303
- }
46748
+ },
46749
+ "new_control_requirements": [
46750
+ {
46751
+ "id": "NEW-CTRL-134",
46752
+ "name": "DEVICE-MANAGEMENT-GATEWAY-CONFIG-ENDPOINT-AUTH-INPUT-NEUTRALIZATION",
46753
+ "description": "VigorConnect is the device-management platform the packet names and the defect sits directly on its API surface: the DownloadFileServlet endpoint performs a file download with root privileges, with no path sanitization, for a caller that never authenticates. Bound to this product, the control means that endpoint authorizes its caller before any file is opened, and resolves the requested path to a canonical absolute form and verifies the result is still under the intended download root — rejecting absolute paths, ../ sequences and symlinks that leave the root — with the check performed before the file handle is opened rather than by filtering the request string; and that no VigorConnect instance is left with its web interface reachable from the public internet or from any segment with no operational need to manage DrayTek devices. Note the direction, because it is where this differs from the upload-side case the control is usually written against: the primitive here is read, so containment has to be enforced on the download path, and because the servlet runs as root an unbounded read returns every file on the host — on a network-management server that is where its configuration and credential material lives, which is what the packet records the campaign taking. This is also why the flaw is reachable with no account at all: the attacker never holds a VigorConnect operator identity, so per-account privilege scoping is never consulted and an access-control attestation passes cleanly while the path stays open. Distinguishing test: from an external address and from a general user VLAN, send DownloadFileServlet an unauthenticated request whose path resolves outside the intended download root against a staging instance, and confirm it is refused before anything is read. Precondition: the endpoint-side authorization and path canonicalization are properties the vendor update establishes — this control states what to verify, it does not implement it. Until that update is running, restricting which networks can reach the VigorConnect web interface bounds who can send the request but leaves the endpoint fully exploitable to anything inside a permitted segment, and that lever is unavailable wherever the portal must stay reachable for remote device management.",
46754
+ "evidence": "`affected` records DrayTek VigorConnect network management software with the DownloadFileServlet endpoint performing unauthenticated file download with root privileges and no path sanitization; affected_versions gives VigorConnect 1.6.0-B3 and earlier. attack_vector records an unauthenticated attacker sending a crafted request with directory-traversal sequences, causing VigorConnect to return arbitrary files from the OS with root privileges. active_exploitation_notes record a global campaign against DrayTek devices in which unauthenticated attackers abuse this path traversal to read arbitrary files such as credentials as root from internet-exposed VigorConnect management servers. The NIST-800-53-SC-7 gap states boundary protection is insufficient when the management interface is deliberately internet-exposed; the NIS2-Art21-network-security gap that network-security measures do not mandate isolating device-management portals from untrusted networks; the UK-CAF-B4 gap that the system-security principle does not require keeping the VigorConnect management portal off untrusted networks; the AU-ISM-1546 gap that internet-facing service hardening guidance is not enforced strongly enough to keep an unauthenticated file-read endpoint off the public edge. CISA KEV 2024-09-03, active_exploitation confirmed, poc_available true, CVSS 7.5, RWEP 64.",
46755
+ "gap_closes": [
46756
+ "NIST-800-53-SC-7",
46757
+ "NIS2-Art21-network-security",
46758
+ "UK-CAF-B4",
46759
+ "AU-ISM-1546"
46760
+ ]
46761
+ },
46762
+ {
46763
+ "id": "NEW-CTRL-001",
46764
+ "name": "CISA-KEV-RESPONSE-SLA",
46765
+ "description": "For VigorConnect the fix was never the missing part: the packet's flaw-remediation gap records that a patch to v1.6.1 exists against affected builds of 1.6.0-B3 and earlier, and that the observed campaign exploited long-unpatched internet-facing appliances anyway. Under this control the clock therefore runs from the 2024-09-03 KEV listing — the later of the two events — and each VigorConnect install is driven to the fixed release on that clock rather than through the routine vulnerability-management cadence the packet's technical-vulnerability-management gap describes, which never prioritized a management-software file-read in the first place. patch_required_reboot is false, which removes the host-reboot argument for deferral, but that is not the same as the fix being live: the running VigorConnect service has to be executing the fixed build, so completion is measured on the version that service reports after the upgrade, not on the installer having run. There is no live-patch path, so nothing protects the endpoint during the interval — the only interim lever is restricting which networks can reach the portal at all. Precondition and limit, and this is the one operators miss on a read-primitive flaw: the update closes the traversal, it does not un-read anything. The packet records unauthenticated attackers reading arbitrary files as root, credentials included, from internet-exposed VigorConnect servers, so on any instance that was reachable during the exposure window every credential, key and configuration secret readable on that host must be treated as disclosed and rotated. An appliance upgraded to the fixed release with those credentials left in place reads as remediated on the patch record while the attacker still holds what the read returned.",
46766
+ "evidence": "The packet's NIST-800-53-SI-2 gap states a patch to v1.6.1 exists but the observed campaign exploited long-unpatched internet-facing appliances, and that SI-2 SLAs far exceed the exploitation window for a trivially weaponizable traversal; the ISO-27001-2022-A.8.8 gap states technical vulnerability management did not prioritize a management-software LFI. patch_available is true, patch_required_reboot false, live_patch_available false, with live_patch_notes stating there is no live-patching primitive for this product and that the vendor update, requiring no reboot, is the remediation. affected_versions gives VigorConnect 1.6.0-B3 and earlier. CISA KEV added 2024-09-03; active_exploitation confirmed; active_exploitation_notes record unauthenticated attackers reading arbitrary files such as credentials as root from internet-exposed VigorConnect management servers, with ransomware use not confirmed; poc_available true; CVSS 7.5; RWEP 64.",
46767
+ "gap_closes": [
46768
+ "NIST-800-53-SI-2",
46769
+ "ISO-27001-2022-A.8.8"
46770
+ ]
46771
+ }
46772
+ ]
46304
46773
  },
46305
46774
  "CVE-2024-7965": {
46306
46775
  "name": "Google Chromium V8 Inappropriate Implementation Vulnerability",
@@ -46588,7 +47057,32 @@
46588
47057
  "adequate": false,
46589
47058
  "gap": "Perimeter controls do not block the attack because Exchange OWA/ECP must be internet-reachable for mail flow, so the vulnerable endpoints stay exposed."
46590
47059
  }
46591
- }
47060
+ },
47061
+ "new_control_requirements": [
47062
+ {
47063
+ "id": "NEW-CTRL-001",
47064
+ "name": "CISA-KEV-RESPONSE-SLA",
47065
+ "description": "For this Exchange flaw the two events this control chooses between are far apart: the vendor fix shipped in the July 2021 security updates (KB5004778 for Exchange Server 2013, KB5004779 for 2016, KB5004780 for 2019) and CISA listed it on 2024-08-21, so the clock is the KEV listing, the later of the two. Bound to this product that means every on-premises Exchange server carrying OWA/ECP is driven to a build at or above the July 2021 update on the KEV clock, not folded into the cumulative-update cadence and change-freeze windows the packet's flaw-remediation gap names as the reason servers stayed exposed. Completion has to be measured on the running build: live_patch_available is false and the packet records the vendor update requiring a reboot, so a server that has staged or installed the update but not rebooted still executes the vulnerable code and counts as exposed — and on a production mail server the reboot is precisely the step deferred out of the change window, so a deferral recorded as 'patched' is the specific way this remediation goes wrong. Preconditions and limits. There is no segmentation step that buys time: the packet's boundary-protection gap records that OWA/ECP must be internet-reachable for mail flow, so until the fixed build is running the vulnerable endpoint is reachable and the mitigation state is binary. And the SLA closes the flaw, not the incident — exploitation is confirmed and the packet records operators dropping ASPX web shells into Exchange virtual directories, which a cumulative update does not remove, so a server that was reachable and unpatched during the exposure window belongs on the incident path rather than being closed on the patch record.",
47066
+ "evidence": "The packet gives patch_available true, patch_required_reboot true, live_patch_available false, and live_patch_notes stating there is no live-patching primitive for this product and that the vendor update requires a reboot and is the remediation. affected_versions lists Exchange Server 2013 (pre-KB5004778), 2016 (pre-KB5004779) and 2019 (pre-KB5004780), with `affected` describing on-premises Exchange prior to the July 2021 security updates. CISA KEV added 2024-08-21, active_exploitation confirmed, RWEP 77, CVSS 7.2, poc_available true, CWE-502. active_exploitation_notes record operators running code on internet-facing Exchange and dropping web shells, with ransomware association unconfirmed. The NIST-800-53-SI-2 gap names Exchange cumulative-update cadence and change-freeze windows as keeping servers exposed past the observed exploitation window; the NIST-800-53-SC-7 gap records that OWA/ECP must be internet-reachable for mail flow.",
47067
+ "gap_closes": [
47068
+ "NIST-800-53-SI-2",
47069
+ "AU-Essential-8-Patch",
47070
+ "ISO-27001-2022-A.8.8",
47071
+ "NIS2-Art21-patch-management",
47072
+ "UK-CAF-B4"
47073
+ ]
47074
+ },
47075
+ {
47076
+ "id": "NEW-CTRL-040",
47077
+ "name": "OWA-PER-REQUEST-SIEM-INGESTION",
47078
+ "description": "This Exchange flaw is post-authentication, and that is exactly the property that makes authentication-event logging blind to it: the attacker arrives holding valid Exchange credentials, so the logon preceding the exploit is a successful and unremarkable one, and the identity controls the estate is audited against have already been satisfied before the request that matters is sent. Ask what an exploit doing what this packet describes actually emits and it is a request pattern, not an authentication anomaly — a request from an already-authenticated session to an internet-facing OWA/ECP back-end endpoint, followed by requests to a .aspx path under an Exchange virtual directory that did not exist before it, since the packet records persistence via an ASPX web shell placed there. Only per-request access logs carry either half, so IIS/OWA per-request access logs — not just authentication events — must be forwarded off the Exchange server to an external SIEM, with retention long enough to cover the exposure window this entry implies: the fix shipped with the July 2021 updates and the KEV listing came on 2024-08-21, so a retention period that ages out that span turns 'was this server used' into an unanswerable question, and 90 days is a floor rather than a comfortable margin. The second reason the destination must be external is the same one that makes this control the complement of the unavoidable exposure: an attacker who reached code execution on the server can reach logs stored on it. Preconditions. This detects, it does not prevent — it does not stop the deserialization from executing and it does not remove a web shell already written; it bounds the window to alert-and-response time. And it only works if the forwarding was in place before the request arrived, which on an on-premises Exchange server whose logging was scoped to logon events is precisely the assumption that fails.",
47079
+ "evidence": "The packet's NIST-800-53-IA-2 gap states the flaw is post-authentication, so identification and authentication controls are already satisfied by the attacker and MFA on OWA does not stop a valid-account or credential-replay path into the RCE. The NIST-800-53-SC-7 gap states perimeter controls do not block the attack because Exchange OWA/ECP must be internet-reachable for mail flow, so the vulnerable endpoints stay exposed. attack_vector records an attacker with valid Exchange authentication reaching an internet-facing OWA/ECP back-end endpoint, triggering server-side code execution, then persisting via an ASPX web shell in an Exchange virtual directory; active_exploitation_notes record web-shell drops on internet-facing Exchange. CISA KEV 2024-08-21 against a fix shipped in the July 2021 security updates; active_exploitation confirmed; poc_available true.",
47080
+ "gap_closes": [
47081
+ "NIST-800-53-IA-2",
47082
+ "NIST-800-53-SC-7"
47083
+ ]
47084
+ }
47085
+ ]
46592
47086
  },
46593
47087
  "CVE-2022-0185": {
46594
47088
  "name": "Linux Kernel Heap-Based Buffer Overflow Vulnerability",
@@ -46815,7 +47309,40 @@
46815
47309
  "adequate": false,
46816
47310
  "gap": "Public PoCs landed within hours of disclosure; any remediation SLA slower than same-day left internet-facing controllers readable long before patch windows closed."
46817
47311
  }
46818
- }
47312
+ },
47313
+ "new_control_requirements": [
47314
+ {
47315
+ "id": "NEW-CTRL-001",
47316
+ "name": "CISA-KEV-RESPONSE-SLA",
47317
+ "description": "For the Jenkins controller this means a build above the affected range is driven onto every controller on the clock that opened with the 2024-08-19 KEV listing rather than into the next platform-maintenance window. Two release tracks move independently and both are in the affected range — Jenkins 2.441 and earlier on the weekly line, LTS 2.426.2 and earlier — so an estate that upgrades its weekly-line controllers while an LTS controller stays on 2.426.2 has not finished, and the count has to be taken per controller against its own track. The packet records no live-patch path and no host reboot, but a reboot is not the restart that matters here: the controller is a long-running service, so a new war staged on disk is not remediation until the controller is running it, and completion must be measured on the version the running instance reports. Priority follows the packet rather than the maintenance calendar — a public proof of concept, near-1.0 EPSS with mass scanning of internet-exposed controllers, and a Known ransomware association on the KEV entry.",
47318
+ "evidence": "The packet records cisa_kev true with kev_date 2024-08-19, active_exploitation confirmed, poc_available true, rwep_score 74 against CVSS 9.8, patch_available true, live_patch_available false, and live_patch_notes stating there is no live-patching primitive for this product and that the vendor update (no reboot required) is the remediation. affected_versions gives Jenkins 2.441 and earlier and Jenkins LTS 2.426.2 and earlier. The active-exploitation note records a Known ransomware association and near-1.0 EPSS with mass scanning of internet-exposed Jenkins controllers; the flaw-remediation gap states public PoCs landed within hours of disclosure, so any SLA slower than same-day left controllers readable before patch windows closed.",
47319
+ "gap_closes": [
47320
+ "NIST-800-53-SI-2",
47321
+ "ISO-27001-2022-A.8.8",
47322
+ "AU-Essential-8-Patch"
47323
+ ]
47324
+ },
47325
+ {
47326
+ "id": "NEW-CTRL-128",
47327
+ "name": "APPSERVER-REMOTING-PROTOCOL-RESTRICTION",
47328
+ "description": "The vulnerable code here is the Jenkins controller's own CLI command parser — the args4j feature that expands an argument beginning with '@' into the contents of the named file, left enabled — and it answers before the caller authenticates, which is exactly the protocol-endpoint class this control governs. Applied to Jenkins it means the controller's CLI accepts connections only from the hosts that legitimately drive it (build agents, operator jump hosts, the CI automation that invokes it), enforced by network ACL or host firewall rather than inferred from the controller sitting on an internal network, and that a KEV-listed defect in that parser moves on an accelerated clock with the controller restarted onto the fixed build rather than folded into the next platform window. Distinguishing test for this product: from a general user or workstation segment against a staging controller, issue an unauthenticated CLI command whose argument is '@' followed by a path on the controller filesystem, and confirm the connection is refused before the parser sees it — 'the controller is internal' is an assertion about topology, not a demonstration that the CLI is unreachable from untrusted segments. Precondition: restricting reachability bounds who can send the command, it does not repair the parser. Every host inside the permitted segment still reaches it with no credential, and on a controller that exists to serve a broad engineering population there is no segment that removes the path — only one that narrows it until the upgrade lands.",
47329
+ "evidence": "The packet's vector places the defect in the CLI command parser: Jenkins does not disable the feature that replaces an '@' character followed by a file path in an argument with that file's contents, allowing unauthenticated attackers to read arbitrary files on the Jenkins controller file system. The affected summary names the args4j expandAtFiles feature as the unfixed behaviour. The cited boundary-protection gap states that boundary protection still exposing the Jenkins CLI/HTTP endpoint to untrusted networks leaves the unauthenticated file read directly reachable, and the flaw-remediation gap records public PoCs landing within hours of disclosure.",
47330
+ "gap_closes": [
47331
+ "NIST-800-53-SC-7",
47332
+ "NIST-800-53-SI-2"
47333
+ ]
47334
+ },
47335
+ {
47336
+ "id": "NEW-CTRL-032",
47337
+ "name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
47338
+ "description": "This CVE's primitive is disclosure, so the upgrade closes the read and removes nothing that was already read. The packet has the attacker recovering secrets from the controller filesystem — it names the Jenkins master key — and chaining them into remote code execution, and it records that a caller without Overall/Read still obtains the first lines of any file, so an unauthenticated scanner reaching an exposed controller gets at least partial content of every credential-bearing file on it. For a Jenkins controller that was reachable by untrusted callers during the exposure window, the requirement is therefore to treat the instance as compromised rather than patched: capture the configuration and the job and plugin state for review, rebuild the controller from a known-good baseline instead of upgrading in place, and rotate everything the controller held — the master key and the credentials store it protects, agent and SSH keys, API tokens, and any signing or registry credential the pipelines used. Preconditions: rotation only helps for material the operator can enumerate and revoke, so a credential the controller held that is also in use elsewhere stays valid until it is rotated at every consumer, and a controller rebuilt onto the fixed build with the old key material restored is back where it started. Scope this to controllers that were actually reachable during the window — the packet's exploitation evidence is mass scanning of internet-exposed controllers, not a claim that every install was reached.",
47339
+ "evidence": "The packet's affected summary states the flaw lets an attacker read arbitrary files — full contents with Overall/Read, first lines without — and chain leaked secrets into remote code execution. The attack_vector names the Jenkins master key as the disclosed secret then used to achieve remote code execution. active_exploitation is confirmed, with mass scanning of internet-exposed Jenkins controllers and a Known ransomware association at the 2024-08-19 KEV listing. The cited DORA gap states that ICT protection for a financial-sector build pipeline is undermined when signing keys and credentials can be exfiltrated through an unauthenticated CLI read, and the Essential Eight gap records the controllers and the build secrets they hold as readable well before any patch window closed.",
47340
+ "gap_closes": [
47341
+ "DORA-Art-9",
47342
+ "AU-Essential-8-Patch"
47343
+ ]
47344
+ }
47345
+ ]
46819
47346
  },
46820
47347
  "CVE-2024-28986": {
46821
47348
  "name": "SolarWinds Web Help Desk Deserialization of Untrusted Data Vulnerability (CVE-2024-28986)",
@@ -46852,7 +47379,30 @@
46852
47379
  "adequate": false,
46853
47380
  "gap": "Flaw remediation via WHD 12.8.3 Hotfix 1 is correct, but the 3-week KEV due window is slow against a CVSS 9.8 deserialization RCE already being exploited on internet-facing help-desk servers."
46854
47381
  }
46855
- }
47382
+ },
47383
+ "new_control_requirements": [
47384
+ {
47385
+ "id": "NEW-CTRL-001",
47386
+ "name": "CISA-KEV-RESPONSE-SLA",
47387
+ "description": "For Web Help Desk the packet sets the clock and the frameworks cited on this entry both miss it: CISA listed the CVE on 2024-08-15 on evidence of active exploitation against internet-facing instances, the flaw-remediation gap records a three-week KEV due window as slow against a CVSS 9.8 deserialization RCE already being exploited, and the Essential Eight gap records the 48-hour internet-facing target as trailing exploitation of an already-reachable server. Applied to this product, the requirement is that every Web Help Desk instance in the 12.4 through 12.8 range is driven to 12.8.3 Hotfix 1 on the KEV clock rather than on the ITSM's own change cadence, and that the internet-reachable instances are enumerated first, because reachability is what turned this from a patch item into an exploited one. Completion is measured by the version the running WHD service reports: the packet records no host reboot for this fix, but the defect is in the Java application, so a server where the hotfix has been applied while the old WHD/Tomcat service process is still serving requests is still executing the vulnerable code and is not remediated. Preconditions and limits: the packet registers no live-patch primitive, so there is no vendor mechanism that holds the gap while the hotfix is scheduled — until it lands and the service is running the fixed build, the only operator-side lever is reachability, covered by the boundary control on this entry. And a KEV-clock patch is not evidence of cleanliness: exploitation is confirmed in the wild, so an internet-reachable instance that was exposed before the hotfix needs forensic triage and rotation of the credentials that ITSM holds, which applying 12.8.3 Hotfix 1 does nothing to undo.",
47388
+ "evidence": "cisa_kev true with kev_date 2024-08-15; active_exploitation confirmed, with active_exploitation_notes stating it is exploited in the wild against internet-facing Web Help Desk. cvss 9.8, poc_available true. affected_versions: 'Web Help Desk 12.4 through 12.8 (fixed in 12.8.3 Hotfix 1)'. patch_available true, patch_required_reboot false, live_patch_available false, with live_patch_notes stating 'No live-patching primitive for this product; the vendor update (no reboot required) is the remediation.' The NIST-800-53-SI-2 gap states flaw remediation via WHD 12.8.3 Hotfix 1 is correct but the 3-week KEV due window is slow against a CVSS 9.8 deserialization RCE already being exploited on internet-facing help-desk servers; the AU-Essential-8-Patch gap states the 48-hour internet-facing target trails exploitation of an already-reachable WHD deserialization RCE; the NIS2-Art21-vulnerability-handling gap states vulnerability-handling obligations do not compel rapid mitigation of a single-exploit-away RCE on an ITSM asset that holds broad credentials. The UK-CAF-B2 gap records that a Web Help Desk RCE hands an attacker the privileged service and integrated-AD credentials the ITSM stores.",
47389
+ "gap_closes": [
47390
+ "NIST-800-53-SI-2",
47391
+ "AU-Essential-8-Patch",
47392
+ "NIS2-Art21-vulnerability-handling"
47393
+ ]
47394
+ },
47395
+ {
47396
+ "id": "NEW-CTRL-125",
47397
+ "name": "SERVICE-INTERNAL-PROTOCOL-DESERIALIZATION-HARDENING",
47398
+ "description": "For Web Help Desk the control means treating the request path that accepts serialized Java objects as a trust boundary rather than an internal convenience. The packet's attack vector is a crafted serialized Java object whose gadget chain runs arbitrary OS commands as the WHD service account, so the governing question is what arriving content the application is permitted to reconstruct — not whether the caller looks legitimate. SolarWinds could only reproduce the flaw authenticated, which is precisely why an authentication check sitting in front of the sink is not the thing that stops the gadget chain: a caller who does authenticate reaches it anyway. Bound to this deployment the requirement is that deserialization is constrained to the object types WHD legitimately exchanges instead of accepting arbitrary object graphs, and that the WHD listener answers only from the segment its help-desk users actually come from rather than being internet-reachable, which the packet's boundary-protection gap records as the state of the exploited instances. That gap also notes a WAF without deserialization-aware rules will not stop the gadget chain, so 'there is a WAF in front of it' is an assertion about topology, not a demonstration that the sink is unreachable. This is the same point the technical-vulnerability-management gap makes about the class rather than the instance: closing the ticket at 12.8.3 Hotfix 1 removes this sink and the packet records that later WHD deserialization CVEs followed, so the requirement has to be a property of the next release too. Distinguishing test: from an unauthenticated host that can route to a staging WHD, and again from an authenticated low-privilege session, submit a serialized object carrying a type WHD never legitimately receives and confirm it is refused before deserialization runs — an instance that passes a patch-level audit while reconstructing arbitrary object graphs from request content still exposes the path the moment the next parsing defect lands. Precondition: type constraint inside the application is a property of the vendor's fixed release — this control states what to verify and what to require of subsequent releases, it does not implement it. The reachability half is what the operator holds in the interim, and it bounds who can send the object without repairing the sink, so any caller inside the permitted segment still reaches it; it is also unavailable where the help desk must stay reachable to remote or external users.",
47399
+ "evidence": "affected: 'SolarWinds Web Help Desk (WHD) Java application; the deserialization sink allows OS command execution on the host running the WHD/Tomcat service.' attack_vector: 'An attacker sends a crafted serialized Java object to Web Help Desk; unsafe deserialization instantiates a gadget chain that runs arbitrary OS commands as the WHD service account.' vector: 'While it was reported as an unauthenticated vulnerability, SolarWinds has been unable to reproduce it without authentication after thorough testing.' cwe_refs lists CWE-502. The NIST-800-53-SC-7 gap states boundary protection assumes WHD is not directly exposed, yet exploited instances are internet-reachable, and a WAF without deserialization-aware rules will not stop the gadget chain; the ISO-27001-2022-A.8.8 gap states technical vulnerability management does not enforce removing untrusted Java deserialization sinks, so the class of bug recurs (later WHD deserialization CVEs followed). patch_available true with affected_versions 'Web Help Desk 12.4 through 12.8 (fixed in 12.8.3 Hotfix 1)', live_patch_available false.",
47400
+ "gap_closes": [
47401
+ "NIST-800-53-SC-7",
47402
+ "ISO-27001-2022-A.8.8"
47403
+ ]
47404
+ }
47405
+ ]
46856
47406
  },
46857
47407
  "CVE-2024-38107": {
46858
47408
  "name": "Microsoft Windows Power Dependency Coordinator Privilege Escalation Vulnerability",
@@ -47262,7 +47812,31 @@
47262
47812
  "adequate": false,
47263
47813
  "gap": "Traversal in the controller lets requests reach endpoints the access model intended to protect, bypassing the authorization mapping the control relies on."
47264
47814
  }
47265
- }
47815
+ },
47816
+ "new_control_requirements": [
47817
+ {
47818
+ "id": "NEW-CTRL-129",
47819
+ "name": "ENTERPRISE-ERP-MANAGEMENT-FUNCTION-AUTHENTICATION",
47820
+ "description": "Apache OFBiz is an ERP/e-commerce application whose request controller maps an incoming URI onto a screen or controller entry, and this CVE is that mapping being escaped: the packet has an unauthenticated attacker embedding path-traversal sequences in the controller URI to leave the intended request-to-view mapping and reach restricted endpoints, which is then chained to code execution. Bound to this product, the control means each restricted OFBiz endpoint authorizes its own caller rather than inheriting a verdict from the front controller's URI mapping, so a request that arrives by an unintended path is still refused at the endpoint; and the back-office and administrative side of the deployment is segmented from untrusted callers separately from the storefront, so such a request cannot be presented at all. The access-enforcement gap cited on this entry is exactly this shape and explains why an identity-side attestation misses it: the attacker never authenticates as any OFBiz user, so per-account authorization is never consulted and a review of OFBiz roles and permissions passes cleanly while the path stays open. Distinguishing test on a staging instance: from a network position with no back-office role, issue unauthenticated requests carrying traversal sequences at each restricted controller endpoint and confirm each is refused before the endpoint runs — verifying the deployed third-party build behaves this way, rather than inferring it from the upstream project's development practices, is the point, since the packet's secure-coding gap is precisely that such assurance rarely reaches a deployed third-party ERP. Precondition: the path canonicalisation that repairs the controller mapping is what the vendor fix at 18.12.13 establishes — this control states the property to verify, it does not implement it. Until the fixed build is the one running, endpoint-side authorization and segmentation bound who can present the request but do not close the traversal, and the segmentation half is unavailable on a public-facing storefront deployment that must answer untrusted callers by design.",
47821
+ "evidence": "Packet: affected \"Apache OFBiz (open-source ERP/e-commerce) web application — a path-traversal flaw in the request controller lets an unauthenticated attacker reach restricted endpoints, enabling remote code execution.\" attack_vector: \"An unauthenticated attacker embeds path-traversal sequences in the OFBiz controller URI to escape the intended request-to-view mapping and reach restricted screen/controller endpoints, which is then chained to code execution.\" cwe_refs CWE-22, cvss 9.8, rwep_score 67, cisa_kev true, kev_date 2024-08-07, active_exploitation confirmed, poc_available true. affected_versions: \"Apache OFBiz before 18.12.13\", \"Fixed in 18.12.13\". NIST-800-53-AC-3 gap: \"Traversal in the controller lets requests reach endpoints the access model intended to protect, bypassing the authorization mapping the control relies on.\" UK-CAF-B4 gap: \"System-security controls do not inherently canonicalize/validate request paths in the application controller, which is where the fix lives.\" ISO-27001-2022-A.8.28 gap: \"Secure-development controls should catch path canonicalisation in the OFBiz controller where the traversal lives, but A.8.28 secure-coding assurance rarely extends to a deployed third-party ERP whose request-routing flaw becomes preauth RCE.\"",
47822
+ "gap_closes": [
47823
+ "NIST-800-53-AC-3",
47824
+ "UK-CAF-B4",
47825
+ "ISO-27001-2022-A.8.28"
47826
+ ]
47827
+ },
47828
+ {
47829
+ "id": "NEW-CTRL-001",
47830
+ "name": "CISA-KEV-RESPONSE-SLA",
47831
+ "description": "For this CVE the clock runs from the 2024-08-07 KEV listing, and the packet's own numbers say why a routine patch cadence is the wrong instrument against it: EPSS around 0.994 at the 99.9th percentile, a public proof-of-concept, confirmed exploitation, and weaponization inside the same window as the related OFBiz RCE chain, against an unauthenticated pre-auth path traversal that reaches code execution. Remediation for this product is the upgrade to Apache OFBiz 18.12.13. Read the reboot field carefully here, because it is about the host and not the service: patch_required_reboot is false, so no machine reboot has to be scheduled, but OFBiz runs as a long-lived application service and an instance with the 18.12.13 artifact deployed while the running service is still executing the pre-fix build is not remediated. Measure completion on the version the running OFBiz process reports, not on what the deployment record or the artifact on disk says, and never record this one as having no restart to coordinate. Precondition on the interim state, before the upgrade is running: the only lever is reachability — restricting which networks can reach the OFBiz web tier — and it holds only for internal ERP and back-office deployments. A public e-commerce storefront must answer untrusted callers to function, so for that deployment shape there is no interim compensating state at all and the upgrade is the whole of the remediation; recording network restriction as the mitigation on a storefront leaves the pre-auth traversal fully reachable.",
47832
+ "evidence": "Packet: cisa_kev true, kev_date 2024-08-07, active_exploitation confirmed, poc_available true, cvss 9.8, rwep_score 67. active_exploitation_notes: \"Actively exploited (EPSS ~0.994, 99.9th percentile) and KEV-listed; the path-traversal flaw in the OFBiz controller is used to reach restricted endpoints and achieve remote code execution. Ransomware use not confirmed.\" affected_versions: \"Apache OFBiz before 18.12.13\", \"Fixed in 18.12.13\". patch_available true, patch_required_reboot false, live_patch_available false, live_patch_notes \"No live-patching primitive for this product; the vendor update (no reboot required) is the remediation.\" NIST-800-53-SI-2 gap: \"The flaw was weaponized within the same window as the related OFBiz RCE chain; standard patch SLAs did not keep pace with the observed exploitation.\" AU-Essential-8-Patch gap: \"Even a 48-hour internet-facing patch target trails a flaw exploited alongside a public OFBiz RCE chain.\" NIS2-Art21-vulnerability-management gap: \"Essential entities running OFBiz commerce/ERP need emergency handling for a KEV-listed preauth traversal-to-RCE, exceeding routine vulnerability-management cadence.\"",
47833
+ "gap_closes": [
47834
+ "NIST-800-53-SI-2",
47835
+ "AU-Essential-8-Patch",
47836
+ "NIS2-Art21-vulnerability-management"
47837
+ ]
47838
+ }
47839
+ ]
47266
47840
  },
47267
47841
  "CVE-2024-36971": {
47268
47842
  "name": "Android Kernel Remote Code Execution Vulnerability",
@@ -47368,7 +47942,30 @@
47368
47942
  "adequate": false,
47369
47943
  "gap": "The flaw was patched in 2018 but reached KEV in 2024, meaning long-lived unpatched Windows hosts remained exploitable for years — flaw-remediation programs that leave legacy Windows 7/Server 2008/2012 systems unpatched miss this LPE-to-RCE primitive."
47370
47944
  }
47371
- }
47945
+ },
47946
+ "new_control_requirements": [
47947
+ {
47948
+ "id": "NEW-CTRL-122",
47949
+ "name": "EOL-ASSET-DECOMMISSION",
47950
+ "description": "The packet gives both halves this control exists to resolve. patch_available is true — Microsoft shipped a fix for this COM deserialization flaw in 2018 — and two of this entry's own framework gaps record that legacy Windows versions cannot receive current updates and that nothing forces retirement of end-of-support Windows 7, Server 2008 and 2012 builds. So the requirement resolves per unit rather than per CVE. A host on a Windows build still receiving updates takes the fix and this CVE is closed on it. A host on an out-of-support build reaches the fixed state for CVE-2018-0824 and remains exposed to everything found in Windows since its last update, so on that unit the patched build is an interim state and the terminal state is removal or replacement on a dated schedule — a requirement that ends at \"every host reports the fixed build\" marks an abandoned Windows estate compliant while it stays exposed. Scope to the builds the packet names: Windows 7, 8.1, RT 8.1, 10, and Windows Server 2008, 2008 R2, 2012, 2012 R2 and 2016. In practice the Server 2008/2008 R2/2012/2012 R2 population is where this lands hardest, because a host is usually still running an out-of-support Windows build for a reason — a line-of-business application nobody has re-platformed — which is exactly why the retirement date has to be set and owned rather than deferred to the next patch cycle. Precondition on the interim half: live_patch_available is false and patch_required_reboot is true, so a host that installed the update but has not rebooted still runs the vulnerable COM code and is not remediated. A risk acceptance carrying no removal date leaves a KEV-listed flaw with a public proof-of-concept and confirmed exploitation in service indefinitely.",
47951
+ "evidence": "Packet: cisa_kev true, kev_date 2024-08-05, active_exploitation confirmed, poc_available true, rwep_score 77, cvss 8.8. affected_versions lists Windows 7, Windows 8.1, Windows RT 8.1, Windows 10, Windows Server 2008, Server 2008 R2, Server 2012, Server 2012 R2, Server 2016. patch_available true, patch_required_reboot 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.\" AU-Essential-8-Patch gap: \"Essential Eight OS-patch maturity is undermined where legacy Windows versions cannot receive current updates, leaving the COM deserialization path open on unsupported builds.\" UK-CAF-B4 gap: \"CAF's secure-configuration objective does not force retirement or hardening of end-of-support Windows 7, Server 2008 and 2012 builds, where the UnmarshalPwn COM deserialization primitive stays exploitable years after the 2018 fix and reached KEV only in 2024.\" NIS2-Art21-patch-management gap: \"Patch-management obligations without a hard legacy-OS deadline let end-of-support Windows builds carry a decade-old exploitable deserialization flaw.\"",
47952
+ "gap_closes": [
47953
+ "UK-CAF-B4",
47954
+ "AU-Essential-8-Patch",
47955
+ "NIS2-Art21-patch-management"
47956
+ ]
47957
+ },
47958
+ {
47959
+ "id": "NEW-CTRL-145",
47960
+ "name": "ACTIVELY-EXPLOITED-OS-LPE-REMEDIATION-WINDOW-ENFORCEMENT",
47961
+ "description": "The packet places this primitive in Microsoft COM for Windows: an attacker delivers a crafted serialized COM object via a file or script, the Windows COM runtime unsafely deserializes it (UnmarshalPwn), and the result is privilege escalation and code execution — used, per this entry's own technical-vulnerability-management gap, as a publicly-weaponized privilege-escalation building block after initial access. For this CVE the control means the Windows update carrying the 2018 fix is driven across every affected host on the clock that opened with the 2024-08-05 KEV listing, rather than left in the backlog where the age of the CVE has kept it, 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. Enumerate first the hosts where the flaw's precondition is the normal operating state: multi-user and service-account-heavy Windows servers from the packet's list, where an account for the attacker to escalate from already exists. The packet records patch_required_reboot true and live_patch_available false, with the vendor update requiring a reboot and being the remediation — so a host that installed the update and has not rebooted still carries vulnerable COM code and counts as exposed, and on a legacy line-of-business server the reboot is precisely the step that gets deferred while the console reads patched. That deferral is the specific way this remediation goes wrong. Priority follows the packet rather than the CVE's age: a public proof-of-concept, confirmed exploitation, KEV listing in 2024, and the packet's record of use by Chinese threat actors and around ransomware operators make this a containment step for a chain, not a standalone endpoint item. Note what the update is doing here that other controls cannot: the packet's malicious-code-protection gap records that signature-based defenses under-detect this primitive because it uses legitimate OS marshalling, so an endpoint-protection attestation passes cleanly while the flaw stays fully exploitable — reaching the fixed build is the containment, not the anti-malware posture.",
47962
+ "evidence": "Packet vector and attack_vector: \"Microsoft COM for Windows ... fails to properly handle serialized objects\"; \"An attacker delivers a crafted serialized COM object via a file or script; the Windows COM runtime unsafely deserializes it (UnmarshalPwn), yielding privilege escalation and code execution on unpatched hosts.\" cisa_kev true, kev_date 2024-08-05, active_exploitation confirmed, poc_available true, rwep_score 77, cvss 8.8, cwe_refs CWE-502. patch_available true, patch_required_reboot 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.\" active_exploitation_notes: added to CISA KEV in August 2024 after in-the-wild use; leveraged for privilege escalation and code execution \"including by Chinese threat actors (e.g. Cinnamon Tempest / activity around the ChamelGang and ransomware operators)\"; KEV ransomware status Unknown. NIST-800-53-SI-2 gap: \"The flaw was patched in 2018 but reached KEV in 2024, meaning long-lived unpatched Windows hosts remained exploitable for years\". ISO-27001-2022-A.8.8 gap: management \"that defers old-CVE Windows patches as 'low priority' overlooks a reliable, publicly-weaponized privilege-escalation building block still used post-initial-access.\" NIST-800-53-SI-3 gap: \"Malicious-code protection often does not flag the UnmarshalPwn COM deserialization primitive because it uses legitimate OS marshalling\".",
47963
+ "gap_closes": [
47964
+ "NIST-800-53-SI-2",
47965
+ "ISO-27001-2022-A.8.8"
47966
+ ]
47967
+ }
47968
+ ]
47372
47969
  },
47373
47970
  "CVE-2024-37085": {
47374
47971
  "name": "VMware ESXi Authentication Bypass Vulnerability",
@@ -48386,7 +48983,42 @@
48386
48983
  "adequate": false,
48387
48984
  "gap": "Technical-vulnerability management must track transitive dependencies (jt-jiffle inside GeoServer); a top-level GeoServer inventory alone misses the vulnerable component."
48388
48985
  }
48389
- }
48986
+ },
48987
+ "new_control_requirements": [
48988
+ {
48989
+ "id": "NEW-CTRL-021",
48990
+ "name": "TIER-3-DEPENDENCY-INVENTORY",
48991
+ "description": "The vulnerable code is not GeoServer — it is jt-jiffle inside JAI-EXT, which GeoServer bundles, and the execution runs a level further down through Janino, which compiles the supplied Jiffle script into Java. An inventory that records the GeoServer version and stops there cannot answer whether a given deployment carries the vulnerable component, which is exactly how an estate keeps a maximum-severity unauthenticated RCE it does not know it has. Applied here the control means the inventory resolves to the JAR level for these deployments: record the jt-jiffle version each instance loads against the fixed 1.1.22 / 1.2.22 line as well as the GeoServer version against 2.18.6, 2.19.6 and 2.20.4, and search for the jt-jiffle artifact itself rather than only for the product name. The packet describes the flaw as affecting programs that allow a Jiffle script to be supplied via network request, with GeoServer named as the downstream project it particularly affects, so any other application in the estate that bundles jt-jiffle carries the same compile-and-execute sink and a product-name sweep will report it clean. This is also the step that reaches the unattended instance: a GeoServer standing up a public map service outside routine maintenance cannot be placed on any remediation clock until an inventory names both the instance and the component inside it.",
48992
+ "evidence": "The packet's affected field identifies JAI-EXT jt-jiffle (used by GeoServer) as the vulnerable component, and its vector states that programs allowing Jiffle script to be provided via network request can lead to remote code execution because the script is compiled into Java code via Janino and executed, and that this in particular affects the downstream GeoServer project. affected_versions gives JAI-EXT (jt-jiffle) before 1.1.22 / 1.2.22 and GeoServer before 2.18.6 / 2.19.6 / 2.20.4. The cited A.8.8 gap states that technical-vulnerability management must track transitive dependencies — jt-jiffle inside GeoServer — because a top-level GeoServer inventory alone misses the vulnerable component; the UK CAF gap records GeoServer instances as frequently deployed as unattended GIS infrastructure outside routine maintenance, and the NIS2 gap records vulnerability-management obligations as not by themselves surfacing what is needed here.",
48993
+ "gap_closes": [
48994
+ "ISO-27001-2022-A.8.8",
48995
+ "NIS2-Art21-vulnerability-management",
48996
+ "UK-CAF-B4"
48997
+ ]
48998
+ },
48999
+ {
49000
+ "id": "NEW-CTRL-025",
49001
+ "name": "CONFIGURATION-SIDE-LIVE-PATCH-INVENTORY",
49002
+ "description": "This CVE ships with exactly the configuration-side path this control requires operators to hold ready: the packet states that users unable to upgrade may negate the ability to compile Jiffle scripts from the final application by removing janino-x.y.z.jar from the classpath, which takes the compile-and-execute sink out of reach without waiting for the JAI-EXT or GeoServer release. The requirement is that this path is inventoried, tested on a staging instance, and deployable independently of the upgrade path — and it matters more than usual here because segmentation is not an alternative: the packet's boundary-protection gap records the Jiffle-backed WPS process as reachable on the same unauthenticated WMS/OWS endpoint the service exists to publish, so there is no network restriction that removes the path while leaving the service useful. Removing the sink is the lever that does. Two preconditions must be stated before this is recorded as an active mitigation. Removing janino negates Jiffle compilation altogether, so a deployment that legitimately renders Jiffle-backed processes loses that function and has to confirm it does not depend on it before applying this. And the classpath change is not in effect while the servlet container is still running with janino already loaded — the packet records no live-patch primitive and no host reboot, so the JVM has to be restarted and the state measured on what the running instance has loaded rather than on what is on disk.",
49003
+ "evidence": "The packet's vector states that users unable to upgrade may negate the ability to compile Jiffle scripts from the final application by removing janino-x.y.z.jar from the classpath, and that version 1.2.22 contains a patch disabling the ability to inject malicious code into the resulting script. The attack_vector describes an unauthenticated WPS request to the GeoServer WMS/OWS endpoint invoking the ras:Jiffle process with injected Java that Janino compiles and executes. The cited boundary-protection gap states that boundary protection is ineffective because the Jiffle-backed WPS process is reachable on the same unauthenticated WMS/OWS endpoint the service exists to expose; the NIS2 gap states that vulnerability-management obligations do not by themselves surface the compensating control of removing janino from the classpath when immediate upgrade is not possible. patch_required_reboot is false and live_patch_available is false, with live_patch_notes recording no live-patching primitive for this product.",
49004
+ "gap_closes": [
49005
+ "NIS2-Art21-vulnerability-management",
49006
+ "NIST-800-53-SC-7",
49007
+ "NIST-800-53-SI-2"
49008
+ ]
49009
+ },
49010
+ {
49011
+ "id": "NEW-CTRL-001",
49012
+ "name": "CISA-KEV-RESPONSE-SLA",
49013
+ "description": "For GeoServer this control's requirement is that a verified mitigation lands on the clock the 2024-06-26 KEV listing opened, and that the record says which mitigation each instance got — because the two available paths are not equivalent. The fixed builds remove the injection (jt-jiffle 1.1.22 / 1.2.22; GeoServer 2.18.6, 2.19.6 or 2.20.4, so the target depends on which of the three branches the instance is on), while removing janino from the classpath removes the Jiffle feature instead; an instance carrying the second is mitigated, not fixed, and reverts the moment the jar returns through a redeploy or a container-image rebuild. Urgency here is not a CVSS argument: the packet puts EPSS at roughly 0.99 with confirmed in-the-wild exploitation, and records that on a default install the Jiffle-backed WPS endpoint is reachable unauthenticated, so the exposure needs no credential and no operator misconfiguration to be live. Precondition on measurement: patch_required_reboot is false, meaning no host reboot, but the replaced jt-jiffle jar is not in force while the servlet container is still running the old one — completion is the version the running GeoServer has loaded, not the artifact deployed beside it.",
49014
+ "evidence": "The packet records cisa_kev true with kev_date 2024-06-26, active_exploitation confirmed, poc_available true, CVSS 10 with rwep_score 70, and an active-exploitation note stating it was added to KEV after in-the-wild exploitation against GeoServer, which bundles the vulnerable jt-jiffle, and that on a default install the Jiffle-backed WPS endpoint is reachable unauthenticated for unauthenticated RCE, with EPSS approximately 0.99. patch_available is true with affected_versions giving JAI-EXT (jt-jiffle) before 1.1.22 / 1.2.22 and GeoServer before 2.18.6 / 2.19.6 / 2.20.4; the vector records the alternative of removing janino-x.y.z.jar from the classpath for users unable to upgrade. live_patch_available is false and patch_required_reboot is false, with live_patch_notes recording the vendor update as the remediation. The cited Essential Eight gap states patch timelines exceed the exploitation window for a maximum-severity, publicly-reproduced unauthenticated RCE.",
49015
+ "gap_closes": [
49016
+ "NIST-800-53-SI-2",
49017
+ "AU-Essential-8-Patch",
49018
+ "ISO-27001-2022-A.8.8"
49019
+ ]
49020
+ }
49021
+ ]
48390
49022
  },
48391
49023
  "CVE-2024-4358": {
48392
49024
  "name": "Progress Telerik Report Server Authentication Bypass by Spoofing Vulnerability",
@@ -49412,7 +50044,32 @@
49412
50044
  "adequate": false,
49413
50045
  "gap": "Flaw remediation depends on the Chrome auto-update reaching every endpoint; unmanaged or air-gapped browsers lag the fix while an active zero-day is in circulation."
49414
50046
  }
49415
- }
50047
+ },
50048
+ "new_control_requirements": [
50049
+ {
50050
+ "id": "NEW-CTRL-057",
50051
+ "name": "BROWSER-MANAGED-UPDATE-NO-DEFERRAL",
50052
+ "description": "The packet scopes this past its headline product: affected_versions lists Google Chrome below 124.0.6367.201 and, separately, Chromium-based browsers embedding the pre-124.0.6367.201 Visuals component, and the affected field names Microsoft Edge and Opera among them. Each of those ships on its own vendor update channel, so the no-deferral requirement has to be set on every browser update ring in the estate rather than on the one the estate standardised on — an Edge or Opera population held on a slow ring keeps running the vulnerable Visuals code while the Chrome ring reports complete. The packet gives the fixed Chrome build (124.0.6367.201) and gives no build numbers for the other Chromium-based products, so each of those has to be pinned to its own vendor's build carrying this fix rather than to Chrome's number. Completion is measured on the version the running browser reports, not on what is staged on disk: patch_required_reboot is false, so no host reboot is being coordinated, but the packet records no live-patch path and states the vendor update is the remediation, and a browser process that has not been relaunched is still executing the pre-fix Visuals code — which is the whole exposure here, since the flaw is reached from a renderer already compromised inside that same running process tree. Precondition: an update ring only reaches browsers a management channel can see and set policy on. This entry's flaw-remediation gap records that remediation depends on the Chrome auto-update reaching every endpoint and that unmanaged or air-gapped browsers lag the fix; for those installs the ring policy delivers nothing and the browser has to be reached by whatever channel does manage it, or removed from the host. The distinguishing test is to query the running build from each browser product on a sample of endpoints and compare it against that product's fixed build — an estate that reports its Chrome ring at 100 percent while Edge and Opera version data is absent has proved currency for one product and nothing about the component the packet actually names.",
50053
+ "evidence": "affected_versions: 'Google Chrome < 124.0.6367.201' and 'Chromium-based browsers embedding the pre-124.0.6367.201 Visuals component'; the affected field names 'Google Chrome (and Chromium-based browsers such as Microsoft Edge and Opera) prior to 124.0.6367.201'. patch_available true; patch_required_reboot false; 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 2024-05-13, active_exploitation confirmed, CVSS 9.6, RWEP 54, poc_available false. The vector records a use-after-free in Visuals allowing 'a remote attacker who had compromised the renderer process to potentially perform a sandbox escape via a crafted HTML page'. The AU-Essential-8-Patch gap records that the patch-applications control 'tracks app currency but rarely enforces same-day browser updates matching the zero-day timeline'; the UK-CAF-B4 gap records that system-security assurance 'rarely provides fleet-wide browser-version proof' during this exploitation window; the NIST-800-53-SI-2 gap records that 'unmanaged or air-gapped browsers lag the fix while an active zero-day is in circulation'; the ISO-27001-2022-A.8.8 gap records that patch coverage 'cannot be proven during the exploitation window'.",
50054
+ "gap_closes": [
50055
+ "AU-Essential-8-Patch",
50056
+ "NIST-800-53-SI-2",
50057
+ "ISO-27001-2022-A.8.8",
50058
+ "UK-CAF-B4"
50059
+ ]
50060
+ },
50061
+ {
50062
+ "id": "NEW-CTRL-001",
50063
+ "name": "CISA-KEV-RESPONSE-SLA",
50064
+ "description": "This is the CVE shape that a severity-and-precondition triage queue demotes and the KEV clock does not. The vector states exploitation is performed by an attacker who has already compromised the renderer process, so a model that treats 'needs a prior foothold' as mitigating ranks a sandbox-escape link below unauthenticated RCEs — while the packet records confirmed in-the-wild exploitation as a Chrome zero-day with the vendor acknowledging an exploit exists, and poc_available false, meaning there is no public artifact to make the risk feel concrete to a reviewer. Under this control the KEV listing of 2024-05-13 sets the clock instead: the fixed build is driven across Chrome and every other Chromium-based browser the packet names on the KEV timeline, not on the browser-update cadence the estate normally runs, and the population that cannot take it inside the window gets a documented compensating control with a dated action item rather than a deferral. Precondition on what 'verified mitigation' can mean here: the packet records patch_available true with live_patch_available false and no vendor mitigation rule, so there is nothing to stand in for the fixed build — the only satisfying evidence is the fixed version running. Because the update needs no host reboot, the single step between staged and running is the browser relaunch, and that is the step users defer for days on a browser they keep open; a KEV clock closed on deployment records rather than on relaunched-version telemetry closes on the wrong event.",
50065
+ "evidence": "CISA KEV listed 2024-05-13; active_exploitation confirmed; active_exploitation_notes: 'Exploited in the wild as a Chrome zero-day (Google acknowledged an exploit exists) before the 124.0.6367.201 fix; the Visuals use-after-free is used from a renderer-compromised context to attempt a sandbox escape.' poc_available false; RWEP 54 against CVSS 9.6; patch_available true; live_patch_available false with live_patch_notes stating the vendor update is the remediation and requires no reboot. The NIS2-Art21-vulnerability-management gap records that 'vulnerability-management obligations do not mandate blocking browsing until the browser is confirmed patched against an actively exploited client-side RCE'; the NIST-800-53-SI-2 gap records that remediation depends on the Chrome auto-update reaching every endpoint.",
50066
+ "gap_closes": [
50067
+ "NIST-800-53-SI-2",
50068
+ "NIS2-Art21-vulnerability-management",
50069
+ "AU-Essential-8-Patch"
50070
+ ]
50071
+ }
50072
+ ]
49416
50073
  },
49417
50074
  "CVE-2023-7028": {
49418
50075
  "name": "GitLab Community and Enterprise Editions Improper Access Control Vulnerability",
@@ -53489,7 +54146,32 @@
53489
54146
  "adequate": false,
53490
54147
  "gap": "Technical vulnerability management presumes an available remediation path, but chipset-driver fixes are OEM-gated and frequently unavailable for legacy models."
53491
54148
  }
53492
- }
54149
+ },
54150
+ "new_control_requirements": [
54151
+ {
54152
+ "id": "NEW-CTRL-126",
54153
+ "name": "MOBILE-OS-MINIMUM-PATCH-LEVEL-ENFORCEMENT",
54154
+ "description": "The trigger the packet records is a local application: a use-after-free reached when process shell memory is freed through an IOCTL munmap call while process initialization is still in progress, ending in local privilege escalation. Nothing sits in front of that — the code is already on the device — and Qualcomm's fix reaches a unit only inside an OEM firmware/OS update the operator cannot push, which is what all five framework gaps on this entry record. So for this CVE the control's access-condition half is the load-bearing one: on the Snapdragon Mobile handsets an MDM/UEM enrols, the OEM build carrying the Qualcomm May 2022 bulletin fix must function as a condition of access — mail, VPN and document access denied to a handset below it — not as a row on a patch-compliance dashboard, because a dashboard that surfaces the stale build while the device keeps its access has recorded the exposure rather than removed it. The distinguishing test is to enrol a handset pinned below the fixed build and confirm the policy actually refuses it access to protected resources. Preconditions, both load-bearing here. First, this reaches only devices a management console enrols: `affected` also names Snapdragon Auto, Compute, Connectivity, Consumer IOT, Industrial IOT and Voice & Music platforms, and an in-vehicle head unit or an industrial gateway takes no device-compliance policy, so scoping this to handsets alone leaves those families untouched and they belong on the enumeration-and-replacement path instead. Second, live_patch_available is false and the packet states remediation requires the OEM update plus a device reboot, so a device that has taken the update but not rebooted is still executing the vulnerable driver and must be counted as exposed. Restricting which applications may be installed raises the bar for getting the attacker's application onto the device, but it does not evict one already installed, and a device suspected of already running it belongs on the incident path rather than the install-policy path.",
54155
+ "evidence": "The packet records patch_available true with patch_required_reboot true, live_patch_available false, and live_patch_notes stating there is no live-patch mechanism for chipset drivers and that remediation requires the OEM firmware/OS update carrying Qualcomm's fix plus a device reboot. `affected` names Snapdragon Auto, Compute, Connectivity, Consumer IOT, Industrial IOT, Mobile and Voice & Music platforms with the use-after-free triggered when process shell memory is freed via an IOCTL munmap call during process initialization; affected_versions points to the Qualcomm May 2022 security bulletin. CISA KEV listing 2023-12-05 with active_exploitation confirmed. The UK-CAF-B4 gap states a chipset-driver use-after-free on unmanaged mobile is outside the org's patch reach; the NIS2-Art21-patch-management gap states patching duties cannot compel OEMs/carriers to deliver the chipset driver update and that enterprise tooling cannot patch the affected driver directly.",
54156
+ "gap_closes": [
54157
+ "NIST-800-53-SI-2",
54158
+ "AU-Essential-8-Patch",
54159
+ "NIS2-Art21-patch-management",
54160
+ "UK-CAF-B4"
54161
+ ]
54162
+ },
54163
+ {
54164
+ "id": "NEW-CTRL-122",
54165
+ "name": "EOL-ASSET-DECOMMISSION",
54166
+ "description": "patch_available:true here means Qualcomm shipped a fix, not that any given unit can receive it, and the packet states the difference outright: the Essential-Eight gap records that older device models may never receive the OEM firmware carrying the fix, and the ISO A.8.8 gap that chipset-driver fixes are OEM-gated and frequently unavailable for legacy models. That is a no-ongoing-patch-path condition determined per unit, so the control's requirement is to resolve it per unit rather than at the CVE level. Inventory every Snapdragon-based asset in service across the platforms the packet names — Mobile, Compute, Connectivity, Auto, Consumer IOT, Industrial IOT and Voice & Music — and record for each whether its OEM has actually shipped a build carrying the May 2022 bulletin fix for that exact model. Units that have one are interim items on the clock that opened with the 2023-12-05 KEV listing; because the packet registers no live-patch path and a required device reboot, a unit that took the update but has not rebooted is still running the vulnerable driver and is not remediated. Units whose OEM has shipped nothing cannot be patched by any operator action at all, so the terminal state for them is replacement on a dated schedule — a risk acceptance with no removal date leaves a confirmed-exploited local privilege escalation in service indefinitely, and that unit stays exposed not only to this use-after-free but to everything found in that driver since its last build. The Auto and Industrial IOT families are where this bites hardest, because those units have long service lives and no consumer refresh cycle to retire them incidentally. Scope it to the Snapdragon platforms the packet names: it gives no mapping into other vendors' chipsets, so treating every mobile or embedded device in the estate as an instance of this CVE manufactures replacement work against hardware no evidence implicates.",
54167
+ "evidence": "The packet's AU-Essential-8-Patch gap states the exploited-flaw patch window is not achievable when older device models may never receive the OEM firmware carrying the fix; the ISO-27001-2022-A.8.8 gap states technical vulnerability management presumes an available remediation path but chipset-driver fixes are OEM-gated and frequently unavailable for legacy models; the NIST-800-53-SI-2 gap states devices remain exposed long after the bulletin. patch_available is true, patch_required_reboot true, live_patch_available false, with live_patch_notes recording no live-patch mechanism for chipset drivers. `affected` enumerates Snapdragon Auto, Compute, Connectivity, Consumer IOT, Industrial IOT, Mobile and Voice & Music; affected_versions cites the Qualcomm May 2022 security bulletin. CISA KEV 2023-12-05, active_exploitation confirmed, RWEP 55, CVSS 7.8, poc_available false.",
54168
+ "gap_closes": [
54169
+ "ISO-27001-2022-A.8.8",
54170
+ "AU-Essential-8-Patch",
54171
+ "NIST-800-53-SI-2"
54172
+ ]
54173
+ }
54174
+ ]
53493
54175
  },
53494
54176
  "CVE-2023-42917": {
53495
54177
  "name": "Apple Multiple Products WebKit Memory Corruption Vulnerability",
@@ -54752,7 +55434,41 @@
54752
55434
  "adequate": false,
54753
55435
  "gap": "Hardening/removing unused management functionality would drop the installAppPackage.php surface, but the Essential Eight control is not tied to this appliance interface and is easily left enabled."
54754
55436
  }
54755
- }
55437
+ },
55438
+ "new_control_requirements": [
55439
+ {
55440
+ "id": "NEW-CTRL-134",
55441
+ "name": "DEVICE-MANAGEMENT-GATEWAY-CONFIG-ENDPOINT-AUTH-INPUT-NEUTRALIZATION",
55442
+ "description": "J-Web is the management plane on these EX-series switches, and installAppPackage.php is a file-accepting endpoint on it that enforces no authentication at all — an unauthenticated, network-based request uploads arbitrary files into a restricted J-Web directory. Bound to this product the control means two things. Every file-accepting J-Web endpoint authorizes its caller before the upload is processed, so a caller with no credential cannot cause a write. And no EX-series switch is left with J-Web reachable from a segment with no operational need for it: disabled outright on switches administered through another path, and confined to a management network on those where the web interface must stay available. The account model is not the lever here — the attacker never presents an operator credential, so per-account access rules on the switch are never consulted and an identity attestation over the device passes while the upload path stays open. Distinguishing test: from a general user VLAN, POST a file to installAppPackage.php on a staging EX switch and confirm it is refused before anything is written; 'J-Web is on the internal network' is a statement about topology, not a demonstration that the endpoint is unreachable from untrusted segments. Precondition: the endpoint's own authentication is restored by the fixed Junos release, not by this control. Until that release is running, restricting reachability bounds who can send the request and leaves the endpoint fully exploitable to anything inside the permitted segment — and disabling J-Web is unavailable where it is the operational management path.",
55443
+ "evidence": "affected: Juniper Networks Junos OS on EX Series, J-Web interface; unauthenticated arbitrary file upload via installAppPackage.php, under CWE-306. attack_vector: an unauthenticated attacker sends a request to installAppPackage.php that lacks an authentication check, uploading arbitrary files into a restricted J-Web directory. The NIST-800-53-AC-3 gap states access enforcement is exactly what is missing and that until patched no access policy compensates; the NIST-800-53-SC-7 gap names boundary protection that exposes J-Web as the precondition and segmenting/disabling the management interface as the durable mitigation; the NIS2-Art21-network-security gap states network-security duties do not mandate management-plane isolation; the AU-Essential-8-App-Hardening gap states that hardening or removing unused management functionality would drop the installAppPackage.php surface but is easily left enabled; the UK-CAF-B4 gap states system-security expectations do not require disabling or segmenting J-Web on EX-series switches. patch_available true, live_patch_available false, patch_required_reboot true.",
55444
+ "gap_closes": [
55445
+ "NIST-800-53-AC-3",
55446
+ "NIST-800-53-SC-7",
55447
+ "NIS2-Art21-network-security",
55448
+ "UK-CAF-B4",
55449
+ "AU-Essential-8-App-Hardening"
55450
+ ]
55451
+ },
55452
+ {
55453
+ "id": "NEW-CTRL-001",
55454
+ "name": "CISA-KEV-RESPONSE-SLA",
55455
+ "description": "This entry is the case where a CVSS-keyed queue produces the wrong answer: a 5.3 base score against RWEP 76, EPSS 0.85 at the 99.7th percentile, a public PoC, and exploitation observed from Aug 25 2023 on a flaw the packet calls a documented link in a public pre-auth RCE chain. The requirement is that the remediation clock runs from the 2023-11-13 KEV listing and the chain evidence rather than the base-score band, across every EX-series switch, with the target taken per branch — 20.4R3-S8, 21.2R3-S6, 21.3R3-S5, 21.4R3-S4, 22.1R3-S3, 22.2R3-S1, 22.3R2-S2/22.3R3, 22.4R2-S1/22.4R3 — because an enumeration keyed to one release number marks every other branch clean. The packet records 21.1R1 and later as affected while naming no fixed release in that branch, so a 21.1 switch cannot be closed against this list and needs a branch that has one. Completion is the running Junos release: there is no live-patch path and the fix requires a reboot, so a switch with the image installed but not yet rebooted onto it is still serving the vulnerable J-Web and counts as exposed — on a switch carrying production traffic that reboot is the step most likely to be deferred, and a deferral recorded as patched is the specific way this remediation goes wrong.",
55456
+ "evidence": "CVSS 5.3, RWEP 76, poc_available true; active_exploitation_notes record EPSS 0.85 (99.7th pct), exploitation observed from Aug 25 2023 as part of the actively-exploited Juniper J-Web pre-auth RCE chain, and KEV listing 2023-11-13. The NIST-800-53-SI-2 gap states the medium base score understates a preauth file-upload primitive that is a documented link in a public RCE chain and that CVSS-keyed patch SLAs deprioritize it wrongly; the ISO-27001-2022-A.8.8 gap states triage keyed to the 5.3 base score misses that it is a proven link in a public RCE chain warranting out-of-cycle remediation on any exposed EX-series switch. affected_versions give the per-branch fixed releases listed above, and the vector records 21.1 versions 21.1R1 and later as affected with no fixed 21.1 release named. live_patch_available false; live_patch_notes: remediation requires applying the fixed release and rebooting; patch_required_reboot true.",
55457
+ "gap_closes": [
55458
+ "NIST-800-53-SI-2",
55459
+ "ISO-27001-2022-A.8.8"
55460
+ ]
55461
+ },
55462
+ {
55463
+ "id": "NEW-CTRL-032",
55464
+ "name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
55465
+ "description": "The primitive on this CVE is a write, not a crash: an unauthenticated request to installAppPackage.php places arbitrary files into a restricted J-Web directory, and the packet chains that with the PHPRC flaw into pre-auth RCE. Exploitation of this J-Web chain was observed from Aug 25 2023, roughly three months ahead of the KEV listing, so for any EX-series switch whose J-Web was reachable during that window the fixed release closes the upload path and removes nothing already written through it. Remediation for those units is therefore config-capture and comparison against a known-good baseline, rebuild from a vendor image rather than an in-place upgrade that inherits the existing filesystem, and rotation of the credentials the switch held and the credentials that transited it. Precondition and scope, which decide which units this applies to: a switch whose J-Web was disabled or unreachable throughout the window is remediated by the fixed release plus its reboot, and the rebuild path is not warranted for it. Distinguishing that case requires knowing historical J-Web reachability rather than current configuration, which is why the estate enumeration has to record exposure alongside the running release — a switch whose J-Web was opened temporarily and later closed reads clean on a configuration snapshot taken today.",
55466
+ "evidence": "attack_vector: an unauthenticated attacker sends a request to installAppPackage.php that lacks an authentication check, uploading arbitrary files into a restricted J-Web directory; combined with the PHPRC flaw this yields pre-auth RCE. active_exploitation_notes record it as part of the actively-exploited Juniper J-Web pre-auth RCE chain providing the file-write primitive that chains toward RCE, with exploitation observed from Aug 25 2023, ahead of the 2023-11-13 KEV listing; active_exploitation is confirmed and poc_available true. The UK-CAF-B4 gap describes the unauthenticated installAppPackage.php upload as the documented first link of watchTowr's public preauth RCE chain. live_patch_available false; live_patch_notes: remediation requires applying the fixed release and rebooting — which changes the running code and does not remove files already written.",
55467
+ "gap_closes": [
55468
+ "NIST-800-53-SI-2"
55469
+ ]
55470
+ }
55471
+ ]
54756
55472
  },
54757
55473
  "CVE-2023-36851": {
54758
55474
  "name": "Juniper Junos OS SRX J-Web Missing Authentication File Upload/Download",
@@ -55604,7 +56320,30 @@
55604
56320
  "adequate": false,
55605
56321
  "gap": "Essential-8 patch-applications targets cover this class, but Acrobat/Reader is commonly under-patched on endpoints, leaving the UAF exploitable."
55606
56322
  }
55607
- }
56323
+ },
56324
+ "new_control_requirements": [
56325
+ {
56326
+ "id": "NEW-CTRL-144",
56327
+ "name": "EMBEDDED-MEDIA-PARSER-LIBRARY-INVENTORY-AND-PATCH-PARITY",
56328
+ "description": "The packet's affected_versions field is why this is an inventory problem and not a routine patch item: it names two distinct Adobe update tracks — Acrobat/Reader DC (Continuous) at 22.003.20282 and 22.003.20281 and earlier, and Acrobat/Reader 2020 (Classic) at 20.005.30418 and earlier — and on a real estate those ship as separate products on separate update schedules, with per-user copies landing outside managed software distribution entirely. The requirement here is to enumerate every Acrobat and every Reader install across both tracks and on both platforms the packet names (Windows and macOS), and confirm each one reports a build past its track's affected range, rather than closing the flaw-remediation ticket when the single inventoried Reader package updates. An estate that patches Reader on the Continuous track while a Classic 2020 Acrobat keeps its build still opens crafted PDFs into the same use-after-free, with an attestation that reads clean. Keep the scope to Acrobat and Reader: the packet ties the use-after-free to those products and provides no mapping from the vulnerable code into other PDF-handling software, so instructing operators to treat every PDF-capable binary in the estate as an instance of this CVE manufactures findings and remediation work against renderers no evidence implicates; widen the inventory only where a verified source identifies another product carrying the same component. Preconditions: this reaches only copies the inventory can see and the operator can update — an unmanaged per-user install is remediated by removing it, not by recording it as patched. And while the packet records no host reboot for this fix and no live-patch path, replacing the binary on disk does not change the code a copy of Acrobat or Reader already has open, so a workstation is remediated when the running application reports a fixed build, not when the installer exits.",
56329
+ "evidence": "affected: 'Adobe Acrobat and Reader (Windows/macOS) — a use-after-free reachable by opening a crafted PDF results in arbitrary code execution in the context of the current user.' affected_versions names three entries across two tracks: 'Acrobat/Reader DC (Continuous) 22.003.20282 and earlier', '22.003.20281 and earlier', and 'Acrobat/Reader 2020 (Classic) 20.005.30418 and earlier'. cwe_refs lists CWE-416. cisa_kev true with kev_date 2023-10-10, active_exploitation confirmed, poc_available true. patch_available true, patch_required_reboot false, live_patch_available false, with live_patch_notes stating 'No vendor live-patch mechanism; remediation requires applying the vendor fixed release.' The NIST-800-53-SI-2 gap states endpoint-software patch cadence for client apps like Acrobat is often slow relative to how quickly a KEV-listed, PoC-available UAF is weaponized in phishing; the ISO-27001-2022-A.8.8 gap states technical-vulnerability management typically tracks server estates more tightly than endpoint client apps, so this KEV-listed use-after-free lingers unpatched on user workstations; the AU-Essential-8-Patch gap states Acrobat/Reader is commonly under-patched on endpoints.",
56330
+ "gap_closes": [
56331
+ "NIST-800-53-SI-2",
56332
+ "AU-Essential-8-Patch",
56333
+ "ISO-27001-2022-A.8.8"
56334
+ ]
56335
+ },
56336
+ {
56337
+ "id": "NEW-CTRL-120",
56338
+ "name": "DOWNLOAD-PROVENANCE-ENFORCEMENT",
56339
+ "description": "Exploitation of this CVE requires the victim to open an attacker-supplied PDF — the packet states user interaction is required and describes phishing as the delivery path — so on any workstation that has not yet reached a fixed Acrobat or Reader build, the delivery path is the only lever the operator holds. Require the untrusted-origin marking on every PDF arriving by mail, web download, or an untrusted file share, and require marked PDFs to open in Acrobat/Reader's Protected View, the reduced-privilege render, instead of the full parsing path that carries the use-after-free at the user's own process privilege. The marking has to survive the container the document arrives in: a PDF extracted from an archive, mounted from an ISO, or renamed must still reach the reader as externally sourced rather than losing the tag on the way, and enabling all features on an externally sourced document must be a policy decision rather than a user click at the moment of the phish. This is also the answer to the malicious-code-protection gap on this entry, and the reason it is a containment control rather than a detection one: a crafted-PDF memory-corruption exploit gives signature-based mail and endpoint scanning nothing reliable to match, so the control has to constrain what the parser runs as, not try to recognize the document. The distinguishing test: mail a PDF nested inside a ZIP to a managed workstation, extract it, and confirm the extracted file still opens in Protected View — an attestation that Protected View is enabled in policy passes while a provenance-stripped document reaches the full parser with the user's privileges. Preconditions: Protected View reduces what the resulting code execution reaches, it does not remove the use-after-free — the vulnerable parser still runs on attacker-controlled content, and the packet records no live-patch path, so only the vendor fixed release removes the flaw. A PDF opened from a location policy treats as trusted, or delivered by an ingress path that does not apply the marking, reaches the full parser regardless. And none of this evicts an attacker who already executed code in a user's context during the exposure window; confirmed exploitation means a workstation that opened untrusted PDFs while unpatched belongs on the incident path rather than being closed on the patch record.",
56340
+ "evidence": "vector: 'Exploitation of this issue requires user interaction in that a victim must open a malicious file.' attack_vector: 'A victim opens a malicious PDF that triggers a use-after-free in Acrobat/Reader, corrupting memory to achieve arbitrary code execution in the current user's context; typically delivered via phishing.' The UK-CAF-B4 gap states system-security expectations don't reliably enforce Protected View / sandboxing and prompt client-app patching, so the exploit runs in the user's context; the NIST-800-53-SI-3 gap states malicious-code protection frequently fails to detect a novel crafted-PDF UAF exploit, so signature-based mail/endpoint AV lets the weaponized document through. cisa_kev true with kev_date 2023-10-10, active_exploitation confirmed, poc_available true. patch_available true, live_patch_available false with live_patch_notes 'No vendor live-patch mechanism; remediation requires applying the vendor fixed release.'",
56341
+ "gap_closes": [
56342
+ "UK-CAF-B4",
56343
+ "NIST-800-53-SI-3"
56344
+ ]
56345
+ }
56346
+ ]
55608
56347
  },
55609
56348
  "CVE-2023-20109": {
55610
56349
  "name": "Cisco IOS and IOS XE Group Encrypted Transport VPN Out-of-Bounds Write Vulnerability",
@@ -56297,7 +57036,32 @@
56297
57036
  "adequate": false,
56298
57037
  "gap": "Patch-application controls depend on OEM update delivery for mobile firmware, which is slower and less complete than for managed workstations."
56299
57038
  }
56300
- }
57039
+ },
57040
+ "new_control_requirements": [
57041
+ {
57042
+ "id": "NEW-CTRL-126",
57043
+ "name": "MOBILE-OS-MINIMUM-PATCH-LEVEL-ENFORCEMENT",
57044
+ "description": "The packet's actor is a local, non-privileged app already on the device performing improper GPU memory-processing operations against the Arm Mali GPU kernel driver to reach already-freed memory and escalate. The fix is a driver-level correction that only arrives on a device as an OEM firmware/OTA level, so the enforceable object for an operator is the device's reported build, and it must function as an access condition — mail, VPN and document access denied to any device below it — not a row on a patch-compliance dashboard. Scope from the packet's affected and affected_versions rather than from the vector: it names multiple Mali driver families (Midgard, Bifrost, Valhall, Arm 5th Gen) across Android and Linux devices, with fixed releases at Midgard r44p0 and Bifrost/Valhall/Arm 5th Gen r44p0 and related fixes per Arm's advisory, so an inventory built only around one vendor's Android handsets reports clean across Linux-based and embedded hardware carrying the same driver families. The distinguishing test is to enrol a device pinned below its family's fixed driver release and confirm the policy actually denies it protected resources; an estate that lists the stale build on a report while the device keeps its access has recorded the exposure rather than removed it. Preconditions, both load-bearing here: patch_available is true but live_patch_available is false and the packet states remediation requires applying the fixed release and rebooting, so a device that has taken the OTA but not restarted is still executing the vulnerable driver and must be counted exposed; and devices whose SoC vendor or OEM has not shipped a build carrying the fix cannot reach the condition at all — those need a dated replacement schedule, because an open-ended exception leaves a KEV-listed flaw with confirmed exploitation in service indefinitely. Constraining which apps may install raises the bar for getting the attacker's app onto the device but does not evict one already installed; a device suspected of running it belongs on the incident path, not the install-policy path.",
57045
+ "evidence": "Packet: cisa_kev true, kev_date 2023-10-03, active_exploitation confirmed, rwep_score 57, cvss 5.5. affected: \"Arm Mali GPU Kernel Driver (multiple driver families, e.g. Midgard/Bifrost/Valhall/Arm 5th Gen) on Android/Linux devices; a local non-privileged user can access already-freed memory.\" affected_versions: \"Arm Mali GPU Kernel Driver versions prior to the fixed releases listed in Arm's advisory (Midgard r44p0, Bifrost/Valhall/Arm 5th Gen r44p0 and related fixes)\". patch_available true, patch_required_reboot true, live_patch_available false, live_patch_notes \"No vendor live-patch mechanism; remediation requires applying the fixed release and rebooting.\" active_exploitation_notes: Arm warned the flaw may be under limited, targeted exploitation and Google TAG attributed in-the-wild use to a commercial surveillance (spyware) vendor; the affected drivers are present across a very large Android device population. NIST-800-53-SI-2 gap: fixes \"must flow through SoC vendors and OEMs into device firmware/OTA updates; this multi-party patch chain leaves many Android devices exposed long after Arm's fix\". NIS2-Art21-patch-management gap: the correction \"must traverse Arm → SoC vendor → OEM → carrier OTA\".",
57046
+ "gap_closes": [
57047
+ "NIST-800-53-SI-2",
57048
+ "AU-Essential-8-Patch",
57049
+ "ISO-27001-2022-A.8.8",
57050
+ "NIS2-Art21-patch-management",
57051
+ "UK-CAF-B4"
57052
+ ]
57053
+ },
57054
+ {
57055
+ "id": "NEW-CTRL-003",
57056
+ "name": "KERNEL-EXPLOITATION-DETECTION",
57057
+ "description": "This entry carries a monitoring gap alongside its patch-chain gaps, and the packet describes the behaviour precisely enough to key on it. The rule keys on the pairing the packet documents: an ordinary, non-privileged installed application driving GPU memory-processing operations at the Mali kernel driver interface, followed by a privilege transition in that same process — an unprivileged app acquiring kernel-level or root capability with no user interaction. Both halves are needed, because either alone is normal traffic on a device with a GPU: graphics workloads talk to the Mali driver constantly, and privileged processes exist legitimately; it is the transition arriving out of an unprivileged app's own driver activity that distinguishes this exploit. Note what will not see it. The packet records poc_available as false, so there is no published exploit artifact to signature and a tool-name or hash-based rule has nothing to match; and the primitive is access to already-freed memory rather than a fault, so an exploit doing exactly what the packet describes may complete without a crash — alerting on process crashes or on named exploit tooling would miss it entirely. Precondition, and it is the reason this gap exists rather than a lever the operator always holds: this requires kernel-level audit or eBPF telemetry collected on the device and shipped off-device before the attempt. The packet's own system-monitoring gap records that mobile-device monitoring has little visibility into GPU-driver-level kernel exploitation, so on a stock consumer Android handset the operator generally cannot enable it; the control is reachable on managed estates and on the Linux-based Mali devices the packet also names, and a rule authored after the fact against telemetry nobody was collecting produces nothing. Detection also does not prevent the escalation and does not remove what an implant left behind — it bounds exposure to alert-and-response time during the window before the fixed driver release and its reboot land, and given confirmed exploitation attributed to a commercial surveillance vendor, a device that produces the signal belongs on the incident path rather than the patch queue.",
57058
+ "evidence": "Packet NIST-800-53-SI-4 gap: \"Mobile-device monitoring has little visibility into GPU-driver-level kernel exploitation, so this LPE proceeds without a practical detection signal.\" UK-CAF-B4 gap: \"System-security assurance relies on the app sandbox holding, yet a kernel use-after-free reached from a non-privileged app breaks that boundary, and mobile telemetry gives the control no practical signal for GPU-driver-level exploitation.\" attack_vector: \"A local, non-privileged app performs improper GPU memory-processing operations against the Mali kernel driver to access already-freed memory, achieving kernel privilege escalation as a stage in a targeted surveillance exploit chain.\" poc_available false; active_exploitation confirmed; Google TAG attributed in-the-wild use to a commercial surveillance (spyware) vendor; affected covers Android/Linux devices; live_patch_available false with remediation requiring the fixed release and a reboot.",
57059
+ "gap_closes": [
57060
+ "NIST-800-53-SI-4",
57061
+ "UK-CAF-B4"
57062
+ ]
57063
+ }
57064
+ ]
56301
57065
  },
56302
57066
  "CVE-2023-5217": {
56303
57067
  "name": "Google Chromium libvpx Heap Buffer Overflow Vulnerability",
@@ -58424,7 +59188,41 @@
58424
59188
  "adequate": false,
58425
59189
  "gap": "A.5.15 access-control policy assumes administrative rights are assigned to authenticated principals, but this improper-authentication flaw lets a remote, unauthenticated attacker assume full administrator rights on the Management Server, so the access-control model is circumvented at the authentication boundary rather than enforced."
58426
59190
  }
58427
- }
59191
+ },
59192
+ "new_control_requirements": [
59193
+ {
59194
+ "id": "NEW-CTRL-001",
59195
+ "name": "CISA-KEV-RESPONSE-SLA",
59196
+ "description": "This entry uses the control's 'patch, live patch, or documented compensating controls' clause in full, because the packet supplies both halves: the fix is the 22 July 2026 Jumbo Hotfix (sk185169) installed on the Security Management / Multi-Domain Management server with a management-service restart, and the documented interim mitigation is restricting Trusted Clients to known SmartConsole hosts. CISA listed the flaw on 2026-07-22 with a 2026-07-25 due date — three days — so the clock this control names is the operative one and no routine management-server maintenance window satisfies it. Scope the sweep to both products the packet names: Security Management and Multi-Domain Management servers alike, because an estate standardised on Multi-Domain Management is untouched by an inventory that enumerates Security Management only. Completion is measured on the management service actually executing the hotfixed login path, not on the hotfix being installed: patch_required_reboot is true, the packet's own remediation note specifies a management-service restart, and live_patch_available is false, so a server carrying the hotfix that has not been restarted is still minting tokens from the pre-fix code and must be counted as exposed. Precondition on the interim mitigation, which is where this gets recorded wrong: the packet states remote exploitation requires internet access to the Management Server IP and a configuration that does not restrict Trusted Clients, so restricting Trusted Clients removes the remote precondition — it does not repair the server's trust in a peer-supplied SIC distinguished name. It gives nothing against a caller operating from a host already in the Trusted Clients set or otherwise able to reach the management network, and it is a holding measure for the window before the hotfix and its restart land, not a closure. And because Check Point confirmed exploitation, a server that was internet-reachable without Trusted Clients restrictions during that window needs its administrator objects and installed security policy compared against a known-good copy: the vector's stated outcome is modification of security policies and configurations, and the hotfix does not undo changes already made.",
59197
+ "evidence": "live_patch_notes: 'No live-patch mechanism; remediation requires installing the 22 July 2026 Jumbo Hotfix (sk185169) on the Security Management / Multi-Domain Management server, with a management-service restart. Restricting Trusted Clients to known SmartConsole hosts is the interim mitigation'; patch_available true, patch_required_reboot true, live_patch_available false; cisa_kev true, kev_date 2026-07-22, active_exploitation_notes: 'CISA added it to KEV the same day with a three-day remediation due date (2026-07-25)' and Check Point confirmed active exploitation affecting a small number of customers at disclosure on 22 July 2026; vector: 'Remote exploitation requires internet access to the Management Server IP address and a configuration that does not restrict Trusted Clients', and successful exploitation 'allows the attacker to modify security policies and security configurations'; affected_versions: 'Check Point Security Management and Multi-Domain Management without the 22 July 2026 Jumbo Hotfix (sk185169)'; NIST-800-53-IA-2 gap: 'MFA layered on SmartConsole does not help because the token is minted before any user credential is checked'; AU-Essential-8-MFA gap: requiring MFA 'provides no protection against CVE-2026-16232 until the 22 July 2026 hotfix is applied'; cvss 9.1, rwep_score 75, poc_available true.",
59198
+ "gap_closes": [
59199
+ "NIST-800-53-IA-2",
59200
+ "AU-Essential-8-MFA"
59201
+ ]
59202
+ },
59203
+ {
59204
+ "id": "NEW-CTRL-129",
59205
+ "name": "ENTERPRISE-ERP-MANAGEMENT-FUNCTION-AUTHENTICATION",
59206
+ "description": "The SmartConsole login process is where this product makes its authentication decision, and this CVE is that decision failing open: the packet places the flaw in a login flow that trusts an attacker-supplied SIC distinguished name instead of the authenticated peer certificate DN, mints a valid application login token from it, and hands the caller full administrative privilege — after which every administrative operation on the Management Server honours a token that no credential was ever presented for. Bound to this product, the control means the Management Server derives the peer's identity from the authenticated channel rather than from a name the peer asserts, that the privileged operations behind the login — security policy modification, configuration change — authorise their caller rather than inheriting a verdict from the login step, and that the management surface is segmented so an untrusted network caller cannot present a login attempt to that server at all. This is exactly why every identity control cited on this entry passes its attestation while the path stays open: the attacker never authenticates as any Check Point administrator, so per-account access-control policy is never consulted and the account model an access-control review examines is bypassed rather than abused. Distinguishing test for this product: from a segment with no operational need to administer firewall policy, drive the SmartConsole login flow against a staging Security Management or Multi-Domain Management server supplying an arbitrary SIC DN, and confirm no login token is issued — a review confirming that every SmartConsole administrator holds a named account and authenticates at login passes cleanly while this path is open. Precondition: the identity-derivation property is what the 22 July 2026 Jumbo Hotfix establishes; this control states what to verify, it does not implement it. Until that hotfix and its management-service restart land, the segmentation half bounds who can present the request — and only where the Management Server IP is not internet-reachable and Trusted Clients is restricted, the two conditions the packet names for remote exploitation — while leaving the server fully exploitable by anything inside the permitted set.",
59207
+ "evidence": "affected: 'Check Point SmartConsole / Security Management and Multi-Domain Management, where the login process trusts an attacker-supplied SIC distinguished name instead of the authenticated peer certificate DN'; attack_vector: an unauthenticated remote attacker with network access to the Management Server IP supplies a SIC distinguished name the server accepts as the remote application's identity, and the server issues a valid login token granting full administrative access to modify security policy and configuration; vector: 'an unauthenticated remote attacker to obtain an application login token and use it to authenticate with full administrative privileges'; UK-CAF-B2 gap: 'the SIC-DN trust flaw grants administrative privilege without any valid credential, so B2 access governance over the SmartConsole management plane is bypassed rather than merely weakened'; ISO-27001-2022-A.5.15 gap: 'the access-control model is circumvented at the authentication boundary rather than enforced'; NIST-800-53-IA-2 gap: 'identity verification is bypassed entirely rather than strengthened'; live_patch_notes name the 22 July 2026 Jumbo Hotfix (sk185169) with a management-service restart as the remediation and Trusted Clients restriction as the interim mitigation; active_exploitation confirmed, poc_available true.",
59208
+ "gap_closes": [
59209
+ "NIST-800-53-IA-2",
59210
+ "ISO-27001-2022-A.5.15",
59211
+ "UK-CAF-B2"
59212
+ ]
59213
+ },
59214
+ {
59215
+ "id": "NEW-CTRL-036",
59216
+ "name": "FLEET-CONTROL-PLANE-ADMIN-PRIVILEGE-TIER",
59217
+ "description": "A Check Point Security Management or Multi-Domain Management server is a configuration-management control plane for a firewall estate — the packet's stated exploitation outcome is the attacker modifying security policies and configurations — and this CVE exposes what the frameworks cited here do not carry: they govern the administrator's credential, and no credential was used. State that plainly before anything else, because it is the half of this control that must not be claimed on this entry: FIDO2 step-up per session, just-in-time elevation with approval, and a separate identity for SmartConsole administrators leave this flaw fully exploitable, since the login token is minted from a spoofed peer identity before any user credential is checked. What is load-bearing here is the tier's other two halves. Reachability: the management plane is administered only from a dedicated privileged-access tier, so the Management Server's login surface answers a known jumphost set rather than a general network or the internet — the same restriction the packet names as the interim mitigation, expressed as standing architecture rather than as an emergency response, which is the difference between having it in place when the disclosure lands and configuring it under a three-day KEV clock. Classification: compliance frameworks must enumerate the firewall management plane as a distinct tier instead of collapsing it into 'admin', because that is what makes an estate ask whether a Security Management or Multi-Domain Management server is internet-reachable before a KEV listing forces the question, and both server products have to be enumerated rather than the Security Management ones alone. Precondition: reachability confinement bounds the population that can attempt the token mint and does not repair the server's trust in a peer-supplied SIC DN; it is unavailable where a Management Server must stay reachable from outside the tier; and it does not evict an attacker who already obtained an administrative token during the exposure window, whose access has to be handled as an incident against the policy and configuration the packet says such a token can rewrite.",
59218
+ "evidence": "AU-Essential-8-MFA gap: 'the login token is issued pre-authentication from a spoofed peer identity, so requiring MFA for SmartConsole admins provides no protection against CVE-2026-16232 until the 22 July 2026 hotfix is applied'; NIS2-Art21-identity-management gap: 'policy-level identity controls did not prevent unauthenticated administrative access to the firewall management plane', with a 2026-07-25 KEV due date and confirmed exploitation; UK-CAF-B2 gap: 'CAF B2 (identity and access control) presumes privileged management access is gated by verified identity'; ISO-27001-2022-A.5.15 gap: 'A.5.15 access-control policy assumes administrative rights are assigned to authenticated principals'; vector: remote exploitation 'requires internet access to the Management Server IP address and a configuration that does not restrict Trusted Clients', and successful exploitation allows the attacker to modify security policies and security configurations; live_patch_notes: restricting Trusted Clients to known SmartConsole hosts is the interim mitigation, with the 22 July 2026 Jumbo Hotfix (sk185169) and a management-service restart as remediation; affected_versions name both Security Management and Multi-Domain Management; active_exploitation confirmed, kev_date 2026-07-22.",
59219
+ "gap_closes": [
59220
+ "UK-CAF-B2",
59221
+ "NIS2-Art21-identity-management",
59222
+ "ISO-27001-2022-A.5.15"
59223
+ ]
59224
+ }
59225
+ ]
58428
59226
  },
58429
59227
  "CVE-2026-50522": {
58430
59228
  "name": "Microsoft SharePoint Deserialization of Untrusted Data Vulnerability",
@@ -58691,17 +59489,49 @@
58691
59489
  "adequate": false,
58692
59490
  "gap": "CAF B2 identity-and-access assurance is scoped to user authentication and does not require locking down machine-to-machine backup-service interfaces, leaving the unauthenticated credential-retrieval method reachable from the backup LAN."
58693
59491
  },
58694
- "AU-Essential-8-Patch": {
58695
- "covered": true,
58696
- "adequate": false,
58697
- "gap": "Essential Eight patch timelines allow up to a month for internet-facing/critical fixes, but a public PoC existed within eleven days of disclosure, so a compliant 30-day patch cadence still leaves the ransomware-linked credential-dump exploitable for weeks."
59492
+ "AU-Essential-8-Patch": {
59493
+ "covered": true,
59494
+ "adequate": false,
59495
+ "gap": "Essential Eight patch timelines allow up to a month for internet-facing/critical fixes, but a public PoC existed within eleven days of disclosure, so a compliant 30-day patch cadence still leaves the ransomware-linked credential-dump exploitable for weeks."
59496
+ },
59497
+ "ISO-27001-2022-A.5.15": {
59498
+ "covered": true,
59499
+ "adequate": false,
59500
+ "gap": "A.5.15 access control presumes credentials are protected behind an access-control decision; here the stored credentials are returned to any unauthenticated caller of the backup service, so an access-control policy that never gates the remoting endpoint provides no protection."
59501
+ }
59502
+ },
59503
+ "new_control_requirements": [
59504
+ {
59505
+ "id": "NEW-CTRL-128",
59506
+ "name": "APPSERVER-REMOTING-PROTOCOL-RESTRICTION",
59507
+ "description": "Veeam Backup & Replication's exposure here is exactly the binary remoting-protocol class this control governs: the Veeam.Backup.Service answers a credential-retrieval method on a .NET remoting endpoint at TCP/9401, the endpoint answers before any authentication, and what it returns is the encrypted credentials held in the configuration database. Bound to this deployment the requirement is that TCP/9401 accepts connections only from the hosts the deployment's own component topology shows must speak to the Veeam.Backup.Service, enforced by host firewall or network ACL rather than inferred from 'the backup server is internal', and that the KEV-listed defect in that endpoint is remediated on an accelerated clock by upgrading to 11.0.1.1261 (11a) or 12.0.0.1420 per KB4424 with the Veeam services restarted. The packet records no live-patch path and names the services restart as part of remediation, so a server whose installer has run but whose Veeam services have not restarted is still executing the pre-fix code; completion is the version the running services report. Distinguishing test for this product: from a general user or application-server VLAN on a staging deployment, open a connection to TCP/9401 and confirm it is refused before the service answers — the identity controls cited on this entry govern console and operator login and never observe an unauthenticated remoting call, so they attest clean while this path stays open. Precondition, and it is the half most often over-claimed: restricting TCP/9401 bounds which hosts can reach the method, it does not repair the missing authentication — any host inside the permitted set still reaches it in full, and a compromised backup proxy or management host inside that set satisfies the exploit's only access requirement. It is the packet's stated interim mitigation for the window before the upgrade, not a closure. Credentials already returned to a caller also remain valid after the upgrade.",
59508
+ "evidence": "The packet's affected field places the defect on the Veeam.Backup.Service .NET remoting endpoint at TCP/9401, exposed to unauthenticated callers and returning encrypted credentials from the configuration database; attack_vector has the caller reusing them to reach backup infrastructure hosts. cisa_kev true (2023-08-22), active_exploitation confirmed, poc_available true, with a working PoC public within eleven days of the 2023-03-07 advisory and mass internet scanning for exposed TCP/9401 following it; CISA ransomware use recorded as Known. live_patch_available is false and live_patch_notes gives remediation as upgrading to 11.0.1.1261 (11a) or 12.0.0.1420 per KB4424 with a Veeam services restart, and names restricting TCP/9401 to trusted hosts as the recommended interim mitigation. The cited NIST-800-53-IA-2 gap states an IA-2 set that only governs console/user login never sees the unauthenticated remoting call; the UK-CAF-B2 and NIS2 identity-management gaps state machine-to-machine backup-service interfaces are neither locked down nor segmented.",
59509
+ "gap_closes": [
59510
+ "NIST-800-53-IA-2",
59511
+ "NIS2-Art21-identity-management",
59512
+ "UK-CAF-B2",
59513
+ "ISO-27001-2022-A.5.15"
59514
+ ]
59515
+ },
59516
+ {
59517
+ "id": "NEW-CTRL-001",
59518
+ "name": "CISA-KEV-RESPONSE-SLA",
59519
+ "description": "The packet supplies the exact interval that defeats the cadence this entry cites as insufficient: a working PoC existed within eleven days of the 2023-03-07 Veeam advisory and mass scanning for exposed TCP/9401 followed, while the Essential Eight timeline allows up to a month. For this CVE the clock therefore runs from the 2023-08-22 KEV listing, the later of listing and fix availability, and what must land inside it is one of two verified states: the upgrade to Veeam Backup & Replication 11.0.1.1261 (11a) or 12.0.0.1420 per KB4424 with the Veeam services restarted, or — where that upgrade cannot be taken in the window — the packet's named interim mitigation of restricting TCP/9401 to trusted hosts, recorded as a compensating control carrying a dated action to finish the upgrade. Priority follows the packet rather than the 7.5 base score: CISA records ransomware use as Known and the packet places this vulnerability in intrusion chains that harvest backup credentials to disable or encrypt backups before detonation, which makes it a pre-detonation step against the recovery capability rather than a standalone server finding. The response also does not end at the version check. Because the endpoint returns stored credentials to whoever calls it, a server that was reachable on TCP/9401 while unpatched must have the credentials in its configuration database treated as disclosed and rotated; the upgrade closes the retrieval path and does nothing to material already read out.",
59520
+ "evidence": "Packet facts: poc_available true, with the PoC public within eleven days of the 2023-03-07 advisory and mass internet scanning for exposed TCP/9401 afterwards; cisa_kev true with kev_date 2023-08-22; active_exploitation confirmed; CISA ransomware use Known; the entry folded into chains that harvest backup credentials to disable or encrypt backups before ransomware detonation. cvss 7.5, rwep_score 68. patch_available true with live_patch_available false; live_patch_notes gives the upgrade targets 11.0.1.1261 (11a) and 12.0.0.1420 per KB4424 with a Veeam services restart, plus restricting TCP/9401 to trusted hosts as the interim mitigation. The cited AU-Essential-8-Patch gap states that a compliant 30-day cadence still leaves the ransomware-linked credential dump exploitable for weeks. The disclosed-credential point follows from the packet's own affected and attack_vector text: the endpoint returns stored credentials from the configuration database and the attacker reuses them against backup infrastructure hosts.",
59521
+ "gap_closes": [
59522
+ "AU-Essential-8-Patch"
59523
+ ]
58698
59524
  },
58699
- "ISO-27001-2022-A.5.15": {
58700
- "covered": true,
58701
- "adequate": false,
58702
- "gap": "A.5.15 access control presumes credentials are protected behind an access-control decision; here the stored credentials are returned to any unauthenticated caller of the backup service, so an access-control policy that never gates the remoting endpoint provides no protection."
59525
+ {
59526
+ "id": "NEW-CTRL-038",
59527
+ "name": "MITIGATION-ACTIVE-PATCH-PENDING-VERDICT-CLASS",
59528
+ "description": "This entry produces two intermediate states that a Veeam patch-compliance report collapses into a single green row. The first is the packet's own interim mitigation: a server with TCP/9401 restricted to trusted hosts but still running a build below 11.0.1.1261 (11a) or 12.0.0.1420 has not had the defect fixed — the unauthenticated credential-retrieval method still answers every host inside the permitted set — so it belongs in a distinct compensating-control state with a dated action to complete the upgrade, never in the 'patched per SLA' bucket. The second is narrower and easier to miss: the packet's remediation is the upgrade plus a restart of the Veeam services, so a server whose installer has run but whose services have not restarted is still executing pre-fix code while the installed-package record reads current. The audit requirement for this product is that the verdict is taken from the version the running Veeam services report and from the state of the TCP/9401 restriction as two separate facts, so that 'mitigation active, patch pending' and 'upgraded, services not restarted' are both visible as open exposure rather than resolved items.",
59529
+ "evidence": "live_patch_available is false and live_patch_notes states there is no vendor live-patch mechanism, that remediation requires upgrading to Veeam Backup & Replication 11a (11.0.1.1261) or 12 (12.0.0.1420) per KB4424 and restarting the Veeam services, and that restricting TCP/9401 to trusted hosts is the recommended interim mitigation. patch_required_reboot is false, which the packet pairs with that services restart — the host needs no reboot, the service does need to restart onto the new code. The cited AU-Essential-8-Patch gap states that the compliant cadence leaves the ransomware-linked credential dump exploitable for weeks, which is the interval during which one of these intermediate states is what a Veeam server is actually in.",
59530
+ "gap_closes": [
59531
+ "AU-Essential-8-Patch"
59532
+ ]
58703
59533
  }
58704
- }
59534
+ ]
58705
59535
  },
58706
59536
  "CVE-2023-26359": {
58707
59537
  "name": "Adobe ColdFusion Deserialization of Untrusted Data Vulnerability (CVE-2023-26359)",
@@ -59286,7 +60116,40 @@
59286
60116
  "adequate": false,
59287
60117
  "gap": "A.5.15 access-control policy is bypassed at the application layer: the flaw grants unauthenticated access to restricted device-management functions, so documented role/authentication rules provide no barrier to the API paths CVE-2023-35078 exposes."
59288
60118
  }
59289
- }
60119
+ },
60120
+ "new_control_requirements": [
60121
+ {
60122
+ "id": "NEW-CTRL-129",
60123
+ "name": "ENTERPRISE-ERP-MANAGEMENT-FUNCTION-AUTHENTICATION",
60124
+ "description": "EPMM's device-management API is where this product makes its authentication decision, and this CVE is that decision missing on specific paths: a remote caller with no credential reaches device and user PII and the functions that change configuration, install software, and alter security profiles on managed devices. Bound to this product, the control means each EPMM device-management function authorizes its own caller rather than inheriting a verdict from whatever fronts the API, and no EPMM instance is left with that API surface reachable from a segment with no operational need to reach it — which for an internet-facing MDM server is the difference between a bounded population and the whole internet. This is why the identity-side gaps recorded on this entry cannot be closed by tightening accounts: the attacker never authenticates as any EPMM operator, so per-account privilege scoping is never consulted and the account model an access-control attestation examines is bypassed rather than abused. Distinguishing test: from an untrusted network, issue unauthenticated requests to each device-management API path on a staging EPMM instance and confirm each is refused before the function runs — an attestation that every EPMM administrator authenticates at login passes cleanly while this path stays open. Precondition: endpoint-side authentication is a property the vendor upgrade establishes; this control states what to verify, it does not implement it. Until 11.8.1.1 / 11.9.1.1 / 11.10.0.2 is running, restricting which segments can reach the API bounds who can send the request but leaves the path fully exploitable from inside the permitted segment, and it is unavailable where the API must stay reachable for enrolled devices to check in. Scope it to EPMM: the packet ties this flaw to EPMM's device-management API and gives no mapping into other products.",
60125
+ "evidence": "The packet's affected field records Ivanti EPMM (formerly MobileIron Core) as failing to authenticate specific device-management API paths, allowing unauthenticated access to PII and configuration functions, under CWE-287. attack_vector: a remote unauthenticated attacker requests specific EPMM API paths that fail to enforce authentication, gaining device/user PII and the ability to change configuration, install software, and alter security profiles on managed devices. The UK-CAF-B2 gap names the bypassed paths as /mifs/aad/api and states B2's account-management controls never engage against an actor who bypasses auth entirely; the ISO-27001-2022-A.5.15 gap states the access-control policy is bypassed at the application layer; the NIS2-Art21-vulnerability-management gap states the preauth bypass reaches EPMM device-management APIs with no credentials. CVSS 9.8, RWEP 72, poc_available true, KEV-listed 2023-07-25.",
60126
+ "gap_closes": [
60127
+ "UK-CAF-B2",
60128
+ "ISO-27001-2022-A.5.15",
60129
+ "NIS2-Art21-vulnerability-management"
60130
+ ]
60131
+ },
60132
+ {
60133
+ "id": "NEW-CTRL-001",
60134
+ "name": "CISA-KEV-RESPONSE-SLA",
60135
+ "description": "For this entry the KEV clock is what replaces a monthly application-patch cadence on an internet-facing MDM server. The packet records mass exploitation after disclosure, so every EPMM instance has to be driven to 11.8.1.1, 11.9.1.1 or 11.10.0.2 (or later) against the 2023-07-25 listing rather than the organisation's normal cycle. Two product-specific points govern how completion is measured. There is no live-patch path, and the packet records the fix as a service update rather than a host reboot — so completion is the version the running EPMM service reports, not a host-reboot record and not an 'approved' or 'downloaded' state in a management console. And the consequence of missing the clock is understated by this CVE alone: the packet records CVE-2023-35081 chaining with this bypass for web-shell RCE, so an instance still below the fixed build after the listing is exposed to the full chain rather than to information disclosure only. Sequence the estate by internet reachability first, since that is the condition the observed mass exploitation required.",
60136
+ "evidence": "patch_available true, live_patch_available false; live_patch_notes state remediation requires upgrading Ivanti EPMM to 11.8.1.1, 11.9.1.1, or 11.10.0.2 (or later), 'a service update rather than a host reboot', and patch_required_reboot is false. active_exploitation confirmed; KEV date 2023-07-25 with ransomware use recorded ('Known'); active_exploitation_notes record mass exploitation after disclosure and that it is commonly chained with CVE-2023-35081 for web-shell RCE. The AU-Essential-8-Patch gap describes EPMM as an internet-facing identity/MDM server; the NIST-800-53-SI-2 gap describes flaw-remediation timelines losing the race.",
60137
+ "gap_closes": [
60138
+ "AU-Essential-8-Patch",
60139
+ "NIST-800-53-SI-2"
60140
+ ]
60141
+ },
60142
+ {
60143
+ "id": "NEW-CTRL-037",
60144
+ "name": "FLEET-COMPROMISE-IR-PLAYBOOK",
60145
+ "description": "EPMM is the fleet control plane, and the packet records this flaw being used as a zero-day to breach twelve Norwegian government ministries before a fix existed — which is precisely the case where reaching the fixed build closes the entry path and removes nothing behind it. The playbook's scope for this CVE is therefore the managed fleet and not just the server, because the packet puts the attacker's reach at configuration change, software installation, and security-profile alteration on managed devices: audit configuration profiles and pushed software back to the start of the suspected exposure window rather than to the disclosure date, invalidate device trust state, rotate credentials for accounts that authenticated through the platform during that window, and set quarantine criteria for downstream devices that received changes inside it. For any instance that was internet-reachable, assume the CVE-2023-35081 chain the packet names and hunt for a web shell, which the upgrade does not remove. Precondition: this depends on retaining EPMM configuration-change and API-access history far enough back to cover a pre-disclosure window — an organisation whose retention starts at the KEV listing cannot answer the question the playbook asks, and the playbook does not prevent the compromise; it bounds what an already-breached fleet inherits.",
60146
+ "evidence": "active_exploitation_notes record the flaw as exploited as a zero-day to breach twelve Norwegian government ministries in mid-2023, with a CISA/NCSC-NO joint advisory, and as commonly chained with CVE-2023-35081 for web-shell RCE. The NIST-800-53-SI-2 gap states the 0-day was used before a patch existed, so flaw-remediation timelines gave no protection during the exploitation window that started before 2023-07-25; the AU-Essential-8-Patch gap states that even a fast patch left exposure for organisations already breached in the pre-disclosure period. attack_vector records the attacker's reach as device/user PII plus configuration change, software installation, and security-profile alteration on managed devices.",
60147
+ "gap_closes": [
60148
+ "NIST-800-53-SI-2",
60149
+ "AU-Essential-8-Patch"
60150
+ ]
60151
+ }
60152
+ ]
59290
60153
  },
59291
60154
  "CVE-2023-29298": {
59292
60155
  "name": "Adobe ColdFusion Improper Access Control Vulnerability (CVE-2023-29298)",
@@ -60935,7 +61798,31 @@
60935
61798
  "adequate": false,
60936
61799
  "gap": "A.8.8 technical-vulnerability management ranks by CVSS/EPSS, but a targeted spyware zero-day like this bypasses that triage entirely — the risk was active before the CVSS 8.8 score or KEV entry existed, so only rapid device-wide patch enforcement reduced exposure."
60937
61800
  }
60938
- }
61801
+ },
61802
+ "new_control_requirements": [
61803
+ {
61804
+ "id": "NEW-CTRL-056",
61805
+ "name": "MOBILE-ENDPOINT-MDM-ENFORCED-KEV-SLA",
61806
+ "description": "Scope this from affected_versions, not from the vector's headline: the packet places the out-of-bounds write in WebKit itself and records four separate completion lines — iOS/iPadOS at 16.4, iOS/iPadOS at 15.7.7 on the older track, macOS at Ventura 13.3, and Safari at 16.4. Because the packet describes WebKit as reached through Safari and through any product that embeds WebKit for HTML processing, a Mac whose OS build is current while Safari sits below 16.4, or an iPad held on the 15.x track that never took 15.7.7, is still executing the vulnerable engine regardless of which application the user opened; an estate standardised on one of those lines and swept only on that line reports clean while the others stay exposed. The requirement is that the update is pushed and completed against the KEV clock that opened 2023-06-23 with user deferral disallowed, because the packet's attack vector is processing crafted web content and needs no action from the user beyond rendering it. Measurement is the load-bearing half: live_patch_available is false and the packet states the fix installs via a device update and reboot, so a device that has downloaded the update but not restarted is still running pre-fix WebKit — completion is the build the device reports after restart, never 'available', 'downloaded' or 'approved' in the management console. Distinguishing test: hold a device below the fixed build for its line and confirm the console both flags it and forces the update without allowing the user to defer — an estate that surfaces stale builds on a patch-compliance report while users defer indefinitely has recorded the exposure rather than removed it. Finally, because active_exploitation is confirmed and delivery is attacker-controlled web content, a device in scope that rendered untrusted content before it reached the fixed build belongs on the incident path rather than being closed on the patch record.",
61807
+ "evidence": "Packet: cisa_kev true with kev_date 2023-06-23; active_exploitation confirmed; RWEP 72 against CVSS 8.8; poc_available true. affected_versions enumerates four lines — Apple iOS/iPadOS < 16.4, Apple iOS/iPadOS < 15.7.7, macOS < Ventura 13.3, Apple Safari < 16.4 — and affected identifies the flaw as being in Apple WebKit, reached through Safari and any product embedding WebKit for HTML processing. patch_available true, patch_required_reboot true, live_patch_available false, with live_patch_notes recording no vendor live-patch mechanism and remediation as updating to iOS/iPadOS 16.4 (or 15.7.7), macOS Ventura 13.3 and Safari 16.4, installed via a device update and reboot. The AU-Essential-8-Patch gap states mobile fleets often lack MDM-enforced same-day OS updates, so the zero-click WebKit RCE remained live on devices that had not taken the iOS 16.4 / 15.7.7 update; the NIS2-Art21-patch-management gap states the obligation rarely enforces same-week mobile OS updates on user devices, leaving unpatched iPhones and Macs on slow update tracks exploitable for the whole delay.",
61808
+ "gap_closes": [
61809
+ "AU-Essential-8-Patch",
61810
+ "NIST-800-53-SI-2",
61811
+ "NIS2-Art21-patch-management",
61812
+ "ISO-27001-2022-A.8.8"
61813
+ ]
61814
+ },
61815
+ {
61816
+ "id": "NEW-CTRL-121",
61817
+ "name": "MOBILE-ZERO-CLICK-HARDENING",
61818
+ "description": "The packet does not describe a standalone browser bug: it places this out-of-bounds write as the WebKit stage of the Operation Triangulation spyware chain, chained with a kernel bug for zero-click device takeover, and records Apple's note that exploitation may have run against iOS releases predating 15.7 — that is, before the fixed builds existed. For the population plausibly inside that targeting set, the reboot-gated update therefore cannot be the whole answer, because the exposure ran during a window no patch cadence could have shortened. The requirement is a standing reduced-attack-surface posture on the iPhones, iPads and Macs assigned to that cohort, in which crafted web content and link previews are not automatically fed through the full WebKit rendering path, narrowing the delivery route into the CWE-787 primitive during the interval before the device reaches iOS/iPadOS 16.4 or 15.7.7, macOS Ventura 13.3 and Safari 16.4 and restarts onto them. Precondition, and this is where the control is most often over-claimed: the posture reduces exposure only if it was already enabled when the content arrived, so assigning it in response to the 2023-06-23 KEV listing does nothing for the pre-listing exploitation the packet describes — it has to be a cohort assignment made before the next disclosure. It does not remove the WebKit sink, which only the fixed build and its restart do, and it does not evict an implant already resident on a device compromised earlier in the chain; a cohort device suspected of having rendered the chain is an incident, not a hardening item.",
61819
+ "evidence": "Packet: active_exploitation_notes state the issue formed the WebKit stage of the Operation Triangulation spyware chain used for targeted, zero-click device compromise, and that Apple noted it may have been actively exploited against versions of iOS released before iOS 15.7; attack_vector records that processing maliciously crafted web content triggers the out-of-bounds write in WebKit, giving arbitrary code execution in the browser/WebContent process, chained with a kernel bug for zero-click device takeover. cwe_refs CWE-787; active_exploitation confirmed; kev_date 2023-06-23. patch_required_reboot true and live_patch_available false, with live_patch_notes recording no vendor live-patch mechanism. The UK-CAF-B4 gap states that CAF B4 assumes the browser sandbox contains malicious web content and that system-security baselines had no compensating control once the WebContent process itself was the code-execution surface; the ISO-27001-2022-A.8.8 gap states that CVSS/EPSS-ranked triage was bypassed entirely because the risk was active before the CVSS 8.8 score or KEV entry existed.",
61820
+ "gap_closes": [
61821
+ "UK-CAF-B4",
61822
+ "ISO-27001-2022-A.8.8"
61823
+ ]
61824
+ }
61825
+ ]
60939
61826
  },
60940
61827
  "CVE-2023-32439": {
60941
61828
  "name": "Apple Multiple Products WebKit Type Confusion Vulnerability (CVE-2023-32439)",
@@ -61088,7 +61975,30 @@
61088
61975
  "adequate": false,
61089
61976
  "gap": "A.5.15 access control is scoped to the guest OS, but this flaw executes below it at the Tools/vgauth layer, so guest-level RBAC and logon controls cannot see or stop the host-to-guest operations until the fixed Tools release is installed."
61090
61977
  }
61091
- }
61978
+ },
61979
+ "new_control_requirements": [
61980
+ {
61981
+ "id": "NEW-CTRL-036",
61982
+ "name": "FLEET-CONTROL-PLANE-ADMIN-PRIVILEGE-TIER",
61983
+ "description": "The packet makes ESXi host root the entire precondition for this VMware Tools flaw: the attacker must already hold root on the ESXi host, and from there the Tools vgauth module executes host-initiated operations inside guests with no guest credential presented. That makes the hypervisor a control plane over every workload running on it, and it is why the guest is the wrong place to defend this — the operation never presents a guest credential, so guest RBAC, guest logon policy and any MFA layered inside the guest are never consulted and never see it. Applied to a virtual estate, the control means ESXi and vCenter administration is classified as a privilege tier above the guest and application admin roles that guest-scoped access attestations examine: separate identities from any other admin role, access only through a PAM jumphost, hardware-bound step-up per session, and just-in-time elevation with approval, so the credential that yields host root is materially harder to obtain than a guest administrator's. Distinguishing test: enumerate the accounts that can obtain root on an ESXi host today and show that none is an ordinary guest or application administrator account and none can reach the host outside the privileged path — an estate that passes guest-OS access-control review while a shared administrator account can reach ESXi has left this CVE's precondition intact. Precondition, stated plainly: this bounds who can reach the position the packet describes the attacker operating from; it does nothing on a host where root is already held, where the flaw stays fully exploitable against every guest until each guest reaches the fixed VMware Tools build and takes the reboot. An estate that suspects ESXi root was held during the exposure window belongs on the incident path, not the hardening path.",
61984
+ "evidence": "Packet affected: the VMware Tools vgauth module improperly authenticates host-initiated guest operations (CWE-287), letting a root-compromised ESXi host run commands and transfer files inside guests without guest credentials. active_exploitation_notes: used by the Chinese-nexus espionage group UNC3886 as a post-compromise technique against ESXi/vCenter estates, and 'it requires the attacker to already hold root on the ESXi host, so it is a lateral/persistence primitive (host into guest) rather than an initial-access vector'. The NIST-800-53-IA-2 gap states guest-side identity assurance is silently voided until VMware Tools 12.2.5 is deployed; the ISO-27001-2022-A.5.15 gap states the flaw executes below the guest OS at the Tools/vgauth layer so guest-level RBAC and logon controls cannot see or stop the host-to-guest operations; the UK-CAF-B2 gap states an attacker who owns ESXi root can operate inside every guest without triggering guest access controls; the NIS2-Art21-identity-management gap states MFA and identity policy inside the guest never sees the host-driven operation. cisa_kev true (2023-06-23), active_exploitation confirmed.",
61985
+ "gap_closes": [
61986
+ "NIST-800-53-IA-2",
61987
+ "ISO-27001-2022-A.5.15",
61988
+ "UK-CAF-B2",
61989
+ "NIS2-Art21-identity-management"
61990
+ ]
61991
+ },
61992
+ {
61993
+ "id": "NEW-CTRL-001",
61994
+ "name": "CISA-KEV-RESPONSE-SLA",
61995
+ "description": "The Essential Eight gap on this entry names the failure precisely: a 3.9 base score is deprioritised by a cadence-scored patch program while the packet records a KEV-listed, confirmed nation-state guest-execution primitive. For this CVE the KEV clock that opened 2023-06-23 runs against the guests rather than the hosts — every guest running VMware Tools 12.x below 12.2.5, and every guest on 11.x or 10.3.x, Windows and Linux both per the packet's affected versions, has to reach the fixed build for its branch. The packet names 12.2.5 for the 12.x Windows track and records only 'the fixed builds' for 11.x and 10.3.x, so those levels must be taken from the vendor advisory rather than assumed from the 12.x number. Completion is measured per guest on the Tools build the guest is actually running after the reboot the packet says the upgrade typically requires — not on the ESXi host's patch level, and not on a 'deployed' state in the virtualization console; a guest whose Tools package was pushed but which has not rebooted is still executing the vulnerable vgauth code and must be counted as exposed. Sequencing should follow the value of what each guest holds rather than the CVSS band, because the packet frames this as the lateral step taken after the hypervisor falls rather than as a standalone endpoint item. Precondition: live_patch_available is false and the packet records no vendor live-patch mechanism, so nothing here is available faster than the per-guest upgrade and its restart — an estate that cannot reboot a guest inside the window has an exposure to record, not a mitigation.",
61996
+ "evidence": "Packet: cisa_kev true, kev_date 2023-06-23, active_exploitation confirmed, cvss 3.9, rwep_score 63, poc_available true. patch_available true, patch_required_reboot true, live_patch_available false with live_patch_notes 'No vendor live-patch mechanism; remediation is upgrading VMware Tools to 12.2.5 (or the backported fixed build) on each guest, which typically requires a guest OS reboot to complete'. affected_versions: 'VMware Tools 12.x prior to 12.2.5 (Windows)' and 'VMware Tools 11.x and 10.3.x (Windows/Linux) prior to the fixed builds'. The AU-Essential-8-Patch gap states that because exploitation needs prior ESXi root, orgs commonly deprioritise a 3.9 CVE, 'leaving a confirmed nation-state guest-execution primitive unpatched on virtual estates well past KEV listing'. active_exploitation_notes attribute post-compromise use to UNC3886 and describe the flaw as a lateral/persistence primitive (host into guest).",
61997
+ "gap_closes": [
61998
+ "AU-Essential-8-Patch"
61999
+ ]
62000
+ }
62001
+ ]
61092
62002
  },
61093
62003
  "CVE-2023-27992": {
61094
62004
  "name": "Zyxel Multiple NAS Devices Command Injection Vulnerability",
@@ -61303,7 +62213,29 @@
61303
62213
  "adequate": false,
61304
62214
  "gap": "A.8.28 secure coding should have caught the unescaped handling of link-reference content in rcube_string_replacer.php; the defect shipped in the renderer, so the control failed at the source level and left every unpatched tenant exposed to script-on-open."
61305
62215
  }
61306
- }
62216
+ },
62217
+ "new_control_requirements": [
62218
+ {
62219
+ "id": "NEW-CTRL-001",
62220
+ "name": "CISA-KEV-RESPONSE-SLA",
62221
+ "description": "For self-hosted Roundcube the fixed builds already existed when CISA listed this on 2023-06-22, so the \"whichever is later\" clock this control sets starts at the KEV listing and the remaining work is entirely deployment, not waiting on a vendor. Bound to this product it means every Roundcube instance in the estate — including any the software inventory does not already enumerate — is moved onto the fixed point release for the branch it runs: 1.4.10 for the 1.4.x train, 1.3.16 for 1.3.x, 1.2.13 for anything older, or later. The packet records the upgrade as a package update with no host reboot, which is not the same as the fix being live: completion has to be measured on the Roundcube version the webmail service is actually serving on each host, not on a package manifest or a closed change ticket. Precondition, and it is the limit of what this control buys: it governs deployment speed only and gives nothing to an instance during the window before the upgrade lands, since the payload arrives as an ordinary plain-text message and fires when a user opens it — there is no user-behaviour instruction that helps. And because exploitation is confirmed and the packet records APT28 (BlueDelta) using this to steal messages and credentials from government webmail servers, a server that ran an affected build during that period is an incident-triage question; mail and credentials already read out of a mailbox stay compromised after the upgrade and need rotation, not closure on the patch record.",
62222
+ "evidence": "Packet facts only: cisa_kev true with kev_date 2023-06-22 and active_exploitation confirmed; poc_available true; patch_available true with patch_required_reboot false; live_patch_available false, with live_patch_notes stating remediation is \"upgrading Roundcube to 1.4.10 / 1.3.16 / 1.2.13 (or later), a package update with no host reboot\"; affected_versions listing Roundcube Webmail < 1.2.13, 1.3.x < 1.3.16, 1.4.x < 1.4.10. The AU-Essential-8-Patch gap states the fixed builds \"existed but were not applied, leaving the on-open XSS exploitable during the APT28 campaign\", and the NIS2-Art21-patch-management gap states many installs ran versions before 1.4.10/1.3.16/1.2.13 \"well past disclosure\" with APT28 exploiting that lag around the 2023-06-22 KEV listing. The delivery description (plain-text email whose script runs in the Roundcube origin when the victim opens the message, enabling mailbox theft) and the APT28/BlueDelta message- and credential-theft attribution are both taken from the packet's attack_vector and active_exploitation_notes.",
62223
+ "gap_closes": [
62224
+ "AU-Essential-8-Patch",
62225
+ "NIS2-Art21-patch-management"
62226
+ ]
62227
+ },
62228
+ {
62229
+ "id": "NEW-CTRL-018",
62230
+ "name": "SCANNER-PAPER-COMPLIANCE-TEST",
62231
+ "description": "This CVE breaks single-number version checking, which is exactly the paper-compliance shape the control names. Roundcube's fix landed on three maintained branches at three different version numbers — 1.2.13, 1.3.16 and 1.4.10 — so a check that compares an installed version against one \"current\" figure is wrong in both directions: a host on 1.3.15 sorts newer than 1.2.13 and passes while still carrying the vulnerable linkref_addindex path, and a correctly-remediated 1.2.13 host sorts older than 1.4.10 and produces a false finding that consumes the remediation effort the first host needed. The operational test for this entry is branch-aware: resolve each install's release train first, compare it against that train's fixed point release, and take the version from what the running webmail service serves rather than from a package manifest — the packet records this remediation as a package update with no host reboot, so nothing forces the served version and the recorded version to agree. Precondition: this verifies only the installs the scan can see. A Roundcube copy that no inventory enumerates is not made compliant by a clean result across the ones that are, and the packet's own gap text — that self-managed Roundcube servers frequently run outdated point releases while the fixed builds sat available — describes precisely that unenumerated population.",
62232
+ "evidence": "Packet facts only: affected_versions gives the three branch-specific boundaries (< 1.2.13, 1.3.x < 1.3.16, 1.4.x < 1.4.10) and live_patch_notes gives the three corresponding fixed targets (1.4.10 / 1.3.16 / 1.2.13 or later) as a package update with no host reboot; patch_required_reboot is false and live_patch_available is false. The AU-Essential-8-Patch gap records that self-managed Roundcube servers frequently run outdated point releases and that the fixed builds existed but were not applied; the NIS2-Art21-patch-management gap records installs running pre-fix versions well past disclosure. The vulnerable code path named in the vector is linkref_addindex in rcube_string_replacer.php. No version, date or build not present in the packet is used.",
62233
+ "gap_closes": [
62234
+ "AU-Essential-8-Patch",
62235
+ "NIS2-Art21-patch-management"
62236
+ ]
62237
+ }
62238
+ ]
61307
62239
  },
61308
62240
  "CVE-2020-12641": {
61309
62241
  "name": "Roundcube Webmail Remote Code Execution Vulnerability",
@@ -61578,7 +62510,31 @@
61578
62510
  "adequate": false,
61579
62511
  "gap": "A.8.8 technical-vulnerability management requires identifying and patching the vulnerable Win32k component across a mixed Windows estate; the 2023 KEV listing of a 2016 flaw shows the control failing where asset inventory misses legacy or unsupported Windows versions still carrying the bug."
61580
62512
  }
61581
- }
62513
+ },
62514
+ "new_control_requirements": [
62515
+ {
62516
+ "id": "NEW-CTRL-145",
62517
+ "name": "ACTIVELY-EXPLOITED-OS-LPE-REMEDIATION-WINDOW-ENFORCEMENT",
62518
+ "description": "The packet places this defect in the Microsoft Windows Win32k kernel-mode driver and describes a crafted application running arbitrary code in kernel mode to escalate a local low-privileged or sandboxed process to SYSTEM (CWE-269) — the attacker is already executing on the host, so no account model is being abused; a kernel privilege boundary is failing. For this CVE the control means MS16-039 is driven across every host running one of the builds the packet names — Windows Vista SP2, Server 2008 SP2 and R2 SP1, 7 SP1, 8.1, Server 2012 Gold and R2, RT 8.1, and Windows 10 Gold and 1511 — on the clock that opened with the 2023-06-22 KEV listing rather than folded into a routine cycle, with completion measured by each host's installed build against the fixed one rather than by 'approved' or 'downloaded' in the update console. The packet records no live-patch path and states the update installs through Windows Update and requires a reboot to load the fixed kernel-mode driver, so a host that has taken MS16-039 but has not rebooted is still executing the vulnerable driver and must be counted as exposed; on a shared or multi-user server that reboot is the step most likely to be deferred, and a deferral recorded as patched is the specific way this remediation goes wrong. The control's second half is the load-bearing one here: because the escalation runs from code the attacker is already executing, tightening user rights does not contain it, which is exactly why the least-privilege control cited on this entry can pass its attestation while the flaw stays fully exploitable. Priority follows the packet rather than the score bands — poc_available is false and the packet notes no clearly public per-CVE exploit exists for this identifier, yet exploitation is confirmed and KEV-listed, and the packet describes this class as the escalation step chained after initial code execution, making it a containment step for a chain rather than a standalone endpoint item.",
62519
+ "evidence": "Packet: CWE-269 in the Microsoft Windows Win32k kernel-mode driver; attack_vector — 'A crafted application exploits a flaw in the Win32k kernel-mode driver to run arbitrary code in kernel mode, escalating a local low-privileged or sandboxed process to SYSTEM'. cisa_kev true, kev_date 2023-06-22, active_exploitation confirmed; poc_available false, with active_exploitation_notes stating 'No clearly public per-CVE exploit exists for this identifier' and that such Win32k EoP bugs are 'chained after initial code execution (e.g. a document or browser exploit)'. patch_available true, live_patch_available false, patch_required_reboot true, live_patch_notes: 'No live-patch mechanism; remediation requires installing Microsoft security update MS16-039 (April 2016) via Windows Update, which requires a reboot to load the fixed kernel-mode driver.' CVSS 7.8, RWEP 49. affected_versions: 'Windows Vista SP2, Server 2008 SP2 / R2 SP1, 7 SP1, 8.1, Server 2012 Gold & R2, RT 8.1, and 10 Gold & 1511 before MS16-039'. The NIST-800-53-AC-6 gap records that 'restricting user rights does not contain an attacker who has already achieved initial execution until MS16-039 is applied'.",
62520
+ "gap_closes": [
62521
+ "AU-Essential-8-Patch",
62522
+ "NIS2-Art21-patch-management",
62523
+ "NIST-800-53-AC-6"
62524
+ ]
62525
+ },
62526
+ {
62527
+ "id": "NEW-CTRL-122",
62528
+ "name": "EOL-ASSET-DECOMMISSION",
62529
+ "description": "patch_available is true — MS16-039 exists for the Windows builds this packet names — but the packet's own gap statements put a large part of the affected population outside any supported patch stream: the Essential Eight gap records 'the risk of running end-of-support Windows' and that unsupported hosts fail the control, and the technical-vulnerability-management gap reads the 2023 KEV listing of a 2016 flaw as asset inventory missing 'legacy or unsupported Windows versions still carrying the bug'. Those two facts together define the requirement for this CVE. On a host whose Windows version still receives security updates, installing MS16-039 and taking the reboot is an interim state. On a host running a version that no longer receives them, MS16-039 closes this one Win32k defect while the machine remains exposed to every kernel flaw found since that build shipped, so the terminal state is rebuild onto a supported version or removal — and a requirement that ends at 'every host reports MS16-039 installed' marks such a machine compliant while it stays exposed. In operational terms: enumerate every host running one of the builds the packet names (Vista SP2, Server 2008 SP2 and R2 SP1, 7 SP1, 8.1, Server 2012 Gold and R2, RT 8.1, Windows 10 Gold and 1511), record for each its running build and a support status obtained from the vendor rather than assumed in either direction, put the still-supported ones on the KEV clock that opened 2023-06-22, and put the rest on a dated replacement schedule; a risk acceptance with no removal date leaves a confirmed-exploited local-to-SYSTEM escalation primitive in service indefinitely. Precondition: this is an inventory-and-schedule control and it reaches only hosts the inventory can see — the packet's own framing, a 2016 flaw KEV-listed in 2023 because inventories missed legacy Windows, is the evidence that this is where it fails. A host absent from the inventory is neither patched nor scheduled, and hardening it is not a substitute: the packet's system-security gap records that a Win32k kernel bug bypasses user-mode sandboxes, so application-layer hardening on a build that no longer receives kernel fixes does not stop the escalation.",
62530
+ "evidence": "Packet framework_control_gaps, AU-Essential-8-Patch: 'the exploited window shows the risk of running end-of-support Windows: MS16-039 must be applied, and unpatched or unsupported hosts fail the control precisely where a browser/document exploit would chain into this EoP.' ISO-27001-2022-A.8.8: 'the 2023 KEV listing of a 2016 flaw shows the control failing where asset inventory misses legacy or unsupported Windows versions still carrying the bug.' NIS2-Art21-patch-management: 'legacy or unpatched Windows (Vista/7/8.1/Server 2008-2012) in essential-entity estates stayed vulnerable to SYSTEM takeover.' UK-CAF-B4: 'a Win32k kernel bug bypasses user-mode sandboxes; without the MS16-039 kernel patch, hardening the application layer does not stop escalation to kernel-mode SYSTEM.' patch_available true with live_patch_available false and patch_required_reboot true; cisa_kev true, kev_date 2023-06-22, active_exploitation confirmed.",
62531
+ "gap_closes": [
62532
+ "ISO-27001-2022-A.8.8",
62533
+ "UK-CAF-B4",
62534
+ "AU-Essential-8-Patch"
62535
+ ]
62536
+ }
62537
+ ]
61582
62538
  },
61583
62539
  "CVE-2023-27997": {
61584
62540
  "name": "Fortinet FortiOS and FortiProxy SSL-VPN Heap-Based Buffer Overflow Vulnerability",
@@ -64340,7 +65296,42 @@
64340
65296
  "adequate": false,
64341
65297
  "gap": "A.8.8 vulnerability management often lacks a fast lane for mobile OS CVEs, but this actively-exploited kernel out-of-bounds write in a spyware chain demanded emergency device updates that a routine mobile-patch schedule would not deliver in time."
64342
65298
  }
64343
- }
65299
+ },
65300
+ "new_control_requirements": [
65301
+ {
65302
+ "id": "NEW-CTRL-056",
65303
+ "name": "MOBILE-ENDPOINT-MDM-ENFORCED-KEV-SLA",
65304
+ "description": "The operationally load-bearing detail for this CVE is that there is no single fixed build to enforce: the packet names iOS/iPadOS 16.4.1 or 15.7.5, macOS Ventura 13.3.1, Monterey 12.6.5 and Big Sur 11.7.6, so a KEV-clock policy has to compare each device against the fixed build for the branch that device can actually run. An estate that measures compliance against 16.4.1 and 13.3.1 alone reports the older iPhones offered only 15.7.5 and the Macs on Monterey and Big Sur as out of scope while they stay exploitable to a kernel-privilege out-of-bounds write. Second: patch_required_reboot is true and there is no live-patch path, so a device that has downloaded the update but not restarted is still executing the vulnerable kernel code — user deferral of that restart is the specific mechanism by which the dashboard reads patched while the device is not, which is why deferral has to be disallowed rather than shortened. Measure completion on the build the device is running, per branch, against the 2023-04-10 listing. Scope to the products the packet names — iOS, iPadOS and macOS — rather than to every Apple platform in the estate.",
65305
+ "evidence": "live_patch_notes name the fixed releases as iOS/iPadOS 16.4.1 or 15.7.5, macOS Ventura 13.3.1, Monterey 12.6.5 and Big Sur 11.7.6, and record that they reboot the device to apply; patch_required_reboot is true and live_patch_available false. affected_versions list the same five branches. affected: Apple IOSurfaceAccelerator on iOS, iPadOS and macOS, an out-of-bounds write (CWE-787) letting a malicious app execute code with kernel privileges. KEV date 2023-04-10, active_exploitation confirmed, CVSS 8.6, RWEP 70. The AU-Essential-8-Patch gap names a 48-hour target for actively-exploited critical flaws that is hard to meet on a BYOD Apple fleet; the NIS2-Art21-patch-management gap records that mobile patch management rarely enforces same-day OS updates.",
65306
+ "gap_closes": [
65307
+ "AU-Essential-8-Patch",
65308
+ "NIS2-Art21-patch-management",
65309
+ "NIST-800-53-SI-2",
65310
+ "ISO-27001-2022-A.8.8"
65311
+ ]
65312
+ },
65313
+ {
65314
+ "id": "NEW-CTRL-126",
65315
+ "name": "MOBILE-OS-MINIMUM-PATCH-LEVEL-ENFORCEMENT",
65316
+ "description": "This entry's own gaps name a BYOD Apple fleet and mobile update policies that do not enforce same-day OS updates — populations where an update cannot be compelled, and where the fixed build therefore has to function as an access condition rather than as a row on a patch report. For this CVE that means mail, VPN and document access are denied to any device below the fixed build for its branch (16.4.1 or 15.7.5 on iOS/iPadOS; 13.3.1, 12.6.5 or 11.7.6 on macOS), on the reasoning that a device carrying a kernel-privilege out-of-bounds write cannot be trusted to hold organisational data. The distinguishing test is to enrol a device pinned below the fixed build and confirm the policy actually denies it protected resources; an estate that surfaces the stale build on a report while the device keeps its access has recorded the exposure rather than removed it. Precondition, and this is where this control is normally over-claimed: its install-restriction half does not cover this CVE's observed delivery path. The packet reaches the IOSurfaceAccelerator operations from an app context obtained through an initial WebKit content-process compromise (CVE-2023-28205), not from a side-loaded application, so restricting untrusted installation neither prevents that path nor evicts code already running. This is a holding measure for the window before the fixed build and its reboot land, not a substitute for them.",
65317
+ "evidence": "The AU-Essential-8-Patch gap names a BYOD Apple fleet where a 48-hour target for actively-exploited critical flaws is hard to meet; the NIS2-Art21-patch-management and ISO-27001-2022-A.8.8 gaps record that routine mobile schedules and NIS2 patch management do not deliver the emergency device updates this entry demanded. attack_vector: a malicious app performs crafted IOSurfaceAccelerator operations that trigger an out-of-bounds write in the kernel, and in the observed campaign it escalated privileges after an initial WebKit content-process compromise (CVE-2023-28205). Fixed builds per live_patch_notes: iOS/iPadOS 16.4.1 or 15.7.5, macOS Ventura 13.3.1, Monterey 12.6.5, Big Sur 11.7.6; patch_required_reboot true, live_patch_available false.",
65318
+ "gap_closes": [
65319
+ "AU-Essential-8-Patch",
65320
+ "ISO-27001-2022-A.8.8",
65321
+ "NIS2-Art21-patch-management"
65322
+ ]
65323
+ },
65324
+ {
65325
+ "id": "NEW-CTRL-121",
65326
+ "name": "MOBILE-ZERO-CLICK-HARDENING",
65327
+ "description": "The packet places this bug as the kernel-privilege-escalation link of a commercial-surveillance chain against iPhones and Macs, reached after an initial WebKit content-process compromise — which has two consequences for the estate. The app sandbox is the containment boundary the deployment leans on, and this out-of-bounds write is precisely what breaks it, so there is no sandbox-hardening or MDM-configuration setting that contains the flaw before the fixed build. And a reboot-gated OS update is not fast enough on its own for the population plausibly inside a targeted-surveillance targeting set. What remains is narrowing what content is processed automatically: place that cohort in the vendor's reduced-attack-surface mode so untrusted web content, message attachments and link previews are not rendered without action, cutting the delivery path into the kernel primitive during the window that ran before Apple's 2023-04-07 fix and continued on each device until it took 16.4.1, 15.7.5, 13.3.1, 12.6.5 or 11.7.6 and restarted. Preconditions, both load-bearing: the mode only helps if it was already the standing posture when the chain arrived, so it must be assigned to the high-risk cohort before the next disclosure rather than in response to this KEV listing; and it narrows delivery rather than removing the kernel defect, which only the fixed build and its restart do. A device in the targeted set that processed untrusted content during the window belongs on the incident path — kernel-privilege code execution is not undone by the later update.",
65328
+ "evidence": "active_exploitation_notes describe the flaw as actively exploited as part of a commercial-surveillance exploit chain against iPhones and Macs, as the kernel-privilege-escalation link reached after an initial WebKit content-process compromise (CVE-2023-28205), giving the spyware full-device control; CISA added it to KEV 2023-04-10. The UK-CAF-B4 gap states the app sandbox is the containment boundary, that the IOSurfaceAccelerator out-of-bounds write breaks out of it to kernel code execution, and that MDM hardening alone cannot stop it pre-patch. The NIST-800-53-SI-2 gap records the spyware zero-day as live before Apple's 2023-04-07 fix. patch_required_reboot true; live_patch_available false; fixed builds per live_patch_notes.",
65329
+ "gap_closes": [
65330
+ "UK-CAF-B4",
65331
+ "NIST-800-53-SI-2"
65332
+ ]
65333
+ }
65334
+ ]
64344
65335
  },
64345
65336
  "CVE-2021-27876": {
64346
65337
  "name": "Veritas Backup Exec Agent File Access Vulnerability",
@@ -64485,7 +65476,29 @@
64485
65476
  "adequate": false,
64486
65477
  "gap": "A.5.15 access control presumes only authenticated principals reach the agent, but the retained SHA scheme granted privileged command execution to anyone who spoke the legacy protocol, so the access-control boundary never actually held for this service."
64487
65478
  }
64488
- }
65479
+ },
65480
+ "new_control_requirements": [
65481
+ {
65482
+ "id": "NEW-CTRL-001",
65483
+ "name": "CISA-KEV-RESPONSE-SLA",
65484
+ "description": "For the Veritas Backup Exec Agent the remediation the packet records is the upgrade to Backup Exec 21.2, which disables the deprecated SHA authentication scheme, and the clock to run it against is the 2023-04-07 KEV listing rather than the routine application-patch cycle a backup agent normally sits inside. The population to enumerate is every host running the Backup Exec Agent, not only the media server, because the agent is the component that accepts the handshake. Completion has to be measured on the Backup Exec version the agent process is actually executing: the packet records patch_required_reboot false, so there is no machine reboot to schedule, but that does not mean the fix is live on install — the packet's own live_patch_notes require restarting the agent service, and until that restart the running agent still answers the SHA scheme. A host where the 21.2 upgrade is staged or installed but the agent service has not been restarted is still exploitable and must not be counted as remediated. Because live_patch_available is false there is no mechanism to hold the exposure in the interim, so the reachability restriction is the only cover between the KEV listing and the completed restart.",
65485
+ "evidence": "KEV-listed 2023-04-07 with active_exploitation confirmed, poc_available true, CVSS 9.8 and RWEP 72. The packet records disclosure by Veritas in March 2021 but broad exploitation from late 2022, with Mandiant attributing a campaign (UNC4466) that used a Metasploit module against internet-exposed Backup Exec agents to deploy ALPHV/BlackCat ransomware, and the KEV entry carrying a Known-ransomware flag. patch_available is true for versions before 21.2; live_patch_available is false; patch_required_reboot is false; live_patch_notes states remediation requires upgrading to 21.2 (which disables the deprecated SHA authentication scheme) and restarting the agent service. The AU-Essential-8-Patch gap records that patch-applications maturity did not compel rapid upgrade of a backup agent, and the NIS2-Art21-patch-management gap records that patch management deprioritized a backup-infrastructure agent so exposed agents remained a pre-auth foothold at the KEV listing.",
65486
+ "gap_closes": [
65487
+ "AU-Essential-8-Patch",
65488
+ "NIS2-Art21-patch-management"
65489
+ ]
65490
+ },
65491
+ {
65492
+ "id": "NEW-CTRL-054",
65493
+ "name": "BACKUP-TIER-NETWORK-ISOLATION",
65494
+ "description": "Applied to this product, the control means the Backup Exec Agent's listener answers only from the media servers with an operational need to drive it, on a backup segment — not from the internet, and not from a general user VLAN — because the packet places the observed campaign specifically against internet-exposed Backup Exec agents. This is the operator-side access boundary that remains while the agent still accepts the deprecated scheme, and it is the half an access-control attestation misses: the account model is never consulted, so a review confirming every backup operator holds a unique authenticated account passes cleanly while the agent grants privileged command execution to anyone who speaks the legacy protocol. Precondition, and it is the whole limit of this control: restricting reachability bounds the population that can complete the SHA handshake, it does not repair the authenticator. Any host already inside the permitted segment — a compromised media server, an administrative workstation with a route to the backup VLAN — still reaches the agent and still authenticates with no credential, so this is a holding measure for the window before the 21.2 upgrade and its agent-service restart, not a closure. Distinguishing test: from a general user VLAN and from an external address, attempt to open the agent's listener on a staging host; anything that answers is within reach of the published module, and \"the backup network is internal\" is an assertion about topology rather than a demonstration that the agent is unreachable from untrusted segments.",
65495
+ "evidence": "The packet's affected field states the Backup Exec Agent continued to accept the deprecated SHA authentication scheme, letting a remote attacker authenticate without valid credentials and run privileged commands, and the attack_vector has an unauthenticated attacker completing that handshake to gain agent access and execute privileged commands on the host. active_exploitation_notes name internet-exposed Backup Exec agents as the targets of the UNC4466 campaign. The ISO-27001-2022-A.5.15 gap records that access control presumes only authenticated principals reach the agent, but the retained SHA scheme granted privileged command execution to anyone who spoke the legacy protocol, so the access-control boundary never actually held for this service; the UK-CAF-B2 gap records that identity-and-access control assumes agents enforce a robust auth scheme, yet the legacy scheme let attackers authenticate as trusted. live_patch_available is false, so no vendor mechanism covers the interval before the 21.2 upgrade and agent-service restart.",
65496
+ "gap_closes": [
65497
+ "ISO-27001-2022-A.5.15",
65498
+ "UK-CAF-B2"
65499
+ ]
65500
+ }
65501
+ ]
64489
65502
  },
64490
65503
  "CVE-2021-27878": {
64491
65504
  "name": "Veritas Backup Exec Agent Command Execution Vulnerability",
@@ -64874,7 +65887,31 @@
64874
65887
  "adequate": false,
64875
65888
  "gap": "A.8.8 technical-vulnerability management must track legacy-browser exposure across the estate; the 2023 KEV listing of a 2013 IE flaw shows the control failing where inventory misses hosts still running unpatched Internet Explorer 8."
64876
65889
  }
64877
- }
65890
+ },
65891
+ "new_control_requirements": [
65892
+ {
65893
+ "id": "NEW-CTRL-122",
65894
+ "name": "EOL-ASSET-DECOMMISSION",
65895
+ "description": "The packet states the remediation and its preferred terminal form in the same breath: install Microsoft cumulative update MS13-055 via Windows Update, which requires a reboot, or preferably retire legacy Internet Explorer in favour of a supported browser. That is exactly the interim/terminal split this control exists for. MS13-055 fixes the CAnchorElement use-after-free in mshtml, but a host still rendering untrusted web content in Internet Explorer is exposed to everything found in that engine since 2013 — which is what a 2013 flaw appearing on the KEV list in 2023 as a still-relevant exploited flaw for legacy IE deployments is telling operators. Scope the inventory to what the affected versions name: Internet Explorer 8 through 10 before MS13-055. The gap prose speaks of IE 8, but the affected range covers 9 and 10 as well, and a sweep written against IE 8 alone reports an estate clean while its IE 9 and IE 10 hosts stay exploitable by the same crafted page. Per host, record the Internet Explorer version in service, whether MS13-055 or a later cumulative update carrying it has been installed and the machine has restarted onto it, and a dated replacement date for the browser itself; a requirement that ends at 'every host reports the fixed build' marks a browser nobody maintains as compliant while it keeps rendering attacker-controlled content. Precondition: patch_required_reboot is true and live_patch_available is false, so a host that took the update but has not restarted is still executing the vulnerable mshtml code and cannot be counted as remediated. And because exploitation is confirmed through crafted web pages with a public Metasploit module, a host that browsed untrusted content while exposed belongs on the incident path rather than being closed on the patch record.",
65896
+ "evidence": "Packet live_patch_notes: 'No live-patch mechanism; remediation requires installing Microsoft cumulative update MS13-055 via Windows Update (reboot required) or, preferably, retiring legacy Internet Explorer 8 in favor of a supported browser'; patch_available true, patch_required_reboot true, live_patch_available false, poc_available true. affected_versions: 'Internet Explorer 8 through 10 before MS13-055'; affected describes the mshtml rendering engine where a CAnchorElement is freed while a stale reference is retained. active_exploitation_notes: exploited in the wild via crafted web pages when MS13-055 shipped in July 2013, a classic drive-by/watering-hole browser RCE, a public Metasploit module made weaponization trivial, and 'CISA added it to KEV on 2023-03-30 as a still-relevant exploited flaw for legacy IE deployments'. The AU-Essential-8-App-Hardening gap states that failing to disable or replace legacy IE left the CAnchorElement use-after-free reachable; the ISO-27001-2022-A.8.8 gap states the control fails where inventory misses hosts still running unpatched Internet Explorer; the UK-CAF-B4 gap states that without MS13-055 or retiring IE, endpoint hardening does not stop the drive-by execution; the NIST-800-53-SI-2 gap records the exposure persisting in old estates.",
65897
+ "gap_closes": [
65898
+ "AU-Essential-8-App-Hardening",
65899
+ "NIST-800-53-SI-2",
65900
+ "ISO-27001-2022-A.8.8",
65901
+ "UK-CAF-B4"
65902
+ ]
65903
+ },
65904
+ {
65905
+ "id": "NEW-CTRL-057",
65906
+ "name": "BROWSER-MANAGED-UPDATE-NO-DEFERRAL",
65907
+ "description": "For Internet Explorer the browser's security channel is Windows Update — the packet's remediation is the MS13-055 cumulative update installed that way — so whatever deferral an enterprise applies to its operating-system update rings is applied to a browser remote-code-execution fix, and there is no separate browser channel that bypasses the ring. This CVE shows what that costs: the packet records the flaw as already under active attack when MS13-055 shipped in July 2013, with a public Metasploit module making weaponization trivial, so each interval of ring deferral was an interval of drive-by exposure on an engine that executes attacker code in the user's context from a single crafted page with no further interaction. Applied here, the requirement is that an update carrying an Internet Explorer engine fix is not held in a pilot or broad ring beyond this control's deferral limit, and that the restart completing it is driven rather than left to the user — the packet records a reboot as required and no live-patch path, so an approved-and-downloaded state on the management console is not remediation. Precondition, and it is why this control cannot stand alone on this entry: an update ring only reaches hosts that still receive cumulative updates for the Internet Explorer version they run. A host on a build outside that path is a replacement item, not a deferral-policy item, and recording it as 'awaiting the next ring' hides the only action available for it.",
65908
+ "evidence": "Packet live_patch_notes: remediation requires installing Microsoft cumulative update MS13-055 via Windows Update (reboot required); patch_available true, patch_required_reboot true, live_patch_available false. active_exploitation_notes: 'Microsoft disclosed CVE-2013-3163 as being exploited in the wild via crafted web pages when MS13-055 shipped in July 2013; it is a classic drive-by/watering-hole browser RCE. A public Metasploit module made weaponization trivial.' vector: Internet Explorer 8 through 10 allows remote attackers to execute arbitrary code via a crafted web site. The NIS2-Art21-patch-management gap states patch management assumes browser updates are applied promptly, that this flaw was exploited before MS13-055 was available, and that the residual gap is legacy IE that never received the cumulative update; the NIST-800-53-SI-2 gap states the flaw was already under active attack when the patch shipped and that unpatched hosts remained a reliable drive-by RCE target.",
65909
+ "gap_closes": [
65910
+ "NIS2-Art21-patch-management",
65911
+ "NIST-800-53-SI-2"
65912
+ ]
65913
+ }
65914
+ ]
64878
65915
  },
64879
65916
  "CVE-2017-7494": {
64880
65917
  "name": "Samba Remote Code Execution Vulnerability",
@@ -65080,7 +66117,30 @@
65080
66117
  "adequate": false,
65081
66118
  "gap": "A.8.28 secure coding is exactly what was missing — the username field parsed from a beacon should be treated as untrusted and output-encoded; its absence let a stored XSS in the teamserver UI reach code execution, which only the corrected Cobalt Strike release resolves."
65082
66119
  }
65083
- }
66120
+ },
66121
+ "new_control_requirements": [
66122
+ {
66123
+ "id": "NEW-CTRL-055",
66124
+ "name": "SECURITY-TOOL-INTEGRITY-VERIFICATION",
66125
+ "description": "The vulnerable asset here is the security team's own tooling: a Fortra (HelpSystems) Cobalt Strike teamserver, where a malformed username in a Beacon payload's configuration is rendered as HTML by the Java Swing UI (CWE-79) and, per the packet, is chainable to code execution on the teamserver itself. Bound to this product the control means two things. First, the teamserver is carried in the vulnerability-management inventory with the same SLA as any other privileged software rather than sitting outside it as operator tooling — it is the host that holds an engagement's payload configuration and the console its operators sit in front of. Second, because the packet records that the initial 4.7.1 fix was incomplete, the input handling is verified by test rather than inferred from a version string: this is the control's trust-anchor-inversion test, made concrete for this CVE as feeding a teamserver on a staging instance a Beacon whose username field carries markup and confirming the UI renders it as inert text. That test is the distinguishing one — an estate that records 'Cobalt Strike upgraded past 4.7' passes a patch attestation while a teamserver still on the incomplete first fix renders the injected markup exactly as before, and it is the only operator-side substitute for trusting that the vendor's encoding was written correctly, which the packet shows it was not on the first attempt. Note where the malicious input arrives: the packet's vector has the attacker inspect a Cobalt Strike payload and modify the username field in it, so the markup comes in through normal Beacon processing rather than through the console's login, and no authentication or network control in front of the operator UI sits on that path — a teamserver has to accept Beacon traffic to do its job. Precondition: remediation is the fixed release, and the packet records no live-patch mechanism and requires the teamserver service to be restarted; patch_required_reboot is false, which means no host reboot, not that the fix is live on deployment — a teamserver upgraded but not restarted is still executing the vulnerable rendering code.",
66126
+ "evidence": "Packet vector: 'An XSS (Cross Site Scripting) vulnerability was found in HelpSystems Cobalt Strike through 4.7 that allowed a remote attacker to execute HTML on the Cobalt Strike teamserver. To exploit the vulnerability, one must first inspect a Cobalt Strike payload, and then modify the username field in the payload... to be malformed.' affected: 'a cross-site scripting flaw (CWE-79) lets a malformed username in a Beacon configuration render as HTML in the Swing-based UI, chainable to remote code execution on the teamserver.' affected_versions: 'Fortra/HelpSystems Cobalt Strike <= 4.7 (fixed in 4.7.1 and later)'. live_patch_notes: 'No live-patch mechanism; remediation requires upgrading to the fixed Cobalt Strike release (the out-of-band 4.7.1 update and subsequent fixes) and restarting the teamserver service — no host reboot is needed, but note the initial 4.7.1 fix was incomplete, so a fully-patched version is required.' patch_available true, patch_required_reboot false, live_patch_available false, poc_available true, cisa_kev true with kev_date 2023-03-30, active_exploitation confirmed, CVSS 6.1, RWEP 62. NIST-800-53-SI-10 gap: 'the teamserver did not validate/encode the attacker-controllable username field from beacon metadata before rendering it in the Swing UI, so a malformed username became executable markup'. ISO-27001-2022-A.8.28 gap: 'the username field parsed from a beacon should be treated as untrusted and output-encoded'.",
66127
+ "gap_closes": [
66128
+ "NIST-800-53-SI-10",
66129
+ "ISO-27001-2022-A.8.28",
66130
+ "UK-CAF-B4"
66131
+ ]
66132
+ },
66133
+ {
66134
+ "id": "NEW-CTRL-042",
66135
+ "name": "INCOMPLETE-PATCH-SEQUENCE-SEVERITY-MULTIPLIER",
66136
+ "description": "This entry is the incomplete-patch case stated twice in its own packet: the remediation note records that the initial 4.7.1 fix was incomplete so a fully-patched version is required, and the vulnerability-handling gap records that teamservers considered 'patched' could still be exploitable until later fixes. Applied to this product, the control means a Cobalt Strike teamserver's record for this CVE cannot be closed on 'upgraded off 4.7' or on 'upgraded to 4.7.1' — the closure criterion is the running teamserver being on a release later than the incomplete first fix, and the item stays open and is re-checked against each subsequent Cobalt Strike release rather than treated as terminal at the first vendor response. The multiplier's operational effect for this entry is the priority inversion it corrects: a CVSS 6.1 cross-site scripting finding in a desktop Swing UI reads as a low-ranked item on a score-ordered queue, while the packet describes the same flaw as chainable to remote code execution on the teamserver, KEV-listed 2023-03-30 with confirmed exploitation and a public PoC, scoring RWEP 62 against that CVSS 6.1 — so the score-keyed queue is the specific mechanism by which this stays unremediated. Preconditions and limits: this control changes the ranking and the closure criterion; it does not remediate, and it gives nothing to a teamserver that has not yet been upgraded and restarted. And because exploitation is confirmed, a teamserver that processed Beacon traffic while running 4.7 or the incomplete first fix belongs on the incident path — upgrading it does not remove anything an attacker who reached code execution left on that host, and the operator credentials and payload configuration it held are rotated rather than inherited across the upgrade.",
66137
+ "evidence": "Packet live_patch_notes: 'the initial 4.7.1 fix was incomplete, so a fully-patched version is required.' NIS2-Art21-vulnerability-management gap: 'NIS2 vulnerability management assumes a fix fully remediates, but Cobalt Strike's initial 4.7.1 patch for this XSS was incomplete, so teamservers considered \"patched\" could still be exploitable until later fixes — a reminder that KEV-listed (2023-03-30) issues need verification that the fix actually closes the vector.' AU-Essential-8-Patch gap: 'because the first fix (4.7.1) was incomplete and this is niche operator software, the window between the 2023-03-30 KEV date and a fully-remediated teamserver left the injection-to-RCE path exploitable.' affected: 'chainable to remote code execution on the teamserver'. CVSS 6.1 against rwep_score 62; poc_available true; cisa_kev true; active_exploitation confirmed.",
66138
+ "gap_closes": [
66139
+ "NIS2-Art21-vulnerability-management",
66140
+ "AU-Essential-8-Patch"
66141
+ ]
66142
+ }
66143
+ ]
65084
66144
  },
65085
66145
  "CVE-2021-30900": {
65086
66146
  "name": "Apple iOS, iPadOS, and macOS Out-of-Bounds Write Vulnerability",
@@ -65141,7 +66201,30 @@
65141
66201
  "adequate": false,
65142
66202
  "gap": "A.8.8 technical-vulnerability management depends on tracking OS versions across the Apple estate; unmanaged or slow-updating devices kept the KEV-listed GPU-driver kernel write exploitable well after Apple's October 2021 fix."
65143
66203
  }
65144
- }
66204
+ },
66205
+ "new_control_requirements": [
66206
+ {
66207
+ "id": "NEW-CTRL-056",
66208
+ "name": "MOBILE-ENDPOINT-MDM-ENFORCED-KEV-SLA",
66209
+ "description": "Scope this to what the packet's affected and affected_versions fields name — iOS, iPadOS and macOS — and treat all three as one population on one clock, because a sweep aimed only at iPhones reports clean across a Mac estate carrying the same GPU-driver defect. The enforced targets are iOS/iPadOS 14.8.1 for devices held on the 14.x line, iOS/iPadOS 15.1 for devices that can take it, and the corresponding October 2021 macOS release (Big Sur 11.6.1 / Monterey 12.0.1 per HT212872); a compliance report that recognises only the latest major version leaves the 14.8.1 population invisible rather than remediated. Push the update by management policy on the clock that opened with the 2023-03-30 KEV listing, with user deferral disallowed, and measure completion on the build each device is actually running after its restart — the packet records patch_required_reboot true and no live-patch mechanism for the affected GPU/kernel component, so a device that has downloaded the update but not restarted is still executing the vulnerable driver and is not remediated. There is no interim vendor mitigation to fall back on: the escalation is reached by an application already running on the device, so nothing short of the fixed build and its restart removes it.",
66210
+ "evidence": "CISA added CVE-2021-30900 to KEV on 2023-03-30 based on evidence of exploitation; active_exploitation is confirmed, CVSS 7.8, RWEP 50, and poc_available is false (the packet notes no standalone public PoC is known). patch_available is true, patch_required_reboot is true, live_patch_available is false, and live_patch_notes states there is no live-patch mechanism for the affected GPU/kernel component and that remediation requires the Apple OS update (iOS/iPadOS 14.8.1 or 15.1 and the corresponding macOS release), which requires a device restart. affected_versions list iOS/iPadOS < 14.8.1, iOS/iPadOS < 15.1, and macOS releases prior to the October 2021 fix (Big Sur 11.6.1 / Monterey 12.0.1 per HT212872). The AU-Essential-8-Patch gap records that Essential Eight allows up to a month for high-severity OS patches while this kernel-privilege out-of-bounds write was exploited in the wild; the NIS2-Art21-patch-management gap records that any lag between the October 2021 fix and deployment left kernel-level compromise reachable from a malicious app; the NIST-800-53-SI-2 gap records that devices left on older iOS retained an app-to-kernel escalation the control never forced to be closed.",
66211
+ "gap_closes": [
66212
+ "AU-Essential-8-Patch",
66213
+ "NIS2-Art21-patch-management",
66214
+ "NIST-800-53-SI-2"
66215
+ ]
66216
+ },
66217
+ {
66218
+ "id": "NEW-CTRL-126",
66219
+ "name": "MOBILE-OS-MINIMUM-PATCH-LEVEL-ENFORCEMENT",
66220
+ "description": "For this entry the fixed build has to function as an access condition rather than a row on a dashboard: an iPhone, iPad or Mac below iOS/iPadOS 14.8.1 (or 15.1) or below the corresponding October 2021 macOS release is denied mail, VPN and document access until it is at or above that build. That is the answer to both gaps here — an estate that cannot see or reach an unmanaged or slow-updating Apple device cannot patch it, and endpoint hardening has nothing to offer once the primitive is an out-of-bounds write in the GPU driver that crosses into the kernel, so what remains is refusing the device organizational data while it stays below the fix. The distinguishing test is to enrol a device pinned below the fixed build and confirm the policy actually denies it access to protected resources; an estate that surfaces the stale build on a report while the device keeps its mailbox has recorded the exposure rather than removed it. Precondition, and it is the load-bearing caveat on this entry: the packet's trigger is a malicious application already on the device, so restricting untrusted or side-loaded application installation raises the bar for getting that application onto a device but does not evict one already installed and does not cover one that arrived through the normal store channel. A device suspected of already running the malicious application belongs on the incident path, not the install-policy path. This is a holding measure for the window before the fixed build and its required restart land, not a substitute for them.",
66221
+ "evidence": "The packet's affected field places the flaw in Apple GPU drivers in iOS, iPadOS and macOS, where an out-of-bounds write lets a malicious application execute code with kernel privileges, and the attack_vector describes a malicious application triggering that write to elevate from an app foothold to full kernel control. patch_required_reboot is true, live_patch_available is false, and live_patch_notes require the Apple OS update (iOS/iPadOS 14.8.1 or 15.1 and the corresponding macOS release) plus a device restart. The ISO-27001-2022-A.8.8 gap records that technical-vulnerability management depends on tracking OS versions across the Apple estate, and that unmanaged or slow-updating devices kept the KEV-listed GPU-driver kernel write exploitable well after Apple's October 2021 fix; the UK-CAF-B4 gap records that endpoint hardening does not prevent this out-of-bounds write and that app sandboxing and platform hardening are bypassed until the October 2021 update is applied. KEV listing 2023-03-30, active_exploitation confirmed.",
66222
+ "gap_closes": [
66223
+ "ISO-27001-2022-A.8.8",
66224
+ "UK-CAF-B4"
66225
+ ]
66226
+ }
66227
+ ]
65145
66228
  },
65146
66229
  "CVE-2022-38181": {
65147
66230
  "name": "Arm Mali GPU Kernel Driver Use-After-Free Vulnerability (CVE-2022-38181)",