How to Bypass HTTPS
Ein kostenloses Video-Tutorial von Zaid Sabih
Ethical Hacker, Computer Scientist & CEO of zSecurity
14 Kurse
962.668 Teilnehmer:innen
Lektionsbeschreibung
All the programs we built so far only work with HTTP pages, this is because data sent over HTTPS is encrypted.
This lecture will fix this issue and teach you how to downgrade HTTPS to HTTP.
Steige mit dem kompletten Kurs tiefer ins Thema ein
Learn Python & Ethical Hacking From Scratch
Write 20+ hacking programs to learn hacking and programming at the same time | No prior knowledge required
24:49:25 On-Demand-Video • Aktualisiert am November 2025
180+ videos (25 hours) on Python programming & ethical hacking
Write over 20 hacking and security programs
Learn 2 topics at the same time - Python programming & Ethical Hacking
No programming, hacking or Linux knowledge required
Write programs in Python 2 and 3
Write cross platform programs that work on Windows, Apple Mac OS & Linux
Have a deep understanding on how computer systems work
Install hacking lab & needed software (on Windows, Apple Mac OS and Linux)
Start from 0 up to a high-intermediate level
Learn by example, by writing exciting programs
Model problems, design solutions & implement them using Python
Have a strong base & use the skills learned to write any program even if its not related to hacking
Understand what is Hacking, what is Programming, and why are they related
Design a testing lab to practice hacking & programming safely
Interact & use the Linux terminal
Understand what MAC address is & how to change it
Write a python program to change MAC address
Use Python modules and libraries
Understand Object Oriented Programming
Write object oriented programs
Model & design extendable programs
Write a program to discover devices connected to the same network
Read, analyse & manipulate network packets
Understand & interact with different network layers such as ARP, DNS, HTTP ....etc
Write a program to redirect the flow of packets in a network (ARP spoofer)
Write a packet sniffer to filter interesting data such as usernames and passwords
Write a program to redirect DNS requests (DNS Spoofer)
Intercept and modify network packets on the fly
Write a program to replace downloads requested by any computer on the network
Analyse & modify HTTP requests and responses
Inject code in HTML pages loaded by computers on the same network
Downgrade HTTPS to HTTP
Write a program to detect ARP Spoofing attacks
Write payloads to download a file, execute command, download & execute, download execute & report .....etc
Use sockets to send data over TCP
Send data reliably over TCP
Write client-server programs
Write a backdoor that works on Windows, Apple Mac OS and Linux
Implement features in the backdoor such as file system access, upload and download files and persistence
Write a remote keylogger that can register all keystrikes and send them by Email
Interact with files using python (read, write & modify)
Convert python programs to binary executables that work on Windows, OS X and Linux
Convert malware to torjans that work and function like other file types like an image or a PDF
Bypass Anti-Virus Programs
Understand how websites work, the technologies used and how to test them for weaknesses
Send requests towebsites and analyse responses
Write a program that can discover hidden paths in websites
Write a program that can map websites and discover all links, subdomains, files and directories
Extract and submit forms using python
Run dictionary attacks and guess login information on login pages
Analyse HTML using Python
Interact with websites using Python
Write a program that can discover vulnerabilities in websites
Deutsch [autom.]
Jetzt. Bislang haben wir gelernt, wie man der Mann in der Mitte wird. Und sobald wir der Mann in der Mitte sind, haben wir gelernt, wie wir alle Daten, die gesendet werden, lesen können. So waren wir in der Lage, Benutzernamen, Passwörter, URLs, Bilder oder alles, was die Leute durchsuchen, zu lesen. Wir waren auch in der Lage, diese Daten zu ändern, so dass wir JavaScript-Code oder jede andere Art von Code in den Zielbrowser einspeisen konnten, wenn die Zielperson Websites aufruft. Dadurch konnten wir auch Downloads ersetzen und so viele coole Angriffe durchführen. Alles, was wir bisher gemacht haben, funktioniert jetzt nur noch mit HTTP-Seiten. Der Grund, warum es gegen HTTP funktioniert, ist, wie wir in den Daten sehen und HTTP wird als reiner Text gesendet. Es ist also ein Text, den Menschen wie wir lesen und verstehen können. Deshalb können wir, wenn wir der Mann in der Mitte sind, diesen Text lesen. Und wenn wir wollen, können wir diesen Text nach Belieben ändern. Das ist natürlich ein Problem, und dieses Problem wurde mit https behoben. Wie Sie wissen, verwenden die meisten Websites heutzutage HTTPS und alle guten Websites. Berühmte Websites verwenden HTTPS. Der Grund dafür ist, wie ich schon sagte, dass es sich um eine sicherere Version von HTTP handelt. Und im Grunde genommen bleibt die Implementierung von HTTP genau gleich. Alle Kopfzeilen und die Art und Weise, wie die Daten gesendet werden, bleiben also gleich. HTTP wird also nicht geändert, aber es wird eine zusätzliche Schicht über http hinzugefügt, von der das TSS stammt. Es handelt sich also um ein sicheres HTTP-Protokoll und diese zusätzliche Schicht verschlüsselt die Klartextdaten, die HTTP sendet. Wenn es also jemandem gelingt, der Mann in der Mitte zu werden, kann er diese Daten lesen. Aber die Daten werden Kauderwelsch sein. Sie ist für die Person, die die Verbindung abfängt, nicht lesbar. Es ist nur für den Benutzer und den Server sinnvoll, weil beide den Schlüssel haben und die verschlüsselten Daten entschlüsseln können. Hier ein Beispiel dafür, wie das aussehen könnte. Wenn wir nun zum Mann in der Mitte werden, indem wir ARP-Spoofing oder eine andere Methode verwenden, fließen die Anfragen bekanntlich durch den Hacker. Der Hacker leitet diese Daten an das Internet oder den Zugangspunkt weiter, dann an das Internet, und dann fließen die Antworten über den Hacker-Computer bis hinunter zum Opfer. Wenn eine Person oder ein Nutzer versucht, eine Website aufzurufen, und z. B. die BBC aufruft, ist das normalerweise der Fall. com, werden sie den Antrag abschicken. Diese erste Anfrage wird nicht über https gesendet, es sei denn, der Benutzer gibt vor der Website https ein. Und wir wissen, dass die meisten Nutzer, mich eingeschlossen, nicht wirklich https eingeben, sondern nur den Namen der Website. Wenn sie also zur BBC gehen wollen. com, werden sie einfach BBC eingeben. com. Die erste Anfrage wird also über HTTP gesendet. Der Hacker, der der Mann in der Mitte ist, empfängt dies und leitet es an das Internet weiter. BBC. com hingegen wird antworten: "Hey, warum redest du nicht mit mir über https? Es ist jetzt sicherer, da das Ziel weiß, dass BBC über https kommunizieren kann. Dann werden sie von nun an mit BBC über HTTPS kommunizieren. Daher werden alle Anfragen, die nach der ersten Anfrage folgen, über https gesendet. Der Hacker bekommt diese wieder als HTTPS ins Internet weitergeleitet. Der Server antwortet mit https und wie Sie jetzt sehen können, wird die gesamte Kommunikation, alle Anfragen und Antworten, über https gesendet. Wie ich bereits sagte, fügt HTTPS dem HTTP-Protokoll eine zusätzliche Verschlüsselungsebene hinzu. Dies bedeutet, dass die Klartextdaten, die wir normalerweise in HTTP lesen, verschlüsselt werden und für uns nicht von Nutzen sind. Jetzt, wo wir mittendrin sind, können wir all diese Daten sehen und sie lesen. Aber diese Daten werden Kauderwelsch sein. Es wird nicht lesbar sein, und deshalb können wir die Benutzernamen, die Passwörter, die URLs oder den HTML-Code nicht sehen, so dass wir nicht in der Lage sind, Code einzuschleusen oder diese Pakete zu verändern, weil wir sie gar nicht erst lesen können. Das ist wirklich schlecht für uns als Hacker, weil wir die ganze harte Arbeit gemacht haben, um der Mann in der Mitte zu werden. Und wenn wir der Mann in der Mitte sind, können wir diese sehr gute Position nicht nutzen. Glücklicherweise gibt es einen klugen Kopf namens Moxy, der sich seit langem mit der Umgehung von SSL befasst, und eine der Methoden, die er entwickelt hat, ermöglicht es uns, HTTPS zu umgehen und es auf HTTP herunterzustufen. Nun, Moxy hat nicht nur diesen Angriff entdeckt. Er hat auch ein großartiges Tool geschrieben, das dies für uns erledigt. Schauen wir uns also die ursprüngliche Anfrage noch einmal an. Und wie gesagt, normalerweise geben die Leute nicht https ein, wenn sie eine Webseite aufrufen, sondern z. B. BBC. COM. Dies geht über den Hacker-Computer, der bereits der Mann in der Mitte ist und auf dem auch ein Tool namens SQL Strip läuft, das den Angriff von Marks durchführt. Das Tool wird erkennen, dass es sich um eine HTTP-Anfrage handelt, und wird daher nicht damit spielen. Das ist gut für uns als Hacker, und es wird einfach an das Internet weitergeleitet. Nächster Punkt: BBC. com wird daraufhin sagen: "Hey, warum kommunizieren Sie nicht über https mit mir? Der SSL-Streifen wird dies nun erkennen. Und übrigens, wenn ich sage, dass BBC sagen wird: Hey, warum kommunizieren Sie nicht über https mit mir? Das Verfahren ist eigentlich etwas komplizierter als das hier, aber ich versuche, es so einfach wie möglich zu halten. SSL-Strip erkennt also, dass der Server versucht, den Zielen mitzuteilen, dass sie über https kommunizieren sollen, und entfernt alle Felder und alle Daten. Das bedeutet im Grunde, dass wir diese Verbindung auf eine HTTPS-Verbindung umstellen sollten. Die Antwort wird also als HTTPS-Antwort kommen, aber Sstl strip wird sie entfernen und nur die Teile, die wie eine normale HTTP-Antwort aussehen, an das Opfer weiterleiten. Bis jetzt weiß das Opfer nicht, dass der Server über https kommunizieren kann, daher wird es seine nächste Anfrage als normale HTTP-Anfrage senden. Hier ist der SSL-Streifen besonders clever, denn er verfolgt alle Websites, die eine HTTP-Antwort gesendet haben. Auch wenn das Opfer die HTTP-Anfrage bei der Kommunikation mit BBC sendet. com, SSL-Skript weiß, dass BBC. com kommuniziert gerne über https. Sobald die HTTP-Anfrage des Opfers oder des Ziels eingeht, wird die Verbindung in eine HTTPS-Verbindung umgewandelt. Was also BBC betrifft. com betroffen ist, teilte sie dem Ziel mit, dass du mit mir über HTTPS kommunizieren sollst, und das Ziel reagierte, indem es die Kommunikation über https aufnahm. Das ist also perfekt für BBC. com und für das Opfer. Soweit es sie betrifft. Sie denken nicht an die BBC. com können über https kommunizieren, weil sie jedes Mal, wenn sie eine HTTP-Anfrage senden, eine HTTP-Antwort erhalten. Sie glauben also nicht, dass BBC über https kommunizieren kann, denn wenn es das kann, dann wird es dem Opfer antworten und sagen: "Kommuniziere mit mir über https". Diese Konfiguration ist nun perfekt für uns. Als Hacker konnten wir die Anfragen und die Antworten im Klartext lesen, und niemand weiß, dass wir mit der Verbindung herumspielen. Die Zielperson denkt, dass die Website, auf die sie zuzugreifen versucht, nur HTTP unterstützt, und der Webserver freut sich auch, weil er über https mit dem kommuniziert, was er für seinen Client hält, aber der, mit dem er sich verbindet, sind in Wirklichkeit wir. Jetzt sind wir in der Lage, HTTP-Antworten aus dem Internet zu lesen, denn wir sind diejenigen, die die HTTP-Anfragen initiieren. Sie sehen also, dass der HTTPS-Zyklus nur zwischen uns und dem Internet oder dem Webserver stattfindet, nicht aber zwischen dem Opfer und dem Webserver. Eine weitere Funktion von Sstl strip ist, dass es beim Laden einer Webseite alle Links auf der Seite von HTTPS in normales HTTP umwandelt. Auf diese Weise werden, wenn der SSL-Streifen funktioniert, alle HTTPS-Verbindungen auf HTTP zurückgestuft. Da die Verbindungen auf HTTP heruntergestuft werden, bedeutet dies, dass die Daten im Klartext gesendet werden, was bedeutet, dass wir in der Lage sein werden, diese Daten zu lesen und zu ändern, wie wir es normalerweise mit HTTP tun. Es gibt jedoch eine Ausnahme von dieser Regel: Websites, die HTTPS verwenden, wie z. B. Facebook, PayPal und Gmail. Die Funktionsweise besteht darin, dass der Browser des Opfers am Zielort eine fest kodierte Liste von Websites erstellt, die nur über https geladen werden dürfen. Selbst wenn wir also alles Mögliche versuchen, um diese Verbindung auf HTTP herabzustufen, wird sich der Browser einfach weigern, diese Seite zu laden, weil er weiß, dass diese Seite über https geladen werden muss. Bislang gibt es keine praktische Möglichkeit, die Hosts zu umgehen. Das gab es, aber das wurde behoben. Ich werde Sie aber auf dem Laufenden halten, sobald es eine neue Möglichkeit gibt, das Problem zu umgehen.