session:extra:heartbleed-poc
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| session:extra:heartbleed-poc [2017/06/17 15:52] – ↷ Page moved and renamed from session:12_hb to session:extra:heartbleed-poc Razvan Deaconescu | session:extra:heartbleed-poc [2020/07/19 09:49] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | = 0x0Cb. Heartbleed Proof of Concept | + | ====== 0x0Cb. Heartbleed Proof of Concept |
| - | == Information Leak | + | ===== Information Leak ===== |
| In the context of binary exploitation, | In the context of binary exploitation, | ||
| Line 14: | Line 14: | ||
| This section will go through a Proof-of-Concept exploit that will enable us to leak a normal user's session cookie for a vulnerable server (localhost). | This section will go through a Proof-of-Concept exploit that will enable us to leak a normal user's session cookie for a vulnerable server (localhost). | ||
| - | == Environment Setup | + | ===== Environment Setup ===== |
| To setup a minimal environment, | To setup a minimal environment, | ||
| - | === Download Nginx & OpenSSL | + | ==== Download Nginx & OpenSSL |
| * [[https:// | * [[https:// | ||
| * [[http:// | * [[http:// | ||
| - | === Compile Nginx & vulnerable OpenSSL | + | ==== Compile Nginx & vulnerable OpenSSL |
| <code bash> | <code bash> | ||
| Line 72: | Line 72: | ||
| </ | </ | ||
| - | === Basic SSL website | + | ==== Basic SSL website |
| Prepare a self-signed certificate: | Prepare a self-signed certificate: | ||
| Line 130: | Line 130: | ||
| You should see the page live at https:// | You should see the page live at https:// | ||
| - | == Vulnerability | + | ===== Vulnerability |
| General information about this vulnerability can be obtained from [[http:// | General information about this vulnerability can be obtained from [[http:// | ||
| Line 180: | Line 180: | ||
| If the attacker sends a '' | If the attacker sends a '' | ||
| - | == Exploit | + | ===== Exploit |
| A TLS channel is established after the initial handshake part of the protocol. Since the Heartbeat RFC specifies the a Heartbeat Request can be send at any time, we simply have to initiate a TLS connection with a '' | A TLS channel is established after the initial handshake part of the protocol. Since the Heartbeat RFC specifies the a Heartbeat Request can be send at any time, we simply have to initiate a TLS connection with a '' | ||
session/extra/heartbleed-poc.1497714739.txt.gz · Last modified: by Razvan Deaconescu
