@blamejs/exceptd-skills 0.19.21 → 0.19.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/data/_indexes/_meta.json +4 -4
- package/data/cve-catalog.json +4 -4
- package/data/zeroday-lessons.json +1122 -66
- package/manifest.json +53 -53
- package/package.json +1 -1
- package/sbom.cdx.json +17 -17
|
@@ -38949,10 +38949,10 @@
|
|
|
38949
38949
|
},
|
|
38950
38950
|
"defense_chain": {
|
|
38951
38951
|
"prevention": {
|
|
38952
|
-
"what_would_have_worked": "Update to Craft 4.13.8 / 5.5.8
|
|
38952
|
+
"what_would_have_worked": "Update to Craft 4.13.8 / 5.5.8 or later, which is what closes this injection path — the vendor scopes the flaw to unpatched installs. For installs that could not update promptly, the vendor names rotating the security key as the interim measure.",
|
|
38953
38953
|
"was_this_required": true,
|
|
38954
38954
|
"framework_requiring_it": "CISA BOD 22-01 (KEV remediation, added 2025-02-20)",
|
|
38955
|
-
"adequacy": "
|
|
38955
|
+
"adequacy": "The fixed release remediates this CVE; Craft's advisory offers key rotation to users who cannot update, not as a companion step required alongside the upgrade. What patch-status tracking does miss is separate: a security key that may already have been disclosed stays valuable to an attacker for everything else it protects, so it remains a credential-rotation and incident-response item after the upgrade — a finding with its own owner rather than a condition on closing this CVE."
|
|
38956
38956
|
},
|
|
38957
38957
|
"detection": {
|
|
38958
38958
|
"what_would_have_worked": "Monitoring for anomalous database-backup/restore operations and unexpected outbound connections from the Craft application process.",
|
|
@@ -38971,14 +38971,36 @@
|
|
|
38971
38971
|
"NIST-800-53-SI-2": {
|
|
38972
38972
|
"covered": true,
|
|
38973
38973
|
"adequate": false,
|
|
38974
|
-
"gap": "
|
|
38974
|
+
"gap": "Flaw remediation closes on the fixed release (4.13.8 / 5.5.8), which is what remediates this CVE — but the exploit precondition is a security key compromised before the update, and SI-2 has no trigger for rotating a secret whose exposure the vulnerability reveals. The upgrade closes the injection path and leaves a key the attacker may hold still in service for everything else it protects."
|
|
38975
38975
|
},
|
|
38976
38976
|
"GDPR-Art32": {
|
|
38977
38977
|
"covered": true,
|
|
38978
38978
|
"adequate": false,
|
|
38979
38979
|
"gap": "Security-of-processing is directly undermined when a leaked application security key enables remote code execution against a system that may process personal data."
|
|
38980
38980
|
}
|
|
38981
|
-
}
|
|
38981
|
+
},
|
|
38982
|
+
"new_control_requirements": [
|
|
38983
|
+
{
|
|
38984
|
+
"id": "NEW-CTRL-038",
|
|
38985
|
+
"name": "MITIGATION-ACTIVE-PATCH-PENDING-VERDICT-CLASS",
|
|
38986
|
+
"description": "Craft's own guidance in the packet splits the response into two actions, and which one remediates depends on where the install is: the fix is Craft 4.13.8 and 5.5.8, and installs that cannot update should rotate their security keys. So the verdict classes for this CVE are: the running install reports 4.13.8 or 5.5.8 or later — remediated, because the vendor scopes the flaw to unpatched installs and the upgrade closes the injection path whatever the key's history; the install is still below the fixed release but its security key has been rotated — the vendor's own stated interim mitigation, which must be reported as a compensating state carrying a dated upgrade item rather than as a pass, because it depends on the new key staying secret and the injection path is still present; and neither — full exposure of a KEV-listed, confirmed-exploited code-injection path. The state a compliance record most often gets wrong here is the middle one: closing the CVE on \"keys rotated\" while the install remains below the fixed release records the interim mitigation as the remediation. Cover both release lines the packet names: 4.x installs need 4.13.8 and 5.x installs need 5.5.8, so an estate that upgraded its Craft 5 sites and left a Craft 4 site behind holds more than one of these states at once. Preconditions, and the second is the one this control must not overstate. It governs how the outcome is recorded and chased — it does not itself upgrade or rotate anything. And a key that may have been disclosed remains a credential-rotation and incident-response item after the upgrade, because the key opens whatever else it protects and the upgrade does not un-disclose it — but that is its own finding with its own owner, not a condition on closing this CVE, and an install with any indication of code having executed belongs on the incident path regardless of either verdict.",
|
|
38987
|
+
"evidence": "Packet: cisa_kev true with kev_date 2025-02-20 and active_exploitation confirmed; cwe_refs CWE-94; patch_available true with affected_versions '4.x < 4.13.8' and '5.x < 5.5.8'; live_patch_available false. The vector states this is an RCE affecting 'Craft 4 and 5 installs where your security key has already been compromised', that 'Anyone running an unpatched version of Craft with a compromised security key is affected', that it 'has been patched in Craft 5.5.8 and 4.13.8', and that 'Users who cannot update to a patched version, should rotate their security keys and ensure their privacy to help migitgate the issue.' The NIS2-Art21-vulnerability-management gap records that vulnerability management has no state for that interim measure, so a site running it is neither exposed as reported nor remediated; the AU-Essential-8-Patch gap records that patch-application guidance reports such a site identically to one that did nothing.",
|
|
38988
|
+
"gap_closes": [
|
|
38989
|
+
"NIST-800-53-SI-2",
|
|
38990
|
+
"NIS2-Art21-vulnerability-management",
|
|
38991
|
+
"ISO-27001-2022-A.8.24"
|
|
38992
|
+
]
|
|
38993
|
+
},
|
|
38994
|
+
{
|
|
38995
|
+
"id": "NEW-CTRL-018",
|
|
38996
|
+
"name": "SCANNER-PAPER-COMPLIANCE-TEST",
|
|
38997
|
+
"description": "The paper-compliance case for this CVE is not the version check — the vendor scopes the flaw to unpatched installs, so a site genuinely reporting 4.13.8 or 5.5.8 or later is remediated and a scanner reading the version is answering the right question. It is the other direction that goes wrong: an attestation that closes this CVE because the security keys were rotated, while the install is still below the fixed release. Rotation is the vendor's stated measure for sites that cannot update yet; it depends on the new key staying secret and leaves the injection path in the code, so recording it as remediation converts an interim state into a pass. The operational test is per-site and per-release-line: take the version the running install reports and compare it against the fixed release for ITS line — 4.x against 4.13.8, 5.x against 5.5.8 — and require any site closed on rotation alone to carry a dated upgrade item instead. The line-matching half is not incidental: an estate that upgraded its Craft 5 sites and reports \"Craft patched\" holds Craft 4 sites the 5.5.8 figure says nothing about. Precondition and limit: this control produces a truthful verdict and remediates nothing. Where a site cannot produce the version its running install reports — as opposed to the version its deployment record claims — the answer is \"unknown\", not \"pass\".",
|
|
38998
|
+
"evidence": "Packet: affected states Craft CMS 4 and 5 code-injection RCE 'reachable when the installation's application security key has already been compromised through any other means'; affected_versions '4.x < 4.13.8' and '5.x < 5.5.8'; patch_available true; poc_available false; cisa_kev true (2025-02-20) with active_exploitation confirmed. The vector records the fix as Craft 5.5.8 and 4.13.8 and scopes the flaw to anyone 'running an unpatched version', with key rotation given as what users who cannot update should do. active_exploitation_notes state that 'Exploitation requires the installation's security key to already be compromised, so observed abuse is likely chained after a separate initial-access flaw' and reference the related CVE-2025-32432 asset-transform RCE as a plausible key-leaking precursor. The AU-Essential-8-Patch gap records that patch guidance has no expression for the vendor-provided interim mitigation, which is the state this test exists to keep distinguishable from remediation.",
|
|
38999
|
+
"gap_closes": [
|
|
39000
|
+
"AU-Essential-8-Patch"
|
|
39001
|
+
]
|
|
39002
|
+
}
|
|
39003
|
+
]
|
|
38982
39004
|
},
|
|
38983
39005
|
"CVE-2025-0108": {
|
|
38984
39006
|
"name": "Palo Alto Networks PAN-OS Authentication Bypass Vulnerability",
|
|
@@ -42891,7 +42913,39 @@
|
|
|
42891
42913
|
"adequate": false,
|
|
42892
42914
|
"gap": "Least-privilege wasn't enforced on the Expedition process, which ran the vulnerable code path as root, maximizing the impact of the injection."
|
|
42893
42915
|
}
|
|
42894
|
-
}
|
|
42916
|
+
},
|
|
42917
|
+
"new_control_requirements": [
|
|
42918
|
+
{
|
|
42919
|
+
"id": "NEW-CTRL-001",
|
|
42920
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
42921
|
+
"description": "Expedition is a migration tool rather than production infrastructure, which is exactly why it sits outside the asset classes a flaw-remediation SLA normally tiers — and it is also the store holding, in the packet's own terms, the usernames, cleartext passwords, device configurations and device API keys of the PAN-OS firewalls it has handled. The requirement here is that every Expedition install is inventoried and clocked at the tier its contents justify rather than the tier its role suggests: the clock opens with the 2024-11-14 KEV listing, the fixed release the packet records is 1.2.96, and completion is measured by the version the install is actually running, not by an approved change record. The inventory has to reach installs that were stood up for a migration which has since finished, because an install nobody is using still answers the same unauthenticated request path. Scope it to what the packet names: the affected range is Expedition versions prior to 1.2.96, and the PAN-OS firewalls are what the disclosed credentials open, not additional instances of this flaw. Distinguishing test: produce, per install, the running Expedition version and show it is 1.2.96 or later — an estate whose vulnerability-management record carries Expedition as a low-tier internal utility passes its technical-vulnerability review cleanly while an unauthenticated root command-injection stays reachable. Precondition: the packet records no live-patch path, so an install that has not been taken to 1.2.96 is executing the vulnerable code whatever compensating rules sit around it, and reaching 1.2.96 does nothing about credentials disclosed before the upgrade.",
|
|
42922
|
+
"evidence": "Packet: cisa_kev true with kev_date 2024-11-14; active_exploitation confirmed; poc_available true; patch_available true; live_patch_available false; affected_versions 'Expedition versions prior to 1.2.96'. affected names the Palo Alto Networks Expedition migration tool with unauthenticated OS command injection executing as root, disclosing PAN-OS firewall usernames, cleartext passwords, configurations and API keys. The NIST-800-53-SI-2 gap records a flaw-remediation SLA that 'lagged the compressed exploitation window for a tool that stores highly sensitive downstream firewall credentials'; the ISO-27001-2022-A.8.8 gap records that technical vulnerability management 'didn't treat Expedition as a high-value credential store requiring the same patch cadence as the firewalls it manages'; the NIS2-Art21-vulnerability-handling gap records EU operators likely excluding Expedition from critical-asset vulnerability-handling scope despite it holding firewall credentials.",
|
|
42923
|
+
"gap_closes": [
|
|
42924
|
+
"NIST-800-53-SI-2",
|
|
42925
|
+
"ISO-27001-2022-A.8.8",
|
|
42926
|
+
"NIS2-Art21-vulnerability-handling"
|
|
42927
|
+
]
|
|
42928
|
+
},
|
|
42929
|
+
{
|
|
42930
|
+
"id": "NEW-CTRL-135",
|
|
42931
|
+
"name": "CONTROL-PANEL-PLUGIN-USER-SURFACE-MUST-NOT-REACH-ROOT-OPERATIONS",
|
|
42932
|
+
"description": "Expedition's web application is the user-facing surface this control governs, and the packet has it wired to the strongest possible root operation: an unauthenticated request reaches an OS command that executes as root. The least-privilege gap on this entry states the same thing from the other side — the vulnerable code path ran as root, maximising the impact of the injection. Bound to this product, the control means the Expedition web tier does not execute OS commands on behalf of request input at all, and any operation that genuinely needs elevation is reached through a constrained, validated interface instead of by handing request-derived strings to a shell under a root identity. That property is what the vendor update establishes: this control states what to verify on the deployment, it does not implement it. It is also why the least-privilege gap cannot be closed on the account side — the attacker never authenticates as any Expedition user, so per-account privilege scoping is never consulted and an access-control attestation covering Expedition's own logins passes while the path stays open; the privilege that matters here is the one the service process itself holds. Distinguishing test: on a staging install, show the identity the Expedition web tier executes under and confirm it is not root, and show that input reaching the migration interface is not passed to a shell — an application-hardening attestation covering browser and document-macro settings across the estate says nothing about a web application that carries request input into an OS-command sink. Precondition: until the install reaches 1.2.96, restricting which networks can reach the Expedition web interface bounds the population that can send the request but does not close the path, because the request carries no credentials — anything inside the permitted segment can send it — and the measure is unavailable wherever migration engineers must reach that interface for normal work.",
|
|
42933
|
+
"evidence": "Packet: cwe_refs CWE-78; the vector states an OS command injection in Palo Alto Networks Expedition 'allows an unauthenticated attacker to run arbitrary OS commands as root in Expedition'; attack_vector describes an unauthenticated attacker sending a crafted request to the Expedition web application, injecting OS commands that execute as root. The NIST-800-53-AC-6 gap records that 'Least-privilege wasn't enforced on the Expedition process, which ran the vulnerable code path as root'; framework_coverage marks AC-6 covered but not adequate for that reason. The AU-Essential-8-App-Hardening gap records that application-hardening controls 'didn't prevent unsanitized input from reaching an OS-command-execution sink in the Expedition web application'. patch_available is true with affected_versions 'Expedition versions prior to 1.2.96'.",
|
|
42934
|
+
"gap_closes": [
|
|
42935
|
+
"NIST-800-53-AC-6",
|
|
42936
|
+
"AU-Essential-8-App-Hardening"
|
|
42937
|
+
]
|
|
42938
|
+
},
|
|
42939
|
+
{
|
|
42940
|
+
"id": "NEW-CTRL-032",
|
|
42941
|
+
"name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
|
|
42942
|
+
"description": "An Expedition compromise is a credential-store breach before it is anything else: the packet describes unauthenticated command execution as root that discloses the usernames, cleartext passwords, device configurations and device API keys of the PAN-OS firewalls the tool has handled. Upgrading the install to 1.2.96 closes the injection and changes none of that — every password and device API key that passed through the install stays valid, and the configurations stay known. Written for this product, the runbook this control requires is: for any Expedition install that was reachable while below 1.2.96, rotate every PAN-OS administrative credential and device API key the install held and re-issue them on the firewalls themselves, treat the firewall configurations it stored as disclosed, and rebuild the Expedition host from a known-good baseline rather than upgrading in place, because execution as root means the update removes nothing the attacker was able to leave behind. Trigger it on exposure rather than on proof of a specific intrusion — the packet records confirmed exploitation in the wild and public exploit code for the Expedition chain. Distinguishing test, keyed to the identity-and-access gap on this entry: for each PAN-OS device Expedition handled, show that its administrative credential and its device API key carry a rotation date later than the Expedition upgrade; an identity attestation stating that every firewall administrator is uniquely named and multi-factor-backed passes cleanly while an API key dumped through Expedition is still accepted by the device, because presenting that key involves no interactive authentication. Precondition: rotation only addresses credentials that have not yet been used — it does nothing about actions an attacker already took with them, so a firewall whose configuration changed during the exposure window belongs on the incident path rather than being closed on the rotation record.",
|
|
42943
|
+
"evidence": "Packet: active_exploitation confirmed, with active_exploitation_notes recording CISA-confirmed evidence of exploitation, the 2024-11-14 KEV listing alongside CVE-2024-9465, and public exploit code for the broader Expedition vulnerability chain; poc_available true. The vector states the injection results in 'disclosure of usernames, cleartext passwords, device configurations, and device API keys of PAN-OS firewalls', executing as root. The UK-CAF-B2 gap records that 'Identity-and-access assurance breaks downstream: the unauthenticated root command-injection dumps cleartext passwords and PAN-OS device API keys, handing an attacker the credentials to take over every firewall Expedition manages.' patch_available is true (fixed at 1.2.96) and live_patch_available is false.",
|
|
42944
|
+
"gap_closes": [
|
|
42945
|
+
"UK-CAF-B2"
|
|
42946
|
+
]
|
|
42947
|
+
}
|
|
42948
|
+
]
|
|
42895
42949
|
},
|
|
42896
42950
|
"CVE-2024-49039": {
|
|
42897
42951
|
"name": "Microsoft Windows Task Scheduler Privilege Escalation Vulnerability",
|
|
@@ -43525,7 +43579,30 @@
|
|
|
43525
43579
|
"adequate": false,
|
|
43526
43580
|
"gap": "Essential Eight application-hardening guidance targets exactly this class of exposed CGI configuration endpoint on network video devices."
|
|
43527
43581
|
}
|
|
43528
|
-
}
|
|
43582
|
+
},
|
|
43583
|
+
"new_control_requirements": [
|
|
43584
|
+
{
|
|
43585
|
+
"id": "NEW-CTRL-134",
|
|
43586
|
+
"name": "DEVICE-MANAGEMENT-GATEWAY-CONFIG-ENDPOINT-AUTH-INPUT-NEUTRALIZATION",
|
|
43587
|
+
"description": "The camera's CGI configuration API is the device-management surface this control governs, and the defect sits squarely on it: the packet states the camera does not sufficiently validate the ntp_addr configuration value, which leads to arbitrary command execution when ntp_client is started. Bound to this product, the control means each CGI configuration parameter is validated against the value it actually holds — an NTP server address is a hostname or address, never a string carrying shell metacharacters — before it is stored and before any service consumes it at start-up, and the CGI API authorizes its caller at the endpoint itself rather than inheriting a verdict from the weak authentication that CVE-2024-8956 bypasses to make this reachable remotely and unauthenticated. Note the deferred-execution shape, which is what makes the storage-time check the important one: the value is written at configuration time and executes when the ntp_client service starts, so a camera can be poisoned and behave normally until that service next starts. Distinguishing test: on a staging camera, set ntp_addr to a value containing shell metacharacters, restart ntp_client, and confirm nothing executes. Precondition: endpoint-side authorization and parameter validation are properties the vendor firmware establishes — this control states what to verify, it does not implement it. Until firmware 6.3.40 and its reboot land, restricting which segments can reach the camera's CGI API bounds who can submit the parameter but leaves it fully exploitable to anything inside a permitted segment, and it is unavailable where the API must stay reachable for normal operation. And because exploitation gives root-level takeover of the device, a camera that was reachable during the exposure window is not remediated by firmware alone: its stored configuration, ntp_addr included, has to be rebuilt from a known-good baseline rather than inherited through the update.",
|
|
43588
|
+
"evidence": "Packet fields: vector states 'PTZOptics PT30X-SDI/NDI-xx before firmware 6.3.40 is vulnerable to an OS command injection issue. The camera does not sufficiently validate the ntp_addr configuration value which may lead to arbitrary command execution when ntp_client is started. When chained with CVE-2024-8956, a remote and unauthenticated attacker can execute arbitrary OS commands on affected devices.' attack_vector describes reaching the camera's CGI API — directly if authenticated, or unauthenticated by first chaining CVE-2024-8956's weak-authentication bypass — and setting ntp_addr to a value containing shell metacharacters that execute when the ntp_client service starts. cwe_refs CWE-78; poc_available true; rwep_score 83; patch_available true with patch_required_reboot true and live_patch_available false. active_exploitation_notes records that successful exploitation gives full root-level device takeover in conferencing, telehealth and government deployments. The ISO-27001-2022-A.8.9 gap states configuration management should restrict which CGI parameters (like ntp_addr) can carry shell metacharacters before reaching a system() call, a build-time control the firmware lacked; the AU-Essential-8-App-Hardening gap states application-hardening guidance targets exactly this class of exposed CGI configuration endpoint on network video devices; the UK-CAF-B4 gap expects hardened default configs on network video devices.",
|
|
43589
|
+
"gap_closes": [
|
|
43590
|
+
"AU-Essential-8-App-Hardening",
|
|
43591
|
+
"ISO-27001-2022-A.8.9",
|
|
43592
|
+
"UK-CAF-B4"
|
|
43593
|
+
]
|
|
43594
|
+
},
|
|
43595
|
+
{
|
|
43596
|
+
"id": "NEW-CTRL-001",
|
|
43597
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
43598
|
+
"description": "This entry needs the clock, but it needs the population first. The packet's affected set is not one brand: alongside PTZOptics PT30X-SDI/NDI cameras it names rebadged Multicam Systems SAS and SMTAV Corporation devices sharing the same Hisilicon Hi3516A-based firmware, so a sweep scoped to the PTZOptics name reports clean across a site standardised on a rebadge while every unit still carries the ntp_addr injection. Applied here, the control means enumerating all three brands, driving each unit to its own vendor's fixed firmware on the clock that opened with the 2024-11-04 KEV listing, and measuring completion on the firmware version the camera reports after restart — the packet records patch_required_reboot true and no live-patch path, so a camera that took the firmware but has not restarted is not remediated. For PTZOptics the packet gives that fixed level as 6.3.40; for the rebadged Multicam Systems SAS and SMTAV units it gives no separate version, so the fixed firmware level for that exact model must be obtained from its vendor rather than assumed to be 6.3.40 unchanged. Where a unit cannot be taken through the update inside the window, the documented compensating control is removing reachability of its CGI API from untrusted networks and from the internet, because internet exposure is the condition being exploited — the packet records internet-wide exploitation attempts against exposed cameras, and a public exploit exists. Precondition on that compensating half: it bounds who can reach the CGI API, it does not repair the parameter handling, so any host inside a permitted segment still reaches the injection; it is a holding measure for the window before the firmware and its reboot, not a closure.",
|
|
43599
|
+
"evidence": "Packet fields: cisa_kev true with kev_date 2024-11-04 and active_exploitation confirmed; poc_available true; rwep_score 83 against cvss 7.2. affected states 'PTZOptics PT30X-SDI/NDI cameras (and rebadged Multicam Systems SAS / SMTAV Corporation devices sharing the same Hisilicon Hi3516A-based firmware)'; affected_versions gives 'firmware before 6.3.40'. patch_available true, patch_required_reboot true, live_patch_available false. active_exploitation_notes records that GreyNoise observed active internet-wide exploitation attempts against exposed PTZOptics and rebadged Multicam Systems SAS / SMTAV Corporation cameras around the time of public disclosure in late October 2024, that CISA added it to KEV in November 2024, and that successful exploitation gives full root-level device takeover in conferencing, telehealth and government deployments. The NIS2-Art21-vulnerability-management gap states IoT/NDI camera fleets in EU conferencing and telehealth settings fall under Art.21 vulnerability-management obligations even though they are rarely inventoried as core IT assets.",
|
|
43600
|
+
"gap_closes": [
|
|
43601
|
+
"NIS2-Art21-vulnerability-management",
|
|
43602
|
+
"UK-CAF-B4"
|
|
43603
|
+
]
|
|
43604
|
+
}
|
|
43605
|
+
]
|
|
43529
43606
|
},
|
|
43530
43607
|
"CVE-2024-8956": {
|
|
43531
43608
|
"name": "PTZOptics PT30X-SDI/NDI Cameras Authentication Bypass Vulnerability",
|
|
@@ -44592,7 +44669,41 @@
|
|
|
44592
44669
|
"adequate": false,
|
|
44593
44670
|
"gap": "Zimbra's official fix shipped 2024-09-04 but mass exploitation began 2024-09-28 — a roughly 3.5-week patch window closed by attackers well before most self-hosted deployments applied it."
|
|
44594
44671
|
}
|
|
44595
|
-
}
|
|
44672
|
+
},
|
|
44673
|
+
"new_control_requirements": [
|
|
44674
|
+
{
|
|
44675
|
+
"id": "NEW-CTRL-001",
|
|
44676
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
44677
|
+
"description": "For this CVE the clock has to start at the vendor fix, not at the KEV listing. The packet records Zimbra's fix shipping 2024-09-04, mass exploitation beginning 2024-09-28, and the KEV listing following on 2024-10-03 — so an operator whose SLA is keyed to KEV began responding five days after the exploitation wave was already running against the install base. Scope from the affected versions rather than from the product name: ZCS ships four release branches here and each has its own fixed level (8.8.15 Patch 46, 9.0.0 Patch 41, 10.0.9, 10.1.1), so an estate standardized on one branch that reports itself current still leaves the other branches on vulnerable code. patch_available is true and no live-patch path is recorded, so driving each install to its branch's fixed level is the remediation; measure completion on the version the running ZCS services report rather than on a package record, because postjournal keeps executing pre-fix code until the service it runs under restarts onto the new build. The packet describes the flaw as one postjournal 'sometimes' exposes without stating the condition that decides it, so no install can be written off as unaffected on configuration grounds — its patch level is the only fact that settles the question. Self-hosted mail is the population this bites hardest: the packet's vulnerability-handling gap records that these operators have no vendor-driven forced-upgrade mechanism, so nothing closes the window if the operator's own clock does not.",
|
|
44678
|
+
"evidence": "Packet: cisa_kev true with kev_date 2024-10-03; active_exploitation confirmed; CVSS 10, RWEP 74; poc_available true; patch_available true, live_patch_available false, live_patch_notes null, patch_required_reboot false. The flaw-remediation gap records the fix shipping 2024-09-04 against mass exploitation beginning 2024-09-28, a roughly 3.5-week window. active_exploitation_notes: mass-exploited beginning 2024-09-28, days after ProjectDiscovery published technical details and PoC code. affected_versions: ZCS 8.8.15 before Patch 46, 9.0.0 before Patch 41, 10.0 before 10.0.9, 10.1 before 10.1.1. The vector states postjournal 'sometimes' allows unauthenticated users to execute commands. The NIS2 gap records that self-hosted mail operators had no vendor-driven forced-upgrade mechanism, unlike SaaS email.",
|
|
44679
|
+
"gap_closes": [
|
|
44680
|
+
"NIST-800-53-SI-2",
|
|
44681
|
+
"AU-Essential-8-Patch",
|
|
44682
|
+
"NIS2-Art21-vulnerability-handling"
|
|
44683
|
+
]
|
|
44684
|
+
},
|
|
44685
|
+
{
|
|
44686
|
+
"id": "NEW-CTRL-032",
|
|
44687
|
+
"name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
|
|
44688
|
+
"description": "The packet records not just that Zimbra was exploited but what the attackers did with it: spoofed emails carrying base64-encoded shell commands in the CC field, dropping webshells on internet-facing Zimbra servers throughout the wave that began 2024-09-28. Applied to this product, the requirement is that any ZCS server sitting below its branch's fixed level during that wave is handled as an incident, not as a patch ticket. Upgrading to 8.8.15 Patch 46, 9.0.0 Patch 41, 10.0.9 or 10.1.1 closes the injection path and removes nothing already written through it — a webshell placed before the upgrade survives it, and the commands ran with whatever privilege the postjournal path holds on the mail server the packet names as the drop location. The default response is therefore preserve and export the configuration and logs first, rebuild the server from a known-good image already at the fixed level rather than upgrading the exposed one in place, and rotate the credentials that server held or that authenticated through it during the exposure window. The absence of an anti-malware alert is specifically not evidence of a clean server here: the packet's own malware-protection gap records that mail controls scan attachment and body content for signatures and pass shell metacharacters in the CC header as clean, so the delivery that dropped the webshell is exactly the event those controls did not see, and 'nothing was flagged' cannot be the basis for choosing patch-in-place.",
|
|
44689
|
+
"evidence": "Packet: active_exploitation confirmed; active_exploitation_notes state attackers sent spoofed emails with base64-encoded shell commands in the CC field to drop webshells on internet-facing Zimbra servers, mass-exploited beginning 2024-09-28, used for broad opportunistic RCE and not flagged as ransomware by CISA. attack_vector: postjournal parses SMTP CC-header content and executes base64-decoded shell commands via sh without authentication, letting attackers send a crafted email to drop a webshell on the mail server. patch_available true with fixed levels 8.8.15 Patch 46 / 9.0.0 Patch 41 / 10.0.9 / 10.1.1; live_patch_available false. The ISO-27001-2022-A.8.7 gap states email malware protections scan attachment and body content for signatures, not shell metacharacters in the CC header, so the unauthenticated command execution rides in on mail those controls pass as clean. The Essential Eight gap records the mass-exploitation wave documented by Proofpoint across the Zimbra install base.",
|
|
44690
|
+
"gap_closes": [
|
|
44691
|
+
"NIST-800-53-SI-2",
|
|
44692
|
+
"AU-Essential-8-Patch",
|
|
44693
|
+
"ISO-27001-2022-A.8.7"
|
|
44694
|
+
]
|
|
44695
|
+
},
|
|
44696
|
+
{
|
|
44697
|
+
"id": "NEW-CTRL-125",
|
|
44698
|
+
"name": "SERVICE-INTERNAL-PROTOCOL-DESERIALIZATION-HARDENING",
|
|
44699
|
+
"description": "postjournal is the internal service channel this control governs. The packet has it receiving SMTP CC-header content from the mail pipeline and executing base64-decoded shell commands through sh with no authentication — an internal component evaluating the content it is handed rather than merely parsing it, on the inherited assumption that anything arriving from the MTA is already trusted. Bound to ZCS, the requirement is that a component reached over an internal service channel constrain or authenticate what that channel delivers, so mail-header content cannot reach a shell-evaluation sink; that is a property to verify on the fixed builds (8.8.15 Patch 46, 9.0.0 Patch 41, 10.0.9, 10.1.1), not something an operator can add to an unpatched install. The precondition has to be stated plainly because this is where the control is most easily over-claimed: the documented delivery path is an ordinary inbound email, so restricting network reachability is not available as a compensating control here — an internet-facing mail server must accept mail from arbitrary senders, and that acceptance is the exploit path. This is exactly why the boundary-protection gap is recorded against this entry: perimeter filtering sits in front of the SMTP listener, not between the MTA and postjournal, and inspects neither CC-header content for command injection nor the internal hand-off. The distinguishing test is a per-node build check against the fixed level for that node's branch; an attestation that the mail perimeter filters inbound traffic passes cleanly while this path stays open.",
|
|
44700
|
+
"evidence": "Packet: attack_vector states postjournal parses SMTP CC-header content and executes base64-decoded shell commands via sh without authentication. affected: the postjournal service, which sometimes allows unauthenticated users to execute OS commands via crafted SMTP header content. cwe_refs CWE-78. The NIST-800-53-SC-7 gap states postjournal listens for SMTP-adjacent input with no boundary filtering on CC-header content and that typical perimeter controls do not inspect mail-header command-injection patterns. The UK-CAF-B4 gap states secure configuration guidance for on-prem mail servers does not typically address internal service-to-service trust boundaries like postjournal's unauthenticated command execution. patch_available true with the branch-specific fixed levels in affected_versions; live_patch_available false, live_patch_notes null.",
|
|
44701
|
+
"gap_closes": [
|
|
44702
|
+
"NIST-800-53-SC-7",
|
|
44703
|
+
"UK-CAF-B4"
|
|
44704
|
+
]
|
|
44705
|
+
}
|
|
44706
|
+
]
|
|
44596
44707
|
},
|
|
44597
44708
|
"CVE-2024-29824": {
|
|
44598
44709
|
"name": "Ivanti Endpoint Manager (EPM) SQL Injection Vulnerability",
|
|
@@ -44698,7 +44809,33 @@
|
|
|
44698
44809
|
"adequate": false,
|
|
44699
44810
|
"gap": "The product is end-of-life with no vendor patch — flaw remediation as a control is structurally unavailable, and CISA's required action is decommissioning rather than patching."
|
|
44700
44811
|
}
|
|
44701
|
-
}
|
|
44812
|
+
},
|
|
44813
|
+
"new_control_requirements": [
|
|
44814
|
+
{
|
|
44815
|
+
"id": "NEW-CTRL-127",
|
|
44816
|
+
"name": "UNSUPPORTED-NETWORK-DEVICE-ENUMERATION-AND-RETIREMENT",
|
|
44817
|
+
"description": "This packet offers no interim state: patch_available is false, no live-patch path is recorded, the vendor no longer supports the product, and CISA's listed required action is to discontinue use rather than remediate. So for the DIR-820 the control reduces to its retirement half, and there is no fixed firmware level that would ever close the ticket. Produce an inventory naming every D-Link DIR-820 in service with its hardware revision and running firmware — the packet names DIR820LA1_FW105B03 explicitly and describes later end-of-life firmware only as likely affected, so per-unit status has to be obtained from the vendor or the KEV entry rather than asserted in either direction — and put every unit on a dated replacement schedule running from the 2024-09-30 KEV listing. A risk acceptance with no removal date leaves a device carrying an unauthenticated root command-execution path, with a public PoC and confirmed exploitation, in service indefinitely. Keep the programme scoped to what the packet establishes: it ties the ping.ccp injection to the DIR-820 and gives no mapping into other D-Link models, so a replacement sweep aimed at every D-Link router in the estate manufactures removal work against devices no evidence implicates. Precondition on the interim reachability measure, which is where this is most often over-claimed: the injection sits in the ping.ccp CGI handler on the router's web administration surface, so where the firmware offers a remote-administration toggle, disabling it bounds who can reach that surface from the internet — but a router of this class exists to serve the client network attached to it, and every client on that network still reaches the administration surface. For a unit serving a general user network there is no segment that removes the path, only isolation of that network from anything that matters until the replacement lands.",
|
|
44818
|
+
"evidence": "Packet: patch_available false; live_patch_available false; live_patch_notes null. affected_versions: 'DIR820LA1_FW105B03 and likely later EoL firmware — vendor no longer supports the product.' active_exploitation_notes: 'Actively exploited against end-of-life D-Link DIR-820 routers; CISA added it to KEV noting the product is EoL/EoS with no vendor patch forthcoming, and the required action is to discontinue use rather than remediate.' kev_date 2024-09-30; poc_available true; cvss 9.8; rwep_score 80. attack_vector: 'A remote, unauthenticated attacker sends a crafted request to the router's ping.ccp CGI handler with shell metacharacters embedded in the ping_addr parameter, achieving root command execution.' NIST-800-53-SI-2 gap: 'flaw remediation as a control is structurally unavailable, and CISA's required action is decommissioning rather than patching.' ISO-27001-2022-A.8.9 gap: 'on this EoL DIR-820 the hardened baseline A.8.9 expects can't be applied, forcing replacement over configuration.'",
|
|
44819
|
+
"gap_closes": [
|
|
44820
|
+
"NIST-800-53-SI-2",
|
|
44821
|
+
"AU-Essential-8-Patch",
|
|
44822
|
+
"UK-CAF-B4",
|
|
44823
|
+
"NIS2-Art21-network-security",
|
|
44824
|
+
"ISO-27001-2022-A.8.9",
|
|
44825
|
+
"NIST-800-53-CM-7"
|
|
44826
|
+
]
|
|
44827
|
+
},
|
|
44828
|
+
{
|
|
44829
|
+
"id": "NEW-CTRL-032",
|
|
44830
|
+
"name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
|
|
44831
|
+
"description": "A DIR-820 is the network edge for whatever sits behind it, and the packet's path is unauthenticated root command execution on that edge, with a public PoC and confirmed exploitation. The patch-in-place branch this control warns against does not even exist here, which makes its response default the only one available: for a unit that was reachable while in service, treat the device as compromised rather than recoverable. A factory reset returns it to DIR820LA1_FW105B03 — the firmware the packet names as vulnerable — so resetting restores the exploit path instead of removing what an attacker left, and the administrative password and any wireless key held in the device's configuration are within reach of an attacker who reached root, so they are reissued on the replacement rather than carried across from a configuration backup. Precondition: this governs units that were reachable during the exposure window, and a consumer-class router of this kind generally produces no telemetry that would establish whether a given unit was reached, so for an internet-reachable DIR-820 the operating assumption has to be that it was. This control decides how a unit is retired, not whether — the packet's stated action is discontinuing use, and nothing here substitutes for that.",
|
|
44832
|
+
"evidence": "Packet vector: 'OS Command injection vulnerability in D-Link DIR820LA1_FW105B03 allows attackers to escalate privileges to root via a crafted payload with the ping_addr parameter to ping.ccp.' active_exploitation confirmed; poc_available true; rwep_score 80; cvss 9.8. patch_available false and live_patch_notes null, so no fixed firmware exists to apply in place. affected_versions records that the vendor no longer supports the product, and active_exploitation_notes records CISA's required action as discontinuing use rather than remediating. AU-Essential-8-Patch gap: 'Patch-management maturity is unachievable for EoL hardware — the only compensating action is replacement.'",
|
|
44833
|
+
"gap_closes": [
|
|
44834
|
+
"NIST-800-53-SI-2",
|
|
44835
|
+
"AU-Essential-8-Patch"
|
|
44836
|
+
]
|
|
44837
|
+
}
|
|
44838
|
+
]
|
|
44702
44839
|
},
|
|
44703
44840
|
"CVE-2020-15415": {
|
|
44704
44841
|
"name": "DrayTek Multiple Vigor Routers OS Command Injection Vulnerability",
|
|
@@ -44735,7 +44872,32 @@
|
|
|
44735
44872
|
"adequate": false,
|
|
44736
44873
|
"gap": "The vendor fix has existed since 2020, yet KEV addition in 2024 shows a four-year unpatched-device population still being actively targeted — patch-management enforcement, not availability, is the gap."
|
|
44737
44874
|
}
|
|
44738
|
-
}
|
|
44875
|
+
},
|
|
44876
|
+
"new_control_requirements": [
|
|
44877
|
+
{
|
|
44878
|
+
"id": "NEW-CTRL-030",
|
|
44879
|
+
"name": "PERIMETER-DEVICE-ZERODAY-SLA-TIER",
|
|
44880
|
+
"description": "The Vigor3900, Vigor2960 and Vigor300B are WAN edge devices, and this is an unauthenticated remote command execution running as root on them — the trust boundary itself executing an attacker's commands, which is the case this SLA tier exists for and which a standard 14/30-day appliance window does not fit. The fact that makes this entry different from a normal KEV item is the age of the fix: firmware 1.5.1 has existed since 2020 and CISA listed the flaw on 2024-09-30, so the tier's clock must restart at the KEV listing rather than be treated as long expired. A vulnerability process that ingests advisories only at publication never re-opens a four-year-old fix, which is exactly how the packet's actively-targeted unpatched population stays in service. Operationally: enumerate every Vigor3900, Vigor2960 and Vigor300B in the estate and record each unit's running firmware against 1.5.1. Scope the sweep to those three models — the packet names them in both affected and affected_versions and ties the cvmcfgupload defect to that firmware line, so widening it to DrayTek's range generally manufactures work against models no evidence implicates. The tier's second branch is the one that matters when the window cannot be met: patch_required_reboot is true and live_patch_available is false, so there is no way to fix a unit without taking its reboot, and a unit whose reboot cannot be scheduled inside the window must have the vulnerable interface isolated — the WAN-facing management and CGI surface — rather than being carried as an accepted risk. Completion is measured on the firmware the device reports after that reboot; a unit with 1.5.1 staged but not yet restarted onto it is still running the vulnerable code and counts as exposed.",
|
|
44881
|
+
"evidence": "Packet: affected is 'DrayTek Vigor3900, Vigor2960, and Vigor300B devices before firmware 1.5.1', with affected_versions listing 'Vigor3900 before 1.5.1', 'Vigor2960 before 1.5.1', 'Vigor300B before 1.5.1'. cisa_kev true, kev_date 2024-09-30, active_exploitation confirmed, with active_exploitation_notes recording exploitation of internet-facing management interfaces and KEV addition in September 2024 'despite the flaw and vendor fix dating to 2020, indicating a long tail of unpatched exposed devices continuing to be targeted'. The NIST-800-53-SI-2 gap states 'patch-management enforcement, not availability, is the gap'; the NIST-800-53-SC-7 gap states the configuration-upload CGI endpoint 'is commonly left reachable from the WAN interface with no boundary restriction to trusted management networks'. attack_vector has command execution as root. patch_available true; patch_required_reboot true; live_patch_available false; live_patch_notes null; poc_available true; cvss 9.8; rwep_score 73.",
|
|
44882
|
+
"gap_closes": [
|
|
44883
|
+
"NIST-800-53-SI-2",
|
|
44884
|
+
"AU-Essential-8-Patch",
|
|
44885
|
+
"NIS2-Art21-patch-management",
|
|
44886
|
+
"NIST-800-53-SC-7"
|
|
44887
|
+
]
|
|
44888
|
+
},
|
|
44889
|
+
{
|
|
44890
|
+
"id": "NEW-CTRL-134",
|
|
44891
|
+
"name": "DEVICE-MANAGEMENT-GATEWAY-CONFIG-ENDPOINT-AUTH-INPUT-NEUTRALIZATION",
|
|
44892
|
+
"description": "The sink here is a configuration-upload endpoint on the router's own management CGI — cgi-bin/mainfunction.cgi/cvmcfgupload — and the attacker input is the uploaded file's name rather than its contents: shell metacharacters in the filename, sent with a text/x-python-script content type, reach an OS command that runs as root, with no credential presented. Bound to this device, the control is both halves at once. The endpoint authorizes its caller before the upload is processed at all, so an unauthenticated request never reaches the handler; and the caller-supplied filename is neutralized before any command is constructed from it, which for a filename means it is never allowed to become part of a shell string. Treating the upload's content type or body as the untrusted part and the filename as metadata is the specific mistake this CVE punishes. The third requirement is reachability: no Vigor unit leaves that CGI answering on the WAN interface or from any segment with no operational need to administer it, which is what the cited configuration-management and system-security gaps record as absent — a WAN-reachable cvmcfgupload and edge-device baselines that do not disable remote administrative CGI endpoints by default. Distinguishing test: from an untrusted network against a staging Vigor, POST to cgi-bin/mainfunction.cgi/cvmcfgupload with shell metacharacters in the filename and the text/x-python-script content type, and confirm the request is refused before any command executes — a unit that passes an administrative-password audit while answering that request is still fully exploitable, because the attacker never authenticates. Precondition: the endpoint-side authorization and filename neutralization are properties the 1.5.1 firmware establishes; this control states what to verify, it does not implement it. Until 1.5.1 and its reboot land, disabling WAN-side administration bounds who can reach the CGI from the internet but leaves it exploitable from anything inside a permitted segment, and it is unavailable where the unit must be administered remotely.",
|
|
44893
|
+
"evidence": "Packet vector: 'On DrayTek Vigor3900, Vigor2960, and Vigor300B devices before 1.5.1, cgi-bin/mainfunction.cgi/cvmcfgupload allows remote command execution via shell metacharacters in a filename when the text/x-python-script content type is used'. attack_vector: 'An unauthenticated remote attacker uploads a crafted configuration file with shell metacharacters in the filename to cgi-bin/mainfunction.cgi/cvmcfgupload using a text/x-python-script content type, achieving command execution as root.' The ISO-27001-2022-A.8.9 gap states secure-configuration management 'doesn't disable the WAN-reachable cvmcfgupload CGI on DrayTek Vigor edge devices, so the filename-metacharacter OS command injection stays exploitable years after the fix shipped'; the UK-CAF-B4 gap states baselines 'should disable remote administrative CGI endpoints by default; many deployments leave them exposed'; the NIST-800-53-SC-7 gap records the endpoint left reachable from the WAN with no boundary restriction. cwe_refs CWE-78; patch_available true with the fix at firmware 1.5.1; patch_required_reboot true; live_patch_available false; poc_available true.",
|
|
44894
|
+
"gap_closes": [
|
|
44895
|
+
"NIST-800-53-SC-7",
|
|
44896
|
+
"ISO-27001-2022-A.8.9",
|
|
44897
|
+
"UK-CAF-B4"
|
|
44898
|
+
]
|
|
44899
|
+
}
|
|
44900
|
+
]
|
|
44739
44901
|
},
|
|
44740
44902
|
"CVE-2019-0344": {
|
|
44741
44903
|
"name": "SAP Commerce Cloud Deserialization of Untrusted Data Vulnerability",
|
|
@@ -45046,7 +45208,42 @@
|
|
|
45046
45208
|
"adequate": false,
|
|
45047
45209
|
"gap": "A security appliance whose management UI is internet-reachable defeats boundary protection; the FortiSandbox admin plane must not be exposed to untrusted networks."
|
|
45048
45210
|
}
|
|
45049
|
-
}
|
|
45211
|
+
},
|
|
45212
|
+
"new_control_requirements": [
|
|
45213
|
+
{
|
|
45214
|
+
"id": "NEW-CTRL-055",
|
|
45215
|
+
"name": "SECURITY-TOOL-INTEGRITY-VERIFICATION",
|
|
45216
|
+
"description": "FortiSandbox is the detonation appliance an estate buys so that hostile content is inspected somewhere other than production, and this CVE is that appliance taking an unauthenticated OS command injection through its own web management UI: a value handled by the 'start VNC' feature is later executed as an OS command, a second-order injection reachable with crafted HTTP requests carrying malicious JSON. Bound to this product, the control means FortiSandbox is carried in the technical-vulnerability-management inventory under the same SLA as any other privileged system rather than being treated as part of the defence that inspects everything else, and that the inventory covers every form the affected list names — the FortiSandbox appliance (5.0.0 through 5.0.5, 4.4.0 through 4.4.8, and 4.2 in its entirety), FortiSandbox Cloud 5.0.4 through 5.0.5, and FortiSandbox PaaS 5.0.4 through 5.0.5. An estate that enumerates only its on-premises appliances reports clean while a hosted Cloud or PaaS instance stays on an affected build, so scope the sweep from the affected list rather than from the appliance rack. The 4.2 train needs a per-unit answer: the affected list names it in full and names no fixed build inside it, so the target build for a 4.2 unit has to be obtained from the vendor rather than assumed in either direction. Completion is measured on the build each instance is actually running after its restart — the packet records no live-patching primitive and a vendor update that requires a reboot, so a unit that has taken the image but not rebooted is still executing the vulnerable code and counts as exposed. Distinguishing test: from a host with no management role, send the crafted HTTP/JSON request that drives the 'start VNC' path at a staging FortiSandbox and confirm it is refused before any OS command runs. A vulnerability-management attestation assembled from the platforms FortiSandbox inspects passes cleanly while the inspector itself is unpatched and reachable.",
|
|
45217
|
+
"evidence": "Packet: 'unauthenticated OS command injection reachable via the web management UI (start VNC feature) using crafted HTTP/JSON requests'; a second-order injection per attack_vector. affected_versions: FortiSandbox 5.0.0 through 5.0.5, FortiSandbox 4.4.0 through 4.4.8, FortiSandbox 4.2 (all versions), FortiSandbox Cloud 5.0.4 through 5.0.5, FortiSandbox PaaS 5.0.4 through 5.0.5. CVSS 9.8, RWEP 57, poc_available false, active_exploitation confirmed; CISA KEV 2026-07-16. 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.' ISO-27001-2022-A.8.8 gap: 'Technical-vulnerability-management scoping routinely excludes the security appliances doing the scanning; a preauth command injection on FortiSandbox itself sits in the blind spot A.8.8 assessment cycles rarely cover, and exploitation preceded the KEV listing.'",
|
|
45218
|
+
"gap_closes": [
|
|
45219
|
+
"ISO-27001-2022-A.8.8",
|
|
45220
|
+
"NIST-800-53-SI-2",
|
|
45221
|
+
"AU-Essential-8-Patch",
|
|
45222
|
+
"NIS2-Art21-patch-management"
|
|
45223
|
+
]
|
|
45224
|
+
},
|
|
45225
|
+
{
|
|
45226
|
+
"id": "NEW-CTRL-134",
|
|
45227
|
+
"name": "DEVICE-MANAGEMENT-GATEWAY-CONFIG-ENDPOINT-AUTH-INPUT-NEUTRALIZATION",
|
|
45228
|
+
"description": "The FortiSandbox web management UI is the management plane this control governs, and the defect sits on a configuration-accepting path within it: a value the 'start VNC' feature handles is stored and later executed as an OS command, so the endpoint's own decisions — does it authorize this caller, and does it neutralize this value before it reaches a command sink — are the only things between an untrusted HTTP client and command execution on the appliance. Bound to this product the control means every configuration-accepting endpoint on the FortiSandbox management UI authorizes its caller before the submitted JSON is processed at all, and neutralizes the value before the deferred execution rather than at the point of display, since the injection is second-order and a validator that only inspects the immediate request will not see where the value is later used; and no FortiSandbox instance — appliance, Cloud or PaaS — is left with its management surface reachable from a segment with no operational need to reach it. The packet's own summary has this path reachable by an unauthenticated attacker, which is why the endpoint's authorization decision and not the surrounding account model is what matters here: no FortiSandbox operator account is ever presented, so administrator hygiene on the appliance is never consulted. Precondition, stated because this control is most often over-claimed here: the endpoint-side authorization and input neutralization are properties the vendor update establishes — this control says what to verify, it does not implement it, and the packet records no live-patch path and a reboot requirement, so the update is not in force until each unit restarts. Until then, restricting which segments can reach the management UI bounds the population that can send the request but leaves the endpoint fully exploitable to anything inside the permitted segment, and it removes nothing from an instance that was already reached — exploitation attempts were recorded against exposed management UIs from mid-June 2026, before the KEV listing, so an instance that was internet-reachable in that window belongs on the incident path rather than being closed on the patch record. Distinguishing test: from a general user segment and from an external address, attempt to load the FortiSandbox management UI; anything that answers is within reach of the unauthenticated path, and 'the sandbox is on the internal network' is a claim about topology, not a demonstration.",
|
|
45229
|
+
"evidence": "Packet attack_vector: 'An unauthenticated attacker sends crafted HTTP requests with malicious JSON to the FortiSandbox web management UI; input handled by the start VNC feature is later executed as an OS command (a second-order injection), yielding command execution on the appliance.' NIST-800-53-SC-7 gap: 'A security appliance whose management UI is internet-reachable defeats boundary protection; the FortiSandbox admin plane must not be exposed to untrusted networks.' UK-CAF-B4 gap: 'System-security expectations do not by themselves force removal of the management interface from public exposure, which is the primary compensating control here.' active_exploitation_notes: 'honeypot telemetry and threat-intel vendors recorded unauthenticated exploitation attempts against exposed FortiSandbox management UIs since mid-June 2026', with the KEV listing on 2026-07-16. patch_required_reboot true; live_patch_available false.",
|
|
45230
|
+
"gap_closes": [
|
|
45231
|
+
"NIST-800-53-SC-7",
|
|
45232
|
+
"UK-CAF-B4"
|
|
45233
|
+
]
|
|
45234
|
+
},
|
|
45235
|
+
{
|
|
45236
|
+
"id": "NEW-CTRL-001",
|
|
45237
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
45238
|
+
"description": "What this control has to supply for this entry is a clock short enough to matter, and the packet sets it twice over. CISA listed the flaw on 2026-07-16 with a three-day BOD 26-04 deadline, and exploitation attempts against exposed FortiSandbox management UIs were already being recorded from mid-June 2026 — so a programme that starts counting from the listing date has spent its whole window before the first meeting, and a routine flaw-remediation SLA measured in weeks is not a slower version of the right answer but a different one. poc_available is false, and that is not a deferral argument on this entry: active exploitation is confirmed, which is the stronger signal, and the absence of published exploit code says only that the working code is not public. For FortiSandbox the deployable mitigation is the vendor update, and the packet gives no live-patching primitive and requires a reboot, so 'mitigation deployed' means each appliance, Cloud and PaaS instance is running a fixed build after its restart — an image staged on a unit awaiting a maintenance window is not mitigation and must not be recorded as one. Where the reboot genuinely cannot be taken inside the window, the documented compensating control is removing the management surface from untrusted networks, recorded as a time-boxed compensating state with the reboot still owed; its precondition is that it bounds who can send the crafted request and repairs nothing about the injection itself, so it expires when the reboot lands rather than substituting for it.",
|
|
45239
|
+
"evidence": "Packet: cisa_kev true, kev_date 2026-07-16. active_exploitation_notes: 'CISA added it to KEV on 2026-07-16 with a 3-day BOD 26-04 deadline; honeypot telemetry and threat-intel vendors recorded unauthenticated exploitation attempts against exposed FortiSandbox management UIs since mid-June 2026. Ransomware use not confirmed.' poc_available false; active_exploitation confirmed; CVSS 9.8; RWEP 57. 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.' NIST-800-53-SI-2 gap: 'The BOD 26-04 remediation window was three days, far shorter than a typical enterprise flaw-remediation SLA, and exploitation preceded the KEV listing — patch cadence alone does not close the exposure.'",
|
|
45240
|
+
"gap_closes": [
|
|
45241
|
+
"NIST-800-53-SI-2",
|
|
45242
|
+
"AU-Essential-8-Patch",
|
|
45243
|
+
"NIS2-Art21-patch-management"
|
|
45244
|
+
]
|
|
45245
|
+
}
|
|
45246
|
+
]
|
|
45050
45247
|
},
|
|
45051
45248
|
"CVE-2026-39808": {
|
|
45052
45249
|
"name": "Fortinet FortiSandbox OS Command Injection Vulnerability (CVE-2026-39808)",
|
|
@@ -45083,7 +45280,43 @@
|
|
|
45083
45280
|
"adequate": false,
|
|
45084
45281
|
"gap": "The KEV due date (2026-07-19) is three days from listing; a standard 30-day flaw-remediation SLA leaves the appliance exploitable across the entire observed active-exploitation window."
|
|
45085
45282
|
}
|
|
45086
|
-
}
|
|
45283
|
+
},
|
|
45284
|
+
"new_control_requirements": [
|
|
45285
|
+
{
|
|
45286
|
+
"id": "NEW-CTRL-001",
|
|
45287
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
45288
|
+
"description": "Fortinet FortiSandbox, with the tightest clock in this batch: CISA listed it on 2026-07-16 with a due date of 2026-07-19, three days out, and the packet reads that compressed window as itself the signal of observed exploitation. For this appliance the control means the clock runs from the KEV listing to each unit running a fixed build, with the population scoped from both product fields rather than the headline one — affected_versions records 4.4.0 through 4.4.8, and the vector additionally names FortiSandbox PaaS builds, so an estate that sweeps only its self-hosted appliances has not established its exposure and must obtain the PaaS instances' build status from Fortinet rather than assume the hosted service is out of scope. Completion is the build the appliance is executing after its reboot: patch_required_reboot is true and there is no live-patch path, so a unit that has downloaded or staged the update is still running the vulnerable code, and on a detonation appliance mid-queue that reboot is exactly the step a team defers — a deferral recorded as patched is the specific way this remediation goes wrong. Where the reboot cannot be taken inside three days, the compensating clause has to be a documented, time-bound restriction on who can reach the management interface, because that is the exploited surface. Its precondition is a real limit and must be recorded as one: restricting reachability bounds which callers can send the crafted request, it does not neutralise the injection, it gives nothing against a caller inside a permitted segment, and it is simply unavailable where the management interface has to stay reachable for operations. Nothing in the account model helps in the meantime — the packet's attacker is unauthenticated, so no privilege scoping, credential policy or administrator tiering is ever consulted on this path.",
|
|
45289
|
+
"evidence": "Packet: cisa_kev true with kev_date 2026-07-16; active_exploitation confirmed; poc_available true; cvss 9.8 with rwep_score 79. active_exploitation_notes: 'CISA added it to KEV on 2026-07-16 with a 3-day due date, citing crafted-HTTP-request exploitation of internet-facing FortiSandbox appliances by an unauthenticated attacker. Ransomware use is unconfirmed but the compressed remediation window signals observed active exploitation.' vector: unauthenticated OS command injection reaching an OS command without sanitization, 'yielding remote code execution as root. Affects FortiSandbox 4.4.0 through 4.4.8 and FortiSandbox PaaS builds.' affected_versions: 'FortiSandbox 4.4.0 through 4.4.8'. 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.' The NIST-800-53-SI-2 gap names the 2026-07-19 due date against a standard 30-day SLA; the UK-CAF-B4 gap states system-security expectations 'do not force isolation of the management plane of a preauth-RCE-exposed sandbox appliance.'",
|
|
45290
|
+
"gap_closes": [
|
|
45291
|
+
"NIST-800-53-SI-2",
|
|
45292
|
+
"AU-Essential-8-Patch",
|
|
45293
|
+
"NIS2-Art21-patch-management",
|
|
45294
|
+
"ISO-27001-2022-A.8.8",
|
|
45295
|
+
"UK-CAF-B4"
|
|
45296
|
+
]
|
|
45297
|
+
},
|
|
45298
|
+
{
|
|
45299
|
+
"id": "NEW-CTRL-055",
|
|
45300
|
+
"name": "SECURITY-TOOL-INTEGRITY-VERIFICATION",
|
|
45301
|
+
"description": "Two of this entry's gaps name the same root cause in different vocabularies: boundary protection does not restrict inbound access to the appliance because it is treated as trusted infrastructure, and technical-vulnerability management never prioritises the appliance's own pre-auth RCE because it is filed as a security control rather than as a server. FortiSandbox is a malware-detonation appliance, and this control's premise is precisely that such a product is in scope of vulnerability management at the same SLA as any other privileged software, with its administrative interfaces treated as testable attack surface rather than as defences. Applied here that means the appliance appears in the asset register as an internet-adjacent server with an exposed management interface, is enrolled in the same patch programme and KEV clock as any other, and has that interface's inbound reachability restricted to networks with an operational need to administer it. Get the direction of the exploited path right or the requirement gets mis-scoped: the packet places the injection in the management interface, in the jid parameter of the /fortisandbox/job-detail/tracer-behavior endpoint reached by unauthenticated crafted HTTP requests — not in sample submission or detonation — so no sample-handling, detonation-policy or submission-source control touches this flaw. The distinguishing test follows the real path: from a network with no administrative role, request that endpoint with shell metacharacters in jid against a staging FortiSandbox, and confirm both that the request never reaches the appliance and that a fixed build refuses it. An estate whose register lists the FortiSandbox under security controls rather than under servers requiring patching passes an A.8.8 attestation cleanly while a root-level unauthenticated RCE stays open. One more reason this asset class is skipped is in the packet itself: the upstream NVD record shipped with no documented attack vector, and the entry had to be reconstructed from the Fortinet PSIRT advisory FG-IR-26-100 and public exploitation reporting — so a triage process keyed to NVD text alone had nothing to act on. Precondition: this control determines whether the appliance is ever scheduled and how reachable it is; the vendor update and its reboot are what remove the injection, and this delivers neither.",
|
|
45302
|
+
"evidence": "Packet: affected 'Fortinet FortiSandbox management/web interface improperly neutralizes special elements in OS commands, allowing an unauthenticated remote attacker to execute arbitrary commands via crafted HTTP requests.' vector: 'An unauthenticated attacker injects shell metacharacters into the `jid` parameter of the /fortisandbox/job-detail/tracer-behavior endpoint; the value reaches an underlying OS command without sanitization, yielding remote code execution as root... Reconstructed from the Fortinet PSIRT advisory (FG-IR-26-100) and public exploitation reporting, as the upstream NVD record shipped without a documented attack vector.' The NIST-800-53-SC-7 gap states 'Boundary-protection controls that treat a security-inspection appliance as trusted infrastructure do not restrict inbound access to its management interface, which is the exploited surface.' The ISO-27001-2022-A.8.8 gap states that technical-vulnerability management 'that treats a FortiSandbox security appliance as trusted never prioritizes its own management-interface pre-auth RCE.' cwe_refs CWE-78; poc_available true; active_exploitation confirmed.",
|
|
45303
|
+
"gap_closes": [
|
|
45304
|
+
"ISO-27001-2022-A.8.8",
|
|
45305
|
+
"NIST-800-53-SC-7",
|
|
45306
|
+
"NIST-800-53-SI-2"
|
|
45307
|
+
]
|
|
45308
|
+
},
|
|
45309
|
+
{
|
|
45310
|
+
"id": "NEW-CTRL-032",
|
|
45311
|
+
"name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
|
|
45312
|
+
"description": "Both gaps this attaches to establish that the framework-prescribed clock is longer than the window in which this flaw was being exploited — a 30-day flaw-remediation SLA and an Essential-Eight internet-facing patch window against a KEV due date of three days. On an appliance the packet describes as internet-facing and exploited by an unauthenticated attacker for remote code execution as root, that arithmetic has a consequence the frameworks stop short of stating: an update-and-reboot recorded as remediation removes the injection but removes nothing installed as root before it. For FortiSandbox the control therefore means a unit that was reachable from untrusted networks while running 4.4.0 through 4.4.8 goes down the incident path rather than being closed on the version record — preserve its configuration and logs as evidence, rebuild from vendor firmware and a configuration reviewed against a known-good baseline instead of updating in place, and treat as disclosed every credential held on the appliance and every credential presented to it, rotating each, since root-level execution puts all of it within reach. Preconditions. The trigger is prior reachability during the exposure window, not a detection: the packet supplies no indicator set, so a clean scan is not evidence the rebuild is unnecessary, and nobody should wait for a hit before invoking this. A configuration restore from a backup taken inside the window reinstates whatever was placed there, so the baseline must predate it. And this control does not reduce the chance of exploitation at all — the vendor update and its reboot are the remediation, and this governs only what a compliant response looks like on a unit the clock left exposed while exploitation was under way.",
|
|
45313
|
+
"evidence": "Packet: active_exploitation confirmed; poc_available true; active_exploitation_notes cite 'crafted-HTTP-request exploitation of internet-facing FortiSandbox appliances by an unauthenticated attacker' and note the compressed remediation window signals observed active exploitation. vector records remote code execution as root from an unauthenticated attacker; affected_versions 'FortiSandbox 4.4.0 through 4.4.8'. 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.' The NIST-800-53-SI-2 gap: 'The KEV due date (2026-07-19) is three days from listing; a standard 30-day flaw-remediation SLA leaves the appliance exploitable across the entire observed active-exploitation window.' The AU-Essential-8-Patch gap: 'Essential Eight patch-application maturity permits internet-facing patch windows longer than the observed exploitation window for this critical preauth flaw.'",
|
|
45314
|
+
"gap_closes": [
|
|
45315
|
+
"NIST-800-53-SI-2",
|
|
45316
|
+
"AU-Essential-8-Patch"
|
|
45317
|
+
]
|
|
45318
|
+
}
|
|
45319
|
+
]
|
|
45087
45320
|
},
|
|
45088
45321
|
"CVE-2026-46817": {
|
|
45089
45322
|
"name": "Oracle E-Business Suite Improper Privilege Management Vulnerability",
|
|
@@ -46201,7 +46434,40 @@
|
|
|
46201
46434
|
"adequate": false,
|
|
46202
46435
|
"gap": "Flaw remediation SLAs are outpaced by exploitation that began days after disclosure on an end-of-life 4.6.x appliance line that receives no further security fixes."
|
|
46203
46436
|
}
|
|
46204
|
-
}
|
|
46437
|
+
},
|
|
46438
|
+
"new_control_requirements": [
|
|
46439
|
+
{
|
|
46440
|
+
"id": "NEW-CTRL-122",
|
|
46441
|
+
"name": "EOL-ASSET-DECOMMISSION",
|
|
46442
|
+
"description": "This entry carries both halves the control exists to separate. A fix for this CVE exists inside the dead line — the packet's affected_versions record 4.6 Patch 518 and earlier as vulnerable, fixed in 4.6 Patch 519 — while the entry simultaneously records the 4.6.x line as end-of-life, receiving no further security fixes, with the vendor directing removal rather than patching. So the requirement is two-staged and must be written that way: inventory every CSA appliance in service with its running version; units at or below 4.6 Patch 518 are on the interim clock that opened with the 2024-09-13 KEV listing, and reaching Patch 519 closes this command-injection path only. It does not return the appliance to a supported line, so migration to 5.0.x — where the packet records the vulnerable functionality removed outright rather than patched — or decommission is the terminal state, and it needs a dated schedule rather than an open-ended risk acceptance. A requirement that ends at 'every CSA reports 4.6 Patch 519' marks an appliance line the vendor has stopped fixing as compliant while it stays exposed to everything found in it since that build. Precondition on the interim half: live_patch_available is false and the vendor update requires a reboot, so an appliance that has taken Patch 519 but has not rebooted is still executing the vulnerable code and must be counted as exposed, not as remediated.",
|
|
46443
|
+
"evidence": "patch_available true with affected_versions 'Ivanti CSA 4.6 Patch 518 and earlier (fixed in 4.6 Patch 519; functionality removed in 5.0.x)'. The framework_control_gaps record the line as end-of-life in four places: NIST-800-53-SI-2 'an end-of-life 4.6.x appliance line that receives no further security fixes'; ISO-27001-2022-A.8.8 'CSA 4.6.x is EoL, so the only compliant action is decommission/migrate to 5.0.x'; NIS2-Art21-patch-management 'an EoL appliance where the vendor directs removal rather than patching'; AU-Essential-8-Patch 'Essential-8 patch windows are irrelevant for an EoL product; the mitigation is retirement'. 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.' CISA KEV listed 2024-09-13, active_exploitation confirmed, poc_available true, RWEP 77, CVSS 7.2, CWE-78.",
|
|
46444
|
+
"gap_closes": [
|
|
46445
|
+
"ISO-27001-2022-A.8.8",
|
|
46446
|
+
"AU-Essential-8-Patch",
|
|
46447
|
+
"NIS2-Art21-patch-management",
|
|
46448
|
+
"UK-CAF-B4",
|
|
46449
|
+
"NIST-800-53-SI-2"
|
|
46450
|
+
]
|
|
46451
|
+
},
|
|
46452
|
+
{
|
|
46453
|
+
"id": "NEW-CTRL-032",
|
|
46454
|
+
"name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
|
|
46455
|
+
"description": "For this appliance the update cannot be the whole of the response. The packet records exploitation in the wild within days of disclosure by a suspected nation-state actor, and the outcome of that exploitation is OS command execution on the underlying appliance OS — with the admin access the flaw requires supplied by chaining the CSA authentication bypass CVE-2024-8963, so the effective path needed no legitimate credential. On any CSA that was reachable during that window, the runbook must therefore default to capturing the configuration off the box, rebuilding the appliance from vendor media, and rotating every credential the appliance held or that transited it — not to applying 4.6 Patch 519 over a system that may already carry attacker-executed changes. Patch 519 closes the DateTimeTab.php injection path; it removes nothing an attacker already ran or wrote through it, and the packet gives no live-patch path, so the update also carries a reboot that an implant surviving on disk would simply persist across. Precondition, and it bounds what this control can decide: after root-level command execution the appliance's own logs are not a trustworthy source for scoping the exposure window, so that determination has to come from telemetry held off the appliance. Where none was collected, the appliance belongs in scope by default rather than being cleared.",
|
|
46456
|
+
"evidence": "active_exploitation confirmed; active_exploitation_notes 'Exploited in the wild within days of disclosure by a suspected nation-state actor (FortiGuard, SecurityWeek), frequently chained with the CSA auth-bypass CVE-2024-8963 to reach the admin console.' affected: 'Ivanti Cloud Services Appliance (CSA) administrative console, DateTimeTab.php, allowing an authenticated admin to inject OS commands and gain RCE on the underlying appliance OS.' The NIST-800-53-SI-2 gap states 'Flaw remediation SLAs are outpaced by exploitation that began days after disclosure'. poc_available true; patch_available true with patch_required_reboot true and live_patch_available false; KEV 2024-09-13; RWEP 77.",
|
|
46457
|
+
"gap_closes": [
|
|
46458
|
+
"NIST-800-53-SI-2"
|
|
46459
|
+
]
|
|
46460
|
+
},
|
|
46461
|
+
{
|
|
46462
|
+
"id": "NEW-CTRL-134",
|
|
46463
|
+
"name": "DEVICE-MANAGEMENT-GATEWAY-CONFIG-ENDPOINT-AUTH-INPUT-NEUTRALIZATION",
|
|
46464
|
+
"description": "The CSA administrative console is the management surface here, and the sink is a configuration value on it: the packet places the injection in DateTimeTab.php's TIMEZONE parameter, which reaches OS command execution on the appliance OS. Bound to this appliance, the control means each configuration endpoint on that console makes its own authorization decision rather than inheriting a verdict from the front-door authentication — which is exactly what the paired CVE-2024-8963 bypass defeats to supply the admin privilege this flaw requires — and neutralizes the configuration value before it reaches a shell, so a caller-supplied timezone string cannot carry a command. It also means no CSA is left with its administrative console reachable from a segment with no operational need to reach it. Preconditions, both load-bearing: the endpoint-side neutralization is a property the vendor fix establishes — 4.6 Patch 519 for this CVE, with the packet recording the functionality removed entirely in 5.0.x — so this control states what to verify, it does not implement it. And until that update and its reboot land, restricting which networks can reach the console bounds who can attempt the chain but leaves the endpoint fully exploitable to anything inside the permitted segment; it is unavailable wherever the console must stay remotely reachable for normal operation, which is the exposure the entry's boundary-protection gap records.",
|
|
46465
|
+
"evidence": "attack_vector: 'An attacker with admin access to the CSA console injects OS commands through the DateTimeTab.php TIMEZONE parameter to run arbitrary code on the appliance; admin access is often obtained by chaining the CVE-2024-8963 authentication bypass.' vector: 'a remote authenticated attacker to obtain remote code execution. The attacker must have admin level privileges'. The NIST-800-53-SC-7 gap: 'Boundary protection does not help when the vulnerable admin console is exposed and the attack requires only authenticated admin access, which the paired CVE-2024-8963 bypass supplies.' cwe_refs CWE-78. affected_versions '4.6 Patch 518 and earlier (fixed in 4.6 Patch 519; functionality removed in 5.0.x)'; patch_required_reboot true; live_patch_available false.",
|
|
46466
|
+
"gap_closes": [
|
|
46467
|
+
"NIST-800-53-SC-7"
|
|
46468
|
+
]
|
|
46469
|
+
}
|
|
46470
|
+
]
|
|
46205
46471
|
},
|
|
46206
46472
|
"CVE-2024-38217": {
|
|
46207
46473
|
"name": "Microsoft Windows Mark of the Web (MOTW) Protection Mechanism Failure Vulnerability",
|
|
@@ -48441,25 +48707,46 @@
|
|
|
48441
48707
|
"adequate": false,
|
|
48442
48708
|
"gap": "Access-enforcement controls are bypassed because the traversal reads files entirely outside the application's authorization model, requiring no valid account."
|
|
48443
48709
|
}
|
|
48444
|
-
}
|
|
48445
|
-
},
|
|
48446
|
-
"CVE-2024-34102": {
|
|
48447
|
-
"name": "Adobe Commerce and Magento Open Source Improper Restriction of XML External Entity Reference (XXE) Vulnerability",
|
|
48448
|
-
"lesson_date": "2026-07-11",
|
|
48449
|
-
"attack_vector": {
|
|
48450
|
-
"description": "An unauthenticated attacker POSTs a crafted XML document referencing an external entity to Magento's guest-cart REST/GraphQL endpoint; the parser resolves the entity (CosmicSting), leaking the encryption key and files, and chained with object injection achieves remote code execution and skimmer/webshell deployment.",
|
|
48451
|
-
"privileges_required": "none (unauthenticated, no user interaction)",
|
|
48452
|
-
"complexity": "low — public PoCs and mass-scanning make weaponization trivial",
|
|
48453
|
-
"ai_factor": "Not AI-discovered — reported by researcher 'spacewasp'; exploitation analyzed by Sansec/Assetnote. No AI involvement documented."
|
|
48454
48710
|
},
|
|
48455
|
-
"
|
|
48456
|
-
|
|
48457
|
-
"
|
|
48458
|
-
"
|
|
48459
|
-
"
|
|
48460
|
-
"
|
|
48461
|
-
|
|
48462
|
-
|
|
48711
|
+
"new_control_requirements": [
|
|
48712
|
+
{
|
|
48713
|
+
"id": "NEW-CTRL-001",
|
|
48714
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
48715
|
+
"description": "SolarWinds Serv-U is an internet-facing managed file-transfer server, and the packet's own timing is the argument for this control: the hotfix and mass exploitation were days apart, while the Essential Eight patch-application window the estate is audited against runs up to a month. Bound to this product, the requirement is that every Serv-U instance is enumerated and driven to 15.4.2 Hotfix 2 or later on a clock that starts at the 2024-07-17 KEV listing, not at the next appliance maintenance window and not at the next quarterly vulnerability scan — the packet records quarterly scanning as the specific cadence that misses this flaw entirely. Completion is measured on the version the running Serv-U service reports, because live_patch_available is false and the packet names the vendor update, recorded as requiring no reboot, as the remediation: a host where the hotfix has been staged but the Serv-U service is still executing 15.4.2 Hotfix 1 or earlier is still returning arbitrary host files to unauthenticated requests. Enumeration is the load-bearing half on this product, since a file-transfer server is frequently stood up for a partner integration outside the managed application inventory, and an instance nobody lists is an instance nobody patches while internet-wide scanning is under way. Precondition: reaching Hotfix 2 stops further reads and un-discloses nothing already read, so on any instance that was internet-reachable and unpatched during the exposure window this control is only the first half of the response.",
|
|
48716
|
+
"evidence": "cisa_kev is true with kev_date 2024-07-17, active_exploitation is confirmed and poc_available is true. affected_versions gives Serv-U 15.4.2 Hotfix 1 and earlier, and anything below 15.4.2 Hotfix 2, as affected. patch_available is true; live_patch_available is false with live_patch_notes stating there is no live-patching primitive for this product and that the vendor update (no reboot required) is the remediation. active_exploitation_notes records mass Internet-wide scanning and exploitation with very high EPSS around 0.996, shortly after the Rapid7 write-up and public PoCs appeared. The AU-Essential-8-Patch gap records maturity windows of up to a month against the days between the Serv-U hotfix and observed mass exploitation, and the ISO-27001-2022-A.8.8 gap records that quarterly technical-vulnerability scanning misses an internet-facing MFT appliance flaw under active mass exploitation within days of disclosure.",
|
|
48717
|
+
"gap_closes": [
|
|
48718
|
+
"AU-Essential-8-Patch",
|
|
48719
|
+
"ISO-27001-2022-A.8.8"
|
|
48720
|
+
]
|
|
48721
|
+
},
|
|
48722
|
+
{
|
|
48723
|
+
"id": "NEW-CTRL-032",
|
|
48724
|
+
"name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
|
|
48725
|
+
"description": "Scope this control honestly to what the packet establishes: the Serv-U primitive is an unauthenticated read, not a write and not code execution, so the implant half of the control — the reason it normally insists on rebuild over patch-in-place — is not what this CVE demonstrates. The half that applies in full is the config-exfil and credential-rotation half, and this CVE demonstrates it as clearly as any entry can. The packet has a crafted HTTP request to the Serv-U web client returning files outside the served directory, including config and credential files, from an attacker holding no account at all, against a server under confirmed mass internet-wide exploitation. So any Serv-U instance that was internet-reachable on 15.4.2 Hotfix 1 or earlier during the exposure window has to be treated as having had those files read: inventory what the host actually held, then rotate every credential recoverable from it — the Serv-U service and administrative accounts, the credentials stored in its configuration, and any transfer-partner or downstream account whose secret sat on that machine — and re-key anything the configuration referenced. Applying Hotfix 2 closes the read path and leaves every already-read secret valid and usable, and that is the precise way this remediation gets recorded as complete while the attacker keeps working credentials into an environment the file-transfer server was trusted to reach. Precondition: rotation is bounded by the inventory, so an instance whose stored credentials were never catalogued cannot be rotated with confidence and the inventory is the first step rather than the last. And rotation is not detection — it does not surface use of a credential already read, so accounts appearing in the Serv-U configuration also need their authentication activity reviewed across and after the exposure window.",
|
|
48726
|
+
"evidence": "affected records that the Serv-U web client permits directory traversal via crafted path parameters, allowing unauthenticated reading of arbitrary files on the host, and attack_vector records the server reading and returning files outside the served directory, including config and credential files, in response to an unauthenticated HTTP request using mixed Windows/Unix separators and encodings. active_exploitation is confirmed and active_exploitation_notes records mass Internet-wide scanning and exploitation with very high EPSS around 0.996; poc_available is true; cisa_kev is true with kev_date 2024-07-17. patch_available is true with the fix at 15.4.2 Hotfix 2 per affected_versions. The UK-CAF-B2 gap records that identity-and-access-control expectations are moot when an unauthenticated traversal reads sensitive files, including credentials, without authenticating at all.",
|
|
48727
|
+
"gap_closes": [
|
|
48728
|
+
"UK-CAF-B2"
|
|
48729
|
+
]
|
|
48730
|
+
}
|
|
48731
|
+
]
|
|
48732
|
+
},
|
|
48733
|
+
"CVE-2024-34102": {
|
|
48734
|
+
"name": "Adobe Commerce and Magento Open Source Improper Restriction of XML External Entity Reference (XXE) Vulnerability",
|
|
48735
|
+
"lesson_date": "2026-07-11",
|
|
48736
|
+
"attack_vector": {
|
|
48737
|
+
"description": "An unauthenticated attacker POSTs a crafted XML document referencing an external entity to Magento's guest-cart REST/GraphQL endpoint; the parser resolves the entity (CosmicSting), leaking the encryption key and files, and chained with object injection achieves remote code execution and skimmer/webshell deployment.",
|
|
48738
|
+
"privileges_required": "none (unauthenticated, no user interaction)",
|
|
48739
|
+
"complexity": "low — public PoCs and mass-scanning make weaponization trivial",
|
|
48740
|
+
"ai_factor": "Not AI-discovered — reported by researcher 'spacewasp'; exploitation analyzed by Sansec/Assetnote. No AI involvement documented."
|
|
48741
|
+
},
|
|
48742
|
+
"defense_chain": {
|
|
48743
|
+
"prevention": {
|
|
48744
|
+
"what_would_have_worked": "Apply Adobe's June 2024 patch (APSB24-40) and the isolated CosmicSting hotfix, and rotate the Magento crypt key after patching",
|
|
48745
|
+
"was_this_required": true,
|
|
48746
|
+
"framework_requiring_it": "CISA BOD 22-01 (KEV remediation, added 2024-07-17)",
|
|
48747
|
+
"adequacy": "Patching alone is insufficient if the encryption key was already leaked pre-patch, so key rotation is mandatory."
|
|
48748
|
+
},
|
|
48749
|
+
"detection": {
|
|
48463
48750
|
"what_would_have_worked": "WAF/log detection of XML DOCTYPE/external-entity payloads to cart APIs and outbound OAST callbacks during parsing",
|
|
48464
48751
|
"was_this_required": false,
|
|
48465
48752
|
"framework_requiring_it": null,
|
|
@@ -48807,7 +49094,31 @@
|
|
|
48807
49094
|
"adequate": false,
|
|
48808
49095
|
"gap": "System monitoring is undermined because the exploit executes below the NX-OS command-accounting layer, so detection controls relying on CLI logs miss it."
|
|
48809
49096
|
}
|
|
48810
|
-
}
|
|
49097
|
+
},
|
|
49098
|
+
"new_control_requirements": [
|
|
49099
|
+
{
|
|
49100
|
+
"id": "NEW-CTRL-135",
|
|
49101
|
+
"name": "CONTROL-PANEL-PLUGIN-USER-SURFACE-MUST-NOT-REACH-ROOT-OPERATIONS",
|
|
49102
|
+
"description": "The NX-OS configuration CLI is the constrained user surface this control governs, and the packet describes it failing in exactly the forbidden shape: insufficient validation of arguments passed to specific configuration CLI commands lets an authenticated Administrator's crafted argument execute as an arbitrary root command on the underlying operating system. Bound to this product, the control means the values NX-OS configuration commands hand to underlying OS operations are validated at that boundary, so a command argument cannot select what the underlying OS runs and the CLI's own argument handling is not the single thing standing between an NX-OS Administrator account and root. Scope from affected_versions rather than from one headline platform: MDS 9000 Series and the Nexus 3000, 5500 platform, 5600 platform, 6000, 7000 and 9000 Series, each at the fixed release named in cisco-sa-nxos-cmd-injection-xD9OhyOP. The packet's own vector carves part of that population out and it matters for prioritisation: on Nexus 3000, on Nexus 7000 running 8.1(1) and later, and on Nexus 9000 in standalone NX-OS mode, administrative users already reach the underlying operating system through the bash-shell feature, so the flaw grants no additional privileges there — the boundary this control asserts is load-bearing on the remaining platforms, where the restricted CLI is supposed to be the privilege boundary. Precondition: the vendor update is what repairs the validation; this control states the property to verify and does not implement it. patch_required_reboot is true with no live-patching primitive, so a switch with the fixed image staged but not reloaded still runs the vulnerable code and counts as exposed. Until that reload, the only operator-side lever is limiting which accounts can open an NX-OS Administrator session, which bounds who can attempt the escalation but does not close it, because any account that legitimately reaches the configuration CLI still reaches root. And because exploitation is confirmed, a switch whose Administrator credentials may have been held by an attacker needs forensic triage and credential rotation — the packet records custom malware run on Cisco Nexus switches for persistent, low-visibility access, and the upgrade does not remove what was left behind.",
|
|
49103
|
+
"evidence": "Packet fields: cwe_refs CWE-78; vector 'A vulnerability in the CLI of Cisco NX-OS Software could allow an authenticated user in possession of Administrator credentials to execute arbitrary commands as root on the underlying operating system', 'due to insufficient validation of arguments that are passed to specific configuration CLI commands', and the note that Nexus 3000 Series, Nexus 7000 Series running releases 8.1(1) and later, and Nexus 9000 Series in standalone NX-OS mode 'already allow administrative users to access the underlying operating system through the bash-shell feature, so, for these devices, this vulnerability does not grant any additional privileges'; affected_versions 'Cisco NX-OS on MDS 9000 Series' and 'Nexus 3000, 5500 platform, 5600 platform, 6000, 7000, and 9000 Series (fixed releases per cisco-sa-nxos-cmd-injection-xD9OhyOP)'; 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 'confirmed' with active_exploitation_notes describing Velvet Ant using it as a zero-day 'to run custom malware on Cisco Nexus switches for persistent, low-visibility access'; NIST-800-53-AC-6 gap 'The flaw defeats the CLI/root privilege separation on NX-OS, so least-privilege between admin-CLI and the underlying OS is not actually enforced.'; ISO-27001-2022-A.8.8 gap 'Technical vulnerability management assumes patch closure suffices, but the zero-day was exploited pre-fix by a state actor with valid admin access.'",
|
|
49104
|
+
"gap_closes": [
|
|
49105
|
+
"NIST-800-53-AC-6",
|
|
49106
|
+
"ISO-27001-2022-A.8.8"
|
|
49107
|
+
]
|
|
49108
|
+
},
|
|
49109
|
+
{
|
|
49110
|
+
"id": "NEW-CTRL-036",
|
|
49111
|
+
"name": "FLEET-CONTROL-PLANE-ADMIN-PRIVILEGE-TIER",
|
|
49112
|
+
"description": "The packet makes stolen Administrator credentials the entire precondition for this CVE — it functions as a stealthy escape from the CLI to root for an actor who already holds an admin credential — which is why patch timelines alone leave the chain intact. For this CVE the control means the accounts that administer the NX-OS fabric named in affected_versions (MDS 9000 and the Nexus 3000, 5500 platform, 5600 platform, 6000, 7000 and 9000 Series) are enumerated as a distinct control-plane admin tier rather than collapsed into a general 'network admin' role: the switch management interfaces reachable only from a PAM jumphost, the NX-OS Administrator identity separate from the operator's other accounts, elevation issued just-in-time against an approval record rather than standing, and a phishing-resistant step-up in the authentication path so a credential harvested elsewhere does not by itself open an Administrator session. Where a device's own admin authentication path cannot carry a phishing-resistant factor directly, the enforceable form is the jumphost and the step-up at that hop, with the residual recorded — the control's requirement is that the tier be enumerated and enforced somewhere in the path, not that a claim be made about what the switch's login supports. This is the half that bites during the window before the reload, because it attacks the precondition rather than the injection sink. Precondition and limit: it changes how a session is obtained and does nothing once one is legitimately open. An attacker who compromises the jumphost, satisfies the step-up, or is an authorised administrator still reaches root through the unfixed CLI, so this is a holding measure that runs alongside the fixed release from cisco-sa-nxos-cmd-injection-xD9OhyOP and its reload, never a substitute for it.",
|
|
49113
|
+
"evidence": "Packet fields: vector 'To successfully exploit this vulnerability on a Cisco NX-OS device, an attacker must have Administrator credentials'; active_exploitation_notes 'requires stolen Administrator credentials, so it functions as a stealthy escape from the CLI to root', with exploitation attributed by Sygnia to the China-nexus espionage group Velvet Ant; UK-CAF-B2 gap 'The chain depends on already-stolen administrator credentials, so the CAF's identity objective — phishing-resistant MFA on network-device admin access — is the load-bearing control, yet B2 doesn't force out-of-band MFA on switch CLI logins that would break the credential precondition.'; NIS2-Art21-network-security gap 'Network-security obligations for critical infrastructure do not force out-of-band admin credential hardening (phishing-resistant MFA) that would blunt the credential-dependent chain.'; NIST-800-53-SI-2 gap 'Even prompt patching leaves exposure because exploitation requires already-stolen admin credentials; flaw remediation does not address the credential-theft precondition.'; AU-Essential-8-Patch gap 'no strategy mandates the MFA that blunts the credential-theft chain'; patch_available true, patch_required_reboot true, live_patch_available false.",
|
|
49114
|
+
"gap_closes": [
|
|
49115
|
+
"UK-CAF-B2",
|
|
49116
|
+
"NIS2-Art21-network-security",
|
|
49117
|
+
"NIST-800-53-SI-2",
|
|
49118
|
+
"AU-Essential-8-Patch"
|
|
49119
|
+
]
|
|
49120
|
+
}
|
|
49121
|
+
]
|
|
48811
49122
|
},
|
|
48812
49123
|
"CVE-2020-13965": {
|
|
48813
49124
|
"name": "Roundcube Webmail Cross-Site Scripting (XSS) Vulnerability",
|
|
@@ -49277,7 +49588,40 @@
|
|
|
49277
49588
|
"adequate": false,
|
|
49278
49589
|
"gap": "Flaw remediation depends on Arm's fix propagating through SoC vendors and Android OEM update chains, so device patch latency vastly exceeds the exploitation window for this KEV-listed mobile LPE."
|
|
49279
49590
|
}
|
|
49280
|
-
}
|
|
49591
|
+
},
|
|
49592
|
+
"new_control_requirements": [
|
|
49593
|
+
{
|
|
49594
|
+
"id": "NEW-CTRL-126",
|
|
49595
|
+
"name": "MOBILE-OS-MINIMUM-PATCH-LEVEL-ENFORCEMENT",
|
|
49596
|
+
"description": "The trigger the packet records is a local, non-privileged app performing improper GPU memory-processing operations against the Mali kernel driver to reach already-freed memory and escalate privilege or escape the app sandbox — so the population is every device carrying a Bifrost or Valhall driver in the r34p0-through-r40p0 range, and the remediating state is a build carrying r41p0. The operator cannot make that build exist: the packet's flaw-remediation gap records that Arm's fix has to be integrated by SoC vendors and shipped through Android OEM and carrier update chains. What the operator does hold is the access decision, and this control's requirement is that the fixed driver becomes a condition of access rather than a row on a patch-compliance report — a device that cannot show a build carrying r41p0 is denied mail, VPN and document access until it can. Distinguishing test: enrol a device pinned to a pre-r41p0 build and confirm the policy actually denies it the protected resources; an estate that surfaces the stale driver on a report while the device keeps its access has recorded the exposure rather than removed it. Precondition on the remediation half: patch_required_reboot is true and the packet states there is no live-patching primitive for this product and that the vendor update requires a reboot and is the remediation — so a device that has taken the OEM update but has not rebooted is still executing the pre-r41p0 driver and counts as exposed, not as patched. Precondition on the interim half: restricting installation to vetted application sources raises the bar for getting the attacker's app onto the device, but the packet's exploit runs from an ordinary installed app needing no additional execution privilege, so it does not evict an app already present and does not cover one delivered through the normal store channel; a device suspected of already running such an app belongs on the incident path. This is a holding measure for the window before a build carrying r41p0 lands and is rebooted onto, not a substitute for it.",
|
|
49597
|
+
"evidence": "Packet: cisa_kev true with kev_date 2024-06-12; active_exploitation confirmed, with active_exploitation_notes recording that Arm confirmed indications of exploitation in the wild and that a local non-privileged app can leverage it for privilege escalation / sandbox escape across a very large population of Android devices; cwe_refs CWE-416. affected names the Arm Bifrost and Valhall Mali GPU Kernel Drivers (mali_kbase), 'Fixed in driver version r41p0'; affected_versions are 'Bifrost GPU Kernel Driver r34p0 through r40p0' and 'Valhall GPU Kernel Driver r34p0 through r40p0'. 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.' The NIST-800-53-SI-2 gap records that the upstream Arm fix (r41p0) 'must be integrated by SoC vendors and shipped through Android OEM/carrier update chains'; the AU-Essential-8-Patch gap records that OS-patch maturity models 'assume a controllable update path'; the UK-CAF-B4 gap records endpoint-hardening expectations undercut when the vulnerable component is a vendor GPU kernel driver outside the operator's patch control.",
|
|
49598
|
+
"gap_closes": [
|
|
49599
|
+
"AU-Essential-8-Patch",
|
|
49600
|
+
"NIST-800-53-SI-2",
|
|
49601
|
+
"UK-CAF-B4"
|
|
49602
|
+
]
|
|
49603
|
+
},
|
|
49604
|
+
{
|
|
49605
|
+
"id": "NEW-CTRL-018",
|
|
49606
|
+
"name": "SCANNER-PAPER-COMPLIANCE-TEST",
|
|
49607
|
+
"description": "The paper-compliance case for this CVE is a device-management console or scanner that reads the device's OS security patch level, finds it current, and reports the fleet remediated. The packet rules that out: the vulnerable component is Arm's Bifrost/Valhall Mali kernel driver, and the packet's own flaw-remediation gap says the r41p0 fix must be integrated by the SoC vendor and shipped through the OEM chain — so an OS-level currency date is not evidence that the driver in service is r41p0 rather than something in the r34p0-through-r40p0 range. The operational test for this entry is the driver version actually running on the device, checked against that affected range and the r41p0 fix, per device model, rather than the OS patch date or the existence of an update policy. Precondition and limit, which is where this control is most often over-claimed: where the management channel cannot report the driver version, the model-and-build to driver-version mapping has to be obtained from the OEM or SoC vendor for that exact model, not assumed in either direction. The packet establishes that the fix may not reach older devices but does not say which models those are, so a model whose status the vendor has not answered is an open question — neither a pass nor a device that can be written off as unfixable.",
|
|
49608
|
+
"evidence": "Packet: affected records the fix as driver version r41p0 and affected_versions give the vulnerable ranges as Bifrost r34p0 through r40p0 and Valhall r34p0 through r40p0. The NIST-800-53-SI-2 gap records that 'The upstream Arm fix (r41p0) must be integrated by SoC vendors and shipped through Android OEM/carrier update chains, so device patch latency far exceeds the exploitation window for a KEV-listed mobile LPE.' The ISO-27001-2022-A.8.8 gap records that technical-vulnerability management for mobile endpoints 'depends on OEM update availability; a control cannot remediate a device whose vendor never ships r41p0.' The AU-Essential-8-Patch gap records that OS-patch maturity models assume a controllable update path 'which does not hold for fragmented Android OEM firmware where the GPU driver fix may never reach older devices.' cisa_kev true (2024-06-12) with active_exploitation confirmed.",
|
|
49609
|
+
"gap_closes": [
|
|
49610
|
+
"ISO-27001-2022-A.8.8",
|
|
49611
|
+
"AU-Essential-8-Patch"
|
|
49612
|
+
]
|
|
49613
|
+
},
|
|
49614
|
+
{
|
|
49615
|
+
"id": "NEW-CTRL-038",
|
|
49616
|
+
"name": "MITIGATION-ACTIVE-PATCH-PENDING-VERDICT-CLASS",
|
|
49617
|
+
"description": "Applied to a fleet carrying this driver, the three states the packet forces apart are: a device on a build carrying r41p0 that has been rebooted onto it — remediated; a device still below r41p0 with an access restriction or install policy holding the line — a compensating state that must be reported as such, with a dated action item and a named owner pursuing the OEM for that model; and a device below r41p0 with neither — full exposure to a KEV-listed use-after-free with confirmed exploitation, reachable by any app already installed on it. The gap this closes is the one the packet's patch-management text describes: obligations that cannot reach third-party SoC and OEM firmware pipelines resolve today to 'policy exists and is applied', which reports a fleet as compliant without ever counting how many devices sit in the third state or for how long. The verdict class makes that count exist and makes it age, and it stops the second state being recorded as patched-per-SLA. Precondition: the compensating state is not remediation and must not close the item — the packet records no live-patching primitive and names the reboot-requiring vendor update as the remediation, so an access restriction bounds what a compromised device can reach while the local escalation on the device itself stays fully available to any app already installed there.",
|
|
49618
|
+
"evidence": "Packet: 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.' cisa_kev true with kev_date 2024-06-12 and active_exploitation confirmed. The NIS2-Art21-patch-management gap records that 'Patch-management obligations cannot force fixes through third-party SoC/OEM firmware pipelines that carry the Mali driver, leaving managed mobile fleets exposed.' The ISO-27001-2022-A.8.8 gap records that 'a control cannot remediate a device whose vendor never ships r41p0.' The attack vector is a local, non-privileged app using the use-after-free to corrupt kernel memory and escalate privileges or escape the app sandbox.",
|
|
49619
|
+
"gap_closes": [
|
|
49620
|
+
"NIS2-Art21-patch-management",
|
|
49621
|
+
"ISO-27001-2022-A.8.8"
|
|
49622
|
+
]
|
|
49623
|
+
}
|
|
49624
|
+
]
|
|
49281
49625
|
},
|
|
49282
49626
|
"CVE-2017-3506": {
|
|
49283
49627
|
"name": "Oracle WebLogic Server OS Command Injection Vulnerability",
|
|
@@ -50769,7 +51113,39 @@
|
|
|
50769
51113
|
"adequate": false,
|
|
50770
51114
|
"gap": "Ransomware operators weaponized this SharePoint RCE, and the observed exploitation cadence outpaced the flaw-remediation SLAs many operators apply to on-prem SharePoint."
|
|
50771
51115
|
}
|
|
50772
|
-
}
|
|
51116
|
+
},
|
|
51117
|
+
"new_control_requirements": [
|
|
51118
|
+
{
|
|
51119
|
+
"id": "NEW-CTRL-001",
|
|
51120
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
51121
|
+
"description": "The packet names Microsoft SharePoint Server 2019 and SharePoint Server Subscription Edition, records the KEV listing on 2024-03-26 with ransomware association Known, and notes the flaw was originally demonstrated at Pwn2Own Vancouver 2023 by STAR Labs — so the exploitation know-how predates the listing by a long margin and the response window was never the interval the KEV date suggests. For this CVE the control's load-bearing effect is refusing to discount the SLA on the 'requires an authenticated Site Owner' reading of the prerequisite: the packet records that privilege being routinely supplied by chaining CVE-2023-29357's authentication bypass, which is how the flaw is reached unauthenticated in the campaigns actually observed. Remediation is the vendor update — patch_available is true, live_patch_available is false, and the packet's live-patch note states the update requires a reboot and is the remediation — so the clock runs through the restart of every SharePoint server running an affected product, and a server that took the update but has not rebooted still carries the vulnerable code however the deployment console reports it. Both products in the affected list are in scope: an estate inventory built around one of them leaves the other unremediated while the flaw-remediation record reads complete.",
|
|
51122
|
+
"evidence": "Packet: cisa_kev true with kev_date 2024-03-26; active_exploitation confirmed; active_exploitation_notes record exploitation in the wild, CISA KEV flagging association with ransomware campaigns (Ransomware association: Known), chaining with CVE-2023-29357 (auth bypass) to reach unauthenticated RCE, and the original demonstration at Pwn2Own Vancouver 2023 by STAR Labs. affected_versions: Microsoft SharePoint Server 2019 and Microsoft SharePoint Server Subscription Edition. poc_available true; CVSS 7.2, RWEP 75; 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.' The flaw-remediation gap records the observed exploitation cadence outpacing the SLAs many operators apply to on-prem SharePoint.",
|
|
51123
|
+
"gap_closes": [
|
|
51124
|
+
"NIST-800-53-SI-2",
|
|
51125
|
+
"AU-Essential-8-Patch"
|
|
51126
|
+
]
|
|
51127
|
+
},
|
|
51128
|
+
{
|
|
51129
|
+
"id": "NEW-CTRL-032",
|
|
51130
|
+
"name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
|
|
51131
|
+
"description": "The packet records this SharePoint code injection as exploited in the wild with ransomware association Known, and its incident-handling gap names the consequence an operator has to plan around: the pivot from a SharePoint RCE into domain-wide impact. Applied to this product, the requirement is that a SharePoint Server 2019 or Subscription Edition instance which was below the fixed build while exploitation was running is handled as an incident rather than closed as a patch ticket. The injected code was evaluated server-side with the privilege of the SharePoint worker process, and the vendor update repairs the injection path without removing anything that execution left behind — so the default is to preserve and export first, rebuild at the fixed build rather than updating the exposed instance in place, and rotate the credentials that server held along with those that authenticated through it during the exposure window, which is the step that actually bounds the domain-wide pivot the packet names. The chained precondition changes what the rotation review should expect to find: the packet records the Site Owner privilege being obtained through CVE-2023-29357's authentication bypass rather than granted, so an account review looking for unexpected Site Owner assignments finds nothing while the access was entirely real. Restarting the rebuilt server onto the fixed build is part of reaching remediation here, since the packet records no live-patch path and a vendor update that requires a reboot.",
|
|
51132
|
+
"evidence": "Packet: active_exploitation confirmed; active_exploitation_notes record exploitation in the wild, CISA KEV flagging association with ransomware campaigns, and chaining with CVE-2023-29357 to reach unauthenticated RCE. attack_vector: an attacker holding Site Owner privileges, often obtained by first exploiting CVE-2023-29357's auth bypass, injects code through a crafted SharePoint API/BDC path that SharePoint evaluates server-side, achieving remote code execution used in ransomware operations. The NIS2-Art21-incident-handling gap states incident-handling readiness under-accounts for ransomware chains that pivot from a SharePoint RCE into domain-wide impact. The UK-CAF-B2 gap states the Site Owner privilege is not a legitimate grant but is obtained by chaining the auth bypass. 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.'",
|
|
51133
|
+
"gap_closes": [
|
|
51134
|
+
"NIS2-Art21-incident-handling",
|
|
51135
|
+
"NIST-800-53-SI-2"
|
|
51136
|
+
]
|
|
51137
|
+
},
|
|
51138
|
+
{
|
|
51139
|
+
"id": "NEW-CTRL-018",
|
|
51140
|
+
"name": "SCANNER-PAPER-COMPLIANCE-TEST",
|
|
51141
|
+
"description": "The paper-compliance failure on this entry is a scan that reports a SharePoint farm remediated on the strength of a single update record, and the packet establishes two separate reasons that record can be wrong. First the chain: the packet states the real severity of this code injection is realized only together with CVE-2023-29357's authentication bypass, which is what supplies the Site Owner privilege the injection requires — so a server carrying the fix for this CVE while the auth-bypass fix is missing has closed one half of the path attackers actually traverse, and a per-CVE scan result reads clean either way. Second the running state: patch_required_reboot is true and the packet's live-patch note records that the vendor update requires a reboot and is the remediation, so a server whose update is installed but not restarted is still executing vulnerable code while its patch record says otherwise. The distinguishing test is therefore to produce, per SharePoint server across both Microsoft SharePoint Server 2019 and Subscription Edition, the build actually running after restart, and to show both fixes present on that build — not to read 'update applied' out of the deployment console. An estate that runs the console report into its technical-vulnerability-management evidence pack satisfies the attestation while the exploited chain stays intact end to end.",
|
|
51142
|
+
"evidence": "Packet: the ISO-27001-2022-A.8.8 gap states technical vulnerability management that patches CVE-2023-24955 in isolation misses that its real severity is realized only in chain with the auth-bypass CVE-2023-29357. active_exploitation_notes record that it is commonly chained with CVE-2023-29357 to reach unauthenticated RCE on SharePoint Server. 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.' affected_versions: Microsoft SharePoint Server 2019 and Microsoft SharePoint Server Subscription Edition. The flaw-remediation gap records the observed exploitation cadence outpacing the SLAs applied to on-prem SharePoint. poc_available true; active_exploitation confirmed; kev_date 2024-03-26.",
|
|
51143
|
+
"gap_closes": [
|
|
51144
|
+
"ISO-27001-2022-A.8.8",
|
|
51145
|
+
"NIST-800-53-SI-2"
|
|
51146
|
+
]
|
|
51147
|
+
}
|
|
51148
|
+
]
|
|
50773
51149
|
},
|
|
50774
51150
|
"CVE-2019-7256": {
|
|
50775
51151
|
"name": "Nice Linear eMerge E3-Series OS Command Injection Vulnerability",
|
|
@@ -50843,7 +51219,32 @@
|
|
|
50843
51219
|
"adequate": false,
|
|
50844
51220
|
"gap": "Boundary protection that exposes the CSA web interface to the internet leaves the unauthenticated injection endpoint directly reachable."
|
|
50845
51221
|
}
|
|
50846
|
-
}
|
|
51222
|
+
},
|
|
51223
|
+
"new_control_requirements": [
|
|
51224
|
+
{
|
|
51225
|
+
"id": "NEW-CTRL-030",
|
|
51226
|
+
"name": "PERIMETER-DEVICE-ZERODAY-SLA-TIER",
|
|
51227
|
+
"description": "The Ivanti EPM Cloud Services Appliance sits at the trust boundary and this CVE is the pre-auth case the tier exists for: the packet has an unauthenticated attacker sending a crafted request to the CSA web interface (/client/index.php) whose input reaches code-execution routines via csrf-magic.php, executing arbitrary code as the 'nobody' user as an initial foothold. Bound to this product the tier means every CSA in service is enumerated with its running version and driven to 4.6.0-512 or later on a clock that runs from the 2024-03-25 KEV listing, not on whatever cadence the estate applies to ordinary server applications — the packet's flaw-remediation gap is precisely that a 2021 flaw sat unpatched on appliances for years while exploitation surged around the KEV listing, and with public Metasploit and exploit-db modules and a near-1.0 EPSS the reachable-and-unpatched state is the operative risk rather than the CVSS band. The tier's alternative arm is isolation of the vulnerable interface: restrict which sources can reach the CSA web interface at all so the unauthenticated request cannot be delivered while the update is staged. Both arms carry preconditions that have to be stated with them. patch_required_reboot is true and the packet records no live-patching primitive for this product, so an appliance that has taken 4.6.0-512 but has not rebooted is still executing the vulnerable code and counts as exposed — the version in the asset inventory is not the version the appliance is running. And the isolation arm is bounded rather than absolute: it removes only the sources it excludes, so any host inside a permitted range still reaches the injection endpoint unauthenticated, and where the deployment requires the CSA web interface to answer from the internet the restriction is unavailable altogether and the vendor update with its reboot is the only closure. The distinguishing test: from a network with no operational need to manage endpoints through this appliance, issue an unauthenticated request to the CSA web interface on a staging instance and confirm it is refused before the request reaches the code-execution routines.",
|
|
51228
|
+
"evidence": "Packet: affected is the \"Ivanti Endpoint Manager Cloud Services Appliance (EPM CSA) web interface, where improper handling of user-supplied input to code-execution routines lets an unauthenticated attacker run arbitrary code as the 'nobody' user\"; attack_vector: \"An unauthenticated attacker sends a crafted request to the CSA web interface (/client/index.php), which passes attacker input to code-execution routines via csrf-magic.php, running arbitrary code as the low-privileged 'nobody' user as an initial foothold.\" affected_versions: \"Ivanti EPM Cloud Services Appliance versions before 4.6.0-512\". CISA KEV 2024-03-25 with a Known ransomware association; active_exploitation confirmed; poc_available true with Metasploit/exploit-db modules and near-1.0 EPSS; CVSS 9.8; RWEP 79. 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.\" The NIST-800-53-SC-7 gap states \"Boundary protection that exposes the CSA web interface to the internet leaves the unauthenticated injection endpoint directly reachable\"; the NIST-800-53-SI-2 gap states the 2021 flaw saw exploitation surge around the 2024 KEV listing with \"appliances left unpatched for years.\"",
|
|
51229
|
+
"gap_closes": [
|
|
51230
|
+
"NIST-800-53-SI-2",
|
|
51231
|
+
"NIST-800-53-SC-7",
|
|
51232
|
+
"AU-Essential-8-Patch",
|
|
51233
|
+
"UK-CAF-B4"
|
|
51234
|
+
]
|
|
51235
|
+
},
|
|
51236
|
+
{
|
|
51237
|
+
"id": "NEW-CTRL-032",
|
|
51238
|
+
"name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
|
|
51239
|
+
"description": "The packet describes the estate condition this control exists for: a 2021 unauthenticated code-injection flaw on internet-facing Ivanti EPM CSA appliances that were frequently unmanaged and left exploitable for years, with exploitation surging around the 2024-03-25 KEV listing, a Known ransomware association, and public exploit modules at near-1.0 EPSS. For an appliance in that state, installing 4.6.0-512 is not remediation — the update closes the injection path but removes nothing an attacker placed through it while the appliance was reachable, and the packet is explicit that the code execution is an initial foothold, the position from which the rest of the intrusion proceeds rather than its end state. The requirement here is that any CSA that was reachable and below 4.6.0-512 during the exposure window is dispositioned as a suspected compromise rather than as a patch ticket: capture the configuration and logs off the appliance first, rebuild it from vendor media at the fixed version instead of upgrading in place, and rotate every credential and secret the appliance held or that transited it. The precondition worth stating, because it is the specific way this decision goes wrong on this CVE: the injected code runs as the low-privileged 'nobody' user, which makes an attacker artifact easy to dismiss as ordinary application content but says nothing about where the intrusion went after the foothold — treating \"only nobody\" as justification for patching in place is exactly how the foothold survives the remediation and the appliance is recorded as closed. This control governs the appliance's disposition after exposure; it does not close the injection path, which is what the vendor update and its reboot do, and it is not a substitute for reaching 4.6.0-512 on every unit.",
|
|
51240
|
+
"evidence": "Packet: the ISO-27001-2022-A.8.8 gap states \"legacy CSA appliances were frequently unmanaged and left exploitable\"; the AU-Essential-8-Patch gap states \"the Ivanti CSA edge appliance was frequently unmanaged and left exposed for years, and its ransomware-linked unauth injection surged well after the normal patch window closed\"; the NIS2-Art21-vulnerability-management gap states measures that do not prioritize internet-facing management appliances \"allow a critical preauth RCE to persist as an entry point.\" active_exploitation confirmed; CISA KEV 2024-03-25 with a Known ransomware association; poc_available true. attack_vector describes arbitrary code as the low-privileged 'nobody' user \"as an initial foothold\". patch_available true, patch_required_reboot true, live_patch_available false; affected_versions \"before 4.6.0-512\".",
|
|
51241
|
+
"gap_closes": [
|
|
51242
|
+
"NIST-800-53-SI-2",
|
|
51243
|
+
"ISO-27001-2022-A.8.8",
|
|
51244
|
+
"NIS2-Art21-vulnerability-management"
|
|
51245
|
+
]
|
|
51246
|
+
}
|
|
51247
|
+
]
|
|
50847
51248
|
},
|
|
50848
51249
|
"CVE-2023-48788": {
|
|
50849
51250
|
"name": "Fortinet FortiClient EMS SQL Injection Vulnerability (CVE-2023-48788)",
|
|
@@ -52645,7 +53046,30 @@
|
|
|
52645
53046
|
"adequate": false,
|
|
52646
53047
|
"gap": "Technical-vulnerability management does not prioritise the emergency upgrade of a KEV-listed appliance whose management plane yields RCE from a low-privileged account."
|
|
52647
53048
|
}
|
|
52648
|
-
}
|
|
53049
|
+
},
|
|
53050
|
+
"new_control_requirements": [
|
|
53051
|
+
{
|
|
53052
|
+
"id": "NEW-CTRL-030",
|
|
53053
|
+
"name": "PERIMETER-DEVICE-ZERODAY-SLA-TIER",
|
|
53054
|
+
"description": "NetScaler ADC and NetScaler Gateway are the trust-boundary device class this tier exists for, and on this CVE the packet puts the trust boundary's own management plane in the exploit path: an attacker with access to NSIP, CLIP or SNIP and a low-privileged account performs code injection yielding remote code execution on the management interface. Applied to this product the tier means two things running together. First, the management addresses (NSIP, CLIP, SNIP) answer only from a dedicated management network, never from a user, server or internet-facing segment — the packet's own gap text names that exposure as 'the precondition the entire exploit depends on'. Second, the fixed release for each unit's own branch is deployed on the KEV clock rather than folded into an appliance maintenance window, and the branch matters because the fixed build differs per branch: 14.1-12.35 for 14.1, 13.1-51.15 for 13.1, 13.0-92.21 for 13.0, 13.1-37.176 for 13.1-FIPS and 12.65.7.24 for 12.1-FIPS/NDcPP. The clock has to run through the reboot: patch_available is true but patch_required_reboot is true with live_patch_available false, so a unit that has taken the fixed release and not rebooted is still executing the vulnerable code and is not a remediated item. This tier is also the answer to the least-privilege gap the packet records — because a merely low-privileged management account suffices for code execution, containment moves off privilege scoping and onto reachability, which is the isolation half of this control. Preconditions, and this is where the control is routinely over-claimed: management-network isolation bounds who can attempt the injection, it does not neutralize it — every administrator, monitoring integration and service account that legitimately reaches NSIP/CLIP/SNIP still holds exactly the low-privileged access the flaw needs, so isolation is containment for the pre-reboot window, not a substitute for the fixed build. And on the non-FIPS 12.1 branch isolation is permanent rather than interim, because the packet records that branch as end-of-life and unpatched: no fixed release exists to reach, so 12.1 is a migration item, not a patch item. Distinguishing test: from a general user or server VLAN on a staging deployment, attempt to open the NSIP/CLIP/SNIP management surface and confirm the connection is dropped before authentication is even offered — an estate that passes a NetScaler role-and-permission audit while the management addresses answer from any internal segment is still fully exposed to any low-privileged account that exists on it.",
|
|
53055
|
+
"evidence": "Packet facts only. cisa_kev true with kev_date 2024-01-17 and active_exploitation 'confirmed'; active_exploitation_notes: 'Exploited in the wild as a zero-day disclosed 16 Jan 2024 alongside CVE-2023-6549; a low-privileged authenticated user with access to the NetScaler management interface (NSIP, CLIP, or SNIP) achieves remote code execution on the appliance. CISA KEV ransomware flag: unknown.' cvss 7.2 is not claimed here — the packet records cvss 8.8, rwep_score 59, poc_available false. The vector states the flaw 'allows an attacker with access to NSIP, CLIP or SNIP with management interface to perform Authenticated (low privileged) remote code execution on Management Interface.' Remediation state: 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.' Branch-specific fixed builds are taken from affected_versions (14.1-12.35, 13.1-51.15, 13.0-92.21, 13.1-37.176, 12.65.7.24) and the end-of-life status of 12.1 from the same list. The framework side is quoted from the packet's own gaps: NIS2-Art21-network-security ('do not explicitly require the NetScaler management interface (NSIP/CLIP/SNIP) to be off the public network'), UK-CAF-B2 ('do not force administrative interfaces onto an isolated management network'), AU-Essential-8-App-Hardening ('does not address restricting appliance management-interface exposure, so the code-injection sink stays reachable'), NIST-800-53-AC-6 ('A merely low-privileged management account is sufficient for code execution, so least-privilege on the management plane does not contain the flaw once any management access exists').",
|
|
53056
|
+
"gap_closes": [
|
|
53057
|
+
"NIS2-Art21-network-security",
|
|
53058
|
+
"UK-CAF-B2",
|
|
53059
|
+
"AU-Essential-8-App-Hardening",
|
|
53060
|
+
"NIST-800-53-AC-6"
|
|
53061
|
+
]
|
|
53062
|
+
},
|
|
53063
|
+
{
|
|
53064
|
+
"id": "NEW-CTRL-127",
|
|
53065
|
+
"name": "UNSUPPORTED-NETWORK-DEVICE-ENUMERATION-AND-RETIREMENT",
|
|
53066
|
+
"description": "The packet's affected-version list carries two different terminal states for the same appliance family, and they have to be resolved per unit before this entry can be closed. 14.1, 13.1, 13.0, 13.1-FIPS and 12.1-FIPS/NDcPP each have a named fixed build; 'NetScaler ADC/Gateway 12.1' is listed as end-of-life and unpatched. So the requirement is an inventory naming every NetScaler ADC and NetScaler Gateway in service with its branch and its running build, and — because a FIPS/NDcPP unit whose version string starts '12.1' does have a fix (12.65.7.24) while a non-FIPS 12.1 unit does not — with its support status obtained per model and branch from the vendor rather than inferred from the version string. Units on a branch with a fixed build are remediation items on the clock that opened with the 2024-01-17 KEV listing; since the packet records no live-patch path and a reboot-required fix, a unit that has taken the release but not rebooted is still executing the vulnerable code and is not a closed item. Units on the end-of-life 12.1 branch cannot be patched at all — reaching a fixed build is not available to them — so they are replacement or migration items needing a dated schedule. A requirement that ends at 'every NetScaler reports a fixed build' marks the 12.1 estate compliant by omission, and a risk acceptance with no removal date leaves a KEV-listed appliance under confirmed active exploitation in service indefinitely, exposed not only to this code injection but to everything found in that branch since its last build. Scope the sweep to what the packet names — NetScaler ADC and NetScaler Gateway including the FIPS and NDcPP variants. The packet ties the CWE-94 sink to those products and gives no mapping into other vendors' load balancers or remote-access gateways, so treating every edge appliance in the estate as an instance of this CVE manufactures replacement work against products no evidence implicates. Distinguishing test: enumerate the estate's ADC and Gateway units and confirm each reports a build at or above its own branch's fixed level and has rebooted onto it, and that every non-FIPS 12.1 unit appears on a dated migration schedule with an owner — a technical-vulnerability register that records '12.1 assessed, no fix available' and stops there reads clean while the appliance stays permanently exploitable by any low-privileged management account.",
|
|
53067
|
+
"evidence": "Packet facts only. affected_versions lists 'NetScaler ADC/Gateway 12.1 (end-of-life, unpatched)' alongside the fixed builds for the other branches: '14.1 before 14.1-12.35', '13.1 before 13.1-51.15', '13.0 before 13.0-92.21', '13.1-FIPS before 13.1-37.176', '12.1-FIPS/NDcPP before 12.65.7.24'. cisa_kev true, kev_date 2024-01-17, active_exploitation 'confirmed', rwep_score 59, cvss 8.8, poc_available false. 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.' The framework side is the packet's own ISO gap: 'Technical-vulnerability management does not prioritise the emergency upgrade of a KEV-listed appliance whose management plane yields RCE from a low-privileged account.' The CWE reference (CWE-94) and the products in scope (NetScaler ADC, NetScaler Gateway) are taken from cwe_refs and the affected/affected_versions fields; the packet names no other vendor's product.",
|
|
53068
|
+
"gap_closes": [
|
|
53069
|
+
"ISO-27001-2022-A.8.8"
|
|
53070
|
+
]
|
|
53071
|
+
}
|
|
53072
|
+
]
|
|
52649
53073
|
},
|
|
52650
53074
|
"CVE-2018-15133": {
|
|
52651
53075
|
"name": "Laravel Deserialization of Untrusted Data Vulnerability",
|
|
@@ -53323,7 +53747,30 @@
|
|
|
53323
53747
|
"adequate": false,
|
|
53324
53748
|
"gap": "The 48-hour internet-facing patch target is frequently missed on legacy ColdFusion estates, leaving a preauth RCE exposed after public gadget chains dropped."
|
|
53325
53749
|
}
|
|
53326
|
-
}
|
|
53750
|
+
},
|
|
53751
|
+
"new_control_requirements": [
|
|
53752
|
+
{
|
|
53753
|
+
"id": "NEW-CTRL-001",
|
|
53754
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
53755
|
+
"description": "Bound to this product the control is a per-train obligation, not a single ticket. The packet names Adobe ColdFusion 2018, 2021 and 2023, each with its own affected level — 2018 Update 16 and earlier, 2021 Update 6 and earlier, 2023.0.0.330468 and earlier — so the population to enumerate is every ColdFusion instance in the estate across all three trains, including the ones behind an internal application rather than the flagship public site. An estate that updates its 2023 servers while a 2018 install stays on Update 16 still exposes an unauthenticated, network-reachable deserialization path, and the flaw-remediation attestation reads clean while it does. The clock runs from the 2024-01-08 KEV listing rather than from an internal severity review, because the packet already supplies everything a review would be waiting for: a public PoC, EPSS in the top percentile, exploitation in the wild since mid-2023, and CISA's ransomware flag. Completion is measured by the update level each running ColdFusion instance reports, not by the installer having been run or the change ticket being closed — the packet records no live-patch mechanism, so nothing mitigates the flaw until the fixed release is the code actually serving requests. Precondition: this reaches only instances the inventory can see, and ColdFusion is commonly installed alongside an application rather than through managed software distribution; an instance nobody has enumerated is not remediated by an SLA it was never counted against.",
|
|
53756
|
+
"evidence": "The packet lists ColdFusion 2018 Update 16 and earlier, ColdFusion 2021 Update 6 and earlier, and ColdFusion 2023.0.0.330468 and earlier as affected, with CVSS 9.8, RWEP 72, poc_available true, active_exploitation confirmed, and the CISA KEV listing on 2024-01-08; exploitation has run against internet-facing Adobe ColdFusion servers since mid-2023 to drop web shells, EPSS is in the top percentile (~1.0), and KEV flags associated ransomware use. The NIST-800-53-SI-2 gap records a standard 30-day flaw-remediation SLA being far longer than the observed window between disclosure and mass web-shell deployment; the NIS2-Art21-patch-management gap records the KEV due date of 2024-01-29 being tighter than typical SLAs; the AU-Essential-8-Patch gap records the 48-hour internet-facing patch target being frequently missed on ColdFusion estates; the ISO-27001-2022-A.8.8 gap records technical-vulnerability management cataloguing the CVE without compelling the emergency patch cadence a top-EPSS, ransomware-linked preauth RCE demands. patch_available is true, live_patch_available is false, and the packet states remediation requires applying the vendor fixed release.",
|
|
53757
|
+
"gap_closes": [
|
|
53758
|
+
"NIST-800-53-SI-2",
|
|
53759
|
+
"ISO-27001-2022-A.8.8",
|
|
53760
|
+
"NIS2-Art21-patch-management",
|
|
53761
|
+
"AU-Essential-8-Patch"
|
|
53762
|
+
]
|
|
53763
|
+
},
|
|
53764
|
+
{
|
|
53765
|
+
"id": "NEW-CTRL-032",
|
|
53766
|
+
"name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
|
|
53767
|
+
"description": "A ColdFusion server in this entry is the estate's internet-facing edge: the packet describes deserialization of untrusted data in the CFML runtime reachable over the network without authentication, exploited in the wild against internet-facing servers since mid-2023 to drop web shells, with CISA flagging associated ransomware use. Applying the vendor fixed release closes the deserialization path and removes nothing that was written through it — a web shell dropped into the ColdFusion web root or a CFML directory before the update survives the update and keeps serving the attacker with no further need for the CVE. So any instance that was internet-reachable on 2018 Update 16, 2021 Update 6, or 2023.0.0.330468 or earlier during the exploitation window is an incident-response item rather than a patch item: capture and analyse its filesystem off-box with the web root and CFML directories first, rebuild from known-good rather than updating in place where compromise cannot be excluded, and rotate what the server held — datasource and database credentials, ColdFusion Administrator passwords, API keys, and any service account it authenticated as. This has to be the default posture rather than something a detection triggers, because the entry's own system-security gap records that the initial deserialization POST reaches a legitimate application endpoint and blends with normal ColdFusion traffic: the absence of an alert is not evidence the server was not reached. Precondition: this is scoped to instances that were network-reachable by an untrusted caller during the window; it is an incident path, not a substitute for the fixed release, which every instance still needs.",
|
|
53768
|
+
"evidence": "The packet describes deserialization of untrusted data in the CFML runtime reachable over the network without authentication, yielding arbitrary code execution, and records exploitation in the wild against internet-facing Adobe ColdFusion servers since mid-2023 to drop web shells, with CISA KEV flagging associated ransomware use and the listing dated 2024-01-08. The attack vector states the payload drives deserialization into arbitrary code execution, typically dropping a web shell. The UK-CAF-B4 gap states that system-security/patch controls do not on their own detect the initial deserialization POST, which reaches a legitimate application endpoint and blends with normal ColdFusion traffic. patch_available is true, live_patch_available is false, and the packet states remediation requires applying the vendor fixed release.",
|
|
53769
|
+
"gap_closes": [
|
|
53770
|
+
"UK-CAF-B4"
|
|
53771
|
+
]
|
|
53772
|
+
}
|
|
53773
|
+
]
|
|
53327
53774
|
},
|
|
53328
53775
|
"CVE-2023-38203": {
|
|
53329
53776
|
"name": "Adobe ColdFusion Deserialization of Untrusted Data Vulnerability",
|
|
@@ -53380,7 +53827,40 @@
|
|
|
53380
53827
|
"adequate": false,
|
|
53381
53828
|
"gap": "Network/patch controls do not detect a deserialization POST to a legitimate endpoint using a not-yet-blocked gadget class."
|
|
53382
53829
|
}
|
|
53383
|
-
}
|
|
53830
|
+
},
|
|
53831
|
+
"new_control_requirements": [
|
|
53832
|
+
{
|
|
53833
|
+
"id": "NEW-CTRL-042",
|
|
53834
|
+
"name": "INCOMPLETE-PATCH-SEQUENCE-SEVERITY-MULTIPLIER",
|
|
53835
|
+
"description": "This is the second CVE on the same ColdFusion deserialization primitive: the packet describes it as a bypass of the fix for CVE-2023-29300, reached with a gadget class (JdbcRowSetImpl) Adobe's denylist did not block. For ColdFusion the control means the vulnerability-management programme does not score this as a fresh discrete item on the normal application queue but as evidence that the denylist protecting the CFML runtime's deserialization path is structurally incomplete — so a further gadget-class bypass on the same path is treated as likely rather than hypothetical, and the ColdFusion entry is not closed when one update lands. Scope the multiplier across all three trains the packet names — 2018 Update 17 and earlier, 2021 Update 7 and earlier, 2023 Update 1 and earlier — because each has its own fixed release and an estate that updates one train while another stays behind is still running the bypassable denylist. Precondition: this is a prioritisation and tracking control. It changes when the out-of-band update is scheduled and whether the finding stays open afterwards; it does not make the runtime reject the gadget and it blocks no request on its own.",
|
|
53836
|
+
"evidence": "Packet attack_vector: 'An unauthenticated attacker submits a serialized payload using a gadget class (JdbcRowSetImpl) that Adobe's deserialization denylist did not block, achieving RCE — a bypass of the fix for the related CVE-2023-29300.' NIS2-Art21-vulnerability-handling gap: 'Vulnerability-handling processes assume a single patch closes the issue; a denylist bypass requires re-remediation, which routine handling under-covers.' ISO-27001-2022-A.8.8 gap: 'Technical-vulnerability management does not compel the emergency re-patch that a fix-bypass zero-day demands within days.' cwe_refs CWE-502; cvss 9.8; rwep_score 72; active_exploitation confirmed; poc_available true. affected_versions: ColdFusion 2018 Update 17 and earlier, 2021 Update 7 and earlier, 2023 Update 1 and earlier.",
|
|
53837
|
+
"gap_closes": [
|
|
53838
|
+
"NIST-800-53-SI-2",
|
|
53839
|
+
"ISO-27001-2022-A.8.8",
|
|
53840
|
+
"NIS2-Art21-vulnerability-handling"
|
|
53841
|
+
]
|
|
53842
|
+
},
|
|
53843
|
+
{
|
|
53844
|
+
"id": "NEW-CTRL-041",
|
|
53845
|
+
"name": "PROTECTION-MECHANISM-FAILURE-CLASS-REGRESSION",
|
|
53846
|
+
"description": "Adobe's deserialization denylist is the protection mechanism here, and this CVE is that mechanism failing: the packet places the arbitrary code execution in a gadget class the denylist did not cover, reachable unauthenticated over the network. Applied to ColdFusion, the control means each update is validated against the full historic gadget battery for the CFML deserialization path — every gadget class previously used against ColdFusion, not only the one named in the current advisory — on a staging install at the new update level before the estate is declared remediated; and, where the runtime permits constraining which classes may be reconstructed, that the policy is expressed as an allowlist rather than as one more blocked-class entry, which is what the packet's least-functionality gap says is actually required. The distinguishing test is that battery: replay each known gadget, JdbcRowSetImpl included, at the network-reachable endpoint on staging and confirm each is refused before any object is reconstructed. An estate that verified only the gadget its advisory named would have passed cleanly while this path stayed open. Precondition: the battery covers only gadget classes someone has already published, so it narrows the window for a repeat of this class rather than proving the next unpublished gadget is blocked, and it gives nothing at all to an install still below the fixed update level.",
|
|
53847
|
+
"evidence": "Packet affected: 'Adobe ColdFusion (2018, 2021, 2023) — a deserialization gadget (JdbcRowSetImpl) not covered by the denylist, reachable unauthenticated over the network for arbitrary code execution.' NIST-800-53-CM-7 gap: 'Least-functionality/deny-by-default at the object layer is exactly what Adobe's denylist attempted and failed — an allowlist-based deserialization policy, not a blocklist, is required, which this control does not by itself mandate.' attack_vector records the flaw as a bypass of the fix for CVE-2023-29300; poc_available true.",
|
|
53848
|
+
"gap_closes": [
|
|
53849
|
+
"NIST-800-53-CM-7"
|
|
53850
|
+
]
|
|
53851
|
+
},
|
|
53852
|
+
{
|
|
53853
|
+
"id": "NEW-CTRL-001",
|
|
53854
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
53855
|
+
"description": "The packet records a KEV listing on 2024-01-08 with confirmed exploitation, a public PoC and a ransomware association, against an Adobe fix issued out of band after the flaw was disclosed inadvertently. For ColdFusion that means the fixed release is driven onto every install on the KEV clock rather than folded into the next application-patching window, with completion measured on the update level the running ColdFusion instance reports — separately for each of the three trains the packet names, since a current 2023 install says nothing about a 2018 or 2021 install elsewhere on the same estate. The packet records live_patch_available false and states that remediation requires applying the vendor fixed release, so there is no mitigation rule to deploy while the update is being scheduled; the only lever between listing and fixed release is reducing who can reach the endpoint. And because exploitation is confirmed, an install that ran a pre-fix update level while network-reachable belongs on the incident path rather than being closed on the patch record — the flaw reaches arbitrary code execution, so the update repairs the code path and says nothing about what executed before it.",
|
|
53856
|
+
"evidence": "Packet: cisa_kev true, kev_date 2024-01-08, active_exploitation confirmed, poc_available true, cvss 9.8, rwep_score 72. active_exploitation_notes: 'A denylist-bypass zero-day in ColdFusion's deserialization, disclosed inadvertently and fixed by Adobe out-of-band; exploited in the wild alongside the other 2023 ColdFusion flaws, with ransomware association per CISA KEV.' patch_available true; live_patch_available false; live_patch_notes: 'No vendor live-patch mechanism; remediation requires applying the vendor fixed release.' NIST-800-53-SI-2 gap: 'The out-of-band Adobe fix for this denylist bypass landed days after disclosure; a routine flaw-remediation SLA cannot keep pace with a chained, actively-exploited preauth RCE.' AU-Essential-8-Patch gap records the same for internet-facing ColdFusion.",
|
|
53857
|
+
"gap_closes": [
|
|
53858
|
+
"AU-Essential-8-Patch",
|
|
53859
|
+
"NIST-800-53-SI-2",
|
|
53860
|
+
"ISO-27001-2022-A.8.8"
|
|
53861
|
+
]
|
|
53862
|
+
}
|
|
53863
|
+
]
|
|
53384
53864
|
},
|
|
53385
53865
|
"CVE-2023-7101": {
|
|
53386
53866
|
"name": "Spreadsheet::ParseExcel Remote Code Execution Vulnerability",
|
|
@@ -53780,7 +54260,30 @@
|
|
|
53780
54260
|
"adequate": false,
|
|
53781
54261
|
"gap": "Security monitoring often lacks visibility into anonymous-session creation inside the BI application, so the initial-access step goes undetected."
|
|
53782
54262
|
}
|
|
53783
|
-
}
|
|
54263
|
+
},
|
|
54264
|
+
"new_control_requirements": [
|
|
54265
|
+
{
|
|
54266
|
+
"id": "NEW-CTRL-001",
|
|
54267
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
54268
|
+
"description": "This entry is the case where a KEV-keyed clock and a severity-keyed clock give opposite answers, and the control exists to make the KEV clock the one that binds. On its own the flaw scores 6.5 and only produces an anonymous session plus requests to unauthorized backend endpoints; chained with CVE-2023-41265 it is unauthenticated RCE and was used as initial access by Cactus ransomware against internet-facing Qlik Sense Enterprise for Windows. Applied here the remediation clock runs from the 2023-12-07 KEV listing rather than from the medium band, and the fix is tracked per release train because Qlik shipped it separately on each: August 2023 IR, May 2023 Patch 4, February 2023 Patch 8, November 2022 Patch 11, and August 2022 Patch 13. An estate running more than one train has to reach the fixed patch for each — the flaw-remediation gap on this entry is exactly that a single SLA could not cover an estate on mixed patch levels before weaponization, so a programme that records 'Qlik Sense patched' against one train has not remediated the others. Completion is measured by the version the running Qlik Sense service reports, not by the patch bundle being downloaded or staged; the packet records no live-patch mechanism, so the fixed release actually serving requests is the only state that counts. Precondition: this governs prioritisation and completion measurement, not reachability — it gives nothing to an instance during the interval before its train's fixed patch is installed.",
|
|
54269
|
+
"evidence": "The packet gives CVSS 6.5 with RWEP 68, poc_available true, active_exploitation confirmed, and the CISA KEV listing on 2023-12-07 with ransomware use flagged; the vector states the traversal allows an unauthenticated remote attacker to generate an anonymous session and transmit HTTP requests to unauthorized endpoints, and the exploitation notes record the chain with CVE-2023-41265 for unauthenticated RCE used as initial access by Cactus ransomware against internet-facing Qlik Sense Enterprise for Windows, observed by Arctic Wolf. The vector names the affected trains as May 2023 Patch 3 and earlier, February 2023 Patch 7 and earlier, November 2022 Patch 10 and earlier, and August 2022 Patch 12 and earlier, and the fixes as August 2023 IR, May 2023 Patch 4, February 2023 Patch 8, November 2022 Patch 11, and August 2022 Patch 13. The NIST-800-53-SI-2 gap records the fix shipping as scattered per-release patches across many Qlik Sense trains with a single flaw-remediation SLA struggling to cover an estate on mixed patch levels before ransomware weaponization; the ISO-27001-2022-A.8.8, NIS2-Art21-vulnerability-management and AU-Essential-8-Patch gaps each record severity-driven prioritisation deprioritising a CVSS-6.5 primitive that becomes critical only when chained. patch_available is true, live_patch_available is false, and the packet states remediation requires applying the vendor fixed release.",
|
|
54270
|
+
"gap_closes": [
|
|
54271
|
+
"NIST-800-53-SI-2",
|
|
54272
|
+
"ISO-27001-2022-A.8.8",
|
|
54273
|
+
"NIS2-Art21-vulnerability-management",
|
|
54274
|
+
"AU-Essential-8-Patch"
|
|
54275
|
+
]
|
|
54276
|
+
},
|
|
54277
|
+
{
|
|
54278
|
+
"id": "NEW-CTRL-040",
|
|
54279
|
+
"name": "OWA-PER-REQUEST-SIEM-INGESTION",
|
|
54280
|
+
"description": "The requirement this control carries — forward the application's per-request access logs to an external SIEM, because authentication-event logging alone misses an attack that never produces an authentication event — is the exact shape of this Qlik Sense flaw. The traversal makes the server issue an anonymous session to an unauthenticated caller, which then transmits HTTP requests to unauthorized backend endpoints; nobody logs in, so an authentication-log-only pipeline has nothing to show, which is what the security-monitoring gap on this entry records. Applied to Qlik Sense Enterprise for Windows it means the proxy and audit logs covering session creation and per-request backend access are shipped off the Qlik host to a SIEM the Qlik service account cannot write to, retained long enough to cover the exposure window, with the rule keyed on the behaviour the packet documents rather than on a stand-in: a session appearing with no preceding authentication event, and requests from that session reaching backend endpoints an unauthenticated caller has no route to. Preconditions: this detects and reconstructs, it does not prevent — the traversal stays reachable until the fixed patch for that instance's train is the version the service reports — and it produces nothing unless the logs were already being shipped during the window, which on a BI server is commonly not the case; a rule written afterwards against telemetry nobody collected returns an empty result that reads like a clean one. Because the packet places this CVE as the first stage of a chain used for ransomware initial access, a hit here is an incident to be worked, not a vulnerability finding to be queued.",
|
|
54281
|
+
"evidence": "The vector states that the path traversal allows an unauthenticated remote attacker to generate an anonymous session, which allows them to transmit HTTP requests to unauthorized endpoints. The UK-CAF-C1 gap states that security monitoring often lacks visibility into anonymous-session creation inside the BI application, so the initial-access step goes undetected. The packet describes this as the first stage of the ZeroQlik chain, chained with CVE-2023-41265 for unauthenticated RCE and used as initial access by Cactus ransomware against internet-facing Qlik Sense Enterprise for Windows, with active_exploitation confirmed and the CISA KEV listing on 2023-12-07 flagging ransomware use. live_patch_available is false and the packet states remediation requires applying the vendor fixed release.",
|
|
54282
|
+
"gap_closes": [
|
|
54283
|
+
"UK-CAF-C1"
|
|
54284
|
+
]
|
|
54285
|
+
}
|
|
54286
|
+
]
|
|
53784
54287
|
},
|
|
53785
54288
|
"CVE-2023-41265": {
|
|
53786
54289
|
"name": "Qlik Sense HTTP Tunneling Vulnerability",
|
|
@@ -54089,7 +54592,31 @@
|
|
|
54089
54592
|
"adequate": false,
|
|
54090
54593
|
"gap": "Technical vulnerability management assumes a remediation path exists, yet it is OEM-gated for chipset drivers."
|
|
54091
54594
|
}
|
|
54092
|
-
}
|
|
54595
|
+
},
|
|
54596
|
+
"new_control_requirements": [
|
|
54597
|
+
{
|
|
54598
|
+
"id": "NEW-CTRL-126",
|
|
54599
|
+
"name": "MOBILE-OS-MINIMUM-PATCH-LEVEL-ENFORCEMENT",
|
|
54600
|
+
"description": "For this Qualcomm flaw the packet is explicit that remediation arrives only one way: the OEM firmware or OS update carrying Qualcomm's fix, followed by a device reboot, with no live-patch mechanism for the DSP driver. That makes the device's OEM build the only enforceable value, and this control's requirement is that it be treated as an access condition rather than a compliance statistic — organizational mail, VPN and document access withheld from any handset whose build does not carry the fix from Qualcomm's December 2023 security bulletin. The bulletin identifies the affected chipsets; whether a given handset model has received an OEM build carrying that fix has to be obtained from the OEM per model, not inferred in either direction. This matters most on the BYOD population the packet's system-security gap names, where the operator holds no patch lever at all and access gating is the only lever left. Distinguishing test: enrol a device on a pre-fix build and confirm it is actually denied protected resources rather than merely flagged as non-compliant. Preconditions: the primitive is reached by an unprivileged local process issuing a remote call from HLOS to the DSP, so any code already executing on the device satisfies the access requirement in full — gating organizational data does not evict an implant already resident, and the packet ties this CVE to limited, targeted exploitation named by Google Threat Analysis Group and Project Zero in a targeted-spyware pattern, so a device suspected of having run the chain belongs on the incident path rather than the patch path. And because no live-patch path exists, a device that has taken the OEM update but not rebooted is still executing the vulnerable DSP driver and is not remediated.",
|
|
54601
|
+
"evidence": "Packet fields: affected states 'Multiple Qualcomm chipsets: use-after-free (memory corruption) in DSP Services triggered during a remote call from HLOS to the DSP, enabling local privilege escalation'; affected_versions gives 'Multiple Qualcomm chipsets with the affected Compute DSP (cDSP) driver — see Qualcomm December 2023 security bulletin'; vector gives 'Memory corruption in DSP Services during a remote call from HLOS to DSP'; attack_vector describes an unprivileged local process issuing a remote call from HLOS to the DSP via FastRPC. cisa_kev true with kev_date 2023-12-05, active_exploitation confirmed; active_exploitation_notes records Google Threat Analysis Group and Google Project Zero naming it under limited, targeted exploitation alongside the Adreno GPU flaws, Qualcomm confirming and issuing OEM guidance, and a targeted-spyware pattern with no ransomware association. patch_available true, patch_required_reboot true, live_patch_available false with live_patch_notes 'No live-patch mechanism for the DSP driver; remediation requires the OEM firmware/OS update carrying Qualcomm's fix and a device reboot.' The UK-CAF-B4 gap states a DSP kernel-driver use-after-free on BYOD mobile sits outside the org's patch reach; the ISO-27001-2022-A.8.8 gap states technical vulnerability management assumes a remediation path exists, yet it is OEM-gated for chipset drivers.",
|
|
54602
|
+
"gap_closes": [
|
|
54603
|
+
"ISO-27001-2022-A.8.8",
|
|
54604
|
+
"UK-CAF-B4",
|
|
54605
|
+
"AU-Essential-8-Patch"
|
|
54606
|
+
]
|
|
54607
|
+
},
|
|
54608
|
+
{
|
|
54609
|
+
"id": "NEW-CTRL-001",
|
|
54610
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
54611
|
+
"description": "The KEV clock on this entry opened 2023-12-05, but the clock an operator can actually run starts later and separately per device model: the packet records remediation as arriving only through the OEM firmware or OS update carrying Qualcomm's fix plus a reboot, so 'patch availability' for this control is the date that build is published for a given model, not the date of Qualcomm's December 2023 bulletin. Applied here, the requirement is to track both dates per model — when an OEM build carrying the fix became available, and when the fleet's devices of that model reached it after reboot — and, where the first has not happened, to record the documented compensating control (withholding organizational data from the device, and incident triage for any device suspected of having run the chain) with a stated review date rather than leaving the item open as awaiting vendor. That open-ended state is the specific shape of paper compliance this flaw produces: the flaw-remediation control is annotated vendor-dependent, the KEV entry stays unclosed, and nothing else happens for a use-after-free under confirmed targeted exploitation. No management-console report should be accepted as evidence of remediation here, because the packet states enterprise MDM cannot remediate the DSP driver directly; the evidence is the device's own build carrying Qualcomm's fix after a reboot. Precondition: this control sets and documents the clock, it does not create a build that does not exist — where the OEM has published nothing for a model, the compensating control is all that is operating, and it bounds exposure of organizational data without repairing the driver on the device.",
|
|
54612
|
+
"evidence": "Packet fields: cisa_kev true with kev_date 2023-12-05 and active_exploitation confirmed; poc_available false; rwep_score 57 against cvss 7.8; cwe_refs CWE-416. patch_available true, patch_required_reboot true, live_patch_available false with live_patch_notes 'No live-patch mechanism for the DSP driver; remediation requires the OEM firmware/OS update carrying Qualcomm's fix and a device reboot.' affected_versions points to the Qualcomm December 2023 security bulletin for the affected cDSP chipsets. The NIST-800-53-SI-2 gap states flaw remediation presumes a patch the org can deploy while the DSP-driver fix must arrive via OEM firmware, so real-world remediation trails the active-exploitation window by months; the NIS2-Art21-patch-management gap states patch-management duties cannot force OEMs/carriers to ship the chipset DSP fix and that enterprise MDM cannot remediate a DSP kernel driver directly; the AU-Essential-8-Patch gap states the exploited-flaw patch SLA is not meetable when the fix is bound to an OEM firmware image. active_exploitation_notes records Google Threat Analysis Group and Project Zero naming it under limited, targeted exploitation with Qualcomm issuing OEM guidance.",
|
|
54613
|
+
"gap_closes": [
|
|
54614
|
+
"NIST-800-53-SI-2",
|
|
54615
|
+
"NIS2-Art21-patch-management",
|
|
54616
|
+
"AU-Essential-8-Patch"
|
|
54617
|
+
]
|
|
54618
|
+
}
|
|
54619
|
+
]
|
|
54093
54620
|
},
|
|
54094
54621
|
"CVE-2022-22071": {
|
|
54095
54622
|
"name": "Qualcomm Multiple Chipsets Use-After-Free Vulnerability (process shell memory)",
|
|
@@ -54840,7 +55367,32 @@
|
|
|
54840
55367
|
"adequate": false,
|
|
54841
55368
|
"gap": "The Essential Eight 'patch applications within 48 hours for exploited flaws' target is only met if the org tracks Oracle CPUs as security-critical; the control is silent on disabling/segmenting the IIOP subprotocol as a compensating measure."
|
|
54842
55369
|
}
|
|
54843
|
-
}
|
|
55370
|
+
},
|
|
55371
|
+
"new_control_requirements": [
|
|
55372
|
+
{
|
|
55373
|
+
"id": "NEW-CTRL-128",
|
|
55374
|
+
"name": "APPSERVER-REMOTING-PROTOCOL-RESTRICTION",
|
|
55375
|
+
"description": "WebLogic's IIOP listener is exactly the binary remoting-protocol class this control governs: the packet has an unauthenticated attacker with network access via IIOP sending a crafted request carrying a Java deserialization gadget chain to the WebLogic listen port and taking over the server, so the protocol parser answering before any authentication is itself the vulnerable code — a path the HTTP-tier hardening and web-application filtering that most WebLogic estates are audited against never inspects. For this product the requirement is that the IIOP subprotocol is disabled on every WLS Core Components listener with no application that requires it, and that where it must stay enabled the listen port answers only to the specific hosts that legitimately speak IIOP to that server, enforced by network ACL or host firewall rather than inferred from \"the domain is internal\" — which the packet's own boundary-protection gap names as the failure, since a T3/IIOP listener (7001) reachable from the internet or a flat internal network is the precondition for the credential-free takeover. The distinguishing test for this deployment: from a general user or application VLAN on a staging domain, open an IIOP connection to the WebLogic listen port and confirm it is refused before the request reaches the parser — a domain that passes a WebLogic role-and-policy audit while the IIOP port answers from any internal segment is still fully exposed, because the attacker never authenticates and no account model is consulted. Precondition: this bounds who can deliver the gadget chain, it does not repair the deserialization defect. Any host inside the permitted set — or any workload compromised on one — satisfies the packet's stated requirement of network access via IIOP in full, so this is a holding measure to be run alongside the vendor fixed release for 10.3.6.0.0, 12.1.3.0.0, 12.2.1.3.0 and 12.2.1.4.0, never recorded in place of it.",
|
|
55376
|
+
"evidence": "Packet vector: \"Easily exploitable vulnerability allows unauthenticated attacker with network access via IIOP to compromise Oracle WebLogic Server. Successful attacks of this vulnerability can result in takeover of Oracle WebLogic Server.\" affected: \"Oracle WebLogic Server (WLS Core Components) with the IIOP protocol enabled on the listen port; unauthenticated network attacker via IIOP.\" attack_vector: \"An unauthenticated attacker sends a crafted IIOP request to the WebLogic listen port carrying a Java deserialization gadget chain, achieving remote code execution and full server takeover without credentials.\" affected_versions: 10.3.6.0.0, 12.1.3.0.0, 12.2.1.3.0, 12.2.1.4.0. The NIST-800-53-SC-7 gap states \"Boundary protection that permits the T3/IIOP listener (7001) to reach the internet or flat internal networks is the precondition for unauthenticated RCE; simply patching does not close the exposed management protocol\"; the UK-CAF-B4 gap states system-security expectations \"don't require disabling the IIOP subprotocol or segmenting the 7001 listener\"; the NIS2-Art21-vulnerability-management gap states the article \"does not force IIOP-protocol hardening or listener segmentation\"; the AU-Essential-8-Patch gap states the control \"is silent on disabling/segmenting the IIOP subprotocol as a compensating measure.\" poc_available true; EPSS 0.93 (99.8th pct); CISA KEV 2023-11-16.",
|
|
55377
|
+
"gap_closes": [
|
|
55378
|
+
"NIST-800-53-SC-7",
|
|
55379
|
+
"UK-CAF-B4",
|
|
55380
|
+
"NIS2-Art21-vulnerability-management",
|
|
55381
|
+
"AU-Essential-8-Patch"
|
|
55382
|
+
]
|
|
55383
|
+
},
|
|
55384
|
+
{
|
|
55385
|
+
"id": "NEW-CTRL-001",
|
|
55386
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
55387
|
+
"description": "This entry is the cadence mismatch the SLA exists to remove. The packet records the WLS Core Components flaw as mass-scanned and weaponized since the January 2020 Oracle CPU with a public exploit and EPSS 0.93 (99.8th percentile), CISA listed it on 2023-11-16, and the estate-side clock the packet's gaps describe is a quarterly Oracle CPU cycle — years of reachable exposure against an unauthenticated takeover. Applied to this product it means a WebLogic domain on 10.3.6.0.0, 12.1.3.0.0, 12.2.1.3.0 or 12.2.1.4.0 is either on the vendor fixed release or carrying a documented compensating control with a stated review date, from the KEV listing onward, handled as an out-of-cycle emergency change rather than folded into the next quarterly patch window. The compensating-control arm the packet supports is the IIOP one: the subprotocol disabled where no application needs it, or its listener restricted to hosts that legitimately speak IIOP to that server. That arm has to be recorded with its precondition attached — it bounds who can deliver the gadget chain but leaves it fully deliverable from any permitted host — so it is logged as an active mitigation with a review date, never as the item closed. Completion on the patch arm is measured on the version the running WebLogic process reports rather than on what the patch inventory says was applied: patch_required_reboot is false, which means the host needs no reboot, but the packet records no live-patch mechanism and states that remediation requires applying the vendor fixed release, so a managed server still executing the pre-fix build is not remediated and each instance in the domain has to be shown on the fixed version itself.",
|
|
55388
|
+
"evidence": "Packet: CISA KEV 2023-11-16, active_exploitation confirmed, CVSS 9.8, RWEP 72, poc_available true. active_exploitation_notes: \"the IIOP-facing WLS Core Components flaw has been mass-scanned and weaponized since the Jan-2020 Oracle CPU, remaining a durable initial-access vector against internet-exposed WebLogic. EPSS 0.93 (99.8th pct).\" patch_available true, patch_required_reboot false, live_patch_available false, live_patch_notes \"No vendor live-patch mechanism; remediation requires applying the vendor fixed release.\" affected_versions 10.3.6.0.0, 12.1.3.0.0, 12.2.1.3.0, 12.2.1.4.0. The NIST-800-53-SI-2 gap states \"Flaw remediation on a quarterly Oracle CPU cadence leaves the IIOP listener exploitable for months\"; the ISO-27001-2022-A.8.8 gap states the flaw \"demands emergency out-of-band remediation, not the standard cycle\"; the AU-Essential-8-Patch gap states the 48-hour exploited-flaw target \"is only met if the org tracks Oracle CPUs as security-critical\" and that the control \"is silent on disabling/segmenting the IIOP subprotocol as a compensating measure.\"",
|
|
55389
|
+
"gap_closes": [
|
|
55390
|
+
"NIST-800-53-SI-2",
|
|
55391
|
+
"ISO-27001-2022-A.8.8",
|
|
55392
|
+
"AU-Essential-8-Patch"
|
|
55393
|
+
]
|
|
55394
|
+
}
|
|
55395
|
+
]
|
|
54844
55396
|
},
|
|
54845
55397
|
"CVE-2023-36033": {
|
|
54846
55398
|
"name": "Windows DWM Core Library Elevation of Privilege",
|
|
@@ -55377,7 +55929,32 @@
|
|
|
55377
55929
|
"adequate": false,
|
|
55378
55930
|
"gap": "Hardening/removing unused management functionality would drop the user.php surface, but the Essential Eight control is not tied to this appliance interface and is easily left enabled."
|
|
55379
55931
|
}
|
|
55380
|
-
}
|
|
55932
|
+
},
|
|
55933
|
+
"new_control_requirements": [
|
|
55934
|
+
{
|
|
55935
|
+
"id": "NEW-CTRL-030",
|
|
55936
|
+
"name": "PERIMETER-DEVICE-ZERODAY-SLA-TIER",
|
|
55937
|
+
"description": "The SRX Series is the trust boundary, and this entry's own base score is what makes it the case this control exists for. The packet scores it 5.3 while recording an RWEP of 77, a public PoC, EPSS 0.94 at the 99.8th percentile, exploitation observed from 2023-08-25, and the role the flaw actually plays: an unauthenticated request to user.php uploads arbitrary files via J-Web, supplying the file-write primitive that combines with CVE-2023-36845 into a pre-auth RCE chain. A CVSS-keyed SLA files that as a medium and schedules it into a routine window, which is the failure the packet records twice — once as flaw remediation deprioritizing it wrongly, once as technical-vulnerability triage under-weighting it against watchTowr's public PoC chaining through PHPRC/auto_prepend_file. Bound to this estate, the tier is set by the device class and the pre-auth reachability, not the score: every SRX running J-Web goes on the expedited clock that opened with the 2023-11-13 KEV listing and is driven to the fixed release for its train — 20.4R3-S8, 21.2R3-S6, 21.3R3-S5, 21.4R3-S5, 22.1R3-S3, 22.2R3-S2, 22.3R2-S2 or 22.3R3, 22.4R2-S1 or 22.4R3 — or has J-Web isolated until it gets there. Units running a 21.1 release are a per-unit question rather than an assumption: the packet's vector records 21.1R1 and later as affected but names no fixed release for that train, so that level has to be obtained from the vendor advisory for the specific unit rather than inferred in either direction. The restart is not a detail here. patch_required_reboot is true and the packet states remediation requires applying the fixed release and rebooting, with no vendor live-patch mechanism, so a firewall carrying the fixed release that has not been rebooted onto it is still executing the vulnerable code and counts as exposed — and on a perimeter firewall that reboot is exactly the step deferred to a maintenance window, which is how this remediation gets recorded as complete while the upload stays reachable. Precondition on the isolation alternative: restricting reachability of J-Web bounds who can send the request, it does not repair user.php, and any host inside the permitted management segment still reaches the unauthenticated upload — so isolation is the holding measure for the window before the reboot, never a substitute for it.",
|
|
55938
|
+
"evidence": "cvss is 5.3 against rwep_score 77. cisa_kev is true with kev_date 2023-11-13, active_exploitation is confirmed and poc_available is true. active_exploitation_notes records this as part of the actively-exploited Juniper J-Web pre-auth RCE chain, with the unauthenticated request to user.php providing the file-write primitive combined with CVE-2023-36845 for RCE, exploitation observed from Aug 25 2023, and EPSS 0.94 at the 99.8th percentile. patch_available is true, patch_required_reboot is true, live_patch_available is false, and live_patch_notes states there is no vendor live-patch mechanism and that remediation requires applying the fixed release and rebooting. The fixed levels quoted are the affected_versions entries (all versions prior to 20.4R3-S8; 21.2 prior to 21.2R3-S6; 21.3 prior to 21.3R3-S5; 21.4 prior to 21.4R3-S5; 22.1 prior to 22.1R3-S3; 22.2 prior to 22.2R3-S2; 22.3 prior to 22.3R2-S2 / 22.3R3; 22.4 prior to 22.4R2-S1 / 22.4R3), and the vector separately lists 21.1 versions 21.1R1 and later as affected without a fixed release. The NIST-800-53-SI-2 gap records that 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 records the same triage failure, naming watchTowr's public PoC chaining into RCE via PHPRC/auto_prepend_file.",
|
|
55939
|
+
"gap_closes": [
|
|
55940
|
+
"NIST-800-53-SI-2",
|
|
55941
|
+
"ISO-27001-2022-A.8.8"
|
|
55942
|
+
]
|
|
55943
|
+
},
|
|
55944
|
+
{
|
|
55945
|
+
"id": "NEW-CTRL-134",
|
|
55946
|
+
"name": "DEVICE-MANAGEMENT-GATEWAY-CONFIG-ENDPOINT-AUTH-INPUT-NEUTRALIZATION",
|
|
55947
|
+
"description": "J-Web is the SRX's device-management interface, and this defect is one of its endpoints deciding nothing at all. The packet's vector states that a specific request to user.php that does not require authentication lets an attacker upload arbitrary files via J-Web, costing integrity of part of the file system and allowing chaining to other vulnerabilities. Bound to this appliance, the control has two halves and both are load-bearing here. First, the file-accepting endpoints on J-Web must authorize the caller before the upload is processed at all, and must constrain where the uploaded file lands, so an unauthenticated request cannot place content into a directory the appliance later reads from — which is precisely the step CVE-2023-36845 needs to convert the write into pre-auth code execution. Second, no SRX should be left with J-Web reachable from a segment with no operational need to reach it, and on units administered through the CLI or a management system J-Web is unused management functionality whose removal deletes the user.php surface rather than merely bounding who can send to it — the packet records exactly that as the hardening action the Essential Eight control is not tied to and that is easily left enabled. The identity-and-access controls this entry cites do not close this path: the attacker never holds a Junos account, so per-account authentication and privilege policy on the appliance is never consulted and an IAM attestation on the SRX passes cleanly while the unauthenticated upload stays reachable. Distinguishing test: from a segment with no management role, send an unauthenticated request to user.php on a staging SRX and confirm it is refused before anything is written — confirming that J-Web administrators authenticate at login exercises a different path entirely and will pass regardless. Preconditions, and they matter more than usual here. The endpoint-side authentication check is what the fixed release restores; this control states the property to verify, it does not implement it, and until the fixed release and its reboot land, segmenting J-Web bounds the population that can send the request while leaving the endpoint fully exploitable to anything inside the permitted segment — a compromised management workstation or jump host satisfies the flaw's only requirement in full. Segmentation is also unavailable where J-Web must stay reachable for operations. And because exploitation has been observed since 2023-08-25, an SRX whose J-Web was reachable during that window may already hold uploaded files; applying the fixed release and rebooting does not remove what was written before it, so an exposed unit belongs on the incident path rather than being closed on the patch record.",
|
|
55948
|
+
"evidence": "vector states that a missing authentication for critical function vulnerability in Junos OS on SRX Series allows an unauthenticated, network-based attacker to cause limited impact to file system integrity, and that with a specific request to user.php that doesn't require authentication an attacker is able to upload arbitrary files via J-Web, which may allow chaining to other vulnerabilities; affected records the same as unauthenticated arbitrary file upload via user.php on the J-Web interface. attack_vector records the upload landing in a restricted J-Web directory and yielding pre-auth RCE when combined with the PHPRC flaw. The NIST-800-53-AC-3 gap records that access enforcement is exactly what is missing, that the fix restores the check, and that until patched no access-control policy compensates; the NIST-800-53-SC-7 gap records that boundary protection exposing J-Web is the precondition and that segmenting or disabling the management interface is the durable mitigation patch-only remediation ignores; the NIS2-Art21-network-security gap records that network-security duties do not mandate management-plane isolation; the AU-Essential-8-App-Hardening gap records that hardening or removing unused management functionality would drop the user.php surface but is easily left enabled; the UK-CAF-B2 gap records that a compliant IAM posture on the appliance still leaves the preauth upload primitive reachable until patched. active_exploitation is confirmed with exploitation observed from Aug 25 2023; patch_available is true, patch_required_reboot is true and live_patch_available is false.",
|
|
55949
|
+
"gap_closes": [
|
|
55950
|
+
"NIST-800-53-AC-3",
|
|
55951
|
+
"UK-CAF-B2",
|
|
55952
|
+
"NIST-800-53-SC-7",
|
|
55953
|
+
"NIS2-Art21-network-security",
|
|
55954
|
+
"AU-Essential-8-App-Hardening"
|
|
55955
|
+
]
|
|
55956
|
+
}
|
|
55957
|
+
]
|
|
55381
55958
|
},
|
|
55382
55959
|
"CVE-2023-36847": {
|
|
55383
55960
|
"name": "Juniper Junos OS EX J-Web Missing Authentication File Upload",
|
|
@@ -55776,7 +56353,40 @@
|
|
|
55776
56353
|
"adequate": false,
|
|
55777
56354
|
"gap": "Technical-vulnerability-management inventories often miss embedded/bundled ActiveMQ, so the affected component is never assessed against this CVE."
|
|
55778
56355
|
}
|
|
55779
|
-
}
|
|
56356
|
+
},
|
|
56357
|
+
"new_control_requirements": [
|
|
56358
|
+
{
|
|
56359
|
+
"id": "NEW-CTRL-125",
|
|
56360
|
+
"name": "SERVICE-INTERNAL-PROTOCOL-DESERIALIZATION-HARDENING",
|
|
56361
|
+
"description": "The Java OpenWire marshaller is the listener this control governs on ActiveMQ: the packet has a remote attacker with network access manipulating serialized class types so the broker instantiates any class on the classpath, and the observed exploitation ran against internet-exposed OpenWire brokers on TCP/61616. Bound to this deployment the requirement is that the OpenWire transport binds to the messaging segment rather than all interfaces and answers only the application hosts that legitimately produce and consume messages; that every wire transport the broker has enabled is restricted the same way, not only the one the applications happen to use; and that the transport is disabled outright on brokers whose applications do not speak OpenWire. It reaches the client side too — the packet's vector states a remote attacker with network access to a Java-based OpenWire broker *or client* can drive the instantiation, so an application host that opens an outbound OpenWire connection to a broker it does not control is in scope, and a control that only firewalls inbound 61616 leaves that direction untouched. Precondition, and it is the half most often dropped: segmenting the listener bounds who can send an OpenWire frame, it does not neutralize the marshaller. Any host inside the permitted segment still reaches the class-instantiation path, so this is containment for the window before the broker and its clients are running 5.15.16, 5.16.7, 5.17.6 or 5.18.3 — not a substitute for those builds. And the control is unavailable where a broker must accept OpenWire connections from a network the operator does not control; there the fixed release is the only remedy and the exposure is live until it is the code actually executing. Distinguishing test: from a host outside the messaging segment on a staging instance, open a connection to the OpenWire port carrying a frame whose serialized class type names a class the application protocol never legitimately conveys, and confirm the peer is rejected before the broker instantiates anything — a broker that passes a patch-level audit while listening on all interfaces is still reachable by exactly the tooling the packet records against this port.",
|
|
56362
|
+
"evidence": "Packet facts only. vector: 'The Java OpenWire protocol marshaller is vulnerable to Remote Code Execution. This vulnerability may allow a remote attacker with network access to either a Java-based OpenWire broker or client to run arbitrary shell commands by manipulating serialized class types in the OpenWire protocol to cause either the client or the broker (respectively) to instantiate any class on the classpath.' attack_vector adds that the crafted OpenWire packet drives instantiation of an arbitrary class. active_exploitation_notes: 'Heavily exploited in the wild against internet-exposed OpenWire brokers (TCP/61616) to deploy ransomware (HelloKitty, TellYouThePass) as well as Kinsing, SparkRAT and cryptominers. CISA-KEV flags known ransomware use.' cisa_kev true, kev_date 2023-11-02, active_exploitation 'confirmed', cvss 9.8, rwep_score 71, poc_available true. Fixed releases 5.15.16 / 5.16.7 / 5.17.6 / 5.18.3 are from the vector and affected_versions. Remediation state: patch_available true, live_patch_available false, live_patch_notes 'No vendor live-patch mechanism; remediation requires applying the vendor fixed release.' The framework side is the packet's own gaps: NIST-800-53-SC-7 ('Boundary protection frequently overlooks message-broker ports; leaving OpenWire 61616 internet-reachable turns a preauth deserialization bug into RCE regardless of app-layer controls'), UK-CAF-B4 (\"System-security expectations don't specifically require restricting broker protocols to trusted segments, so the exposed OpenWire endpoint stays reachable\"), AU-Essential-8-App-Hardening (\"Application-hardening guidance doesn't cover restricting or disabling the OpenWire transport\").",
|
|
56363
|
+
"gap_closes": [
|
|
56364
|
+
"NIST-800-53-SC-7",
|
|
56365
|
+
"UK-CAF-B4",
|
|
56366
|
+
"AU-Essential-8-App-Hardening"
|
|
56367
|
+
]
|
|
56368
|
+
},
|
|
56369
|
+
{
|
|
56370
|
+
"id": "NEW-CTRL-021",
|
|
56371
|
+
"name": "TIER-3-DEPENDENCY-INVENTORY",
|
|
56372
|
+
"description": "ActiveMQ is frequently not an inventoried product on the estate that runs it, and the packet says so in two frameworks at once: technical-vulnerability inventories miss embedded and bundled ActiveMQ, and patch-management obligations rarely track middleware or message-broker inventory at all. That is a dependency-inventory requirement rather than a patch requirement, because the vulnerable OpenWire marshaller reaches an estate by routes a standalone-product register does not see — a broker bundled inside a vendor application and updated only on that vendor's schedule, and an OpenWire client library pulled in transitively by a Java service that no one thinks of as a messaging component but which the packet places in scope for the same defect. Bound to this CVE the control means the inventory resolves, for every Java application in the estate, whether an ActiveMQ broker or an OpenWire client sits anywhere in its dependency tree including below its direct dependencies, and records the version so it can be compared against 5.15.16, 5.16.7, 5.17.6 and 5.18.3 for the branch it is on. Scope it to what the packet names — ActiveMQ brokers and their OpenWire clients. The packet ties the deserialization sink to the Java OpenWire protocol marshaller and gives no mapping into other message brokers or queueing products, so instructing operators to treat every broker in the estate as an instance of this CVE manufactures findings against software no evidence implicates. Precondition: this reaches only what the inventory can resolve and the operator can update — a broker embedded in a vendor application is remediated by that vendor's fixed build, not by the operator swapping a library under it, so an embedded instance whose vendor has not shipped a fix is an exposure to track and compensate for at the network layer, not an item to close. Distinguishing test: take an application whose software register lists no message broker, resolve its full dependency tree, and confirm the register would have surfaced an embedded broker or a pre-fix OpenWire client — an estate that patched every standalone broker it knew about while a vendor application ships its own on a 5.16.x build closes the flaw-remediation ticket with the OpenWire path still live.",
|
|
56373
|
+
"evidence": "Packet facts only. The ISO-27001-2022-A.8.8 gap states: 'Technical-vulnerability-management inventories often miss embedded/bundled ActiveMQ, so the affected component is never assessed against this CVE.' The NIS2-Art21-patch-management gap states: 'Patch-management obligations rarely track middleware/message-broker inventory, so ActiveMQ instances slip out of the essential-service patch scope that would have forced timely upgrade.' The client side is in scope per the vector, which names 'either a Java-based OpenWire broker or client' and recommends upgrading 'both brokers and clients to version 5.15.16, 5.16.7, 5.17.6, or 5.18.3'; affected likewise reads 'Apache ActiveMQ (and clients) using the Java OpenWire protocol marshaller'. Branch versions (5.16.x, 5.17.x, 5.18.x) are from affected_versions. cisa_kev true, kev_date 2023-11-02, active_exploitation 'confirmed', cvss 9.8, rwep_score 71, poc_available true, patch_available true. The packet names no message broker other than ActiveMQ.",
|
|
56374
|
+
"gap_closes": [
|
|
56375
|
+
"ISO-27001-2022-A.8.8",
|
|
56376
|
+
"NIS2-Art21-patch-management"
|
|
56377
|
+
]
|
|
56378
|
+
},
|
|
56379
|
+
{
|
|
56380
|
+
"id": "NEW-CTRL-001",
|
|
56381
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
56382
|
+
"description": "This is the SLA case the packet's flaw-remediation gap describes: exposed OpenWire brokers were exploited within days of PoC release, so a scheduled-patching timeline never closed the window. For ActiveMQ the clock runs from the 2023-11-02 KEV listing, and the verified mitigation that satisfies it is one of the four fixed releases — 5.15.16, 5.16.7, 5.17.6 or 5.18.3 — actually executing on the broker; where that cannot land inside the window, the satisfying state is a documented compensating control, meaning removal of OpenWire reachability from anything outside the messaging segment, recorded as a time-bound action item rather than logged as patched. Completion is measured on the version the running process reports, not on the package on disk. patch_required_reboot is false here, which records that no host reboot is required; it does not mean the fix is live on deployment, because a broker keeps executing the marshaller loaded into the JVM it started with until that service is restarted onto the new build — and the same applies to every application holding an OpenWire client, which the packet puts in scope for the same defect and which is typically restarted on a different schedule from the broker, if at all. Precondition on the compensating half: restricting reachability of the OpenWire port bounds who can send a frame and does nothing about hosts inside the permitted segment, so it is a holding measure with an expiry, not a closure. Distinguishing test: after the change window, query each broker and each OpenWire client application for the version it is currently running and confirm none reports a pre-fix build — an attestation that the ActiveMQ package was updated inside the SLA reads clean while a broker that was never restarted keeps serving the vulnerable marshaller on a port the packet records under active ransomware exploitation.",
|
|
56383
|
+
"evidence": "Packet facts only. cisa_kev true, kev_date 2023-11-02, active_exploitation 'confirmed'; active_exploitation_notes: 'Heavily exploited in the wild against internet-exposed OpenWire brokers (TCP/61616) to deploy ransomware (HelloKitty, TellYouThePass) as well as Kinsing, SparkRAT and cryptominers. CISA-KEV flags known ransomware use.' cvss 9.8, rwep_score 71, poc_available true. Remediation state: patch_available true, patch_required_reboot false, live_patch_available false, live_patch_notes 'No vendor live-patch mechanism; remediation requires applying the vendor fixed release.' Fixed releases and the client-side scope are from the vector: 'Users are recommended to upgrade both brokers and clients to version 5.15.16, 5.16.7, 5.17.6, or 5.18.3 which fixes this issue.' The framework side is the packet's own gaps: NIST-800-53-SI-2 ('Flaw-remediation timelines assume scheduled patching, but exposed brokers were exploited within days of PoC release — the SLA is slower than the observed weaponization window') and NIS2-Art21-patch-management ('Patch-management obligations rarely track middleware/message-broker inventory, so ActiveMQ instances slip out of the essential-service patch scope that would have forced timely upgrade').",
|
|
56384
|
+
"gap_closes": [
|
|
56385
|
+
"NIST-800-53-SI-2",
|
|
56386
|
+
"NIS2-Art21-patch-management"
|
|
56387
|
+
]
|
|
56388
|
+
}
|
|
56389
|
+
]
|
|
55780
56390
|
},
|
|
55781
56391
|
"CVE-2023-46748": {
|
|
55782
56392
|
"name": "F5 BIG-IP Configuration Utility SQL Injection Vulnerability",
|
|
@@ -56729,7 +57339,32 @@
|
|
|
56729
57339
|
"adequate": false,
|
|
56730
57340
|
"gap": "Even a 48-hour patch target for internet-facing services was outpaced by public PoC availability and ransomware tooling for this flaw."
|
|
56731
57341
|
}
|
|
56732
|
-
}
|
|
57342
|
+
},
|
|
57343
|
+
"new_control_requirements": [
|
|
57344
|
+
{
|
|
57345
|
+
"id": "NEW-CTRL-001",
|
|
57346
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
57347
|
+
"description": "Progress WS_FTP Server is a managed-file-transfer server that exists to be reachable by external parties, and the packet's numbers are why a routine flaw-remediation cycle is the wrong instrument for it: KEV listing on 2023-10-05, confirmed active exploitation, public proof-of-concept, and a KEV entry carrying a known ransomware association. For this CVE the control means the clock starts at the KEV listing and runs until each install reports 8.7.4, or 8.8.2 on the 8.8 branch, or later. Enumerate the population by where the Ad Hoc Transfer module is enabled, because that is the module the packet places the pre-authenticated .NET deserialization sink in, and an install without it is not the same exposure as one with it. Measure completion on the version the running WS_FTP Server service reports, not on the installer having been run: patch_required_reboot is false, so there is no host reboot to schedule, but that is a statement about the machine and not about the service, and a host that took the vendor release while the service process still executes pre-fix code has not been remediated. There is no live-patch path in the packet, so the vendor fixed release is the only remediation and there is no intermediate state to record as partial credit. Where the fixed release cannot be reached inside the window, the control's compensating-control clause has to be a documented, time-bound removal of reachability to the Ad Hoc Transfer module rather than an open-ended risk acceptance. State its limit plainly: restricting reachability bounds who can send the request, it does not repair the deserialization sink, and it gives nothing against a caller already inside a permitted network — the flaw needs no credential at all, so an attacker who can reach the module has satisfied the entire precondition.",
|
|
57348
|
+
"evidence": "Packet: cisa_kev true with kev_date 2023-10-05; active_exploitation confirmed; poc_available true; rwep_score 70 against cvss 8.8. active_exploitation_notes: 'KEV-listed with a known ransomware association; EPSS ~0.90. Public exploitation followed rapidly after Assetnote's disclosure, targeting internet-facing WS_FTP Server Ad Hoc Transfer modules.' affected: 'Progress WS_FTP Server prior to 8.7.4 and 8.8.2 with the Ad Hoc Transfer module enabled; pre-authenticated .NET deserialization leads to OS command execution.' affected_versions: 'WS_FTP Server < 8.7.4', 'WS_FTP Server 8.8.x < 8.8.2'. patch_available true, patch_required_reboot false, live_patch_available false, live_patch_notes 'No vendor live-patch mechanism; remediation requires applying the vendor fixed release.' The AU-Essential-8-Patch gap records that even a 48-hour patch target for internet-facing services was outpaced by public PoC availability and ransomware tooling; the UK-CAF-B4 gap records that the control does not force the Ad-Hoc-Transfer hardening or accelerated patching this flaw demands.",
|
|
57349
|
+
"gap_closes": [
|
|
57350
|
+
"NIST-800-53-SI-2",
|
|
57351
|
+
"AU-Essential-8-Patch",
|
|
57352
|
+
"NIS2-Art21-patch-management",
|
|
57353
|
+
"ISO-27001-2022-A.8.8",
|
|
57354
|
+
"UK-CAF-B4"
|
|
57355
|
+
]
|
|
57356
|
+
},
|
|
57357
|
+
{
|
|
57358
|
+
"id": "NEW-CTRL-032",
|
|
57359
|
+
"name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
|
|
57360
|
+
"description": "The two gaps this attaches to both establish the same fact about Progress WS_FTP Server: the framework-prescribed patch window was longer than the interval between disclosure and exploitation, so on an internet-facing install the honest planning assumption is that the vulnerable window was open while the flaw was being exploited. What that means for this product is set by the primitive — the packet has a pre-authenticated attacker running arbitrary OS commands as the service account through the Ad Hoc Transfer module. Upgrading to 8.7.4 or 8.8.2 removes the deserialization sink; it removes nothing that already ran as that account. So an install that was internet-reachable with Ad Hoc Transfer enabled during the exposure window is an incident item, not a patch item: preserve the server's configuration and logs as evidence, rebuild the host from a known-good baseline and the fixed release rather than upgrading in place, and treat as disclosed every credential the service account held or that transited the transfer server — the service account itself, local transfer accounts, and any stored partner or downstream credential — rotating each. The KEV ransomware association is what makes the rebuild rather than the clean-up the default: an actor whose objective is deployment, not persistence-for-its-own-sake, leaves artifacts an upgrade preserves. Preconditions, because this control is easy to over-claim. It is triggered by the possibility of prior exposure, not by a detection: the packet records no indicator set, so nobody should wait for a hit before invoking it, and equally nobody should read a clean scan as evidence the rebuild is unnecessary. Restoring configuration or data from a backup taken inside the exposure window reinstates whatever was placed there, so the baseline must predate it. And this control does nothing to reduce the chance of exploitation — it governs only what a compliant response looks like after a window the patch clock left open.",
|
|
57361
|
+
"evidence": "Packet: attack_vector 'A pre-authenticated attacker sends a crafted serialized .NET object to the WS_FTP Server Ad Hoc Transfer module; unsafe deserialization executes an attacker gadget chain, running arbitrary OS commands as the service account.' active_exploitation confirmed; poc_available true; active_exploitation_notes record a known ransomware association and that public exploitation followed rapidly after disclosure against internet-facing Ad Hoc Transfer modules. The NIST-800-53-SI-2 gap states 'Managed-file-transfer appliances are patched on change-controlled cycles; the observed exploitation window after disclosure was far shorter than typical MFT patch SLAs', and the AU-Essential-8-Patch gap states that even a 48-hour internet-facing patch target was outpaced. patch_available true with live_patch_available false and live_patch_notes recording the vendor fixed release as the only remediation.",
|
|
57362
|
+
"gap_closes": [
|
|
57363
|
+
"NIST-800-53-SI-2",
|
|
57364
|
+
"AU-Essential-8-Patch"
|
|
57365
|
+
]
|
|
57366
|
+
}
|
|
57367
|
+
]
|
|
56733
57368
|
},
|
|
56734
57369
|
"CVE-2023-42824": {
|
|
56735
57370
|
"name": "Apple iOS and iPadOS Kernel Privilege Escalation Vulnerability",
|
|
@@ -57209,7 +57844,31 @@
|
|
|
57209
57844
|
"adequate": false,
|
|
57210
57845
|
"gap": "Patch-application maturity targets the OS/app vendor; an unmaintained embedded framework has no upstream patch, so the control cannot be satisfied by patching alone."
|
|
57211
57846
|
}
|
|
57212
|
-
}
|
|
57847
|
+
},
|
|
57848
|
+
"new_control_requirements": [
|
|
57849
|
+
{
|
|
57850
|
+
"id": "NEW-CTRL-021",
|
|
57851
|
+
"name": "TIER-3-DEPENDENCY-INVENTORY",
|
|
57852
|
+
"description": "RichFaces 3.x is not something an operator installs and can therefore be asked about — it arrives inside a WAR or EAR that someone else built, which is why an inventory keyed to the application product and version reports nothing while org.ajax4jsf.resource.UserResource$UriData sits in that archive answering unauthenticated requests and evaluating attacker-supplied Expression Language. Bound to this CVE the control means the component inventory is produced from the deployed artifact rather than from the vendor's product name: enumerate the JARs actually inside every deployed Java web application, explicitly including third-party and vendor-supplied applications the organization did not build and cannot see the source of, and match on the richfaces / ajax4jsf coordinates at 3.X through 3.3.4. That discovery has to be repeated after any redeployment, vendor upgrade or restore from an application archive, because those are the operations that quietly reintroduce the old JAR into an installation that had been remediated. Scope it to what the packet establishes: the EL-injection sink is named in RichFaces 3.X through 3.3.4, and the packet maps it into no other JSF component library, so sweeping every JSF application in the estate as an instance of this CVE manufactures findings and remediation work against code no evidence implicates — widen only where a verified source identifies another component carrying the same sink. Distinguishing test: take a deployed application whose vendor documentation never mentions RichFaces, unpack its WEB-INF/lib, and confirm the inventory the vulnerability-management programme actually consumes lists what is in there. An asset register naming the application and its version passes a technical-vulnerability-management review cleanly while a 3.3.4 JAR inside it serves an unauthenticated code-execution path.",
|
|
57853
|
+
"evidence": "Packet affected: 'Red Hat JBoss RichFaces Framework 3.X through 3.3.4 — the UserResource resource (org.ajax4jsf.resource.UserResource$UriData) evaluates attacker-controlled Expression Language, enabling a Java-deserialization gadget chain to reach RCE without authentication.' attack_vector: 'A remote, unauthenticated attacker sends a crafted UserResource$UriData request whose serialized-object chain is evaluated as an EL expression, executing arbitrary Java in the servlet container.' CWE-94; CVSS 9.8; RWEP 68; poc_available true; active_exploitation confirmed, 'exploited against internet-facing JBoss/JSF applications for unauthenticated RCE (EPSS ~0.74)'; CISA KEV 2023-09-28. ISO-27001-2022-A.8.8 gap: 'Technical-vulnerability management that inventories only first-party components will not surface an embedded RichFaces 3.x dependency inside a deployed WAR, leaving the EL-injection sink unremediated.' NIS2-Art21-vulnerability-management gap: 'Requires timely handling but does not mandate the SBOM-level component discovery needed to find a legacy JSF library shipped inside third-party Java apps.' NIST-800-53-SI-2 gap: 'affected apps embed the vulnerable JAR transitively, so a patch cycle keyed to the product misses the bundled framework.'",
|
|
57854
|
+
"gap_closes": [
|
|
57855
|
+
"ISO-27001-2022-A.8.8",
|
|
57856
|
+
"NIS2-Art21-vulnerability-management",
|
|
57857
|
+
"NIST-800-53-SI-2"
|
|
57858
|
+
]
|
|
57859
|
+
},
|
|
57860
|
+
{
|
|
57861
|
+
"id": "NEW-CTRL-122",
|
|
57862
|
+
"name": "EOL-ASSET-DECOMMISSION",
|
|
57863
|
+
"description": "This entry carries two facts that have to be resolved together before any remediation sentence is written. The packet records patch_available true with the remediation given as applying the vendor fixed release; the entry's own framework gaps record RichFaces 3.x as end-of-life, the vulnerable JAR as embedded transitively in affected applications, and an unmaintained embedded framework as having no upstream patch, so the control cannot be satisfied by patching alone. The requirement that follows is per-application. Where the application's own vendor ships a build that no longer carries RichFaces 3.x, moving to it is the interim state — and the verification is that the richfaces/ajax4jsf JAR is gone from the deployed archive, not that a product version number changed, because the version number is the thing that was already passing while the JAR sat underneath it. Where no such build exists, the terminal state is removing the RichFaces 3.x dependency from the application or retiring the application, on a dated schedule: an application on that footing is exposed not only to this EL-injection path but to everything else found in an unmaintained framework since 3.3.4, and a risk acceptance with no removal date leaves an unauthenticated RCE with a public PoC and confirmed exploitation in service indefinitely. Precondition on the interim half, and it is the one most often skipped here: patch_required_reboot false is a statement about the host, not about the application — the vulnerable classes stay live in the servlet container until the application is redeployed or the container restarted, so completion is measured on what the running container is serving rather than on what is on disk, and the packet records no live-patch mechanism that would make the swap take effect any earlier. And because exploitation against internet-facing JBoss/JSF applications is confirmed and the sink yields arbitrary Java execution in the container, an application that was reachable during the exposure window is not closed by the dependency change: what the container may already be serving needs triage, and credentials the application holds need rotation.",
|
|
57864
|
+
"evidence": "Packet: patch_available true, patch_required_reboot false, live_patch_available false, live_patch_notes 'No vendor live-patch mechanism; remediation requires applying the vendor fixed release.' Against that, the entry's framework_control_gaps state: NIST-800-53-SI-2 — 'RichFaces 3.x is end-of-life; flaw remediation assumes a vendor patch, but affected apps embed the vulnerable JAR transitively, so a patch cycle keyed to the product misses the bundled framework'; AU-Essential-8-Patch — 'Patch-application maturity targets the OS/app vendor; an unmaintained embedded framework has no upstream patch, so the control cannot be satisfied by patching alone'; UK-CAF-B4 — 'the framework is end-of-life with no upstream patch'. Exploitation: CISA KEV 2023-09-28, active_exploitation confirmed against internet-facing JBoss/JSF applications for unauthenticated RCE, EPSS ~0.74, poc_available true, CVSS 9.8, RWEP 68. affected_versions: RichFaces 3.X through 3.3.4.",
|
|
57865
|
+
"gap_closes": [
|
|
57866
|
+
"NIST-800-53-SI-2",
|
|
57867
|
+
"AU-Essential-8-Patch",
|
|
57868
|
+
"UK-CAF-B4"
|
|
57869
|
+
]
|
|
57870
|
+
}
|
|
57871
|
+
]
|
|
57213
57872
|
},
|
|
57214
57873
|
"CVE-2023-41991": {
|
|
57215
57874
|
"name": "Apple Multiple Products Improper Certificate Validation Vulnerability",
|
|
@@ -57519,7 +58178,38 @@
|
|
|
57519
58178
|
"adequate": false,
|
|
57520
58179
|
"gap": "Restricting privileged access reduces who can reach the console but does not remove the code-injection sink in the uninstaller module for those who legitimately have access."
|
|
57521
58180
|
}
|
|
57522
|
-
}
|
|
58181
|
+
},
|
|
58182
|
+
"new_control_requirements": [
|
|
58183
|
+
{
|
|
58184
|
+
"id": "NEW-CTRL-055",
|
|
58185
|
+
"name": "SECURITY-TOOL-INTEGRITY-VERIFICATION",
|
|
58186
|
+
"description": "The vulnerable product here is the endpoint-protection platform itself, and the sink is a module it ships: the 3rd-party AV uninstaller in Trend Micro Apex One (on-prem and SaaS), Worry-Free Business Security and Worry-Free Business Security Services, manipulated into executing arbitrary OS commands on the management install. Bound to this product the control means the Trend Micro management estate is carried in the vulnerability-management inventory with the same SLA as any other privileged software, and remediation is measured per install against the four fixed levels the packet names — Apex One 2019 on-prem at SP1 Patch 1 (B12380), Apex One as a Service at agent 14.0.12637, Worry-Free Business Security 10.0 SP1 at Patch 2495, and Worry-Free Business Security Services at the July 31, 2023 maintenance release — rather than by the console reporting itself healthy. All four SKUs must be enumerated, not just the on-prem Apex One most estates inventory: two of them are vendor-hosted, so the operator's evidence there is the agent or service level actually in service. live_patch_available is false and the packet records applying the vendor fixed release as the remediation, so no install is remediated until it is running the fixed level. Precondition: this was exploited as a zero-day before the fix existed, so patch level is not an answer to the exposure window — a management install that was reachable by an administrative console session during that period needs triage of what executed on the host, not closure on its build number.",
|
|
58187
|
+
"evidence": "Packet: name 'Trend Micro Apex One and Worry-Free Business Security Remote Code Execution Vulnerability'. affected records the 3rd-party AV uninstaller module in Apex One (on-prem and SaaS), Worry-Free Business Security and Worry-Free Business Security Services being manipulated to execute arbitrary OS commands. affected_versions names Apex One 2019 (on-prem) before SP1 Patch 1 (B12380), Apex One as a Service before agent 14.0.12637, Worry-Free Business Security 10.0 SP1 before Patch 2495, and Worry-Free Business Security Services before the July 31, 2023 maintenance release. patch_available true, live_patch_available false, live_patch_notes 'No vendor live-patch mechanism; remediation requires applying the vendor fixed release'. active_exploitation_notes records exploitation as a zero-day before the fix, with cisa_kev true and kev_date 2023-09-21.",
|
|
58188
|
+
"gap_closes": [
|
|
58189
|
+
"ISO-27001-2022-A.8.8",
|
|
58190
|
+
"NIS2-Art21-patch-management"
|
|
58191
|
+
]
|
|
58192
|
+
},
|
|
58193
|
+
{
|
|
58194
|
+
"id": "NEW-CTRL-036",
|
|
58195
|
+
"name": "FLEET-CONTROL-PLANE-ADMIN-PRIVILEGE-TIER",
|
|
58196
|
+
"description": "The packet states the exploit's precondition outright and it is the whole of it: the attacker must first obtain administrative console access on the Trend Micro install. That makes the console an endpoint-security control plane whose administrator population is the entire attack prerequisite, and those accounts belong in a tier above application admins — reachable only through a PAM jumphost rather than from any workstation on the corporate segment, phishing-resistant step-up per session, just-in-time elevation with approval, and an identity used for nothing else. This is the concrete form of the boundary-protection requirement the entry records as insufficient: 'restrict the console to trusted networks' as usually implemented still means a broad internal segment, and jumphost-only reachability is the version of that restriction which actually narrows who can present a session. It is also the rejection of the assumption the system-security gap names — the endpoint-security console is treated as trusted infrastructure precisely because it is a security product, which is why it sits outside the privileged-access tiering applied to identity providers and orchestrators. Precondition, and it is the load-bearing one: this bounds who can reach the console; it does not remove the command-injection sink in the uninstaller module, which stays reachable by every account that legitimately reaches the console, and only the vendor fixed release removes it. Tiering applied after an administrator credential was already compromised gives nothing back.",
|
|
58197
|
+
"evidence": "Packet: vector states 'an attacker must first obtain administrative console access on the target system in order to exploit this vulnerability'. attack_vector records an attacker who has already obtained administrative-console access manipulating the 3rd-party AV uninstaller module to inject and execute arbitrary OS commands on the management host. The NIST-800-53-SC-7 gap records boundary protection as the practical mitigation while the console stays exposed to a broad internal segment a compromised admin can reach; the UK-CAF-B4 gap records that system-security assurance treats the endpoint-security console as trusted infrastructure.",
|
|
58198
|
+
"gap_closes": [
|
|
58199
|
+
"NIST-800-53-SC-7",
|
|
58200
|
+
"UK-CAF-B4"
|
|
58201
|
+
]
|
|
58202
|
+
},
|
|
58203
|
+
{
|
|
58204
|
+
"id": "NEW-CTRL-044",
|
|
58205
|
+
"name": "EDR-AS-VULNERABILITY-SECONDARY-OVERLAY",
|
|
58206
|
+
"description": "The behaviour to detect is the one the packet describes and no other: the AV product's own 3rd-party uninstaller module spawning arbitrary OS commands on the management host, under a legitimate administrative console session. The product that would normally raise that alert is the product being exploited, and its own module is the process doing the spawning, so its telemetry is the least likely place the activity registers as anomalous — which is exactly why an overlay that does not share trust roots with the Trend Micro deployment is the requirement. Bound to this estate that means independent process-lineage monitoring on the Apex One and Worry-Free management hosts for OS command execution descending from the platform's service and uninstaller components, correlated with console sessions. Distinguishing test: on a staging management install, drive a benign command through the uninstaller module path with an authorized console session and confirm the overlay reports the child process; an estate that reports 'endpoint protection healthy everywhere' has said nothing about whether the protection product's own module executed a command. Note what will not see it — nothing crashes, no unsigned binary is introduced, and the console session is legitimate, so authentication logging and the platform's own health reporting have no artifact to match. Precondition: an overlay sharing trust roots or a management plane with the same vendor is not independent, and detection does not prevent the execution; it bounds the interval between execution and response, and only if the overlay was already deployed when the attempt came.",
|
|
58207
|
+
"evidence": "Packet: affected and attack_vector record the 3rd-party AV uninstaller module being manipulated to inject and execute arbitrary OS commands on the management host by an attacker holding administrative-console access. active_exploitation is 'confirmed' and active_exploitation_notes records exploitation as a zero-day before the fix. The UK-CAF-B4 gap records that no compensating monitoring covers the third-party-uninstaller command-execution sink that this zero-day turned a legitimate admin session into RCE through.",
|
|
58208
|
+
"gap_closes": [
|
|
58209
|
+
"UK-CAF-B4"
|
|
58210
|
+
]
|
|
58211
|
+
}
|
|
58212
|
+
]
|
|
57523
58213
|
},
|
|
57524
58214
|
"CVE-2023-28434": {
|
|
57525
58215
|
"name": "MinIO Security Feature Bypass Vulnerability",
|
|
@@ -57874,7 +58564,33 @@
|
|
|
57874
58564
|
"adequate": false,
|
|
57875
58565
|
"gap": "Secure configuration standards must prohibit debug/verbose error pages in production; where 2.2.3 is not enforced for the app framework, the Ignition endpoint stays exposed."
|
|
57876
58566
|
}
|
|
57877
|
-
}
|
|
58567
|
+
},
|
|
58568
|
+
"new_control_requirements": [
|
|
58569
|
+
{
|
|
58570
|
+
"id": "NEW-CTRL-025",
|
|
58571
|
+
"name": "CONFIGURATION-SIDE-LIVE-PATCH-INVENTORY",
|
|
58572
|
+
"description": "This CVE has a configuration-side mitigation path that the packet states as the exploit's precondition rather than as a hardening nicety: the flaw is reachable only where the application runs in debug mode, and the packet's own affected_versions qualify Laravel before 8.4.2 with APP_DEBUG=true. The requirement is therefore that the debug-off path be inventoried, tested and deployable independently of the Composer upgrade to Ignition 2.5.2 — an operator who cannot immediately move the dependency can still take the unauthenticated /_ignition/execute-solution endpoint out of reach, and must not treat that as waiting on the package. In practice: enumerate every deployed Laravel application and record its running debug state, not the value in the repository, and enforce the setting where deployments are produced — the image build, the release pipeline, the configuration management that writes the environment file — so a restored template, a promoted staging config or a container built with the flag on cannot reintroduce it. Preconditions, and they are why this does not close the surface outright: disabling debug removes the precondition for this path but leaves the vulnerable Ignition package installed, so any later deployment or ad-hoc debugging session that re-enables the flag reopens the endpoint unless the package is also moved to 2.5.2 or later. And it is not retroactive — a host that served traffic in debug mode before the flag was flipped keeps whatever the file_put_contents primitive wrote to it, and given the packet's mass exploitation and ransomware association that host needs to be examined rather than closed on the configuration change.",
|
|
58573
|
+
"evidence": "vector: 'Ignition before 2.5.2, as used in Laravel and other products, allows unauthenticated remote attackers to execute arbitrary code because of insecure usage of file_get_contents() and file_put_contents(). This is exploitable on sites using debug mode with Laravel before 8.4.2.' affected_versions: 'Ignition before 2.5.2', 'Laravel before 8.4.2 (with APP_DEBUG=true)'. attack_vector names the unauthenticated POST to /_ignition/execute-solution. The NIST-800-53-CM-7 gap: 'Least functionality is the real defense — Ignition's debug mode must not run in production'. The PCI-DSS-4.0-2.2.3 gap: 'Secure configuration standards must prohibit debug/verbose error pages in production'. The NIS2-Art21-patch-management gap: 'the control is insufficient without secure-configuration enforcement.' The AU-Essential-8-App-Hardening and UK-CAF-B4 gaps both record that baselines do not require disabling framework debug pages or verify APP_DEBUG is off in production. The NIST-800-53-SI-2 gap: 'the far more common exposure is a misconfigured debug flag that a package patch alone does not address.' KEV 2023-09-18, ransomware known per active_exploitation_notes, EPSS ~0.999, poc_available true, CVSS 9.8, RWEP 70.",
|
|
58574
|
+
"gap_closes": [
|
|
58575
|
+
"NIST-800-53-CM-7",
|
|
58576
|
+
"PCI-DSS-4.0-2.2.3",
|
|
58577
|
+
"AU-Essential-8-App-Hardening",
|
|
58578
|
+
"UK-CAF-B4",
|
|
58579
|
+
"NIST-800-53-SI-2",
|
|
58580
|
+
"NIS2-Art21-patch-management"
|
|
58581
|
+
]
|
|
58582
|
+
},
|
|
58583
|
+
{
|
|
58584
|
+
"id": "NEW-CTRL-018",
|
|
58585
|
+
"name": "SCANNER-PAPER-COMPLIANCE-TEST",
|
|
58586
|
+
"description": "For this CVE a scan that reports the Ignition version alone is paper compliance, because the packet makes exploitability conditional on a runtime state the dependency manifest does not carry. The operational test has two parts and both must be in the scan: does it determine the debug state the application is actually running in, and does it establish whether /_ignition/execute-solution answers on the deployed host — not merely whether the lockfile pins Ignition at 2.5.2 or later. An estate whose vulnerability management is keyed to Composer metadata will report clean across every application while a single host serves the endpoint, because the fact that distinguishes an exploitable deployment from a safe one is a deployment-time setting rather than a package version. The same asymmetry runs the other way and is worth surfacing in the scan output: a host on a fixed Ignition is not exploitable through this path regardless of its debug setting, so a scan that flags on the configuration alone will generate findings it cannot close. Precondition: this control is a detection-quality requirement and changes nothing about the host's exposure by itself — it exists so that the configuration-side mitigation and the package upgrade can be verified as actually present on the running system. Because the packet records no reboot requirement and no live-patch path, completion is measured on the Ignition version the running application loads, which is the same reason the version claim needs to be taken from the deployment rather than from the manifest.",
|
|
58587
|
+
"evidence": "The ISO-27001-2022-A.8.8 gap: 'Vulnerability management keyed to Composer dependencies may miss that the exploit precondition is a deployment misconfiguration (debug mode), not only an outdated package.' The NIST-800-53-SI-2 gap: 'Flaw remediation requires upgrading Ignition to >= 2.5.2, but the far more common exposure is a misconfigured debug flag that a package patch alone does not address.' affected: 'Ignition before 2.5.2 (as used by Laravel before 8.4.2 and other products) when the application runs in debug mode — insecure use of file_get_contents()/file_put_contents() at /_ignition/execute-solution allows unauthenticated remote code execution.' patch_available true; patch_required_reboot false; live_patch_available false; live_patch_notes 'No vendor live-patch mechanism; remediation requires applying the vendor fixed release.' active_exploitation confirmed; KEV 2023-09-18; CWE-94.",
|
|
58588
|
+
"gap_closes": [
|
|
58589
|
+
"ISO-27001-2022-A.8.8",
|
|
58590
|
+
"NIST-800-53-SI-2"
|
|
58591
|
+
]
|
|
58592
|
+
}
|
|
58593
|
+
]
|
|
57878
58594
|
},
|
|
57879
58595
|
"CVE-2023-26369": {
|
|
57880
58596
|
"name": "Adobe Acrobat and Reader Out-of-Bounds Write Vulnerability",
|
|
@@ -58011,7 +58727,32 @@
|
|
|
58011
58727
|
"adequate": false,
|
|
58012
58728
|
"gap": "Technical-vulnerability management periodicity does not match a mobile local-privilege-escalation flaw needing MDM-enforced minimum-patch-level gating."
|
|
58013
58729
|
}
|
|
58014
|
-
}
|
|
58730
|
+
},
|
|
58731
|
+
"new_control_requirements": [
|
|
58732
|
+
{
|
|
58733
|
+
"id": "NEW-CTRL-126",
|
|
58734
|
+
"name": "MOBILE-OS-MINIMUM-PATCH-LEVEL-ENFORCEMENT",
|
|
58735
|
+
"description": "For this CVE the fixed state is a single checkable value — an Android security patch level of 2023-09-01 or later — across the Android 11, 12, 12L and 13 devices the packet names. The trigger the packet records is a malicious app already installed on the device launching a background activity through the WindowState onCreate logic error, with no user interaction and no additional execution privilege, so on any device that cannot yet reach that patch level the load-bearing half of this control is the access-condition half: the 2023-09-01 patch level must function as a condition of access — mail, VPN and document access denied to a device below it — not as a row on a patch-compliance report that the device keeps its access despite. Whether a given handset model has an OEM build carrying that patch level is a question to put to the OEM per model, not to infer from the device's age in either direction. Distinguishing test: enrol a device pinned below the 2023-09-01 patch level and confirm the policy actually denies it protected resources; an estate that surfaces the stale patch level on a report while the device keeps its access has recorded the exposure rather than removed it. Preconditions: restricting untrusted or side-loaded application installation raises the bar for getting the attacker's app onto the device, but it does not evict an app already installed and does not cover one that arrived through the normal store channel — a device suspected of already running it belongs on the incident path, not the install-policy path. And the packet records no vendor live-patch mechanism and a fix that requires applying the fixed release and rebooting, so a device that has downloaded the OEM update but not restarted is still executing the vulnerable framework code and counts as exposed.",
|
|
58736
|
+
"evidence": "Packet fields: affected_versions lists Android 11, Android 12, Android 12L and Android 13 (security patch level before 2023-09-01); vector places the flaw in onCreate of WindowState.java as a logic error allowing a background activity to be launched, leading to local escalation of privilege with no additional execution privileges and no user interaction needed; attack_vector states a malicious app already on the device is what exploits it. cisa_kev true with kev_date 2023-09-13 and active_exploitation confirmed; active_exploitation_notes records the Android Security Bulletin flagging limited, targeted exploitation before the September 2023 fix. patch_available true, patch_required_reboot true, live_patch_available false with live_patch_notes 'No vendor live-patch mechanism; remediation requires applying the fixed release and rebooting.' The ISO-27001-2022-A.8.8 gap states technical-vulnerability management periodicity does not match a mobile local-privilege-escalation flaw needing MDM-enforced minimum-patch-level gating; the NIST-800-53-SI-2 gap states the KEV due date (2023-10-04) is unreachable for the long tail of devices that never receive the 2023-09-01 patch level; the UK-CAF-B4 gap states system security expects current software but provides no lever over OEM/carrier delivery.",
|
|
58737
|
+
"gap_closes": [
|
|
58738
|
+
"ISO-27001-2022-A.8.8",
|
|
58739
|
+
"NIST-800-53-SI-2",
|
|
58740
|
+
"UK-CAF-B4",
|
|
58741
|
+
"AU-Essential-8-Patch"
|
|
58742
|
+
]
|
|
58743
|
+
},
|
|
58744
|
+
{
|
|
58745
|
+
"id": "NEW-CTRL-056",
|
|
58746
|
+
"name": "MOBILE-ENDPOINT-MDM-ENFORCED-KEV-SLA",
|
|
58747
|
+
"description": "On the managed Android devices where an OEM build carrying the 2023-09-01 or later patch level does exist, this remediation fails for a mundane reason rather than a technical one: the update is published and the user defers it. Bound to this CVE, the control means the managed fleet is driven to the 2023-09-01 patch level on the clock that opened with the 2023-09-13 KEV listing — the packet's own flaw-remediation gap names 2023-10-04 as the KEV due date — with user deferral disallowed and the restart enforced rather than left to the user's convenience, because the packet records no live-patch mechanism and a fix that requires applying the fixed release and rebooting. Completion is measured on the security patch level the device reports after that restart, never on 'approved' or 'downloaded' in the management console: a device holding a staged update it has not rebooted onto is still running the vulnerable WindowState path. Enumerate the Android 11, 12, 12L and 13 population first, since that is the affected set the packet names. Precondition, and it is where this control is most often over-claimed: the management platform can only install what the OEM has published, so where a model has no build at or above 2023-09-01 there is nothing for the SLA to deploy, and that device belongs on the access-condition path instead. Carrying it as 'pending vendor' with its access intact is precisely how a device stays exploitable past the KEV date while the fleet reports compliant.",
|
|
58748
|
+
"evidence": "Packet fields: cisa_kev true, kev_date 2023-09-13, active_exploitation confirmed; patch_available true, patch_required_reboot true, live_patch_available false with live_patch_notes 'No vendor live-patch mechanism; remediation requires applying the fixed release and rebooting.' affected_versions names Android 11, 12, 12L and 13 (security patch level before 2023-09-01). The NIST-800-53-SI-2 gap gives the KEV due date as 2023-10-04 and attributes the shortfall to OEM/carrier patch propagation; the AU-Essential-8-Patch gap states patch-application maturity assumes an update is deliverable and that fragmented Android OEM update chains leave fleet devices vulnerable past the KEV window; the NIS2-Art21-patch-management gap states patch-management policy cannot force OEM firmware timelines on managed mobile endpoints the policy nominally covers.",
|
|
58749
|
+
"gap_closes": [
|
|
58750
|
+
"AU-Essential-8-Patch",
|
|
58751
|
+
"NIS2-Art21-patch-management",
|
|
58752
|
+
"NIST-800-53-SI-2"
|
|
58753
|
+
]
|
|
58754
|
+
}
|
|
58755
|
+
]
|
|
58015
58756
|
},
|
|
58016
58757
|
"CVE-2023-20269": {
|
|
58017
58758
|
"name": "Cisco Adaptive Security Appliance and Firepower Threat Defense Unauthorized Access Vulnerability",
|
|
@@ -58304,7 +59045,31 @@
|
|
|
58304
59045
|
"adequate": false,
|
|
58305
59046
|
"gap": "System security expects timely patching but provides no compensating control for a publicly-weaponized kernel driver flaw in the interim."
|
|
58306
59047
|
}
|
|
58307
|
-
}
|
|
59048
|
+
},
|
|
59049
|
+
"new_control_requirements": [
|
|
59050
|
+
{
|
|
59051
|
+
"id": "NEW-CTRL-145",
|
|
59052
|
+
"name": "ACTIVELY-EXPLOITED-OS-LPE-REMEDIATION-WINDOW-ENFORCEMENT",
|
|
59053
|
+
"description": "The packet places this in the MSKSSRV.SYS Microsoft Streaming Service Proxy kernel driver and describes a local low-privileged process reaching NT AUTHORITY\\SYSTEM through a use-after-free / type confusion. The attacker's account is already legitimate — a privilege boundary inside a kernel driver is failing, not an account model being abused. For this CVE the control means the September 2023 cumulative update is driven across every affected host on the KEV clock that opened 2023-09-12 rather than absorbed into the ordinary monthly rollup cadence, 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. Scope from the affected versions rather than from the headline: the packet names affected Windows Server editions alongside Windows 10 and Windows 11, so a program that files this as a workstation item leaves servers running the vulnerable driver. The packet records patch_required_reboot true, no live-patch mechanism, and a live-patch note stating remediation requires applying the fixed release and rebooting — so a host that installed the cumulative update but has not restarted is still executing the vulnerable driver and must be counted as exposed. On always-on and shared machines that restart is the step most likely to be deferred, and a deferral recorded as patched is the specific way this remediation goes wrong. Priority follows the packet rather than the CVSS band: exploited in the wild as a zero-day with a public PoC and RWEP 79 against a 7.8 base, this is the escalation half of a chain — the step that turns any foothold into SYSTEM — which is precisely why the least-privilege control cited on this entry can pass its attestation while the flaw stays fully exploitable.",
|
|
59054
|
+
"evidence": "Packet: cisa_kev true with kev_date 2023-09-12; active_exploitation confirmed; active_exploitation_notes record exploitation in the wild as a zero-day, analyzed by Google Project Zero's in-the-wild program and patched by Microsoft in September 2023, with a use-after-free / type confusion in the mskssrv kernel driver letting a local low-privileged process elevate to NT AUTHORITY\\SYSTEM. affected: Microsoft Streaming Service Proxy (MSKSSRV.SYS kernel driver) on Windows 10 and Windows 11. affected_versions: Windows 10 (builds before Sept 2023 cumulative update), Windows 11 (builds before Sept 2023 cumulative update), Windows Server (affected editions before Sept 2023 update). poc_available true; CVSS 7.8, RWEP 79; 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.' The NIST-800-53-AC-6 gap states least privilege is bypassed at the kernel boundary regardless of user-level restrictions.",
|
|
59055
|
+
"gap_closes": [
|
|
59056
|
+
"NIST-800-53-SI-2",
|
|
59057
|
+
"AU-Essential-8-Patch",
|
|
59058
|
+
"NIS2-Art21-patch-management",
|
|
59059
|
+
"ISO-27001-2022-A.8.8"
|
|
59060
|
+
]
|
|
59061
|
+
},
|
|
59062
|
+
{
|
|
59063
|
+
"id": "NEW-CTRL-003",
|
|
59064
|
+
"name": "KERNEL-EXPLOITATION-DETECTION",
|
|
59065
|
+
"description": "The packet describes this exploit precisely enough to key a rule on it rather than on an assumed signal: a local process opens the mskssrv device, issues IOCTL_FRAMESERVER_INIT_CONTEXT to initialize FsContext2 to an attacker-chosen object type, then triggers FSStreamReg::PublishRx, which consumes that field as an FsStreamReg object and yields a kernel write ending in SYSTEM. The rule keys on that shape — a non-privileged user-session process opening the Microsoft Streaming Service Proxy device object and issuing the frameserver context-init IOCTL — paired with the privilege transition the packet names as the outcome: that process, or a child it spawns, running as NT AUTHORITY\\SYSTEM. Both halves are needed. Device opens by media applications are legitimate on their own and a SYSTEM process alone arrives with no context; it is the pairing inside a short window that separates this exploit from either. Note what will not see it: nothing is compiled, no driver is loaded or replaced, no file is written, and an inbox Windows driver is being driven through its normal interface — so file-integrity monitoring, driver-load alerting and signature-based endpoint tooling have no artifact to match, and a rule keyed on process crashes or on named exploit tooling would miss an attempt behaving exactly as the packet describes. Precondition: this depends on device-object and IOCTL-level endpoint telemetry already being collected and shipped off-host before the attempt; a rule authored afterwards against telemetry nobody was collecting produces nothing. And detection neither prevents the escalation nor undoes what SYSTEM-level access was used for — it bounds exposure to alert-and-response time during the interim window before the cumulative update and its required reboot land, which is the window the system-security gap on this entry records as having no compensating control at all.",
|
|
59066
|
+
"evidence": "Packet: attack_vector states a local process opens the mskssrv device and issues IOCTL_FRAMESERVER_INIT_CONTEXT to initialize FsContext2 to an attacker-chosen object type, then triggers FSStreamReg::PublishRx which uses that field as an FsStreamReg object, yielding a kernel write and elevation to SYSTEM. cwe_refs CWE-416; affected names the MSKSSRV.SYS kernel driver and a local use-after-free / type confusion escalating a low-privileged process to SYSTEM. poc_available true; active_exploitation confirmed. The UK-CAF-B4 gap states system security expects timely patching but provides no compensating control for a publicly-weaponized kernel driver flaw in the interim. The NIST-800-53-AC-6 gap states a driver type confusion elevates any low-privileged foothold to SYSTEM regardless of user-level restrictions, so AC-6 alone does not contain post-compromise escalation. patch_required_reboot true and live_patch_available false define the length of that interim window.",
|
|
59067
|
+
"gap_closes": [
|
|
59068
|
+
"UK-CAF-B4",
|
|
59069
|
+
"NIST-800-53-AC-6"
|
|
59070
|
+
]
|
|
59071
|
+
}
|
|
59072
|
+
]
|
|
58308
59073
|
},
|
|
58309
59074
|
"CVE-2023-41064": {
|
|
58310
59075
|
"name": "Apple iOS, iPadOS, and macOS ImageIO Buffer Overflow Vulnerability",
|
|
@@ -58531,17 +59296,49 @@
|
|
|
58531
59296
|
"adequate": false,
|
|
58532
59297
|
"gap": "Network-security measures do not inherently mandate isolating message-broker management ports from untrusted networks, leaving the unauthenticated config path exploitable on a compliant deployment."
|
|
58533
59298
|
},
|
|
58534
|
-
"AU-ISM-1546": {
|
|
58535
|
-
"covered": true,
|
|
58536
|
-
"adequate": false,
|
|
58537
|
-
"gap": "Access-control guidance for services does not force authentication on the RocketMQ remoting interface, so the missing permission check remains the exploited gap."
|
|
59299
|
+
"AU-ISM-1546": {
|
|
59300
|
+
"covered": true,
|
|
59301
|
+
"adequate": false,
|
|
59302
|
+
"gap": "Access-control guidance for services does not force authentication on the RocketMQ remoting interface, so the missing permission check remains the exploited gap."
|
|
59303
|
+
},
|
|
59304
|
+
"ISO-27001-2022-A.8.8": {
|
|
59305
|
+
"covered": true,
|
|
59306
|
+
"adequate": false,
|
|
59307
|
+
"gap": "Technical-vulnerability management cadence trails an internet-facing preauth RCE with a public Metasploit module and active botnet use."
|
|
59308
|
+
}
|
|
59309
|
+
},
|
|
59310
|
+
"new_control_requirements": [
|
|
59311
|
+
{
|
|
59312
|
+
"id": "NEW-CTRL-128",
|
|
59313
|
+
"name": "APPSERVER-REMOTING-PROTOCOL-RESTRICTION",
|
|
59314
|
+
"description": "RocketMQ's NameServer, Broker and Controller speak a binary remoting protocol, and this CVE is that protocol answering an unauthenticated caller: the packet records those components leaked on the extranet and lacking permission verification, with the same command execution reachable by forging RocketMQ protocol content instead of using the product's own client. Bound to this deployment, the control means each of those three component listeners accepts connections only from hosts that legitimately speak the protocol - the application producers and consumers, and the operations hosts that administer the cluster - enforced by network ACL or host firewall rather than inherited from an assumption that a message broker is internal by nature. Reachability is the entire exploit precondition here, because the attacker presents no credential: once a component answers, calling updateBrokerConfig to set rocketmqHome/filterServerNums to a shell payload runs commands as the RocketMQ service user. Distinguishing test for this product: from a segment with no producer, consumer or administration role, open a connection to each RocketMQ component on a staging cluster and confirm it is refused before the remoting handler parses the request - a cluster that passes a patch-level audit while its NameServer and Broker answer from any routable network is still exposed to the forged-protocol path. Precondition, and it is the half most often over-claimed: restricting reachability bounds who can send the request, it does not restore the missing permission check, so any host inside the permitted segment - a compromised application server that legitimately talks to the broker included - still reaches the config path in full. This is a holding measure for the window before 5.1.1 / 4.9.6 is the version each component is actually running, not a closure.",
|
|
59315
|
+
"evidence": "Packet vector: 'Several components of RocketMQ, including NameServer, Broker, and Controller, are leaked on the extranet and lack permission verification' and 'an attacker can achieve the same effect by forging the RocketMQ protocol content' (RocketMQ 5.1.0 and below). attack_vector: attacker reaches an internet-exposed component lacking permission verification and calls updateBrokerConfig (or forges the remoting protocol) to set rocketmqHome/filterServerNums to a shell payload, so the broker executes commands as its service user. framework_control_gaps NIST-800-53-SC-7: components 'were never meant to face the extranet'; NIS2-Art21-network-security: measures 'do not inherently mandate isolating message-broker management ports from untrusted networks'; UK-CAF-B4: assurance 'doesn't specifically require isolating RocketMQ's NameServer/Broker/Controller from the extranet'. cisa_kev true (2023-09-06), active_exploitation confirmed, poc_available true, CVSS 9.8, RWEP 70. Fixed releases per affected_versions: 5.1.1 for 5.x, 4.9.6 for 4.x.",
|
|
59316
|
+
"gap_closes": [
|
|
59317
|
+
"NIST-800-53-SC-7",
|
|
59318
|
+
"NIS2-Art21-network-security",
|
|
59319
|
+
"UK-CAF-B4"
|
|
59320
|
+
]
|
|
59321
|
+
},
|
|
59322
|
+
{
|
|
59323
|
+
"id": "NEW-CTRL-129",
|
|
59324
|
+
"name": "ENTERPRISE-ERP-MANAGEMENT-FUNCTION-AUTHENTICATION",
|
|
59325
|
+
"description": "The update-configuration function is a broker administration operation, and on RocketMQ 5.1.0 and below it runs for a caller the component never verified - the packet places the missing permission check on the components themselves, not on an account model that was misconfigured. Bound to this product, the control means the configuration-mutating remoting commands, updateBrokerConfig among them, make their own authorization decision before the configuration value is applied, rather than inheriting trust from the caller's network position or from the fact that the connection reached a listener at all; and that the administration surface is not left enabled by default on components that also carry production messaging traffic, where nothing distinguishes an operator's config write from a producer's connection. This is the least-functionality gap on this entry rather than the privilege gap, and the distinction matters operationally: the attacker never holds any RocketMQ operator account, so per-account privilege scoping is never consulted and an access-review attestation over the cluster's administrators passes cleanly while this path stays open. Distinguishing test: on a staging cluster, issue a configuration-mutating remoting command from a host holding no RocketMQ credential and confirm it is refused before the value is applied - not merely that the request was logged. Precondition: the vendor releases the packet names, 5.1.1 or above for 5.x and 4.9.6 or above for 4.x, are the remediation it records; this control states the property to verify and the surface to reduce, it does not implement either, and it gives nothing on its own to a cluster still running an affected build.",
|
|
59326
|
+
"evidence": "Packet vector: components 'lack permission verification, an attacker can exploit this vulnerability by using the update configuration function to execute commands as the system users that RocketMQ is running as'; recommended upgrade '5.1.1 or above for using RocketMQ 5.x or 4.9.6 or above for using RocketMQ 4.x'. framework_control_gaps NIST-800-53-CM-7: 'Least functionality is violated when the update-configuration remoting function is reachable unauthenticated; CM-7 does not by default disable/lock down the broker management interface.' framework_control_gaps AU-ISM-1546: 'Access-control guidance for services does not force authentication on the RocketMQ remoting interface, so the missing permission check remains the exploited gap.' cwe_refs CWE-94; active_exploitation confirmed.",
|
|
59327
|
+
"gap_closes": [
|
|
59328
|
+
"NIST-800-53-CM-7",
|
|
59329
|
+
"AU-ISM-1546"
|
|
59330
|
+
]
|
|
58538
59331
|
},
|
|
58539
|
-
|
|
58540
|
-
"
|
|
58541
|
-
"
|
|
58542
|
-
"
|
|
59332
|
+
{
|
|
59333
|
+
"id": "NEW-CTRL-001",
|
|
59334
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
59335
|
+
"description": "For this CVE the control means the RocketMQ upgrade runs on the clock that opened with the 2023-09-06 KEV listing rather than on the cluster's normal release cadence, with the population enumerated from the packet's own version ranges: every 5.x instance at or below 5.1.0 to 5.1.1 or later, and every 4.x instance at or below 4.9.5 to 4.9.6 or later. The priority argument is in the packet rather than in the CVSS band: public exploit code exists, exploitation is confirmed, EPSS is around 0.966, and the DreamBus botnet weaponized this against internet-exposed brokers, which makes an exposed cluster a swept target rather than a targeted one. Two things decide whether the remediation is real. First, the packet registers no live-patch path and states that remediation requires applying the vendor fixed release, so replacing the package is not the completion event - patch_required_reboot being false means no machine reboot is needed, not that a NameServer, Broker or Controller process already running the old build stops executing it; measure completion on the version each running component reports. Second, because exploitation is confirmed and the outcome is command execution as the RocketMQ service user, a component that was reachable from an untrusted network during the exposure window belongs on the incident path: the upgrade removes the injection path but nothing that was already placed on the host through it, and the service account's own credentials and any secrets in the broker's configuration are in scope for rotation.",
|
|
59336
|
+
"evidence": "Packet: cisa_kev true with kev_date 2023-09-06; active_exploitation 'confirmed'; poc_available true; CVSS 9.8; RWEP 70. active_exploitation_notes: 'Actively exploited preauth RCE; the DreamBus botnet weaponized it against internet-exposed RocketMQ brokers... EPSS ~0.966.' affected_versions: 'RocketMQ 5.x <= 5.1.0 (fixed in 5.1.1)', 'RocketMQ 4.x <= 4.9.5 (fixed in 4.9.6)'. patch_available true, patch_required_reboot false, live_patch_available false, live_patch_notes: 'No vendor live-patch mechanism; remediation requires applying the vendor fixed release.' framework_control_gaps ISO-27001-2022-A.8.8: 'Technical-vulnerability management cadence trails an internet-facing preauth RCE with a public Metasploit module and active botnet use.' Command execution occurs 'as the system users that RocketMQ is running as' (vector).",
|
|
59337
|
+
"gap_closes": [
|
|
59338
|
+
"ISO-27001-2022-A.8.8"
|
|
59339
|
+
]
|
|
58543
59340
|
}
|
|
58544
|
-
|
|
59341
|
+
]
|
|
58545
59342
|
},
|
|
58546
59343
|
"CVE-2023-38831": {
|
|
58547
59344
|
"name": "RARLAB WinRAR Code Execution Vulnerability",
|
|
@@ -59344,7 +60141,30 @@
|
|
|
59344
60141
|
"adequate": false,
|
|
59345
60142
|
"gap": "A.8.8 technical-vulnerability management depends on the CVE being matched to an inventoried asset; because the vulnerable setup environment shipped in all post-2015 releases and Openfire is frequently uncatalogued, the traversal-to-plugin-RCE path went unassessed until active exploitation forced attention."
|
|
59346
60143
|
}
|
|
59347
|
-
}
|
|
60144
|
+
},
|
|
60145
|
+
"new_control_requirements": [
|
|
60146
|
+
{
|
|
60147
|
+
"id": "NEW-CTRL-001",
|
|
60148
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
60149
|
+
"description": "Openfire's remediation is a version upgrade — 4.7.5 on the 4.7 branch, 4.6.8 on the 4.6 branch — and the packet's own timeline is why an ordinary Java-application patch cadence never reaches it: mass exploitation began within weeks of the May 2023 disclosure, and CISA's 2023-08-24 KEV listing carried a 2023-09-14 due date while the Kinsing botnet was already using the console to plant plugins. For this product the control means the clock starts at the KEV listing and is measured against a specific fixed version rather than against recency, because the flaw is present in every build from 3.10.0 (April 2015) through 4.7.4 — an operator who confirms only that Openfire is 'reasonably current' can be eight years inside the vulnerable range and still record a pass, and an install on the 4.6 branch is remediated by 4.6.8, not by any 4.7.x check. Where the upgrade cannot be taken inside that window, the packet records an interim mitigation offered by the advisory — restricting the Admin Console — and that is precisely what the control's documented-compensating-control state exists to hold: it must be recorded as an interim state with the upgrade still owed, never as remediation. Precondition on that interim half: restricting who can reach the Admin Console bounds the population able to send the traversal request, it does not repair the traversal, and it does nothing about an instance that was already exploited during the confirmed 2023 wave. Completion is measured on the running service, not the filesystem: live_patch_available is false and the packet's stated remediation is upgrading and restarting the service, so an installation carrying the new files with the service not yet restarted is still executing the vulnerable code.",
|
|
60150
|
+
"evidence": "Packet records cisa_kev true with kev_date 2023-08-24, and active_exploitation_notes stating CISA added it with a 2023-09-14 due date after confirmed mass exploitation of thousands of internet-exposed Openfire consoles within weeks of the May 2023 disclosure, with the Kinsing crypto-mining botnet using the auth bypass to plant plugins. affected_versions is 'Openfire 3.10.0 through 4.7.4 (fixed in 4.7.5 and 4.6.8)'. patch_available true; live_patch_available false; live_patch_notes: 'No vendor live-patch mechanism; remediation is upgrading to Openfire 4.7.5 or 4.6.8 and restarting the service. The advisory also offers an interim mitigation (restricting the Admin Console) for operators who cannot upgrade immediately.' poc_available true; rwep_score 70; cvss 7.5.",
|
|
60151
|
+
"gap_closes": [
|
|
60152
|
+
"NIST-800-53-SI-2",
|
|
60153
|
+
"AU-Essential-8-Patch",
|
|
60154
|
+
"NIS2-Art21-patch-management",
|
|
60155
|
+
"ISO-27001-2022-A.8.8"
|
|
60156
|
+
]
|
|
60157
|
+
},
|
|
60158
|
+
{
|
|
60159
|
+
"id": "NEW-CTRL-129",
|
|
60160
|
+
"name": "ENTERPRISE-ERP-MANAGEMENT-FUNCTION-AUTHENTICATION",
|
|
60161
|
+
"description": "Openfire's setup environment is unauthenticated by design, and this CVE is the pages behind that exemption inheriting its verdict: the packet describes an unauthenticated user reaching restricted Admin Console pages reserved for administrative users, on a server that was already configured, by traversing out of the setup URI. Bound to this product, the control means each Admin Console function makes its own authorization decision — an already-configured Openfire refusing every setup-scoped and administrative page to an unauthenticated caller regardless of how the request path was spelled — rather than trusting a URI-prefix exemption to have sorted callers correctly, and it means the console is segmented so an untrusted network caller cannot present that request in the first place. The second half is what the cited system-security gap records as missing: the console's 9090/9091 surface was reachable straight from the internet during the confirmed 2023 wave rather than being confined to a management VLAN. Distinguishing test: from a host with no administrative role against a staging Openfire, request setup-scoped and administrative console pages using URL-encoded traversal in the setup/setup-s URI and confirm each is refused before the page runs, then confirm from a general user VLAN and from an external address that the console does not answer at all. Precondition, and this is where the network half is routinely over-claimed: restricting reachability bounds who can attempt the traversal, it does not close it — anything inside the permitted segment still reaches the flaw, and it is unavailable where the console must stay broadly reachable for administration. The endpoint-side authorization is a property the 4.7.5/4.6.8 upgrade establishes; this control states what to verify, it does not implement it. Because exploitation is confirmed and the attack path ends in an attacker-created admin account and an uploaded plugin JAR, an instance that was exposed during the wave is not closed by the upgrade alone — the account list and installed plugins have to be compared against a known-good baseline, since neither is removed by upgrading.",
|
|
60162
|
+
"evidence": "Packet vector: 'Openfire's administrative console, a web-based application, was found to be vulnerable to a path traversal attack via the setup environment. This permitted an unauthenticated user to use the unauthenticated Openfire Setup Environment in an already configured Openfire environment to access restricted pages in the Openfire Admin Console reserved for administrative users.' attack_vector: 'URL-encoded path traversal in the setup/setup-s URI lets an unauthenticated attacker reach setup-only Admin Console pages on an already-configured Openfire, create an admin account, and upload a malicious plugin JAR for OS command execution.' The UK-CAF-B4 gap states hardening 'rarely restricts the Openfire Admin Console (9090/9091) to a management VLAN, so the unauthenticated setup-page traversal was reachable straight from the internet during the confirmed 2023 exploitation wave'. active_exploitation confirmed; poc_available true; fixed in 4.7.5 and 4.6.8.",
|
|
60163
|
+
"gap_closes": [
|
|
60164
|
+
"UK-CAF-B4"
|
|
60165
|
+
]
|
|
60166
|
+
}
|
|
60167
|
+
]
|
|
59348
60168
|
},
|
|
59349
60169
|
"CVE-2023-38035": {
|
|
59350
60170
|
"name": "Ivanti Sentry Authentication Bypass Vulnerability",
|
|
@@ -59592,7 +60412,40 @@
|
|
|
59592
60412
|
"adequate": false,
|
|
59593
60413
|
"gap": "A.8.8 technical-vulnerability management typically drives a risk-rated patch schedule; the CVSS 9.8, EPSS ~0.18 preauth deserialization vector plus a shipped Metasploit module means anything short of emergency out-of-band patching left the ColdFusion server exploitable."
|
|
59594
60414
|
}
|
|
59595
|
-
}
|
|
60415
|
+
},
|
|
60416
|
+
"new_control_requirements": [
|
|
60417
|
+
{
|
|
60418
|
+
"id": "NEW-CTRL-001",
|
|
60419
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
60420
|
+
"description": "For this CVE the clock opens at the 2023-08-21 KEV listing and the only qualifying mitigation the packet records is the upgrade to ColdFusion 2018 Update 16 or 2021 Update 6 (or later) followed by a restart of the ColdFusion service. patch_required_reboot is false, which means no machine reboot — it does not mean the fix is live on install: the running ColdFusion process keeps executing the pre-fix WDDX handler until it restarts, so completion is measured per instance on the version the running service reports, never on 'update applied' in a change record. Scope from affected_versions rather than from a single headline install: every ColdFusion 2018 at or below Update 15 and every ColdFusion 2021 at or below Update 5, both trains, including instances behind load balancers and any non-production instance that is internet-reachable — the packet's exploitation population is internet-facing ColdFusion servers, not a curated production list. live_patch_available is false and the packet records no vendor mitigation rule or configuration workaround, so there is no interim state to log as a compensating control: an instance that cannot take the update and restart inside the window is a dated, accepted exposure carrying an unauthenticated code-execution path, and must be recorded that way. Priority follows the packet rather than a queue position: CVSS 9.8, poc_available true, confirmed exploitation, and a Metasploit module that lowered the bar to mass exploitation.",
|
|
60421
|
+
"evidence": "Packet fields: cisa_kev true with kev_date 2023-08-21; active_exploitation 'confirmed'; cvss 9.8; rwep_score 72; poc_available true; patch_available true; patch_required_reboot false; live_patch_available false; live_patch_notes 'No vendor live-patch mechanism; remediation requires upgrading to ColdFusion 2018 Update 16 or 2021 Update 6 (or later) and restarting the ColdFusion service.'; affected_versions 'Adobe ColdFusion 2018 <= Update 15' and 'Adobe ColdFusion 2021 <= Update 5'; active_exploitation_notes 'a Metasploit module lowered the bar to mass exploitation of internet-facing ColdFusion servers'.",
|
|
60422
|
+
"gap_closes": [
|
|
60423
|
+
"AU-Essential-8-Patch",
|
|
60424
|
+
"NIST-800-53-SI-2",
|
|
60425
|
+
"NIS2-Art21-patch-management",
|
|
60426
|
+
"ISO-27001-2022-A.8.8"
|
|
60427
|
+
]
|
|
60428
|
+
},
|
|
60429
|
+
{
|
|
60430
|
+
"id": "NEW-CTRL-125",
|
|
60431
|
+
"name": "SERVICE-INTERNAL-PROTOCOL-DESERIALIZATION-HARDENING",
|
|
60432
|
+
"description": "The packet places the defect in ColdFusion's WDDX packet handler, which deserializes untrusted data without validating the incoming class contents, reached by an unauthenticated request that needs no user interaction and ending in code execution as the ColdFusion service account. Bound to this product, the control means the WDDX intake is treated as a trust boundary rather than as an internal convenience inherited from the web tier in front of it: what an arriving packet is permitted to construct or evaluate is constrained to an explicit set of expected types, instead of the handler instantiating whatever class the packet names and letting a gadget chain assemble itself. Distinguishing test for this product: from an unauthenticated client, send a WDDX packet naming a gadget class to a staging ColdFusion instance and confirm it is refused before the object graph is constructed — an instance that passes a patch-level attestation is exposed again the moment the next deserialization defect in the same handler lands, because nothing in the estate constrains what the handler will build. Precondition, and this is where the control is most easily over-claimed: restricting which networks can reach the ColdFusion endpoints bounds who can send the packet, but it does not repair the handler, and for the internet-facing servers the packet describes as mass-exploited there is no segment that removes the path at all — the site exists to answer untrusted requests. The packet records no vendor switch that disables WDDX intake, so this is the property to require and verify of the deployed build, not something an operator can toggle today; the upgrade to Update 16 / Update 6 with the service restart is what removes the current instance of the sink.",
|
|
60433
|
+
"evidence": "Packet fields: cwe_refs CWE-502; affected 'Adobe ColdFusion application server, whose WDDX packet handler deserializes untrusted data without validating the incoming class contents, enabling arbitrary code execution as the current ColdFusion user'; attack_vector 'An unauthenticated attacker sends a crafted WDDX packet to a ColdFusion endpoint; ColdFusion deserializes it without validating the incoming class contents, allowing a gadget chain to execute arbitrary code as the ColdFusion service account'; vector 'Exploitation of this issue does not require user interaction'; UK-CAF-B4 gap 'ColdFusion accepts and deserializes attacker-supplied WDDX packets by design on a network-facing port; hardening guides rarely remove that endpoint, leaving the deserialization sink live until the Update 16 / Update 6 patch is applied'; live_patch_available false.",
|
|
60434
|
+
"gap_closes": [
|
|
60435
|
+
"UK-CAF-B4"
|
|
60436
|
+
]
|
|
60437
|
+
},
|
|
60438
|
+
{
|
|
60439
|
+
"id": "NEW-CTRL-032",
|
|
60440
|
+
"name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
|
|
60441
|
+
"description": "This entry is the internet-facing application-server form of the case the control exists for, and both trigger conditions the control names are packet facts: the code execution is reachable pre-auth, and exploitation is confirmed, with attackers using it to drop web shells on internet-facing ColdFusion servers. The requirement that follows is that a ColdFusion instance which was reachable and unpatched during the exposure window is handled as a compromise rather than as a patch item — the upgrade to Update 16 / Update 6 closes the WDDX path but removes nothing an attacker already wrote through it, and a web shell placed in the web root or an application directory survives the update and the service restart intact. For this product that means comparing the deployed application and ColdFusion directories against a known-good build rather than trusting the upgrade to normalise them, treating any credential the ColdFusion service account holds — datasource credentials, keys and tokens readable by that account — as exposed and rotating them, and preserving the instance's evidence before rebuilding. Precondition and limit: this applies to instances the operator can establish were reachable while below Update 16 / Update 6, and 'no alert fired' is not that establishment — the packet gives a Metasploit-driven mass-exploitation population and no detection claim, so absence of a finding is not absence of exploitation. It is also not a substitute for the upgrade: a rebuilt instance restored to a pre-fix version is exploitable again on first exposure, so the rebuild and the upgrade are both required, in that order.",
|
|
60442
|
+
"evidence": "Packet fields: active_exploitation 'confirmed'; active_exploitation_notes 'Attackers use it for unauthenticated RCE to drop web shells; a Metasploit module lowered the bar to mass exploitation of internet-facing ColdFusion servers'; attack_vector describes an unauthenticated attacker achieving arbitrary code execution 'as the ColdFusion service account'; poc_available true; cisa_kev true, kev_date 2023-08-21; patch_available true with live_patch_available false and live_patch_notes requiring the Update 16 / Update 6 upgrade plus a ColdFusion service restart.",
|
|
60443
|
+
"gap_closes": [
|
|
60444
|
+
"NIS2-Art21-patch-management",
|
|
60445
|
+
"ISO-27001-2022-A.8.8"
|
|
60446
|
+
]
|
|
60447
|
+
}
|
|
60448
|
+
]
|
|
59596
60449
|
},
|
|
59597
60450
|
"CVE-2023-24489": {
|
|
59598
60451
|
"name": "Citrix Content Collaboration ShareFile Improper Access Control Vulnerability",
|
|
@@ -60975,7 +61828,40 @@
|
|
|
60975
61828
|
"adequate": false,
|
|
60976
61829
|
"gap": "A.8.22 network segregation should isolate the 9004/TCP Remoting service to a management enclave, but flat internal networks leave it reachable from workstation subnets, giving Truebot operators an unauthenticated path to SYSTEM on the audit server."
|
|
60977
61830
|
}
|
|
60978
|
-
}
|
|
61831
|
+
},
|
|
61832
|
+
"new_control_requirements": [
|
|
61833
|
+
{
|
|
61834
|
+
"id": "NEW-CTRL-125",
|
|
61835
|
+
"name": "SERVICE-INTERNAL-PROTOCOL-DESERIALIZATION-HARDENING",
|
|
61836
|
+
"description": "The Netwrix Auditor User Activity Video Recording component is the case this control governs exactly: a non-HTTP protocol endpoint - .NET Remoting on TCP/9004 - that answers before authentication and whose deserialization of the incoming object stream is itself the vulnerable code, so the perimeter controls and the web-tier hardening an audit platform is normally assessed against never touch it. Bound to this product, the requirement is that the Remoting listener answers only from a management enclave, enforced by host firewall or network ACL rather than assumed from the fact that the Auditor server sits inside the corporate network, and that the content arriving on that port is not permitted to construct arbitrary object graphs. Scope the enclave rule to where the component actually runs: the packet places these flaws in both the Netwrix Auditor server and the agents installed on monitored systems, so a rule written only around the server leaves the monitored-endpoint population carrying the same sink. Distinguishing test for this product: from a general workstation VLAN on a staging deployment, connect to 9004/TCP on the Auditor server and confirm the peer is rejected before any object is deserialized - a deployment that passes its Auditor role-and-permission review while 9004/TCP answers from any internal subnet is still exposed to the unauthenticated object path. Preconditions, both real: segmentation bounds who can reach the sink but does not repair the deserialization, so any host inside the permitted enclave still reaches it in full, and the packet's own attribution has Truebot using this for initial access - an operator working from an already-compromised workstation inside the enclave satisfies the access requirement completely. The safe-content half is a property of the vendor release rather than of the network, and the packet records that release as Auditor 10.5 or later with the affected services restarted.",
|
|
61837
|
+
"evidence": "Packet affected: 'Netwrix Auditor User Activity Video Recording component, whose underlying .NET Remoting protocol on TCP/9004 insecurely deserializes untrusted objects.' vector: 'Remote code execution vulnerabilities exist in the Netwrix Auditor User Activity Video Recording component affecting both the Netwrix Auditor server and agents installed on monitored systems... potentially allow an unauthenticated remote attacker to execute arbitrary code as the NT AUTHORITY\\SYSTEM user.' attack_vector: 'An unauthenticated attacker who can reach TCP/9004 sends a malicious serialized object to the Netwrix Auditor .NET Remoting service; deserialization triggers a gadget chain that runs arbitrary code as NT AUTHORITY\\SYSTEM.' framework_control_gaps ISO-27001-2022-A.8.22: 'A.8.22 network segregation should isolate the 9004/TCP Remoting service to a management enclave, but flat internal networks leave it reachable from workstation subnets, giving Truebot operators an unauthenticated path to SYSTEM on the audit server.' framework_control_gaps UK-CAF-B4: hardening 'seldom flags the Auditor's 9004/TCP Remoting listener as an exposed service... the baseline treats a critical preauth RCE sink as benign infrastructure.' cwe_refs CWE-502; active_exploitation confirmed; live_patch_notes: 'remediation requires upgrading to Netwrix Auditor 10.5 (or later) and restarting the affected services.'",
|
|
61838
|
+
"gap_closes": [
|
|
61839
|
+
"ISO-27001-2022-A.8.22",
|
|
61840
|
+
"UK-CAF-B4"
|
|
61841
|
+
]
|
|
61842
|
+
},
|
|
61843
|
+
{
|
|
61844
|
+
"id": "NEW-CTRL-001",
|
|
61845
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
61846
|
+
"description": "On this entry the control's value is which event starts the clock. The packet records the fix - Netwrix Auditor 10.5 - as having shipped in 2022 while the unauthenticated 9004/TCP path was still being exploited by Truebot into 2023, so the availability of a patch was never the constraint; the prioritization was. The requirement is that the 2023-07-11 KEV listing, with its 2023-08-01 due date, sets the remediation deadline for every Auditor instance below 10.5, irrespective of the internal-versus-internet-facing placement that the entry's patch-cadence gaps say drives the estate's urgency scoring. Completion is measured against the packet's remediation statement rather than against the reboot flag: there is no live-patch mechanism, remediation is an upgrade to 10.5 or later with the affected services restarted, and patch_required_reboot being false means only that no machine reboot is required - an Auditor service still running the pre-10.5 build after the installer completes is still exploitable. Enumerate the population the packet defines, which includes the agents installed on monitored systems and not only the Auditor server. And treat this as a foothold rather than an endpoint finding: the packet has confirmed in-the-wild exploitation attributed to Truebot for initial access, ransomware use listed as Known, and SYSTEM on a server that monitors Active Directory - an instance that was reachable during the exposure window needs forensic triage and rotation of the credentials that server held, because the upgrade closes the path and removes nothing an operator established through it.",
|
|
61847
|
+
"evidence": "Packet: cisa_kev true, kev_date 2023-07-11; active_exploitation 'confirmed'; poc_available true; CVSS 9.8; RWEP 70. active_exploitation_notes: 'CISA/FBI/CCCS joint advisory AA23-187A (2023-07-06) attributes exploitation to the Truebot malware campaign for initial access, and CISA lists ransomware use as Known. Added to KEV 2023-07-11 with a 2023-08-01 due date... yields SYSTEM on a server that already monitors Active Directory, so a hit cascades to domain compromise.' affected_versions: 'Netwrix Auditor < 10.5'. patch_available true, patch_required_reboot false, live_patch_available false, live_patch_notes: 'No vendor live-patch mechanism; remediation requires upgrading to Netwrix Auditor 10.5 (or later) and restarting the affected services.' framework_control_gaps NIST-800-53-SI-2: 'the fix (Auditor 10.5) shipped in 2022 but the unauthenticated 9004/TCP deserialization was still being exploited by Truebot into 2023'; NIS2-Art21-patch-management: 'timelines rarely prioritize an internal audit appliance'; AU-Essential-8-Patch: 'patch prioritization keys off internet-facing exposure, but Netwrix Auditor is typically an internal management server'. vector: flaws affect 'both the Netwrix Auditor server and agents installed on monitored systems'.",
|
|
61848
|
+
"gap_closes": [
|
|
61849
|
+
"NIST-800-53-SI-2",
|
|
61850
|
+
"NIS2-Art21-patch-management",
|
|
61851
|
+
"AU-Essential-8-Patch"
|
|
61852
|
+
]
|
|
61853
|
+
},
|
|
61854
|
+
{
|
|
61855
|
+
"id": "NEW-CTRL-055",
|
|
61856
|
+
"name": "SECURITY-TOOL-INTEGRITY-VERIFICATION",
|
|
61857
|
+
"description": "Netwrix Auditor is software the estate deploys to watch itself, and this entry is that product being the attack surface rather than the observer: a component of it deserializes an unauthenticated peer's object stream into NT AUTHORITY\\SYSTEM. What the control requires here is enrollment rather than hygiene, because the packet's own gaps show the product excluded before any SLA is applied - patch urgency keys off internet-facing exposure and this is an internal management server, so a preauth SYSTEM sink is scored below the threshold, and the hardening baseline reads its listener as benign infrastructure. Concretely: the Auditor server and the agents it installs on monitored systems belong in the vulnerability-management inventory at the same tier as other privileged software, each with a per-host installed-version record, and its listening surface is in scope for assessment rather than treated as part of the monitoring fabric. Distinguishing test: produce the installed Auditor version for the server and for every monitored endpoint carrying an agent, and show each is at or above 10.5 - an estate whose patch reporting covers the servers in its internet-facing inventory reads clean while agents on monitored systems keep the vulnerable component, which is precisely the population the packet's vector names and a server-scoped report cannot see. Precondition: this is inventory and enrollment only. It prescribes no code change, does not narrow reachability of the Remoting port, and gives nothing on its own to a deployment that has not yet reached 10.5 with the affected services restarted; its function is to stop the product being exempted from the program that would have driven that upgrade.",
|
|
61858
|
+
"evidence": "Packet vector: the flaws affect 'both the Netwrix Auditor server and agents installed on monitored systems' and allow code execution 'as the NT AUTHORITY\\SYSTEM user on affected systems, including on systems Netwrix Auditor monitors.' framework_control_gaps AU-Essential-8-Patch: 'Essential 8 patch prioritization keys off internet-facing exposure, but Netwrix Auditor is typically an internal management server, so the SYSTEM-level deserialization sink falls below the patch-urgency threshold despite active Truebot exploitation.' framework_control_gaps UK-CAF-B4: 'CAF B4 system-security hardening seldom flags the Auditor's 9004/TCP Remoting listener as an exposed service, but it deserializes untrusted input with no auth, so the baseline treats a critical preauth RCE sink as benign infrastructure.' affected_versions 'Netwrix Auditor < 10.5'; live_patch_notes: 'remediation requires upgrading to Netwrix Auditor 10.5 (or later) and restarting the affected services.' active_exploitation confirmed; cisa_kev true (2023-07-11).",
|
|
61859
|
+
"gap_closes": [
|
|
61860
|
+
"AU-Essential-8-Patch",
|
|
61861
|
+
"UK-CAF-B4"
|
|
61862
|
+
]
|
|
61863
|
+
}
|
|
61864
|
+
]
|
|
60979
61865
|
},
|
|
60980
61866
|
"CVE-2021-29256": {
|
|
60981
61867
|
"name": "Arm Mali GPU Kernel Driver Use-After-Free Vulnerability (CVE-2021-29256)",
|
|
@@ -61387,7 +62273,32 @@
|
|
|
61387
62273
|
"adequate": false,
|
|
61388
62274
|
"gap": "A.8.8 technical-vulnerability management struggles with mobile-kernel CVEs because visibility into per-device SMR level is limited; an organization may not even know which handsets still carry the vulnerable MFC charger driver ahead of the SMR MAY-2021 patch."
|
|
61389
62275
|
}
|
|
61390
|
-
}
|
|
62276
|
+
},
|
|
62277
|
+
"new_control_requirements": [
|
|
62278
|
+
{
|
|
62279
|
+
"id": "NEW-CTRL-126",
|
|
62280
|
+
"name": "MOBILE-OS-MINIMUM-PATCH-LEVEL-ENFORCEMENT",
|
|
62281
|
+
"description": "For these handsets the fix has exactly one form — Samsung's SMR MAY-2021 Release 1, delivered over the air and rebooting the device — and the packet's gaps say plainly that the operator controls neither its delivery nor, often, its visibility: rollout is staggered by model and carrier, and an organization may not know which handsets still carry the vulnerable MFC charger driver. That is why the fixed SMR level has to function as an access condition rather than a dashboard row: a Samsung device reporting an SMR level below MAY-2021 Release 1 is denied mail, VPN and document access until it reports at or above it, which is the one lever that works whether or not the carrier has shipped. Enumerate from what the packet names — Samsung mobile devices on Android 8.1, 9.0, 10.0 and 11.0, across both the Exynos and Qualcomm model families it lists — and note that scoping the sweep to a single chipset family misses the other, and that widening it to the Android fleet generally covers devices the packet does not implicate, since the vulnerable driver is a Samsung component. Distinguishing test: enrol a handset pinned below SMR MAY-2021 Release 1 and confirm the policy actually refuses it access to protected resources; an estate that surfaces the stale SMR level on a compliance report while the device keeps its mailbox has recorded the exposure rather than removed it. Precondition, stated rather than implied: this is a holding measure and not remediation. The race and the arbitrary kernel write remain fully available to anything already running on the handset, so this bounds what the device can reach, not what an attacker on it can do. It reaches only enrolled devices whose SMR level is actually readable — a personally-owned handset outside enrolment is not covered. And because the update is an over-the-air firmware install that reboots the device, a handset that has taken the SMR but not rebooted onto it is still running the vulnerable driver. Where a specific model and carrier combination appears never to have received SMR MAY-2021 Release 1, that status has to be obtained from the vendor or carrier for that exact model rather than assumed in either direction, because the answer determines whether the device is a remediation item or a longer-term one.",
|
|
62282
|
+
"evidence": "Packet: affected is 'Samsung mobile devices (selected Exynos and Qualcomm models), where a race condition in the MFC charger driver causes a use-after-free that permits an arbitrary kernel write from a compromised radio-privilege context'; affected_versions is 'Samsung mobile devices (Android O/8.1, P/9.0, Q/10.0, R/11.0) before SMR MAY-2021 Release 1'. live_patch_notes: 'No live-patch mechanism for the mobile kernel; remediation requires installing the Samsung Security Maintenance Release for May 2021 (SMR MAY-2021 Release 1) via an over-the-air firmware update, which reboots the device.' patch_available true; patch_required_reboot true; live_patch_available false. The ISO-27001-2022-A.8.8 gap states 'visibility into per-device SMR level is limited; an organization may not even know which handsets still carry the vulnerable MFC charger driver'; the NIS2-Art21-patch-management gap states 'Samsung SMR rollout is staggered by model and carrier'; the AU-Essential-8-Patch gap states mobile SMR delivery 'is outside the organization's direct control'; the UK-CAF-B4 gap states 'device hardening and MDM policy do not stop the escalation' without the vendor SMR fix. cisa_kev true, kev_date 2023-06-29, active_exploitation confirmed.",
|
|
62283
|
+
"gap_closes": [
|
|
62284
|
+
"ISO-27001-2022-A.8.8",
|
|
62285
|
+
"AU-Essential-8-Patch",
|
|
62286
|
+
"NIS2-Art21-patch-management",
|
|
62287
|
+
"UK-CAF-B4"
|
|
62288
|
+
]
|
|
62289
|
+
},
|
|
62290
|
+
{
|
|
62291
|
+
"id": "NEW-CTRL-056",
|
|
62292
|
+
"name": "MOBILE-ENDPOINT-MDM-ENFORCED-KEV-SLA",
|
|
62293
|
+
"description": "This control governs the half of the Samsung population the delivery gaps do not excuse: handsets whose model and carrier did ship SMR MAY-2021 Release 1. CISA listed this flaw on 2023-06-29, more than two years after that release, so a device in that population that is still vulnerable is one where an available update was simply never installed — deferred by the user, or never enforced by the management platform. The requirement is that the management platform push the SMR on a KEV-tied clock with user deferral disallowed, and that per-device SMR level be reported back so the estate can distinguish 'update not available for this model' from 'update available and not taken' — a distinction the packet's own gaps show is currently invisible, and one that decides which of the two remaining actions applies to each handset. Because the packet records the fix as an over-the-air firmware update that reboots the device, the deferral that actually matters is the reboot: measure completion on the SMR level the handset reports after restart, never on 'downloaded' or 'approved'. Precondition: enforcement can only reach enrolled devices and can only push an update the carrier or OEM has actually released for that exact model, so where the release never arrived this control has nothing to push and the exposure falls back to withholding access, not to a compliance exception. It also does nothing for a handset already compromised — the packet describes exploitation as part of targeted device-compromise chains that first obtain radio privilege on the device and end in full device control, so a handset suspected of having been through that chain is an incident-response and credential-rotation question, and installing the SMR afterwards does not make it a closed patch record.",
|
|
62294
|
+
"evidence": "Packet: cisa_kev true with kev_date 2023-06-29, against a fix identified in live_patch_notes as 'the Samsung Security Maintenance Release for May 2021 (SMR MAY-2021 Release 1) via an over-the-air firmware update, which reboots the device'; patch_available true, patch_required_reboot true, live_patch_available false. active_exploitation confirmed, with active_exploitation_notes recording that 'the low EPSS (~0.004) reflects that exploitation is not mass-scanning but part of targeted device-compromise chains that first obtain radio/privileged context on Samsung handsets, then use the MFC charger-driver race to gain an arbitrary kernel write for privilege escalation' and that no public proof-of-concept specific to this CVE is available (poc_available false). attack_vector ends in 'escalating to full device control'. The AU-Essential-8-Patch gap notes the standard critical-patch window 'is only met when the carrier/OEM ships SMR MAY-2021'; the ISO-27001-2022-A.8.8 gap notes limited visibility into per-device SMR level.",
|
|
62295
|
+
"gap_closes": [
|
|
62296
|
+
"AU-Essential-8-Patch",
|
|
62297
|
+
"NIS2-Art21-patch-management",
|
|
62298
|
+
"ISO-27001-2022-A.8.8"
|
|
62299
|
+
]
|
|
62300
|
+
}
|
|
62301
|
+
]
|
|
61391
62302
|
},
|
|
61392
62303
|
"CVE-2021-25395": {
|
|
61393
62304
|
"name": "Samsung Mobile Devices Race Condition Vulnerability (CVE-2021-25395)",
|
|
@@ -62449,7 +63360,29 @@
|
|
|
62449
63360
|
"adequate": false,
|
|
62450
63361
|
"gap": "A.8.8 technical vulnerability management could not act before the fix existed — the use-after-free was exploited as a zero-day drive-by, and remediation required the Firefox 50.0.2 / ESR 45.5.1 update reaching each client."
|
|
62451
63362
|
}
|
|
62452
|
-
}
|
|
63363
|
+
},
|
|
63364
|
+
"new_control_requirements": [
|
|
63365
|
+
{
|
|
63366
|
+
"id": "NEW-CTRL-057",
|
|
63367
|
+
"name": "BROWSER-MANAGED-UPDATE-NO-DEFERRAL",
|
|
63368
|
+
"description": "The packet records Mozilla shipping an emergency fix within roughly a day of the exploit surfacing, which puts the whole operator-side exposure in the interval between that build existing and each client actually running it — this is the deferral case, not the patch-availability case. Applied here the control means the update ring is scoped to every product the packet names, each held to its own fixed build rather than to a single channel: Firefox below 50.0.2, Firefox ESR below 45.5.1, Thunderbird below 45.5.1, and Tor Browser below 6.0.7 for the Tor population the packet's remediation note names. The extended-support channel is the specific trap on this entry, because deferral is what it is for: an estate whose policy forbids deferring the mainline Firefox channel while its ESR fleet moves on the ordinary quarterly rhythm has left the ESR-45-based builds on the exploited code, and the mail client is a third track that a browser-shaped update ring frequently never enumerates at all even though the same SVG-animation path is reachable from a crafted mail page. Measure completion on the version the running process reports, not on the installed package: patch_required_reboot false means no machine reboot, not that the fix is live, and a browser or mail client that was open when the update landed keeps executing the pre-fix code until that process restarts — on the long-lived browser sessions typical of the targeted population, that restart is the step most likely to be deferred and a deferral recorded as 'updated' is exactly how this remediation goes wrong. Precondition: this reaches only clients an update ring can govern. The packet places the exploitation against Firefox and Tor Browser users on Windows, and an unmanaged or anonymity-focused client is remediated when its user takes the update, so for that population the lever is notification and, where the estate controls the host, blocking the below-build client from organizational resources — not a management console that never enrolled it.",
|
|
63369
|
+
"evidence": "Packet: use-after-free in SVG animation (CWE-416), 'exploited in the wild in November 2016 against Firefox and Tor Browser users on Windows to deanonymize visitors of hidden services; Mozilla shipped an emergency fix within roughly a day of the exploit surfacing.' affected_versions: Firefox < 50.0.2, Firefox ESR < 45.5.1, Thunderbird < 45.5.1; affected notes the flaw is 'reachable from a crafted web or mail page'. live_patch_notes: 'No live-patch mechanism; remediation requires updating to Firefox 50.0.2, Firefox ESR 45.5.1, or Thunderbird 45.5.1 (Tor Browser 6.0.7 for Tor users).' patch_available true, patch_required_reboot false, live_patch_available false; poc_available true; CVSS 7.5, RWEP 65; CISA KEV 2023-06-22. NIS2-Art21-patch-management gap: 'Browser patch-management must reach every endpoint; Tor Browser users on the older ESR 45 base stayed exposed to the deanonymization exploit until they updated, and NIS2 patch cadence does not cover unmanaged, anonymity-focused clients.'",
|
|
63370
|
+
"gap_closes": [
|
|
63371
|
+
"NIST-800-53-SI-2",
|
|
63372
|
+
"NIS2-Art21-patch-management"
|
|
63373
|
+
]
|
|
63374
|
+
},
|
|
63375
|
+
{
|
|
63376
|
+
"id": "NEW-CTRL-018",
|
|
63377
|
+
"name": "SCANNER-PAPER-COMPLIANCE-TEST",
|
|
63378
|
+
"description": "On this entry 'patched' cannot be read off one version comparison, and a scanner that tries produces wrong answers in both directions. The packet gives four remediation targets across three products, two of them numerically lower than the third: Firefox 50.0.2, Firefox ESR 45.5.1, Thunderbird 45.5.1, and Tor Browser 6.0.7 for Tor users. A rule written as 'Firefox at or above 50.0.2' marks a correctly-remediated ESR 45.5.1 install as vulnerable, which trains operators to dismiss it; a rule scoped to the mainline browser never evaluates the Thunderbird install at all, even though the same SVG-animation use-after-free is reachable from a crafted mail page; and Tor Browser is a fourth track that the scan has to be told about explicitly, since the packet names it as the remediation for Tor users and it is not one of the three builds the affected-version list carries. So the operational test has two halves. Does the scan resolve each install to its own product track and compare against that track's fixed build, and does it read the version the process is actually executing rather than the version sitting on disk — because patch_required_reboot is false and no live-patch mechanism exists, a browser or mail client left running across the update keeps the vulnerable SVG-animation code mapped until it restarts, and an inventory query answered from the installed package cannot distinguish that host from a remediated one. An estate whose dashboard shows every Firefox at 50.0.2 while a running session, an ESR build, a Thunderbird install or a Tor Browser copy still renders the crafted page has recorded the exposure rather than removed it, and a technical-vulnerability-management review reads clean throughout.",
|
|
63379
|
+
"evidence": "Packet live_patch_notes names four distinct remediation targets: 'updating to Firefox 50.0.2, Firefox ESR 45.5.1, or Thunderbird 45.5.1 (Tor Browser 6.0.7 for Tor users)'; affected_versions carries three of them (Firefox < 50.0.2, Firefox ESR < 45.5.1, Thunderbird < 45.5.1). affected: 'a use-after-free in SVG animation (CWE-416) reachable from a crafted web or mail page yields content-process code execution on Windows.' patch_required_reboot false; live_patch_available false; poc_available true; active_exploitation confirmed; CISA KEV 2023-06-22. ISO-27001-2022-A.8.8 gap: 'A.8.8 technical vulnerability management could not act before the fix existed — the use-after-free was exploited as a zero-day drive-by, and remediation required the Firefox 50.0.2 / ESR 45.5.1 update reaching each client.'",
|
|
63380
|
+
"gap_closes": [
|
|
63381
|
+
"ISO-27001-2022-A.8.8",
|
|
63382
|
+
"NIST-800-53-SI-2"
|
|
63383
|
+
]
|
|
63384
|
+
}
|
|
63385
|
+
]
|
|
62453
63386
|
},
|
|
62454
63387
|
"CVE-2016-0165": {
|
|
62455
63388
|
"name": "Microsoft Win32k Privilege Escalation Vulnerability",
|
|
@@ -63192,7 +64125,40 @@
|
|
|
63192
64125
|
"adequate": false,
|
|
63193
64126
|
"gap": "A.8.8 technical vulnerability management operating on periodic scans lags a mercenary-spyware zero-day; the sandbox escape was weaponized before the fix, so scan-and-patch timing left endpoints exposed during the active-exploitation window flagged by the 2023-05-22 KEV listing."
|
|
63194
64127
|
}
|
|
63195
|
-
}
|
|
64128
|
+
},
|
|
64129
|
+
"new_control_requirements": [
|
|
64130
|
+
{
|
|
64131
|
+
"id": "NEW-CTRL-056",
|
|
64132
|
+
"name": "MOBILE-ENDPOINT-MDM-ENFORCED-KEV-SLA",
|
|
64133
|
+
"description": "Remediation for this WebKit sandbox escape is not one build but six product lines: live_patch_notes names watchOS 9.5, tvOS 16.5, macOS Ventura 13.4, iOS 15.7.8 and iPadOS 15.7.8, Safari 16.5, and iOS 16.5 and iPadOS 16.5 as the releases carrying the fix, and affected_versions lists iOS, iPadOS, macOS Ventura, tvOS, watchOS and Safari separately. The enforced-update population must therefore be every one of those lines at its own fixed build — an estate that drives iPhones and Macs to the fixed release on a managed ring while Apple TVs, Watches and the Safari build on macOS are left to user-initiated updates still has an unpatched WebKit engine rendering untrusted web content. The clock runs from the 2023-05-22 KEV listing rather than the next scheduled ring, because Apple shipped these as fixes for a flaw already in use. Completion is measured on the build the device is executing: patch_required_reboot is true and live_patch_available is false, so a device that downloaded the update and has not restarted is still running the vulnerable engine and counts as exposed, not as compliant. Precondition: this control reaches only devices the management channel enrolls and can compel; an unenrolled personal device, or a product line no console in the estate manages, is outside the SLA and needs the access-condition route instead. And because exploitation is confirmed and delivery is attacker-controlled web content, a device that rendered untrusted content while below the fixed build belongs on the incident path rather than being closed on the update record.",
|
|
64134
|
+
"evidence": "Packet: cisa_kev true with kev_date 2023-05-22; active_exploitation 'confirmed', with active_exploitation_notes recording that Apple acknowledged in-the-wild exploitation. patch_available true, patch_required_reboot true, live_patch_available false; live_patch_notes states remediation requires installing the fixed Apple OS/Safari releases (watchOS 9.5, tvOS 16.5, macOS Ventura 13.4, iOS/iPadOS 15.7.8 and 16.5, Safari 16.5), which reboot the device. affected_versions names iOS, iPadOS, macOS Ventura, tvOS, watchOS and Safari as separate product lines.",
|
|
64135
|
+
"gap_closes": [
|
|
64136
|
+
"NIST-800-53-SI-2",
|
|
64137
|
+
"NIS2-Art21-patch-management",
|
|
64138
|
+
"ISO-27001-2022-A.8.8"
|
|
64139
|
+
]
|
|
64140
|
+
},
|
|
64141
|
+
{
|
|
64142
|
+
"id": "NEW-CTRL-121",
|
|
64143
|
+
"name": "MOBILE-ZERO-CLICK-HARDENING",
|
|
64144
|
+
"description": "The packet places this flaw inside a mercenary-spyware WebKit chain used in targeted operations rather than mass exploitation, with no reusable public PoC released — so for the cohort plausibly inside that targeting set the update ring alone is not fast enough, and the only operator lever during the window is the delivery path. Put that cohort's iPhones, iPads and Macs in the vendor's reduced-attack-surface mode so untrusted web content is not handed to WebKit automatically, narrowing the path into the out-of-bounds condition between the 2023-05-22 KEV listing and completed restart on the fixed builds. This has to be a standing posture assigned to the cohort before the next disclosure, because the mode only helps if it was already on when the chain arrived; enabling it in response to this CVE protects nobody who was targeted with it. Precondition, and it is the one that is usually over-claimed: the mode narrows how attacker-controlled web content reaches the engine, it does not remove the defect in WebKit — the fixed builds do, and the packet records those as requiring a restart. It also does nothing for a device already compromised during the targeted-operation window, which is an incident, not a hardening item. This is why the browser-settings form of application hardening the frameworks carry is not equivalent: the memory-safety bug is inside the engine, so no setting inside the browser prevents the escape once the content is parsed.",
|
|
64145
|
+
"evidence": "Packet: active_exploitation_notes records the flaw as part of a mercenary-spyware WebKit exploit chain in which the Web Content process escapes its sandbox by hopping to the GPU process, used in targeted operations rather than mass exploitation, with no reusable public PoC released (poc_available false). attack_vector records malicious web content processed by WebKit as the trigger. kev_date 2023-05-22; patch_required_reboot true; live_patch_available false. The AU-Essential-8-App-Hardening gap states that hardening browser settings does not neutralize a memory-safety bug inside WebKit itself.",
|
|
64146
|
+
"gap_closes": [
|
|
64147
|
+
"AU-Essential-8-App-Hardening",
|
|
64148
|
+
"UK-CAF-B4"
|
|
64149
|
+
]
|
|
64150
|
+
},
|
|
64151
|
+
{
|
|
64152
|
+
"id": "NEW-CTRL-126",
|
|
64153
|
+
"name": "MOBILE-OS-MINIMUM-PATCH-LEVEL-ENFORCEMENT",
|
|
64154
|
+
"description": "For this entry the threshold is not a single version number: the packet splits iOS and iPadOS across two supported lines, 15.7.8 on the 15.x line and 16.5 on the 16.x line, alongside macOS Ventura 13.4, tvOS 16.5, watchOS 9.5 and Safari 16.5. The minimum-build policy therefore has to be expressed per line, or a device deliberately held on 15.x either reads as permanently non-compliant or gets waved through by a rule written against 16.5 alone. The fixed build must function as an access condition — organizational mail, VPN and document access denied to a device below its line's fixed build — rather than as a row on a patch-compliance report, because the citing framework gaps here record endpoint hardening and periodic scanning as the controls that already exist and already fail against a browser-engine sandbox escape. Distinguishing test: enrol a device pinned below its line's fixed build and confirm the policy actually denies it protected resources; an estate that surfaces the stale build on a dashboard while the device keeps its access has recorded the exposure rather than removed it. Precondition: this withholds organizational data from an exposed device, it does not protect the device — the user still browses on the vulnerable engine, and the fixed build plus its restart is the only thing that removes the flaw. patch_required_reboot is true, so the access condition must evaluate the build actually running, not the one downloaded.",
|
|
64155
|
+
"evidence": "Packet: affected_versions records Apple iOS < 16.5 (and < 15.7.8 on the 15.x line), iPadOS < 16.5 (and < 15.7.8 on the 15.x line), macOS Ventura < 13.4, tvOS < 16.5, watchOS < 9.5 and Safari < 16.5. patch_required_reboot true, live_patch_available false. The UK-CAF-B4 gap records that routine endpoint hardening does not blunt a zero-day breaking the Web Content sandbox; the NIS2-Art21-patch-management gap records that server-focused patch management under-serves mobile/endpoint fleets and that without rapid mobile OS update enforcement the sandbox escape remained reachable on unpatched iPhones and Macs.",
|
|
64156
|
+
"gap_closes": [
|
|
64157
|
+
"UK-CAF-B4",
|
|
64158
|
+
"NIS2-Art21-patch-management"
|
|
64159
|
+
]
|
|
64160
|
+
}
|
|
64161
|
+
]
|
|
63196
64162
|
},
|
|
63197
64163
|
"CVE-2023-28204": {
|
|
63198
64164
|
"name": "Apple Multiple Products WebKit Out-of-Bounds Read Vulnerability (CVE-2023-28204)",
|
|
@@ -63338,7 +64304,39 @@
|
|
|
63338
64304
|
"adequate": false,
|
|
63339
64305
|
"gap": "A.8.8 technical-vulnerability management can enumerate the affected Apple versions but cannot compress the exploited-before-patch gap for a zero-day WebKit UAF; the control's assessment cadence trails an exploit already used in the wild by the 2023-05-22 KEV listing."
|
|
63340
64306
|
}
|
|
63341
|
-
}
|
|
64307
|
+
},
|
|
64308
|
+
"new_control_requirements": [
|
|
64309
|
+
{
|
|
64310
|
+
"id": "NEW-CTRL-056",
|
|
64311
|
+
"name": "MOBILE-ENDPOINT-MDM-ENFORCED-KEV-SLA",
|
|
64312
|
+
"description": "The fix for this CVE is not one build but a set, and the managed-update requirement has to be written per product line against its own fixed build: iOS/iPadOS 16.5, iOS/iPadOS 15.7.6, macOS Ventura 13.4, Safari 16.5, tvOS 16.5 and watchOS 9.5, driven on the KEV clock that opened 2023-05-22 with user deferral disallowed rather than folded into a routine update ring. The iOS/iPadOS 15 line is the specific trap: its fix is 15.7.6, not 16.5, so an estate that measures compliance against 16.5 alone misreads devices that are actually remediated and, worse, may treat the 15 line as having no available fix at all. Completion is measured on the build the device is running after restart, not on 'update pushed' or 'downloaded' — patch_required_reboot is true and the packet records no live-patch mechanism for WebKit, so a device holding the update but deferring the restart is still executing the vulnerable engine. Scope the sweep to what the packet names, which is all six of those product lines and not iOS alone; the entry additionally records non-Apple products embedding WebKit, and since it gives no fixed version for them, that level must be obtained from the embedding vendor rather than assumed to be one of Apple's builds. Precondition: this reaches only enrolled devices. Personally-owned and unenrolled devices sit outside it entirely and are covered by the minimum-build access condition, not by this control.",
|
|
64313
|
+
"evidence": "live_patch_notes: 'No live-patch mechanism for WebKit; the fix ships in OS/Safari updates (iOS 16.5, iPadOS 16.5, macOS Ventura 13.4, tvOS 16.5, watchOS 9.5, Safari 16.5, iOS/iPadOS 15.7.6) and requires a device restart.' affected_versions: 'Apple iOS/iPadOS 16 < 16.5', 'Apple iOS/iPadOS 15 < 15.7.6', 'macOS Ventura < 13.4', 'Safari < 16.5', 'tvOS < 16.5', 'watchOS < 9.5'. affected names WebKit 'as used across iOS, iPadOS, macOS, tvOS, watchOS and Safari (and non-Apple products embedding WebKit)'. The NIST-800-53-SI-2 gap: 'the WebKit UAF was weaponized before many devices updated, and MDM update-deferral policies extend that window'. The AU-Essential-8-Patch gap: 'Apple's fix spans many OS/Safari builds and users defer reboots'. CISA KEV 2023-05-22; active_exploitation confirmed; patch_available true; patch_required_reboot true; live_patch_available false; CVSS 8.8; RWEP 52.",
|
|
64314
|
+
"gap_closes": [
|
|
64315
|
+
"NIST-800-53-SI-2",
|
|
64316
|
+
"AU-Essential-8-Patch"
|
|
64317
|
+
]
|
|
64318
|
+
},
|
|
64319
|
+
{
|
|
64320
|
+
"id": "NEW-CTRL-126",
|
|
64321
|
+
"name": "MOBILE-OS-MINIMUM-PATCH-LEVEL-ENFORCEMENT",
|
|
64322
|
+
"description": "On an Apple device the organization cannot force to update — the personally-owned and BYOD endpoints the entry's NIS2 gap names — the remaining lever is to make the fixed build an access condition rather than a dashboard row. For this CVE that means organizational mail, VPN and document access denied to any device reporting below the fixed build for its own line: iOS/iPadOS 16.5, or 15.7.6 on the 15 line, macOS Ventura 13.4, Safari 16.5, tvOS 16.5, watchOS 9.5. This is what converts the affected-version enumeration the technical-vulnerability control already produces into something that actually changes the device's reach; enumerating the stale build while the device keeps its mail session records the exposure instead of removing it. The distinguishing test is to present a device pinned below its line's fixed build and confirm the policy denies it protected resources. Preconditions: because the fix requires a device restart and the packet records no live-patch mechanism for WebKit, the condition has to evaluate the build the device is running, not the update it has downloaded — otherwise a deferred restart passes the gate while the vulnerable engine is still loaded. And this is a holding measure only. It bounds what a compromised device can reach; it does not prevent the arbitrary code execution on the device itself, since delivery is attacker-controlled web content that needs no organizational resource. A device that rendered untrusted content while below its fixed build belongs on the incident path rather than being closed out when it later reports current.",
|
|
64323
|
+
"evidence": "The NIS2-Art21-patch-management gap: 'NIS2 Art.21 patch management struggles with BYOD/personally-owned Apple devices where the org cannot force the OS update carrying the WebKit fix, so the code-execution-on-web-content flaw stays live on unmanaged endpoints past the KEV date.' The ISO-27001-2022-A.8.8 gap: 'A.8.8 technical-vulnerability management can enumerate the affected Apple versions but cannot compress the exploited-before-patch gap for a zero-day WebKit UAF'. attack_vector: 'A use-after-free in WebKit's processing of maliciously crafted web content lets a hostile page corrupt memory and execute arbitrary code'. Fixed builds per live_patch_notes and affected_versions (iOS/iPadOS 16.5, iOS/iPadOS 15.7.6, macOS Ventura 13.4, Safari 16.5, tvOS 16.5, watchOS 9.5); patch_required_reboot true; live_patch_available false; KEV 2023-05-22; CWE-416.",
|
|
64324
|
+
"gap_closes": [
|
|
64325
|
+
"NIS2-Art21-patch-management",
|
|
64326
|
+
"ISO-27001-2022-A.8.8"
|
|
64327
|
+
]
|
|
64328
|
+
},
|
|
64329
|
+
{
|
|
64330
|
+
"id": "NEW-CTRL-121",
|
|
64331
|
+
"name": "MOBILE-ZERO-CLICK-HARDENING",
|
|
64332
|
+
"description": "The entry records this class of WebKit use-after-free as characteristically the browser-engine stage of mercenary-spyware initial-access chains against iOS and macOS, and the trigger is processing maliciously crafted web content. For the population plausibly inside that targeting set, the reboot-gated multi-OS update is not fast enough on its own, because the flaw is the entry point of a chain rather than a bug that needs a second condition to matter. Place those users on the platform's reduced-attack-surface mode so untrusted web content, message attachments, fonts and link previews are not processed automatically, narrowing the delivery path into the use-after-free during the window between the 2023-05-22 KEV listing and completed installation and restart of the fixed build. Preconditions, and they are the whole substance of this control: it only helps if it was already the standing posture for that cohort when the chain arrived — enabling it in response to this CVE does nothing about a device already compromised, since the mode restricts what content is processed and does not evict resident code. It narrows the path rather than removing it: a user in that mode still renders web content through the same engine, so it is a holding measure and not a substitute for reaching iOS/iPadOS 16.5 or 15.7.6, macOS Ventura 13.4, Safari 16.5, tvOS 16.5 or watchOS 9.5 and restarting. Note also that no public PoC exists for this specific CVE, so there is no exploit signature to detect against — the lever is the content path, not recognition of the attack.",
|
|
64333
|
+
"evidence": "active_exploitation_notes: 'Apple reported it may have been actively exploited; CISA added it to KEV 2023-05-22. WebKit use-after-free bugs of this class are characteristically the browser-engine stage of mercenary-spyware initial-access chains against iOS/macOS. No public PoC or exploit has surfaced for this specific CVE.' poc_available false; active_exploitation confirmed. vector: 'Processing maliciously crafted web content may lead to arbitrary code execution.' The UK-CAF-B4 gap: 'CAF B4 system-security assurance trusts the browser sandbox to contain malicious web content, but a WebKit use-after-free yields arbitrary code execution from a crafted page — the initial-access primitive B4 assumes the platform prevents.' The AU-Essential-8-Patch gap: 'the actively-exploited UAF remained reachable via web content until the update was installed and the device restarted.' patch_required_reboot true; live_patch_available false; CVSS 8.8.",
|
|
64334
|
+
"gap_closes": [
|
|
64335
|
+
"UK-CAF-B4",
|
|
64336
|
+
"AU-Essential-8-Patch"
|
|
64337
|
+
]
|
|
64338
|
+
}
|
|
64339
|
+
]
|
|
63342
64340
|
},
|
|
63343
64341
|
"CVE-2004-1464": {
|
|
63344
64342
|
"name": "Cisco IOS Denial-of-Service Vulnerability",
|
|
@@ -64231,7 +65229,30 @@
|
|
|
64231
65229
|
"adequate": false,
|
|
64232
65230
|
"gap": "A.8.8 vulnerability management may rank a 7.8 local LPE below network-facing CVEs, yet as a confirmed in-the-wild kernel escalation it warranted out-of-band patching that a CVSS-only prioritisation would defer."
|
|
64233
65231
|
}
|
|
64234
|
-
}
|
|
65232
|
+
},
|
|
65233
|
+
"new_control_requirements": [
|
|
65234
|
+
{
|
|
65235
|
+
"id": "NEW-CTRL-145",
|
|
65236
|
+
"name": "ACTIVELY-EXPLOITED-OS-LPE-REMEDIATION-WINDOW-ENFORCEMENT",
|
|
65237
|
+
"description": "The packet places this in the Windows Win32k kernel-mode driver and describes a local attacker in an ordinary user context reclaiming freed window and menu objects to corrupt kernel memory, manipulate a process token and run as SYSTEM — the account is already legitimate, so no account model is being abused; a privilege boundary inside the kernel is failing. For this CVE the control means the May 2023 cumulative update is driven across the estate on the KEV clock that opened 2023-05-09 against the 2023-05-30 due date, rather than folded into the next monthly ring, with completion measured per host on the build actually running rather than on 'approved', 'downloaded' or 'installed' in the management console. The population to enumerate is not a server subset: the packet's own system-security gap records that every interactive Windows process can reach win32k, so every host in affected_versions — Windows 10 and Windows 11 clients, and Windows Server 2016, 2019 and 2022 — where an unprivileged user can execute code is in scope. patch_required_reboot is true and the packet records no vendor live-patch mechanism, so a host that installed the update through the servicing stack but has not restarted still executes the vulnerable Win32k and must be counted as exposed; on shared and always-on hosts that restart 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 load-bearing here: because the attacker is already executing as an authorized local user, tightening account privilege or hardening configuration does not contain the escalation — which is why system-security expectations can pass their attestation while the flaw stays fully exploitable. Priority follows the packet rather than the 7.8 band: a public PoC, confirmed in-the-wild exploitation as a zero-day, and the packet's note that this class is a post-access SYSTEM-escalation primitive paired with commodity loaders and info-stealers make it the containment step in a chain, not a standalone endpoint item.",
|
|
65238
|
+
"evidence": "Packet fields: cwe_refs CWE-416; affected 'Windows Win32k kernel-mode driver, which contains a use-after-free (CWE-416) that a local attacker exploits to run code at SYSTEM'; attack_vector 'A local attacker with any user context exploits a use-after-free (CWE-416) in the Win32k kernel driver, reclaiming freed window/menu objects to corrupt kernel memory and manipulate a process token'; affected_versions 'Windows 10 and Windows 11 prior to the May 2023 cumulative update' and 'Windows Server (2016/2019/2022) prior to the May 2023 cumulative update'; cisa_kev true, kev_date 2023-05-09, active_exploitation_notes 'CISA added it to KEV on 2023-05-09 with a 2023-05-30 due date' and 'a classic post-access SYSTEM-escalation primitive used after initial code execution, frequently paired with commodity loaders and info-stealers'; poc_available true; patch_available true; patch_required_reboot true; live_patch_available false; live_patch_notes 'No vendor live-patch mechanism; remediation requires the May 2023 Windows cumulative update installed via the standard servicing stack, which requires a reboot.'; UK-CAF-B4 gap 'CAF B4 system-security hardening cannot mitigate a kernel use-after-free in a core graphics subsystem (win32k) that every interactive Windows process can reach; only the vendor patch removes the freed-object reuse.'",
|
|
65239
|
+
"gap_closes": [
|
|
65240
|
+
"NIST-800-53-SI-2",
|
|
65241
|
+
"AU-Essential-8-Patch",
|
|
65242
|
+
"NIS2-Art21-patch-management",
|
|
65243
|
+
"UK-CAF-B4"
|
|
65244
|
+
]
|
|
65245
|
+
},
|
|
65246
|
+
{
|
|
65247
|
+
"id": "NEW-CTRL-001",
|
|
65248
|
+
"name": "CISA-KEV-RESPONSE-SLA",
|
|
65249
|
+
"description": "What this control changes for this CVE is the trigger, which is where the vulnerability-management gap on this entry actually sits: at CVSS 7.8 and classed as a local escalation, this Win32k flaw sorts below network-facing criticals in a severity-ranked queue and gets deferred, while the packet records it as a confirmed in-the-wild zero-day added to KEV on 2023-05-09 with a 2023-05-30 due date. The requirement is that the KEV listing, not the base score, starts the clock for the May 2023 cumulative update across Windows 10, Windows 11 and Windows Server 2016/2019/2022. The control admits patch, live patch or documented compensating controls as qualifying mitigations, and this entry is worth stating explicitly because two of the three are unavailable: live_patch_available is false and the packet records no vendor live-patch mechanism, and the packet's system-security gap records that hardening cannot mitigate the freed-object reuse and only the vendor patch removes it — so there is no configuration change or vendor mitigation rule to log as a compensating control. The consequence for the compliance record is the point: a host that cannot take the update and its required reboot inside the window is a dated, accepted exposure still carrying a working local-to-SYSTEM primitive, and recording it as 'mitigated' or 'compensating control in place' would be a false entry, because the packet supports no such control. Precondition on the clock itself: it is satisfied by the running build after restart, since the servicing-stack install alone leaves the vulnerable driver in memory.",
|
|
65250
|
+
"evidence": "Packet fields: cvss 7.8; rwep_score 68; cisa_kev true with kev_date 2023-05-09; active_exploitation 'confirmed', notes 'Exploited in the wild as a local privilege-escalation zero-day and fixed in Microsoft's May 2023 Patch Tuesday; CISA added it to KEV on 2023-05-09 with a 2023-05-30 due date'; poc_available true; patch_available true; patch_required_reboot true; live_patch_available false; live_patch_notes 'No vendor live-patch mechanism; remediation requires the May 2023 Windows cumulative update installed via the standard servicing stack, which requires a reboot.'; ISO-27001-2022-A.8.8 gap 'A.8.8 vulnerability management may rank a 7.8 local LPE below network-facing CVEs, yet as a confirmed in-the-wild kernel escalation it warranted out-of-band patching that a CVSS-only prioritisation would defer.'; UK-CAF-B4 gap 'only the vendor patch removes the freed-object reuse'.",
|
|
65251
|
+
"gap_closes": [
|
|
65252
|
+
"ISO-27001-2022-A.8.8"
|
|
65253
|
+
]
|
|
65254
|
+
}
|
|
65255
|
+
]
|
|
64235
65256
|
},
|
|
64236
65257
|
"CVE-2023-1389": {
|
|
64237
65258
|
"name": "TP-Link Archer AX-21 Command Injection Vulnerability",
|
|
@@ -66803,7 +67824,42 @@
|
|
|
66803
67824
|
"adequate": false,
|
|
66804
67825
|
"gap": "A.8.8 technical-vulnerability management would schedule the FortiOS patch, but because exploitation writes persistent implants into the device image, A.8.8's patch focus misses the firmware-integrity check needed to catch UNC3886's THINCRUST/CASTLETAP footholds."
|
|
66805
67826
|
}
|
|
66806
|
-
}
|
|
67827
|
+
},
|
|
67828
|
+
"new_control_requirements": [
|
|
67829
|
+
{
|
|
67830
|
+
"id": "NEW-CTRL-032",
|
|
67831
|
+
"name": "PERIMETER-COMPROMISE-REBUILD-NOT-PATCH",
|
|
67832
|
+
"description": "This is the case four of this entry's five gaps are separately describing. On Fortinet FortiOS the packet's exploitation is not opportunistic: UNC3886 used the path traversal to write files to FortiGate devices and maintain persistence with super-admin privileges, planting the THINCRUST and CASTLETAP implants. Upgrading to FortiOS 7.2.4, 7.0.10 or 6.4.12 closes the CLI path-handling flaw that allowed the write; it removes nothing already written through it, and the packet says so directly in its own remediation note, which advises firmware-integrity verification for previously-exposed devices. For this appliance the control therefore means a unit that ran an affected build — 7.2.0 through 7.2.3, 7.0.0 through 7.0.9, or below 6.4.11 — during the exposure window goes down the incident path rather than the change-control path: verify the running firmware image against the vendor's expected image rather than trusting the device's own version string, rebuild the unit from vendor firmware and a configuration reviewed against a known-good baseline instead of upgrading in place and inheriting whatever the existing image carries, and treat as disclosed every credential the device held or that authenticated through it — super-admin and administrator accounts, local and VPN user credentials, RADIUS and LDAP service accounts, and device certificates — rotating each. Preconditions, stated because they change who this applies to. The trigger here is narrower than the pre-auth-RCE case this control is usually invoked for: CVE-2022-41328 requires privileged CLI access, and the packet's actor already held super-admin, so the population is units with an affected build that had privileged CLI exposure — including any unit whose administrative credentials could have been obtained through a separate path — not every affected unit in the estate. Restoring the configuration from a backup taken inside the exposure window reinstates what the attacker placed there, so the baseline must predate it. And this control does not prevent the write; the vendor upgrade is what removes the traversal, and this is what has to happen alongside it.",
|
|
67833
|
+
"evidence": "Packet: active_exploitation_notes 'Confirmed exploited in highly targeted attacks by the China-nexus actor UNC3886, which used the path traversal to write files to FortiGate devices and maintain persistence (THINCRUST/CASTLETAP implants) with super-admin privileges. KEV-listed 2023-03-14; exploitation was espionage, not ransomware.' attack_vector describes crafted CLI commands traversing outside the intended directory to read and write files on the underlying Linux system, used to plant persistent implants in the FortiGate firmware. live_patch_notes: 'No live-patch mechanism for FortiOS; remediation is upgrading to FortiOS 7.2.4, 7.0.10, or 6.4.12 (or later), a firmware upgrade that reboots the appliance, and firmware-integrity verification is advised for previously-exposed devices.' affected_versions: 7.2.0-7.2.3 (fixed 7.2.4), 7.0.0-7.0.9 (fixed 7.0.10), < 6.4.11 (fixed 6.4.12). The NIST-800-53-SI-2 gap states applying the fix 'closes the write primitive yet does not by itself detect or remove implants already planted in firmware'; the NIS2-Art21-supply-chain gap states the framework 'offers no control forcing firmware-integrity verification on FortiGate appliances'; the AU-Essential-8-Patch gap states that even after patching there is no requirement to re-verify FortiGate firmware integrity for prior tampering; the ISO-27001-2022-A.8.8 gap states its patch focus 'misses the firmware-integrity check needed to catch UNC3886's THINCRUST/CASTLETAP footholds'.",
|
|
67834
|
+
"gap_closes": [
|
|
67835
|
+
"NIST-800-53-SI-2",
|
|
67836
|
+
"ISO-27001-2022-A.8.8",
|
|
67837
|
+
"AU-Essential-8-Patch",
|
|
67838
|
+
"NIS2-Art21-supply-chain"
|
|
67839
|
+
]
|
|
67840
|
+
},
|
|
67841
|
+
{
|
|
67842
|
+
"id": "NEW-CTRL-030",
|
|
67843
|
+
"name": "PERIMETER-DEVICE-ZERODAY-SLA-TIER",
|
|
67844
|
+
"description": "A FortiGate running FortiOS is the device class this tier exists for, and the packet's Essential-Eight gap states the deficiency the tier answers: patch cadence rarely tracks firewall firmware at all. Bound to this CVE, the tier has to be written against what the remediation actually costs, which the packet gives precisely — FortiOS 7.2.4, 7.0.10 or 6.4.12 or later, delivered as a firmware upgrade that reboots the appliance, with no live-patch mechanism. So the clock runs from the 2023-03-14 KEV listing to each unit running a fixed build, and the completion measure is the build the appliance is executing after that reboot: a unit with firmware staged but not booted is still running the vulnerable CLI path handler and must be counted as exposed, which matters here because taking a firewall through a reboot is the step most likely to be deferred to a maintenance window and then recorded as done. Be honest about the fit: this is not the pre-authentication remote code execution the tier is usually invoked for — the packet requires privileged CLI access — and the reason it still belongs in the tier is the device class rather than the authentication level, because a firewall is the trust boundary and its firmware sits outside the general patch cadence the estate runs. The isolation half of the tier is the only lever available before the reboot window: restrict which networks and which accounts can open an administrative CLI session on the appliance, and remove administrative reachability from anything that has no operational need for it. Its precondition is the important part and it is a real limit, not a caveat — that restriction bounds the population who can attempt the traversal, it does not close it, because any account that legitimately reaches the privileged CLI still reaches the file read and write. The packet's own case is exactly that: an actor operating with super-admin, for whom no amount of reachability restriction is a barrier. It is a holding measure for the window before the firmware upgrade and reboot land, not a substitute for them.",
|
|
67845
|
+
"evidence": "Packet: cisa_kev true with kev_date 2023-03-14; active_exploitation confirmed; cvss 7.1 with rwep_score 47; poc_available false. patch_available true, patch_required_reboot true, live_patch_available false. live_patch_notes: 'No live-patch mechanism for FortiOS; remediation is upgrading to FortiOS 7.2.4, 7.0.10, or 6.4.12 (or later), a firmware upgrade that reboots the appliance...' affected: 'Fortinet FortiOS, whose CLI command handling allows path traversal, letting a local privileged attacker read and write files on the underlying Linux system.' attack_vector: 'An attacker with privileged FortiOS CLI access issues crafted commands that traverse outside the intended directory...' The AU-Essential-8-Patch gap states 'Essential 8 patch cadence rarely tracks firewall firmware and cannot help against a 0-day used in targeted intrusions before the 2023-03 fix.'",
|
|
67846
|
+
"gap_closes": [
|
|
67847
|
+
"AU-Essential-8-Patch",
|
|
67848
|
+
"NIST-800-53-SI-2",
|
|
67849
|
+
"ISO-27001-2022-A.8.8"
|
|
67850
|
+
]
|
|
67851
|
+
},
|
|
67852
|
+
{
|
|
67853
|
+
"id": "NEW-CTRL-031",
|
|
67854
|
+
"name": "FIREWALL-EGRESS-TELEMETRY-SEPARATE-TRUST-ZONE",
|
|
67855
|
+
"description": "The UK-CAF-B4 gap on this entry says the appliance's own configuration controls cannot constrain what a super-admin does through the flawed CLI path handling, and the SI-2 gap says the fix does not detect what was already planted. Both leave the same question open on a FortiGate: where does the record of that activity live, given the actor holds super-admin on the device that produces it. For this CVE the control means FortiOS admin and event logs, configuration-change records and traffic logs are forwarded to a collector in a separate trust zone — different management plane, different credentials, different authentication path — so that the evidence of the exposure window survives an actor with full administrative control of its source. The behaviour to key on is what the packet documents rather than a generic exploit signature: privileged CLI sessions issuing commands whose path arguments resolve outside the intended directory, and the file writes and configuration changes that follow them onto the underlying Linux filesystem. That is the observable shape of this flaw — no crash, no unsigned binary loading through a supported interface, nothing that a firmware version check would surface — which is why an alert keyed to appliance crashes or to named exploit tooling would miss an intrusion behaving exactly as the packet describes. Preconditions, and they are the reason this control is worth stating rather than assumed. The forwarding must already have been in place before the compromise: configured afterwards it produces nothing about the window that matters, and on the units most exposed to a targeted actor it is precisely the configuration most often left at defaults. The forwarding configuration itself lives on the device, so an actor with super-admin can disable it — which makes the log stream going quiet an event the off-box collector must alarm on rather than absorb. And this neither prevents the traversal nor removes an implant already planted; it bounds the intrusion to detection-and-response time and preserves the record that the firmware-integrity work and credential rotation are then scoped from.",
|
|
67856
|
+
"evidence": "Packet: affected 'Fortinet FortiOS, whose CLI command handling allows path traversal, letting a local privileged attacker read and write files on the underlying Linux system.' attack_vector describes an attacker with privileged FortiOS CLI access issuing crafted commands that traverse outside the intended directory to read and write files on the underlying Linux system. active_exploitation_notes: UNC3886 'used the path traversal to write files to FortiGate devices and maintain persistence (THINCRUST/CASTLETAP implants) with super-admin privileges'; exploitation was espionage, not ransomware. The UK-CAF-B4 gap states 'CAF B4 system-security hardening of a firewall cannot prevent a super-admin from writing arbitrary files via the flawed CLI path handling; the traversal turns legitimate privileged CLI access into filesystem write, which B4's configuration controls do not constrain.' The NIST-800-53-SI-2 gap states the fix 'does not by itself detect or remove implants already planted in firmware.'",
|
|
67857
|
+
"gap_closes": [
|
|
67858
|
+
"NIST-800-53-SI-2",
|
|
67859
|
+
"UK-CAF-B4"
|
|
67860
|
+
]
|
|
67861
|
+
}
|
|
67862
|
+
]
|
|
66807
67863
|
},
|
|
66808
67864
|
"CVE-2021-39144": {
|
|
66809
67865
|
"name": "XStream Remote Code Execution Vulnerability",
|