Docent: Oké, nu we Veil geladen hebben, zie je
dat het ons de belangrijkste commando's toont die je
met Veil kunt gebruiken.
Het eerste commando is dus exit om af te sluiten, info om informatie
te krijgen over een specifiek gereedschap, lijst om de beschikbare
gereedschappen op te sommen.
U kunt Veil bijwerken, en dit
is zeer, zeer belangrijk omdat
u altijd up-to-date wilt zijn als het
gaat om het omzeilen van anti-virus programma's,
en dan kunt u een hulpmiddel gebruiken.
Laten we nu beginnen met Veil Evasion,
en terwijl we het doen, wordt het zo makkelijk
en zul je het meer begrijpen.
Nu, Veil heeft twee hoofdtools en als we een lijst maken, zul
je ze kunnen zien.
Dus, we hebben de eerste, waar we in
geïnteresseerd zijn, die ontwijking heet.
En dat is degene die ondetecteerbare
backdoors voor ons genereert.
En dan is er de tweede, die ordnance heet, en dit gereedschap
genereert de payloads die worden gebruikt bij ontwijking, dus je kunt
dit zien als een helper of een secundair gereedschap.
Nu, wat ik bedoel met een payload is, een payload
is het deel van de code van de achterdeur, dat de dingen doet
die we willen, dat de kwade
dingen doet als je wilt zeggen.
Het is dus het deel van
de code dat ons een omgekeerde
verbinding geeft, het is
het deel van de code dat iets downloadt en uitvoert op de doelcomputer,
het is het deel van de code dat ons in staat stelt te bereiken
wat we willen door dat bestand uit te voeren.
En dit zal duidelijker worden als we Veil gaan gebruiken.
Nu zijn we geïnteresseerd in het gebruik van ontwijking,
dus gebruiken we 1, want dat is het eerste gereedschap, nummer 1.
En zoals je kunt zien hebben we nu Veil Evasion geladen,
en zoals ik al eerder zei, was dit een standalone tool
die je alleen downloadde.
Maar nu hebben ze het allemaal samengevoegd.
Zoals je ziet is het eerste wat we krijgen
als we Veil Evasion laden de commando's
die je kunt uitvoeren op dit gereedschap.
Het eerste wat we willen doen is een
lijst maken met alle beschikbare ladingen.
En zoals u kunt zien, hebben we 41 verschillende
payloads en al deze payloads volgen een bepaald naamgevingspatroon.
En je kunt bijvoorbeeld zien, laten
we dit voorbeeld hier nemen, want dat
is de payload die ik ga gebruiken.
U ziet dat de lading in drie delen is verdeeld.
Het eerste deel verwijst naar de programmeertaal
waarin de payload wordt verpakt.
Dus, we hebben de slechte code, en de slechte code
wordt verpakt in een bepaalde programmeertaal
die de doelcomputer begrijpt.
En hier kun je zien dat deze payload go programmeertaal
gebruikt, deze gebruikt c, deze gebruikt cs, we
hebben python, powershell en
ruby als we naar beneden scrollen.
Het tweede deel van de lading is echt belangrijk.
Dit is het type payload, het type code dat op de doelcomputer
zal worden uitgevoerd.
In dit voorbeeld gebruiken we Meterpreter,
een payload ontworpen door Metasploit.
Metasploit is een groot raamwerk voor hacking
en je kunt er veel mee doen.
Maar in deze lezing concentreren we
ons op het maken van een payload genaamd Meterpreter,
en het leuke van Meterpreter is dat het in het geheugen draait
en het ons in staat stelt te migreren
tussen systeemprocessen, dus we kunnen de payload
of de backdoor laten draaien vanuit een normaal proces zoals
Explorer bijvoorbeeld, en deze payload zal ons in staat stellen volledige controle
te krijgen over de doelcomputer, dus we kunnen door het bestandssysteem navigeren,
bestanden downloaden, uploaden, de microfoon
aanzetten, de webcam aanzetten, zelfs de computer
gebruiken om andere computers te hacken, een key logger
installeren, je kunt letterlijk alles doen wat je maar kunt
bedenken.
En dit alles wordt uitgevoerd vanuit het geheugen
van een normaal proces op het systeem.
Het is dus moeilijk op te sporen
en het laat niet veel sporen achter.
Daarom is het een hele, hele gave lading die
we veel zullen gebruiken.
Het derde deel van de naam is de methode die
wordt gebruikt om de verbinding tot stand te brengen.
Dus, en hier kunnen we zien dat dit rev https heet.
Dus, rev staat voor reverse, en https is het protocol dat wordt gebruikt om de
verbinding tot stand te brengen.
Dus we kunnen zien dat deze payload een
omgekeerde https-verbinding maakt.
Je ziet deze hier bijvoorbeeld, hij
maakt een omgekeerde http-verbinding.
En we hebben deze hier die een
omgekeerde tcp-verbinding maakt.
Nu, wat ik bedoel met omgekeerd is dat de verbinding komt
van de doelcomputer naar mijn eigen computer.
Dus, ik maak geen verbinding met de computer
die ik wil hacken, wat er gaat gebeuren is dat zodra de persoon
dubbelklikt op de achterdeur, de achterdeur weer
verbinding maakt met mij vanaf de doelcomputer.
Het leuke hiervan is dat ik anti-virusprogramma's
kan omzeilen omdat de verbinding niet naar
de doelcomputer gaat, maar terugkomt op mijn computer, dus
het is letterlijk alsof de doelpersoon
gewoon verbinding maakt met een normale
website.
Ik ga een poort gebruiken die websites gebruiken, 80 of 8080, dus nogmaals,
als de persoon de verbinding analyseert, zal het lijken
alsof ze letterlijk gewoon verbinding
maken met een normale website.
Ook als de doelcomputer verborgen is achter een router,
of achter een netwerk, zal dit opnieuw werken, omdat
de verbinding van de doelcomputer
naar mij komt, in plaats van dat ik verbinding
maak met de doelcomputer.
Het gebruik van een omgekeerde verbinding is dus echt
heel handig en ik denk dat dit echt de enige
praktische manier is om toegang te krijgen tot een computer, want er is een heleboel
dat je ervan kan weerhouden om verbinding te maken
met een bepaalde computer.
Dit is het algemene naamgevingspatroon.
Je ziet een aantal payloads zoals deze hier, die
niet dat algemene naamgevingspatroon volgen.
En in principe, wat deze payloads doen is bijvoorbeeld
deze genaamd shellcode injecteren, dus wat het gaat
doen is, het gaat een payload creëren die je andere payload
injecteert.
Dus, het gaat een normale payload creëren,
en die normale payload injecteert
bijvoorbeeld een Meterpreter payload.
Nu, het doet dit om te proberen meer beveiliging te omzeilen,
maar meestal zullen ze niet meer dingen omzeilen dan de normale payloads
zouden omzeilen, dus dat is waarom ik
meestal gewoon een van de normale
payloads hier gebruik.
Zo, dit is het, dit is alles over de payloads, sorry dat het wat lang
duurde, maar ik wilde er zeker van zijn dat jullie
het naamgevingspatroon begrijpen, ik wilde
dat jullie begrijpen wat een payload is, en het
verschil tussen een reverse en
een bind, en een tcp payload, zo wordt
de rest van de cursus duidelijker voor jullie
en kan ik gewoon de payload
gebruiken die ik wil zonder uit te leggen
wat het is.
In de volgende lezing gaan
we een payload genereren, en die testen tegen
anti-virus programma's.