cbcvebase.
CVE-2009-3555
published 2009-11-09

CVE-2009-3555: The TLS protocol, and the SSL protocol 3.0 and possibly earlier, as used in Microsoft Internet Information Services (IIS) 7.0, mod_ssl in the Apache HTTP…

PriorityP187critical9.8CVSS 3.1
AVNACLPRNUINSUCHIHAH
ITWEXPLOITVulnCheck KEVInitial access
Exploited in the wild
EPSS
87.26%
99.7th percentile
The TLS protocol, and the SSL protocol 3.0 and possibly earlier, as used in Microsoft Internet Information Services (IIS) 7.0, mod_ssl in the Apache HTTP Server 2.2.14 and earlier, OpenSSL before 0.9.8l, GnuTLS 2.8.5 and earlier, Mozilla Network Security Services (NSS) 3.12.4 and earlier, multiple Cisco products, and other products, does not properly associate renegotiation handshakes with an existing connection, which allows man-in-the-middle attackers to insert data into HTTPS sessions, and possibly other types of sessions protected by TLS or SSL, by sending an unauthenticated request that is processed retroactively by a server in a post-renegotiation context, related to a "plaintext injection" attack, aka the "Project Mogul" issue.

Affected

59 ranges· showing 25
VendorProductVersion rangeFixed in
apachehttp_server<= 2.2.14
apsispound>= 0 < 2.6-6.12.6-6.1
apsispound>= 0 < 2.6-6.12.6-6.1
apsispound>= 0 < 2.6-6.12.6-6.1
canonicalubuntu_linux
canonicalubuntu_linux
canonicalubuntu_linux
canonicalubuntu_linux
canonicalubuntu_linux
canonicalubuntu_linux
citrixonline_plug-in_for_mac<= 10.0
citrixonline_plug-in_for_windows<= 11.2
citrixonline_plug-in_for_windows
citrixonline_plug-in_for_windows
citrixreceiver_for_iphone<= 1.0
citrixxenapp
citrixxendesktop
debianapache2< apache2 2.2.14-2 (bookworm)apache2 2.2.14-2 (bookworm)
debiandebian_linux
debiandebian_linux
debiandebian_linux
debiandebian_linux
debiandebian_linux
debianlighttpd< apache2 2.2.14-2 (bookworm)apache2 2.2.14-2 (bookworm)
debiannginx< apache2 2.2.14-2 (bookworm)apache2 2.2.14-2 (bookworm)

Detection & IOCsextracted from sources · hover to see the quote

urlhttps://www.exploit-db.com/exploits/10579
bytes
\x16\x03\x01\x00\x04\x00\x00\x00\x00
bytes
\x15\x03\x01\x00\x02\x00\x46
  • Detect TLS renegotiation MitM attack by monitoring for a TLS ClientHello message arriving over an already-established (encrypted) TLS channel — the PoC injects the victim's ClientHello inside an existing sslsock session via send_encapsulated(), which is anomalous in normal TLS flows.
  • Alert on TLS Hello Request records (handshake type 0x00) sent by a server mid-session, as the PoC uses send_hello_request() to trigger renegotiation on the victim side.
  • Flag TLS connections where a ChangeCipherSpec (record type 0x14) is observed from the client before the server has sent its own ChangeCipherSpec — indicative of the MitM handshake splicing technique used in this exploit.
  • Detect the attack by identifying a proxy/listener on port 8443 (default in the PoC) that performs TLS termination and re-initiates a new TLS handshake to the real server, injecting attacker-controlled plaintext before forwarding the victim's ClientHello.
  • The attacker must be network-adjacent (MitM position) to the TLS client or server; detection should focus on ARP spoofing, rogue gateway, or unexpected TCP session interception events co-occurring with TLS renegotiation.
  • Monitor for SSLv2 ClientHello fallback from clients (record layer high-bit set in first byte), which the PoC explicitly handles and which may indicate a downgrade attempt or tool fingerprint.
  • The PoC uses the tlslite Python library; presence of tlslite imports combined with custom TLS record manipulation in process memory or on disk may indicate attacker tooling.
  • Cisco confirmed that proof-of-concept code exploiting this vulnerability is publicly available; correlate IDS alerts for TLS renegotiation anomalies with OpenSSL version checks — unpatched OpenSSL instances are confirmed vulnerable.
  • The core attack primitive is injection of arbitrary plaintext at the start of a victim's authenticated session; detect by inspecting application-layer logs for unexpected prefixed data (e.g., rogue HTTP request lines) appearing before the legitimate client request on the server side.
  • ·wget attempts SSLv2 ClientHello by default, which the PoC handles but may alter exploit behavior compared to TLS 1.0/1.1 clients.
  • ·The --one-shot flag in the PoC causes it to only inject data on the first connection and forward all subsequent connections transparently, meaning repeated exploitation requires re-running the tool.
  • ·The attacker cannot decrypt or view the contents of the hijacked session — only data injection at session start is possible, limiting the attack to request smuggling or credential abuse scenarios.
  • ·The mitigation (renegotiation extension) is only effective when both client and server support it; the Ubuntu/NSS advisory notes the update 'will use it when the server supports it', meaning mixed environments remain partially exposed.

CVSS provenance

nvdv3.19.8CRITICALCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
nvdv2.05.8MEDIUMAV:N/AC:M/Au:N/C:N/I:P/A:P
osv5.8MEDIUM
vulncheck5.8MEDIUM
vendor_cisco5.8MEDIUM
vendor_debian5.8MEDIUM
vendor_redhat5.8MEDIUM
vendor_ubuntu5.8MEDIUM
CVEs like this are exactly what “Exploited This Week” covers.

Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.