Hoi, ik ben Thomas van der Berg, IT trainee bij Yacht en vorig jaar voor 6 maanden geplaatst bij een pentestteam in Leeuwarden. Wij probeerden applicaties te hacken en zwaktes te ontdekken zodat we deze konden melden aan developers die deze vervolgens konden fixen. Ik heb bij dit team onder andere geleerd hoe je webapplicaties aan kunt vallen met Burp, broncodes kunt doorzoeken voor beveiligingsfouten en beveilingstesten te automatiseren.
Om bij te blijven ben ik onlangs met een aantal oud-collega's naar Hack in the Box gegaan, een grote hackerconferentie in Amsterdam.
EMET
We startten met een - zeer technische - talk van de CommSec door Niels Warnars. EMET staat voor "Enhanced Mitigation Experience Toolkit" en is ontwikkeld door Microsoft om beveiliging te bieden tegen exploits, vooral voor legacy software.
Beveiling hacken
Met reverse engineering vond Niels een implementatiefout waardoor de checks die EMET doet om te beveiligen, nooit worden uitgevoerd. Meer details lees je in zijn blogpost. Een inspirerende talk, die me direct duidelijk maakte dat er nog veel te leren valt over exploits.
Inspiratie op CommSec-village
Na deze talk maakten we een rondje door CommSec-village waarbij interessante applicaties passeerden. Zo kwamen we langs een camera en computer van Nvidia die live de omgeving scande, objecten herkende en ze op een scherm liet zien. Hackers, seating, en 'hackable mobile phone's' waren een aantal categorieën die hij herkende. Daarnaast stonden verschillende Nederlandse hackerspaces. Zij hadden allerlei coole producten gemaakt met o.a. arduino's, oude terminals en LED-schermen. We spraken met mensen van het Google Incident Response team, dat reageert op mogelijke aanvallen op Googles services. Ook TOOOL, een groep die zich richt op het openen van sloten zonder sleutels, was aanwezig. Hierover later meer.
Capture the flag
Elders was een CTF gaande. Een CTF (capture the flag) is een competitie waarbij mensen gaan hacken om geheime codes te vinden, die als bewijs dienen dat ze ergens zijn binnen gekomen. Meestal gaat het erom wie als eerste alle codes (flags) heeft gevonden. De CTF was al begonnen toen we aankwamen en we zagen teams van verschillende landen aan het werk op hun laptops. Het zag er indrukwekkend uit en voor mij opnieuw een bevestiging dat ik nog veel kan leren.
Lockpicking
Ook bij Madison Ghurka kon je met CTF prijzen winnen. De eerste vlag kreeg je door een kistje zonder sleutel te openen. Het enige wat je kreeg waren paperclips. Om meer te leren over lockpicking, gingen we langs TOOOL. De basis bleek heel simpel: Zet wat druk en probeer de pinnetjes naar beneden te krijgen. Middels een glazen slot kon je bij TOOOL zien hoe het slot van binnen werkt, met 8 pinnetjes
die naar beneden gaan als de sleutel erin zit (of als je een stuk metaal goed erin krijgt). Ze hadden ook dure lockpicksets, maar voor simpele sloten waren die niet nodig. Het slot van het kistje bij Madison Ghurka bleek heel simpel open te krijgen. Met twee verbogen paperclips had ik hem open. Simpel dus, maar gaaf om te leren! De kist bevatte vervolgens een code en een hint voor de volgende uitdaging. Die moest je uitvoeren met een computer. Helaas had ik mijn laptop niet bij me. Een aantal anderen waarmee ik kwam wel, zij gingen ermee aan de slag.
Pwning Banks
Na de lunch bij Kentucky Friend Chicken op de Dam (helaas hadden we niet betaald voor de luxe lunch van het Krasnapolsky Hotel waar het event plaatsvond) volgden we een interessante talk 'Pwning Banks' van Miika Turkia, een Finse pentester van NIXU. Hij vertelde over een pentest die hij 'jaren geleden' voor een bank had gedaan. Het was een humoristisch verhaal. Hij kreeg twee weken en bijna geen informatie (een 'black box' test), en had al snel door dat de klant het verslag vooral voor marketingdoeleinden wilde gebruiken. De bank was getest en helemaal veilig. Hij had één doelwit-IP-adres, en die had maar één port open: 443 met een webserver die alleen een loginpagina bevatte. Zonder logingegeven kon hij daar niet langs. Toch vond hij een manier om code uit te voeren op de server, met behulp van slechte configuratie van Microsoft Frontpage Extensions. Vanaf daar kon hij zijn controle uitbreiden over de DMZ en het interne netwerk door verschillende zwaktes uit te buiten. Na een week had hij zijn eerste bevindingen naar de klant gestuurd en vertelden ze hem dat het zo wel genoeg was. Meer hoefden ze niet te weten! Jammer dat ze er zo in stonden.
Hij vertelde vervolgens hoe het hacken/pentesten van banken sindsdien veranderd is. Je leest er alles over in zijn presentatie. Één van de interessante aspecten was dat je antivirus eenvoudig kunt ontwijken door programma's niet op te slaan op de schijf maar te runnen vanuit het RAM-geheugen. Die wordt bijna nooit gecheckt door antivirus-software. Zo kun je tegenwoordig bijvoorbeeld Mimikatz runnen om wachtwoorden uit de Windows-cache te halen zonder dat het opgemerkt wordt.
Na nog meer uitdagingen aan te gaan, een lego-android en bouwblokken te ontvangen van Google en een heleboel stickers te verzamelen gingen we weer.
We hebben niet alles op de conferentie gezien maar ik ben blij met de nieuwe inzichten en de inspiratie om meer te leren binnen het relatief kleine maar diepgaande hackingswereldje. Een goede ervaring en een aanrader voor mensen die inhoudelijk bezig zijn met application security.
Meer weten?
Check de volledige stream van de CommSec-Track met presentaties en de slides van alle Hack-in-the-Box presentaties: