How to Fix CVE-2023-28204: Out-of-Bounds Memory Access in Apple Safari
By Sai Kiran Pandrala
| Severity | CVSS 0.0 |
|---|---|
| Actively exploited? | Yes, listed in CISA KEV (added 2023-05-22, federal due date 2023-06-12) |
| Affected | macOS: unspecified < version 13.4; Safari: unspecified < version 16.5; watchOS: unspecified < version 9.5; iOS and iPadOS: unspecified < version 15.7; iOS and iPadOS: unspecified < version 16.5 |
| Fixed in | macOS: 13.4; Safari: 16.5; watchOS: 9.5; iOS and iPadOS: 15.7; iOS and iPadOS: 16.5 |
| Type (CWE) | Not verified, see official advisory |
This advisory bundle also covers: CVE-2023-32373, CVE-2023-32409. The patched build below closes all sibling CVEs in the same vendor release.
What is CVE-2023-28204?
An out-of-bounds read was addressed with improved input validation. This issue is fixed in watchOS 9.5, tvOS 16.5, macOS Ventura 13.4, iOS 15.7.6 and iPadOS 15.7.6, Safari 16.5, iOS 16.5 and iPadOS 16.5. Processing web content may disclose sensitive information. Apple is aware of a report that this issue may have been actively exploited.
A successful exploit gives the attacker the impact described in the vendor advisory. The fix is to install the patched build from Apple listed in the table above and confirm the running version after the upgrade.
Am I affected?
Check your installed version of Apple Safari against the Affected row above. If your build sits within any of those ranges, treat the system as vulnerable until patched.
If you do not have the version handy, pull it the same way you usually would for Safari: the management console's About page, the CLI's version command, or the package manager record for the installed binary. The vendor advisory linked in the references section is the authoritative source.
How to fix CVE-2023-28204
- Read the vendor advisory at https://support.apple.com/en-us/HT213758 for the build matrix that matches your installation.
- Identify the patched build for your major version: macOS: 13.4; Safari: 16.5; watchOS: 9.5; iOS and iPadOS: 15.7; iOS and iPadOS: 16.5.
- Back up configuration before upgrading (export running config, snapshot the VM, or take a database dump as appropriate for your platform).
- Apply the patched build using the vendor's documented upgrade path (in-place upgrade, package update, or replacement image).
- Restart the service so the new code is loaded; verify the running version reports the patched build number.
Apply the iOS / iPadOS update
# Check the current iOS build on a tethered device (libimobiledevice)
ideviceinfo -k ProductVersion
ideviceinfo -k BuildVersion
# Required iOS / iPadOS build is listed in the vendor advisory: https://support.apple.com/en-us/HT213758
# On-device: Settings -> General -> Software Update -> Download and Install
# Vendor advisory: https://support.apple.com/en-us/HT213758
# Confirm fleet iOS devices have updated (Intune example)
Connect-MgGraph -Scopes Device.Read.All
Get-MgDeviceManagementManagedDevice -Filter "operatingSystem eq 'iOS'" |
Where-Object { $_.OSVersion -lt "<fixed-version-from-advisory>" } |
Select-Object DeviceName, OSVersion, UserPrincipalName
Verify the fix landed
# 1. Confirm the running version matches the fixed-in version from the advisory:
# https://support.apple.com/en-us/HT213758
# Use the platform-specific version probe above.
# 2. Re-scan with your vulnerability scanner (Nessus, Qualys, Tenable, OpenVAS).
# The scanner should no longer flag CVE-2023-28204 on the patched target.
# 3. Inspect recent service / kernel logs for crash loops or rollback events.
journalctl -u <service> --since "10 minutes ago"
dmesg --since "10 minutes ago"
If you can't patch immediately
Check the vendor advisory's "Workarounds" section. If the advisory lists no official workaround, patching is the only remediation. Compensating controls that reduce attack surface in the meantime: restrict network access to the management interface to a small admin allowlist, disable the affected feature if it is not in use, and monitor the relevant logs for the exploitation patterns referenced in the advisory.
How to verify the fix worked
- Confirm the running version matches the patched build from the vendor advisory.
- Re-run your vulnerability scanner; the CVE should clear.
- Review logs from before the patch for the exploitation signatures described in the advisory, and treat any matches as a possible compromise (rotate credentials, isolate the host, full IR).
Frequently asked questions
Is CVE-2023-28204 being exploited right now?
Yes. It is listed in the CISA Known Exploited Vulnerabilities catalog (added 2023-05-22), which means CISA has evidence of active exploitation.
What is the CVSS score for CVE-2023-28204?
CVSS 0.0. Use this with your own asset exposure to set patching priority (internet-exposed systems first).
Do I need to take the system offline to patch?
It depends on the platform. Many appliances support hitless upgrade in HA pairs (upgrade standby, fail over, upgrade primary). Servers and applications usually need a service restart. Plan a maintenance window if HA is not available.
What if my version is not listed as affected?
Cross-check against the vendor advisory linked below. The CVE record reflects the vendor's official affected-products list at publication time; later-discovered variants are added through the same advisory or a follow-up CVE.
References
- Official vendor advisory: https://support.apple.com/en-us/HT213758
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2023-28204
- CISA KEV catalog: https://www.cisa.gov/known-exploited-vulnerabilities-catalog
- https://support.apple.com/en-us/HT213762
- https://support.apple.com/en-us/HT213764
- https://support.apple.com/en-us/HT213765
- https://support.apple.com/en-us/HT213757
*This guide was assembled from the official vendor advisory, NVD record, and CISA KEV listing on 2026-05-25. Always confirm against the vendor advisory before applying changes in production.*