Man-in-the-Middle Attack

In cryptography, a man-in-the-middle attack (MITM) is an attack in which an attacker is able to read, insert and modify at will, messages between two parties without either party knowing that the link between them has been compromised. The attacker must be able to observe and intercept messages going between the two victims. The MITM attack is particularly applicable to the original Diffie-Hellman key exchange protocol, when used without authentication.

The need for an additional transfer over a secure channel

With the exception of the Interlock Protocol, all cryptographic systems that are secure against MITM attacks require an additional exchange or transmission of information over some kind of secure channel. Many key agreement methods with different security requirements for the secure channel have been developed.

Possible subattacks

The MITM attack may include one or more of:

  • eavesdropping, including traffic analysis and possibly a known-plaintext attack
  • chosen ciphertext attack, depending on what the receiver does with a message that it decrypts
  • substitution attack
  • replay attacks
  • denial of service attack. The attacker may for instance jam all communications before attacking one of the parties. The defense is for both parties to periodically send authenticated status messages and to treat their disappearance with paranoia.
  • phishing attacks, where victims are duped into entering their details into a proxy website that imitates a genuine site (e.g., an online bank). By acting as a go-between to the genuine website, the proxy website allows the victims to log in and conduct business as usual without raising suspicion.

MITM is typically used to refer to active manipulation of the messages, rather than passively eavesdropping.

Public-key cryptography example using public-key encryption

Suppose Alice wishes to communicate with Bob, and that Mallory wishes to eavesdrop on the conversation, or possibly deliver a false message to Bob. To get started, Alice must ask Bob for his public key. If Bob sends his public key to Alice, but Mallory is able to intercept it, a man-in-the-middle attack can begin. Mallory can simply send Alice a public key for which she has the private, matching, key. Alice, believing this public key to be Bob's, then encrypts her message with Mallory's key and sends the enciphered message back to Bob. Mallory again intercepts, deciphers the message, keeps a copy, and reenciphers it (after alteration if desired) using the public key Bob originally sent to Alice. When Bob receives the newly enciphered message, he will believe it came from Alice.

This example shows the need for Alice and Bob to have some way to ensure that they are truly using the correct (for example, authenticated) public keys of each other. Otherwise, such attacks are generally possible, in principle, against any message sent using public-key technology. Fortunately, there are a variety of techniques that help defend against MITM attacks.

Defenses against the attack

The possibility of a man-in-the-middle attack remains a serious security problem, even for many public-key based cryptosystems. Various defenses against MITM attacks use authentication techniques that are based on:

  • Public keys
  • Stronger mutual authentication
  • Secret keys (high information entropy secrets)
  • Passwords (low information entropy secrets)
  • Other criteria, such as voice recognition or other biometrics

The integrity of public keys must generally be assured in some manner, but need not be secret, whereas passwords and shared secret keys have the additional secrecy requirement. Public keys can be verified by a Certificate Authority, whose public key is distributed through a secure channel (for example, with web browser or OS installation).

MITM in quantum cryptography

MITM attacks are a potential problem in quantum cryptography as well. Recently, hybrid protocols (classical + quantum) have been proposed to deal with it, especially for the three-stage quantum cryptography protocol.

Beyond cryptography

MITM should be seen as a general problem resulting from the presence of intermediate parties acting as proxy for clients on either side. If they are trustworthy and competent, all may be well; if they are not, nothing will be. How can one distinguish the cases? By acting as proxy and appearing as the trusted client to each side, the intermediate attacker can carry out much mischief, including various attacks against the confidentiality or integrity of the data passing through it.

  Man-in-the-Middle Attack    
In cryptography, a man-in-the-middle attack (MITM) is an attack in which an attacker is able to read, insert...

  Security Through Obscurity    
In cryptography and computer security, security through obscurity (sometimes security by obscurity)...

  Security Token    
A security token (or sometimes a hardware token, authentication token or cryptographic token) may be...

  Single Sign-On    

Single sign-on (SSO) is a specialized form of software authentication that enables a user to authenticate once and...


  Two-Factor Authentication    

Two-factor authentication (T-FA) is any authentication protocol that requires two independent ways to establish...