{"id":"CVE-2026-54135","title":"AirSane is a SANE frontend, and a scanner server that supports Apple's AirScan protocol","summary":"AirSane is a SANE frontend, and a scanner server that supports Apple's AirScan protocol. Versions prior to 0.4.12 have a vulnerability in the custom HTTP server implementation of AirSane that allows a remote unauthenticated attacker to c…","severity":"high","cvss":7.5,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","cwe":["CWE-400","CWE-770"],"vendor":"SimulPiscator","product":"AirSane","affected":["AirSane < 0.4.12"],"published":"2026-09-11","updated":"2026-09-14","sourceUpdated":"2026-09-14T19:17:27.203","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-54135","references":[{"url":"https://github.com/SimulPiscator/AirSane/commit/129cc3bf7258251a0a694dee7741285b59d88f9f","label":"security-advisories@github.com"},{"url":"https://github.com/SimulPiscator/AirSane/releases/tag/v0.4.12","label":"security-advisories@github.com"},{"url":"https://github.com/SimulPiscator/AirSane/security/advisories/GHSA-p5hv-3m79-452q","label":"security-advisories@github.com"},{"url":"https://github.com/SimulPiscator/AirSane/security/advisories/GHSA-p5hv-3m79-452q","label":"134c704f-9b21-4f2e-91b3-4a467353bcc0"}],"tags":["nvd","cve.org","exploit-available"],"epss":0.00551,"epssPercentile":0.44955,"exploitAvailable":true,"ssvc":{"exploitation":"poc","automatable":"yes","technicalImpact":"partial","timestamp":"2026-09-14T18:47:39.306737Z"},"ingestedAt":"2026-09-14T11:11:19.886Z","slug":"CVE-2026-54135","body":"## Overview\n\nAirSane is a SANE frontend, and a scanner server that supports Apple's AirScan protocol. Versions prior to 0.4.12 have a vulnerability in the custom HTTP server implementation of AirSane that allows a remote unauthenticated attacker to cause a Denial of Service (DoS) via memory exhaustion (OOM). In httpserver.cpp, the HttpServer::Request::content function reads the Content-Length header and directly passes this value to std::string::resize() without any upper-bound validation or safe parsing. An attacker can send an HTTP POST request with an artificially large Content-Length value. This forces the daemon to attempt allocating gigabytes of memory, resulting in a std::bad_alloc exception and immediately crashing the AirSane process. Additionally, providing non-numeric characters in the Content-Length header leads to undefined behavior (NaN to integer conversion) due to the lack of error handling during header parsing. Version 0.4.12 patches the issue.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"midnight","depthScore":53,"depthScoreParts":{"impact":41.3,"likelihood":0.1,"exploitation":12,"ransomware":0},"changes":[{"seq":203169,"id":"CVE-2026-54135","ts":1789413240210,"field":"exploit_available","old":"false","new":"true"}]}