secres:https-interception
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
secres:https-interception [2017/11/24 15:19] – orel | secres:https-interception [2024/03/18 15:06] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 3: | Line 3: | ||
Nous allons mettre en oeuvre le mécanisme d' | Nous allons mettre en oeuvre le mécanisme d' | ||
- | |||
- | === Démo === | ||
Considérons le réseau suivant : | Considérons le réseau suivant : | ||
Line 10: | Line 8: | ||
Client Web < | Client Web < | ||
+ | |||
+ | |||
+ | === Proxy SSL === | ||
+ | |||
+ | Voici le code de notre proxy SSL : | ||
<code python sslproxy.py> | <code python sslproxy.py> | ||
Line 16: | Line 19: | ||
import ssl | import ssl | ||
import sys | import sys | ||
- | import OpenSSL | ||
import time | import time | ||
import datetime | import datetime | ||
Line 124: | Line 126: | ||
</ | </ | ||
+ | === Génération des faux certificats === | ||
Commençons par générer un //fake CA// : | Commençons par générer un //fake CA// : | ||
Line 150: | Line 153: | ||
Voici les réponses à donner strictement : | Voici les réponses à donner strictement : | ||
- | + | ||
* La plupart des champs peuvent rester vides | * La plupart des champs peuvent rester vides | ||
* CN=nile.metal.fr | * CN=nile.metal.fr | ||
Line 169: | Line 172: | ||
import sys | import sys | ||
import pprint | import pprint | ||
- | import OpenSSL | + | import OpenSSL |
import time | import time | ||
import datetime | import datetime | ||
import os | import os | ||
import struct | import struct | ||
- | |||
# this certificate must be trusted by the client victim! | # this certificate must be trusted by the client victim! | ||
Line 278: | Line 280: | ||
</ | </ | ||
| | ||
+ | |||
+ | === Lancement du Proxy HTTPS === | ||
+ | |||
Lancement du proxy : | Lancement du proxy : | ||
Line 284: | Line 289: | ||
./ | ./ | ||
+ | === Mise en oeuvre avec un client === | ||
Sur le client : | Sur le client : | ||
Line 291: | Line 297: | ||
Pour ajouter le //fake// CA dans le store du client, il faut faire : | Pour ajouter le //fake// CA dans le store du client, il faut faire : | ||
- | | + | |
cp ca-cert.crt / | cp ca-cert.crt / | ||
dpkg-reconfigure ca-certificates | dpkg-reconfigure ca-certificates | ||
| | ||
+ | Puis, il suffit de faire : | ||
+ | | ||
+ | wget -4 https:// | ||
+ | | ||
+ | |||
+ | Video de démo par A. Guermouche : https:// | ||
+ | |||
==== Documentation ==== | ==== Documentation ==== | ||
- | Le code et la documentation du projet sont ici : https:// | + | Le code et la documentation du projet |
About HTTPS interception: | About HTTPS interception: |
secres/https-interception.1511536780.txt.gz · Last modified: 2024/03/18 15:05 (external edit)