Cybersecurity glossary

What is BEAST (CVE-2011-3389)?

Learn what the BEAST attack (CVE-2011-3389) is, how TLS 1.0 CBC IV predictability enabled chosen-plaintext decryption, who was affected, and which modern TLS practices eliminate the risk.

Cryptography and TLSUpdated July 20, 2026
Also known asBEASTBrowser Exploit Against SSL/TLSCVE-2011-3389BEAST SSL/TLS attack

Definition

BEAST (Browser Exploit Against SSL/TLS), tracked as CVE-2011-3389, is a practical chosen-plaintext attack against TLS 1.0 and earlier when using CBC-mode ciphers, exploiting predictable initialization vectors to decrypt HTTPS traffic byte by byte.

Why BEAST mattered

In 2011, researchers Thai Duong and Juliano Rizzo demonstrated that a long-known cryptographic weakness in TLS 1.0 CBC mode could be turned into a practical browser attack. They called it BEAST: Browser Exploit Against SSL/TLS. The issue was assigned CVE-2011-3389.

HTTPS was already the default trust boundary for cookies, passwords, and session tokens. BEAST showed that encrypting HTTP was not enough if the TLS version and cipher construction leaked enough structure for an attacker to recover plaintext under realistic conditions. The impact was not a remote unauthenticated crash. It was a confidentiality break against traffic many organizations treated as fully protected.

BEAST became a turning point for web TLS operations. It forced browsers, libraries, CDNs, and site operators to confront obsolete protocol versions, temporary cipher preferences, and the difference between “TLS is enabled” and “TLS is configured safely.”

What CVE-2011-3389 actually is

TLS records encrypted with CBC mode need an initialization vector (IV) for each record. In TLS 1.0 and earlier, the IV for the next record was effectively the previous ciphertext block. An attacker who could see the ciphertext therefore knew the next IV before choosing new plaintext.

That predictability enables a classic chosen-plaintext CBC attack. If the attacker can also cause the victim’s browser to send attacker-influenced plaintext on the same TLS connection, they can test guesses for secret bytes, such as cookie values, by observing whether the resulting ciphertext matches expectations. Repeated carefully, the attack recovers secrets one byte at a time.

Vulnerable surface

TLS 1.0 and earlier sessions using CBC cipher suites, commonly found in HTTPS deployments of that period.

Attack goal

Recover confidential plaintext from an encrypted channel, especially HTTP cookies and session identifiers.

Required position

Network visibility of ciphertext plus the ability to inject or induce chosen plaintext from the victim browser.

Root cause

Predictable CBC IVs in older TLS versions, not a bug in one vendor’s proprietary extension.

How the BEAST attack works

The attack combines cryptography with browser and network control. It is best understood as a sequence rather than a single malformed packet.

1

Obtain a MITM vantage point

The attacker positions themselves where they can observe the victim’s TLS ciphertext, for example on a shared network.

2

Identify a secret boundary

HTTP headers such as Cookie often place high-value secrets at predictable offsets inside TLS application data.

3

Induce chosen plaintext

Malicious content causes the browser to send requests whose bodies or paths include attacker-controlled bytes on the same TLS session.

4

Exploit predictable IVs

Because the next IV is known from prior ciphertext, the attacker crafts plaintext blocks that test a guess for one secret byte.

5

Compare ciphertext outcomes

Matching ciphertext confirms a correct guess. The attacker repeats the process across successive bytes.

6

Reuse recovered secrets

A recovered session cookie can be replayed to impersonate the user on the target site.

In practice, same-origin policy, request formatting constraints, and performance made exploitation non-trivial. The demonstration still mattered: the cryptographic construction was weak enough that browser vendors and protocol designers had to respond.

BEAST is often mentioned alongside later SSL/TLS incidents. They share a theme—retire broken constructions—but the mechanisms differ.

PropertyBEASTPOODLEHeartbleed
IdentifierCVE-2011-3389CVE-2014-3566CVE-2014-0160
Primary targetTLS 1.0 CBC IV predictabilitySSL 3.0 CBC padding behaviorOpenSSL heartbeat memory disclosure
Failure typeChosen-plaintext confidentiality breakPadding oracle / downgrade exposureServer memory leak
Typical secret at riskHTTPS cookies and session tokensEncrypted HTTP content and cookiesPrivate keys, passwords, session material
Modern fix directionDisable TLS 1.0; use TLS 1.2+Disable SSL 3.0; avoid fragile CBC pathsPatch OpenSSL; rotate exposed secrets

Who was affected

Any HTTPS site that still negotiated TLS 1.0 CBC suites was in scope when BEAST was disclosed. That included large consumer sites, enterprise portals, and intermediates that terminated TLS. Browsers were both a delivery channel for chosen plaintext and part of the mitigation path once vendors shipped record-splitting defenses.

The highest practical concern was theft of session cookies for sensitive applications: webmail, banking, administrative consoles, and single sign-on portals. If an attacker recovered an authentication cookie, they could often impersonate the user without breaking the password itself.

Historical mitigations

Responses arrived in layers because upgrading the entire internet at once was impossible.

Protocol upgrades

TLS 1.1 and TLS 1.2 introduced explicit IVs for CBC records, removing the predictable-IV flaw BEAST relied on.

1/n-1 record splitting

Browsers and libraries split records so attackers could no longer align guesses against a known IV as easily.

Temporary cipher preference

Some operators briefly preferred RC4 to avoid CBC. That workaround later became undesirable as RC4 weaknesses mounted.

Disable obsolete TLS

Long-term defense is refusing SSL and TLS 1.0/1.1 so clients cannot negotiate the vulnerable construction.

Temporary mitigations bought time. Durable safety came from protocol hygiene: modern TLS versions, modern cipher suites, and no silent downgrade paths.

What practitioners should do today

For current systems, BEAST is primarily a configuration and inventory problem rather than an active exploit against fully patched modern stacks.

  • Disable SSL 2.0, SSL 3.0, and TLS 1.0 on public and internal TLS terminators whenever client compatibility allows.
  • Prefer TLS 1.2 and TLS 1.3 only; treat TLS 1.1 as legacy and remove it on a planned timeline.
  • Verify CDNs, load balancers, API gateways, and reverse proxies enforce the same minimum protocol version as origin servers.
  • Scan for legacy clients that still require TLS 1.0 and migrate them instead of keeping weak protocols enabled forever.
  • Monitor for protocol downgrade attempts and unexpected cipher suite negotiations in TLS telemetry.
  • Follow NIST and industry guidance for approved TLS versions and cipher suites in regulated environments.
  • Do not rely on 'HTTPS is on' as proof of confidentiality; validate version, ciphers, certificates, and HSTS separately.
  • Document exceptions with owners, expiry dates, and compensating controls when a legacy endpoint cannot yet be upgraded.

Lessons BEAST left for TLS operations

BEAST reinforced several durable lessons. Cryptographic attacks move from academic notes into browser proof-of-concepts. Compatibility pressure keeps old protocol versions alive long after safer replacements exist. Temporary cipher workarounds can create the next crisis. Defenders need inventory of every TLS terminator, not only the primary website certificate on the marketing domain.

It also clarified the relationship between network attacks and application secrets. A session cookie in an HTTP header is an application credential riding inside a transport tunnel. If the tunnel’s cryptography is outdated, application session design inherits that weakness.

The practical takeaway

BEAST (CVE-2011-3389) showed that TLS 1.0 CBC encryption with predictable IVs could leak HTTPS secrets under chosen-plaintext conditions. The lasting fix is not a special BEAST signature on a firewall. It is retiring obsolete TLS versions, enforcing modern protocol baselines, and treating transport configuration as a first-class security control.

If your services already require TLS 1.2 or 1.3 end to end, classic BEAST should not be an active concern. If any edge still offers TLS 1.0 “just in case,” that exception recreates the historical attack surface and should be closed with the same urgency organizations once applied in 2011.

Related security terms

Frequently asked questions

What is the BEAST attack in simple terms?

BEAST is a technique that can decrypt parts of HTTPS traffic protected by TLS 1.0 CBC ciphers. It works because older TLS versions made the next record's initialization vector predictable, allowing an attacker who can inject chosen plaintext and see ciphertext to recover secrets such as session cookies one byte at a time.

What does CVE-2011-3389 refer to?

CVE-2011-3389 is the vulnerability identifier associated with the BEAST attack against SSL/TLS CBC-mode encryption in TLS 1.0 and earlier. It describes the practical risk of recovering plaintext from encrypted web sessions under attacker-controlled conditions.

Does BEAST still affect modern websites?

Modern stacks that require TLS 1.2 or TLS 1.3, and that disable TLS 1.0 and SSL, are not exposed to classic BEAST. Residual risk remains mainly on legacy systems that still negotiate obsolete protocol versions or CBC suites from that era.

What did BEAST need to succeed?

An attacker generally needed a man-in-the-middle network position, the ability to cause the victim browser to send chosen plaintext over the vulnerable TLS connection, and visibility of the resulting ciphertext. Browser same-origin restrictions and protocol upgrades made reliable exploitation harder over time.

How was BEAST mitigated?

Mitigations included preferring RC4 at the time as a temporary workaround, applying 1/n-1 record splitting in browsers and libraries, upgrading servers and clients to TLS 1.1 or later with proper IV handling, and eventually disabling TLS 1.0 entirely.

Is BEAST the same as Heartbleed or POODLE?

No. Heartbleed leaked memory through an OpenSSL heartbeat bug. POODLE targeted SSL 3.0 CBC padding oracle behavior. BEAST specifically abused predictable CBC IVs in TLS 1.0 and earlier during chosen-plaintext conditions.

What should operators check today?

Confirm that servers disable SSL and TLS 1.0/1.1 where possible, prefer TLS 1.2 and TLS 1.3, monitor cipher suite configuration, and verify clients and intermediaries cannot force a downgrade to vulnerable protocol versions.

References

Explore authoritative guidance and frameworks related to beast (cve-2011-3389).

Explore every security definition

Return to the glossary to search by term, alias, starting letter, or security category.

Browse glossary