Your web browser is out of date. Update your browser for more security, speed and the best experience on this site.

Denk als een hacker en bescherm je bedrijf tegen inbraken

Wanneer hackers binnen willen in de servers van een bedrijf komt er heel wat minder hocus-pocus aan de pas dan Hollywood ons doet geloven. Axxes-developer Lorenzo De Bie geeft een inkijk in The Hacker Methodology.

In films zijn hackers altijd mannen in een hoodie, die achter hun computer staren naar groene letters en cijfers op een zwarte achtergrond. Ze hoeven maar op twee toetsen te drukken om binnen te dringen in het mainframe van de vijand, waarna de wereld gered is of ten onder gaat.

Lorenzo De Bie is Open Source en Linux Consultant bij Axxes en weet dat het in werkelijkheid niet zo verloopt. Hij verdiept zich namelijk in het offensieve Luik van cybersecurity, en kent The Hacker Methodology als geen ander. Hoewel iedere hacker een eigen werkwijze heeft, is de achterliggende structuur steeds dezelfde.

Deel dit artikel
Infrastructure IT
Pexels pixabay 60504

Passief en actief informatie verzamelen

In een notendop gaan de meeste hackers een applicatie gebruiken om te zien hoe ze geschreven is, om vervolgens na te gaan waar de developer in de fout zou kunnen zijn gegaan. Dat doen ze door continu pistes te onderzoeken, informatie te verzamelen, en linken te leggen tussen bepaalde vondsten.

Alles begint met een passieve verzameling van informatie. Hackers zoeken in openbare platformen, waaronder sociale media, naar info over hun slachtoffer. Sommige bedrijven zijn bijvoorbeeld zo onoplettend dat ze foto's publiceren waarop paswoorden te zien zijn. Ook publieke databases met gelekte credentials zijn een interessante bron.

Een andere manier om mogelijke zwakheden bloot te leggen is de actieve verzameling van informatie door gebruik te maken van scanners en andere enumeration tools. Een tool die hackers daarvoor gebruiken is de poortscanner nmap. Door een IP of hostname in te voeren kijkt nmap welke poorten open zijn en welke services erop draaien. Zo weten hackers welke services er zijn en waar ze verder moeten zoeken. Veelvoorkomende services zijn SSH en HTTP. In interne netwerken wordt HTTP nog veel gebruikt bij webservers, aangezien er meestal nog een firewall voor staat. HTTPS wordt enkel tussen de eindgebruiker en de rand van het interne netwerk gebruikt. Poort 80 mag je dus niet vergeten! Een andere techniek is directory busting: nagaan welke pagina’s bestaan en zoeken waar ‘de deur op een kier staat’

Van iedere server krijgt men ook extra informatie te zien, bijvoorbeeld over de gedeployde technology stack en het versienummer. Zo kunnen hackers nagaan of de draaiende versies publieke CVE’s heeft.

Verbindingen leggen

Door die passieve en actieve verzameling van data te combineren, krijg je als hacker een goed beeld van je doelwit. Daarna probeert men verbindingen te leggen en informatie te combineren om zo meer toegang te krijgen dan oorspronkelijk de bedoeling was. De manier waarop dat gebeurt verschilt van hacker tot hacker. Een techniek die men vroeger vaak gebruikte is log poisoning, waarbij men malicieuze data in log files kan krijgen, om zo de server over te nemen. Developers zijn niet blij als ze error messages krijgen, hackers net wel. Zo’n bericht vertelt namelijk heel wat over wat er mogelijk is op een server. Kunnen ze alle files bekijken? En de access logs?

Een manier om malieuze data in de logfiles te krijgen is via de user-agent van je browser. De user-agent wordt by default automatisch opgeslaan in de access logs van de meeste webservers. Als hackers deze vervangen door wat PHP code en dan de LFI-aanval gebruiken om de logfile te lezen, zal de PHP code uitgevoerd worden en kunnen we de server overnemen.

De stap die hackers daarna neemt verschilt van doelwit tot doelwit, op basis van de informatie die men in de vorige fase heeft verzameld. Er hoeft niet altijd een configuratie- of programmeerfout aanwezig te zijn om een server over te nemen. Soms kunnen meerdere services die op dezelfde server draaien tegen elkaar gebruikt worden. Een support forum waar iedere case een email krijgt waarop je makkelijk kan antwoorden kan misbruikt worden om een account aan te maken op een privé communicatiekanaal voor developers. Hierin staan meestal gevoelige gegevens zoals credentials voor servers die dan ook weer misbruikt kunnen worden.

Een van de laatste stappen is het proberen verhogen van de privileges op de gekraakte server. Een veelgebruikte techniek is het op zoek gaan naar programma's die ze als administrator of root mogen uitvoeren. Dit doen ze door sudo -l uit te voeren of op zoek te gaan naar setuid binaries. Setuid binaries in Linux laten gebruikers toe programma’s als andere users uit te voeren. Als dit op een juiste manier geconfigureerd staat is dit geen probleem, maar soms kiest men voor de makkelijkste maar minder veilige manier.

Als dat het geval is, kunnen hackers op de website GTFObins terecht. Daar vinden ze een lijst van veelvoorkomende software en de uitleg hoe ze hun rechten kunnen verhogen. Een commando dat men vaak gebruikt is tar, om archieven te maken. Bedrijven gebruiken het in backups die als superuser moeten uitgevoerd worden, en geven het uit gemakzucht sudo rechten of het setuid bit. Zo kunnen hackers een root shell bekomen en zonder veel moeite volledige toegang tot je server verkrijgen. Je bent met andere woorden gehackt.

Microsoft Teams image 25

Ga aan de slag!


Wil je zelf leren hoe hackers denken? Een ideaal platform om mee te beginnen is TryHackMe, waar je challenges of walkthroughs van bepaalde hacks kan doen. Wil je een stap verder gaan? Check dan HackTheBox of neem deel aan een CTF contest. Dat zijn wedstrijden waarin je een bepaalde uitdaging krijgt en op zoek moet naar vlaggen door dingen te hacken.

Onze Insights meteen in je mailbox? Schrijf je dan in!

Lorenzo De Bie

Lorenzo De Bie

INFRA Consultant

Benieuwd hoe je een gratis iPhone kan krijgen?

Lees dan de Insight van Cyriel!

Zo krijg je een gratis iPhone!
Axxes