Dozent: Okay, jetzt, da wir Veil geladen haben, können
Sie sehen, dass es uns die Hauptbefehle zeigt, die Sie
mit Veil verwenden können.
Der erste Befehl lautet also: Sie können von einem zum anderen
beenden. Sie können Informationen eingeben, um Informationen zu einem bestimmten Tool abzurufen.
Sie können auflisten, um die verfügbaren Tools aufzulisten.
Sie können Updates durchführen,
um Veil zu aktualisieren, und dies
ist sehr, sehr wichtig, da Sie immer
auf dem neuesten Stand sein möchten, wenn es darum geht,
Antivirenprogramme zu umgehen, und dann ein Tool verwenden können.
Beginnen wir jetzt mit der Verwendung
von Veil Evasion, und wenn wir das tun, wird es
so einfach und Sie können es besser verstehen.
Jetzt hat Veil zwei Hauptwerkzeuge und wenn wir sie auflisten, können
Sie sie sehen.
Wir haben also das
erste, das uns interessiert, das heißt Ausweichen.
Und das ist derjenige, der für
uns nicht nachweisbare Hintertüren erzeugt.
Und dann gibt es noch das zweite, das als
Kampfmittel bezeichnet wird, und dieses Tool generiert die Nutzlasten, die beim Ausweichen verwendet
werden, sodass Sie es als Helfer oder sekundäres Tool ansehen können.
Was ich unter einer Nutzlast verstehe, ist, dass
eine Nutzlast der Teil des Codes der Hintertür ist, der das
Zeug tut, das wir
wollen, das das Böse tut, wenn Sie sagen wollen.
Es ist also
der Teil des Codes, der
uns eine umgekehrte Verbindung
ermöglicht. Es ist der Teil des Codes, der etwas auf
den Zielcomputer herunterlädt und ausführt. Es ist der Teil des
Codes, mit dem wir erreichen können, was wir wollen, indem wir diese Datei ausführen.
Und das wird klarer, wenn wir anfangen, Veil zu benutzen.
Im Moment sind wir daran interessiert, Ausweichmanöver zu verwenden,
also werden wir 1 verwenden, weil dies das erste Tool ist, das die Nummer
eins ist.
Und wie Sie sehen, haben wir jetzt Veil Evasion geladen, und
wie ich bereits sagte, war dies ein eigenständiges Tool, das
Sie gerade selbst heruntergeladen haben.
Aber jetzt haben sie alles zusammen.
Wie Sie sehen, erhalten wir beim
Laden von Veil Evasion als erstes die
Befehle, die Sie mit diesem Tool ausführen können.
Das erste, was wir
tun möchten, ist, alle verfügbaren Nutzlasten aufzulisten.
Und wie Sie sehen, gibt es
41 verschiedene Nutzlasten, und alle diese Nutzlasten folgen einem bestimmten Benennungsmuster.
Und Sie können zum Beispiel
sehen, dass wir dieses Beispiel hier nehmen,
weil das die Nutzlast ist, die ich verwenden werde.
Sie sehen, dass die Nutzlast in drei Teile unterteilt ist.
Der erste Teil hier bezieht sich auf die Programmiersprache,
in die die Payload eingebunden werden soll.
Wir haben also den bösen Code und dann
wird der böse Code in eine bestimmte
Programmiersprache eingebunden, die der Zielcomputer versteht.
Und genau hier können Sie sehen, dass diese Payload die Programmiersprache
go verwendet. Wir können sehen, dass diese c verwendet. Wir können sehen,
dass diese cs verwenden. Wir haben Python,
wir haben Powershell und wir haben Ruby,
wenn wir nach unten scrollen.
Der zweite Teil der Nutzlast ist wirklich wichtig.
Dies ist der Typ der Nutzdaten, der Typ des
Codes, der auf dem Zielcomputer ausgeführt wird.
In diesem Beispiel verwenden
wir Meterpreter, eine von Metasploit entwickelte Nutzlast.
Metasploit ist ein riesiges Framework für das Hacken und ermöglicht
es Ihnen, eine Menge Dinge zu tun.
In diesem Vortrag konzentrieren wir
uns jedoch auf die Erstellung einer Nutzlast namens
Meterpreter. Das Coole an Meterpreter ist, dass sie im
Speicher ausgeführt wird und es
uns ermöglicht, zwischen Systemprozessen zu migrieren, sodass
die Nutzlast oder die Backdoor von einer normalen Seite
ausgeführt werden können B. wie Explorer, und diese Nutzlast ermöglicht es uns,
die vollständige Kontrolle über den Zielcomputer zu erlangen, sodass
wir durch das
Dateisystem navigieren, Dateien herunterladen, hochladen, das
Mikrofon einschalten und sogar die Webcam einschalten
können Verwenden Sie diesen Computer, um andere Computer
zu hacken, installieren Sie einen Key-Logger, Sie können buchstäblich
alles tun, was Sie sich vorstellen können.
Und all dies wird aus dem
Speicher eines normalen Prozesses auf dem System ausgeführt.
Es ist also sehr
schwer zu erkennen und hinterlässt nicht viele Spuren.
Das ist der Grund, warum es eine wirklich coole Nutzlast ist
und wir sie oft benutzen werden.
Der dritte Teil des Namens
ist die Methode, mit der die Verbindung hergestellt wird.
Also, und hier können wir sehen, dass dies rev https heißt.
Rev steht also für reverse und https ist das Protokoll, mit
dem die Verbindung hergestellt wird.
Wir können also sehen, dass
diese Nutzdaten eine umgekehrte https-Verbindung herstellen.
Sie können dieses Beispiel
hier sehen, es erstellt eine umgekehrte http-Verbindung.
Und wir haben
diesen hier, der eine Reverse-TCP-Verbindung herstellt.
Was ich jetzt mit "umgekehrt" meine, ist, dass die Verbindung
vom Zielcomputer zu meinem eigenen Computer hergestellt wird.
Ich werde also keine Verbindung zu
dem Computer herstellen, den ich hacken möchte. Sobald
die Person auf die Hintertür doppelklickt, wird
die Hintertür vom Zielcomputer aus wieder
mit mir verbunden.
Das Coole daran ist,
dass ich Antivirenprogramme umgehen kann, da die
Verbindung nicht zum Zielcomputer hergestellt wird, sondern zu meinem Computer
zurückkehrt. Es ist also buchstäblich so,
als würde die Zielperson nur eine
Verbindung zu einer normalen Website herstellen .
Ich werde einen Port verwenden, den Websites verwenden, der 80 oder 8080 ist.
Wenn die Person also die Verbindung analysiert, sieht es
so aus, als ob sie
sich buchstäblich nur mit einer normalen Website verbindet.
Wenn sich der Zielcomputer hinter einem Router
oder einem Netzwerk befindet, funktioniert dies ebenfalls, da
die Verbindung vom
Zielcomputer zu mir kommt, anstatt
dass ich eine Verbindung zum Zielcomputer herstelle.
Die Verwendung einer umgekehrten Verbindung ist wirklich sehr, sehr
praktisch, und ich denke, dies ist
wirklich die einzige praktische Möglichkeit, Zugang zu einem Computer zu erhalten, da es
eine Menge Dinge gibt, die Sie daran hindern können,
eine Verbindung zu einem bestimmten Computer herzustellen.
Dies ist das allgemeine Benennungsmuster.
Hier sehen Sie einige Nutzlasten wie
diese, die nicht diesem allgemeinen Benennungsmuster entsprechen.
Und im Grunde genommen können
Sie sehen, dass diese Payloads Shellcode-Inject heißen.
Sie erstellen also eine Payload, die Ihre
anderen Payloads injiziert.
Es wird also eine normale Nutzlast
erstellt, und diese normale
Nutzlast injiziert beispielsweise eine Meterpreter-Nutzlast.
Dies geschieht nun, um zu versuchen, mehr Sicherheit
zu umgehen, aber normalerweise umgehen sie nicht mehr Dinge als
die normalen Nutzlasten. Deshalb verwende
ich hier normalerweise
nur eine der normalen Nutzlasten.
Also, das ist es, hier geht es nur um die Nutzlast, sorry, ich
habe ein bisschen Zeit gebraucht, aber ich wollte sicherstellen,
dass ihr das Benennungsmuster versteht. Ich wollte, dass
ihr versteht, was eine Nutzlast ist und den Unterschied
zwischen a reverse und ein
bind und ein tcp payload, auf diese
weise wird der rest des kurses für dich
klarer und ich
kann einfach die payload verwenden, die ich
will, ohne zu erklären, was es ist.
In der nächsten
Vorlesung werden wir nun eine Nutzlast generieren
und diese gegen Antivirenprogramme testen.