Docent: In deze lezing wil ik u kennis
laten maken met een heel gaaf raamwerk dat BeEF heet.
BeEF staat voor Browser Exploitation Framework.
Hiermee kunnen we een aantal aanvallen uitvoeren op gehaakte browsers waarmee
we het doelsysteem verder kunnen exploiteren om wachtwoorden
te stelen of zelfs volledige toegang of controle
over dit systeem te krijgen.
Dus, hier ben
ik op mijn Kali machine en we kunnen beginnen met,
en om dat te doen klik ik op al mijn applicaties.
Ik typ BeEF, en ik
klik op het eerste icoontje hier, rundstart.
U kunt de runderstop gebruiken om het te stoppen,
maar nu willen we het raamwerk gewoon starten.
Dus we gaan op de start klikken.
Omdat dit de eerste keer is dat we het raamwerk gebruiken, vraagt
het ons om een wachtwoord in te stellen voor de standaard gebruiker.
Dus ga je gang en kies een willekeurig wachtwoord.
En let op: als u het wachtwoord intypt,
ziet u de tekens niet op het scherm.
Dit is een beveiligingsfunctie, zodat de mensen om u heen uw wachtwoord
niet kunnen zien.
Dus nu heb ik mijn wachtwoord getypt,
maar je ziet niets op het scherm.
Ik druk gewoon op Enter,
en dan zal het automatisch het
BeEF Framework voor me starten.
En het zal automatisch Firefox starten en naar
de webinterface gaan die we kunnen gebruiken
om toegang te krijgen tot BeEF en de gehaakte
browsers te bedienen.
Zoals u kunt zien,
is het eerste wat hij ons vraagt,
een gebruikersnaam en een wachtwoord om in te loggen op deze webinterface.
De standaardgebruiker is BeEF, B-E-E-F, en het wachtwoord
is het wachtwoord dat we zojuist
in terminal hebben ingesteld.
Ik druk op Enter om in te loggen.
En zoals u kunt zien, hebben we de hoofdgebruikersinterface van BeEF.
U ziet hier links vooral de
Online en de Offline Browsers.
In de Online Browsers ziet
u de browsers die nu op BeEF zijn aangesloten en die
u kunt beheren.
En in de Offline Browsers
ziet u de browsers die u voorheen
kon bedienen.
Dus browsers die je eerder aan BeEF hebt gekoppeld.
Om een browser aan BeEF te koppelen en hem
te kunnen besturen en er opdrachten op uit te voeren,
moet je die browser een specifieke
JavaScript-code laten uitvoeren.
Dus als we teruggaan naar het terminalvenster
dat voor ons begon en naar boven scrollen, zie je dat het
ons de JavaScript-code geeft die we moeten gebruiken
om browsers te koppelen aan rundvlees.
Zodra dit stukje code wordt uitgevoerd op
een webbrowser, zie
je die webbrowser hier in de Online Browsers, en
kun je een heleboel echt coole commando's uitvoeren waarmee je
valse inlogpagina's kunt laten zien,
valse updates kunt laten zien en
zelfs volledige controle over het doelsysteem kunt krijgen.
Omdat BeEF JavaScript gebruikt, werkt
het op elke webbrowser die JavaScript ondersteunt,
ongeacht op welk apparaat deze webbrowser draait.
Dus het werkt in principe op alle moderne browsers.
Het werkt dus tegen telefoons, tablets, smart tv's, alle
besturingssystemen die op pc's worden
gebruikt, zoals Linux, Windows of SX enzovoort.
Letterlijk elke browser die JavaScript kan
uitvoeren, kan deze code uitvoeren.
En daarom kunnen we die browser koppelen aan BeEF en alle
leuke dingen doen die je in de volgende lezingen
zult leren.
Dus nu hangt het echt van jou en je verbeelding
af hoe je dit stukje code op onze webbrowser
gaat laten draaien.
Als je de man in het midden kunt
worden, kun je DNS-spoofing doen en verzoeken omleiden naar een
pagina die deze hele code bevat.
Of u kunt dit JavaScript injecteren in elke webpagina die het doelwit
laadt, met behulp van de JavaScript-injectiemethoden
die we hebben geleerd zodra u de vraag
in het midden krijgt.
U kunt ook misbruik maken van een XSS-kwetsbaarheid en deze
code injecteren in een kwetsbare webpagina.
En je leert hoe je dat doet
in het gedeelte over website hacken,
of je kunt social engineering gebruiken
en een doelwit ertoe aanzetten een webpagina te laden
die onze hele code bevat.
Dus alles wat je moet doen is een manier bedenken om een doel te krijgen,
om een pagina te laden die de hook JavaScript code bevat.
Nu, in deze lezing,
ga ik je een heel eenvoudige haakmethode laten zien
die echt goed is voor ons om er zeker van te zijn
dat ons systeem werkt zoals verwacht.
En deze pagina kan ook gebruikt worden
met methode 1 en 4.
Omdat we een HTML pagina krijgen
die de hele code bevat.
Daarom kun je ofwel DNS spoofen naar deze pagina of ze social
engineeren naar deze pagina en zodra
ze deze pagina laden, wordt
de hook code uitgevoerd op hun browser en worden
ze dus gehaakt aan BeEF en kunnen
we alle commando's uitvoeren die BeEF ons
laat uitvoeren.
Dus, laten we teruggaan naar BeEF.
En zoals ik al
zei, dit is de code die we onze doelbrowsers willen laten
laden of uitvoeren.
Dus ik ga het kopiëren en ik ga mijn
bestandsbeheer openen.
En ik wil naar mijn web root.
U kunt dus op Ctrl + L van uw toetsenbord drukken
of hier op de padbalk klikken en gewoon
op de forward slash drukken.
Dit opent een pad-tekstvak, waarin
u het pad kunt typen waarnaar u wilt gaan.
En ik wil naar /var/www/html.
Nu, zoals we eerder hebben
geleerd, is dit de locatie waar de bestanden
voor uw webserver worden opgeslagen,
en de index. html is het bestand dat standaard
wordt geladen wanneer iemand uw IP in zijn webbrowser laadt.
Dus ik ga rechts klikken op de index. html en ik ga het
openen met een tekstverwerker.
En ik verwijder dit allemaal en
plak de haakcode hier in.
Er is één ding dat ik wil veranderen,
de IP hier.
Ik ga dit IP vervangen door het IP van mijn Kali machine.
Zoals we eerder hebben geleerd,
kunt u het IP krijgen met het F config commando.
Dus ik ga het nu niet doen,
je zou dit nu al moeten weten.
Dus ik weet dat mijn IP 10 is. 20. 14. 207.
En dat is het, we zijn klaar om te gaan.
Dus als iemand nu mijn IP adres laadt, wat 10
is. 20. 14. 207, ik zal
er een webserver aan laten werken,
die de index zal laden. html standaard.
En wanneer dit bestand wordt geladen, wordt de BeEF hook code geladen
en wordt de browser gekoppeld aan BeEF,
waardoor ik een aantal leuke commando's kan uitvoeren.
Voordat we deze pagina laden, moeten
we onze webserver starten.
En zoals we eerder hebben geleerd, kunnen we dit
doen door service apache2 start uit te voeren.
En nu draait mijn Apache webserver.
En als ik hier naar mijn Windows machine
ga en gewoon naar het adres van mijn webserver ga, wat
10 is. 20. 14. 207.
Nu krijgen we, zoals je ziet, een lege pagina.
Dat is prima, want onze pagina bevat niets anders dan de code, je zou eigenlijk
een echte HTML-pagina kunnen hebben
en de hele code aan het eind of aan het begin kunnen zetten.
Maar dit is voorlopig genoeg om te testen.
En als we hier teruggaan en naar de BeEF interface gaan, als we naar de online browsers kijken,
zie je dat we het IP adres van mijn doel
hebben, dat is 10.
20. 14. 206.
Dit is het IP-adres van de Windows-machine.
En als ik er nu op klik, zie je een aantal
tabbladen waarmee we verschillende
dingen kunnen doen.
In de home en de details zie je
dat we informatie
hebben over de browser van het doelwit.
U kunt bijvoorbeeld
zien dat er geen VLC plugin is geïnstalleerd, het ondersteunt
web socket.
Als u naar beneden scrolt, ziet u de user
agent, die Mozilla/5 is. 0, het draait op Windows
NT, 64 bit architectuur.
Nogmaals, als je naar beneden blijft gaan,
kun je de cookies zien, je kunt de hostnaam zien, je kunt de schermgrootte
zien en veel andere informatie die nuttig kan zijn
bij het exploiteren van een doelwit.
Op het tabblad Logs zie je logs van
alle gebeurtenissen die in de browser hebben
plaatsgevonden.
En als je commando's uitvoert,
zie je hier logs van die commando's.
De commandobuis is degene die we het meest gaan
gebruiken in de volgende lezingen.
Hiermee kunt u verschillende commando's uitvoeren op het doelwit.
Zoals ik al zei, kun je commando's uitvoeren om informatie te verzamelen, je
kunt commando's uitvoeren om andere JavaScript-codes te injecteren,
je kunt commando's uitvoeren om wachtwoorden te stelen met behulp van valse aanmeldingen,
je kunt valse updates uitvoeren en je doelwit ertoe brengen de achterdeur te downloaden
en hun computer te hacken.
Er zijn heel veel leuke dingen die je kunt doen,
en ik zal je in de volgende lezingen een paar van de beste
laten zien.
In het tabblad proxy kunt u een verslaafde
browser configureren en gebruiken als proxy.
De XSSRays laten zien of de haakpagina
XSS-kwetsbaarheden bevat.
En het tabblad Netwerk
geeft u een overzicht van het huidige netwerk.
Dus nu kun je zien dat het
doelwit Windows draait.
We hebben zijn browser, die gekoppeld is aan BeEF.
En van hieruit kunnen we, zoals ik al zei, een aantal
echt coole commando's lanceren die gebruikt
kunnen worden om zoveel dingen te doen en het
doelsysteem verder uit te buiten.
Eenmaal klaar met het
gebruik van BeEF, kunt u op Uitloggen klikken
om uit te loggen en dan naar uw alle toepassingen gaan, zoek
naar BeEF en klik op beef stop om de dienst die op de achtergrond
draait te stoppen.
Dus dat was het voor deze lezing.
Ik wilde u een kort overzicht geven van BeEF.
En in de volgende lezingen zullen
we zien hoe we het kunnen gebruiken om referenties te stelen,
screenshots te maken, informatie te verzamelen
en zelfs volledige controle te krijgen over gehaakte browsers.