ID.nl logo
Leren hacken met CTF challenges / Capture the flag
© Reshift Digital
Huis

Leren hacken met CTF challenges / Capture the flag

Hacken kun je leren, maar dit lukt alleen door veel proberen en experimenteren. Door hacken op de juiste manier, bij de juiste organisaties en in een veilige omgeving, help je mee om cybercrime tegen te gaan en mogelijk zelfs op te lossen, zonder de wet te overtreden. Eén van die manieren is een capture the flag-hackcompetitie. Lees hier meer overCTF challenges.

Security CTF’s oftewel capture the flag-competities hebben in deze context niks te maken met schietspelletjes op de computer of met het veroveren van de vlag bij het paintballen. Het zijn uitdagende opdrachten, ook wel challenges genoemd, waarbij je nieuwe hackingtechnieken kunt leren.

Vaak vinden CTF’s plaats tijdens een van de vele securityconferenties over de hele wereld. Al in 1996 werd er een CTF georganiseerd tijdens Def Con, een grote en bekende cyberbeveiligingconferentie die jaarlijks wordt gehouden in Las Vegas. Naarmate het internet groeide, groeide ook de CTF-competities en kon ook het internet gebruikt worden om waar dan ook ter wereld mee te doen. Tegenwoordig zijn CTF’s voor iedereen en overal bereikbaar en kun je online direct deelnemen.

In dit artikel leggen we je uit welke challenges er zijn en hoe je zelf CTF’s kunt vinden om te spelen, zowel online als offline.

Deelnemen aan een CTF

De meeste deelnemers aan CTF’s zijn hackers of hebben ervaring met hacken. Maar er komen ook veel studenten die een IT-opleiding volgen, al dan niet in de richting van security. Uiteraard is er ook niks mis mee om als volledige nieuweling mee te doen aan CTF’s, er is altijd wel iemand die je wil helpen of waar je bij kunt aanschuiven om mee te kijken en wat van kunt leren.

Uiteindelijk leer je wel het meest door het zelf te doen en proberen. Maar in het begin is het erg lastig, je weet niks en het lukt je maar niet om de challenges op te lossen. Maar aan het einde van elke CTF worden er write-ups gemaakt door de deelnemers, een volledige beschrijving van hoe anderen een challenge hebben weten op te lossen. Vaak voorzien van de gebruikte exploitcode, korte video’s of een complete stap-voor-stap YouTube-video. Deze zijn heel leerzaam en het beste kun je in het begin veel van deze beschrijvingen lezen en video’s bekijken om het zelf proberen na te doen, zodat je begrijpt hoe het moet en hoe het kan, en je daarna zelf mee aan de slag kunt.

Vaak zijn er aan de online CTF’s ook forums en IRC-kanalen verbonden. Hier worden de verschillende challenges besproken, maar altijd zonder dat er echt een hint of antwoord wordt prijsgegeven. Vragen naar flags, oplossingen of hints is niet netjes en vaak zelfs niet toegestaan. Zeker niet wanneer het voor anderen ook te lezen is.

Benodigdheden

Om mee te kunnen doen aan de online CTF’s, moet je weten waar ze te vinden zijn, vaak moet je een account aanmaken om in te kunnen loggen zodat ook je scores bijgehouden kunnen worden. Voor de Jeopardy stijl-challenges (uitleg verderop) heb je vaak niet meer nodig dan je computer of laptop en toegang tot de website. Bij de attack/defense- of penetratie-challenges heb je vaak een installatie van Kali nodig, het besturingssysteem voor hackingdoeleinden. Daarop zijn dan ook veel programma’s en tools te vinden die je nodig hebt. Overige tools kun je downloaden van bijvoorbeeld Github op het moment dat je ze nodig hebt.

Bekende tools zijn Nmap voor een eerste scan om informatie over porten en services te vinden, het Linux-tooltje smbclient voor meer informatie over samba shares, Wireshark voor het analyseren van netwerkverkeer, Nikto om webservers te scannen, hashcat voor het decoderen van wachtwoorden en sqlmap om geautomatiseerd SQL-injections te ontdekken.

©PXimport

Je kunt ook een volledige virtuele machine om mee te oefenen downloaden, die worden vaak als iso-bestand aangeboden. De machine is al helemaal voorbereid en je kunt hem op je eigen computer of laptop draaien. Zo heb je de beschikking over je eigen kwetsbare server, waar geen andere deelnemers op zitten. Deze downloadbare kwetsbare machines vind je bijvoorbeeld op de website vulnhub.com, hier staan inmiddels meer dan driehonderd .iso-bestanden op die elk hun eigen uitdaging en moeilijkheid hebben.

Soorten CFT challenges

Er zijn verschillende soorten challenges. Bij reverse engineering krijg je meestal een bestand, een uitvoerbaar programma, dat je lokaal kunt draaien. Met de juiste input voor het programma wordt uiteindelijk de flag onthuld. Door het reverse engineeren van het programma leer je hoe het algoritme werkt en weet je welke input je moet geven om de flag te vinden.

Bij cryptochallenges gaat het om cryptografie, vaak uiteenlopend van simpele of zelfgemaakte encryptie tot zwakke random generators. Maar het kan ook heel geavanceerd en wiskundig worden, waarbij je snel het spoor bijster bent als je niet volledig van dit soort technieken op de hoogte bent.

Bij pwning challenges krijg je meestal ook een uitvoerbaar programma, maar ook een ip-adres en een poort waar het programma op een server draait. Met het uitvoerbare bestand kun je lokaal proberen om het programma te exploiten en zo remote code execution te krijgen. Vervolgens gebruik je je ontwikkelde exploit code om op afstand een toepassing binnen te dringen en een actie uit te voeren. Als je op de server gekomen bent, kun je het bestand met de flag vinden en uitlezen. Vaak lopen deze challenges uiteen van een simpele buffer overflow tot erg geavanceerde heap overflows.

Een forensics challenge kent allerlei varianten. Bij een memory dump is het de bedoeling om een bestand te analyseren en bijvoorbeeld alle gebruikersnamen en wachtwoorden die op het moment van de dump in het geheugen van die computer waren geladen, eruit te halen. Bij netwerk packet analyse moet je analyseren hoe de communicatie tussen twee servers eruitzag en moet je bijvoorbeeld een gebruikersnaam en wachtwoord die in deze communicatie werd meegestuurd, vinden. De flag kun je vinden door de verborgen informatie uit de bestanden te lezen, alsof je een forensisch onderzoek aan het doen bent. Voor beginners zijn deze challenges vaak lastig.

Web challenges werken aan de hand van URL’s en kennen challenges zoals authenticatie bypass; het omzeilen van het inloggen met een gebruikersnaam en wachtwoord, en SQL- of XML-injections.

De IoT- (Internet Of Things) challenges zul je vaker bij een bedrijf of organisatie op kantoor vinden, omdat je hiervoor fysiek toegang tot het IoT-apparaat nodig hebt. Vaak is dit een combinatie van een web challenge, omdat er een administrator interface op zit, reverse engineering, omdat de firmware onderzocht kan worden, en een hardwarehack via bijvoorbeeld de netwerkaansluiting of UART, een seriële poort op een IoT-apparaat.

©PXimport

Er zijn eigenlijk twee veelvoorkomende soorten CTF’s. Namelijk Jeopardy-stijl CTF’s en attack/defense-CTF’s. Er zijn CTF’s die meer lijken op een werkelijke security penetratietest en er zijn gemengde competities; een combinatie van meerdere soorten CTF’s.

Bij de Jeopardy-stijl CTF is het de bedoeling om verschillende opdrachten (challenges) op te lossen van verschillende categorieën. Vaak kun je jezelf door het oplossen van de challenges toegang verschaffen tot een server, waar je dan een bepaalde tekst kunt vinden, die vlag (flag) heet. Vandaar ook de naam ‘capture the flag’. Deze flag kun je vervolgens uploaden als bewijs dat je de challenge gehaald hebt. Hiermee verdien je punten voor jezelf of je team.

De attack-/defense- CTF’s werken anders. Vaak worden ze gespeeld in teamverband. Elk team heeft zijn eigen kwetsbare servers en services. Als team moet je je eigen systeem verdedigen tegen andere teams die jouw systeem aanvallen. Tegelijkertijd kun je als team de server van andere teams proberen aan te vallen.

Bij de penetratietest-CTF probeer je individueel of met een team via vooraf bepaalde kwetsbaarheden een systeem binnen te komen. Een aantal veelvoorkomende kwetsbaarheden zijn het gebruik van zwakke wachtwoorden, gedeelde harde schijven zonder de juiste ACL’s, gesimuleerde eindgebruikers of bufferoverflows. Ook bij deze vorm van CTF is het niet toegestaan om elkaar aan te vallen, maar alleen de machines die voor de CTF beschikbaar zijn gemaakt.

De Jeopardy-stijl CTF’s gaan vaak over meer dan security alleen. Er komen ook veel raadsels en wiskundige breinkrakers in voor. De verschillende categorieën waarin challenges voorkomen zijn onder meer reverse engineering, cryptografie, pwning, forensics, web, IoT enzovoort. Hoe meer challenges je weet op te lossen, hoe moeilijker ze zullen worden. Moeilijker challenges leveren meer punten op. Degene met de meeste punten wint. Het is bij de Jeopardy-stijl CTF overigens niet toegestaan om elkaar aan te vallen, iedereen gebruikt over het algemeen zijn eigen laptop en logt in op de server of servers waar de challenges op staan.

Online CTF’s

Wil je zelf aan de slag met CTF, dan is een online-variant het makkelijkst om mee te beginnen. Er zijn wel honderden voorbeelden te noemen van websites die CTF’s hosten. Hier noemen we een aantal van de grootste en meestgebruikte websites.

Google heeft een CTF waarbij de beste tien teams na een online kwalificatieronde uitgenodigd worden om onsite de finale te spelen. En hier zijn leuke prijzen te winnen, maar het begint wel eerst online en daar kan iedereen aan mee doen.

CTF time is gemaakt door de CTF-community voor de CTF-community. Hier vind je CTF’s zowel online als offline, die binnenkort zullen plaatsvinden. Hoe en waar je je kunt inschrijven staat er ook, net als historische CTF-events en onder meer de ranglijst van deelnemende CTF-teams.

Overthewire is een verzameling van zogenoemde wargames. Elke challenge is te bereiken via een eigen ssh-poort. Er zijn verschillende levels die steeds moeilijker worden naarmate je verder komt. De Bandit-challenge is uitermate geschikt voor iedereen die net begint.

©PXimport

W3challs is een trainingsplatform met verschillende realistische challenges met verschillende moeilijkheidsgraden (easy, medium, hard). Deze heeft ook een forum waar je met andere deelnemers over de challenges kunt discussiëren.

Root-Me heeft meer dan 200 hack-challenges en ook nog 50 virtuele omgevingen waar je je skills kunt oefenen.

Op Hackthebox staan zowel kwetsbare servers als challenges in verschillende categorieën. Toegang krijgen tot de website is al een challenge op zich. Er zijn teams en ruim 150.000 mensen van over de hele wereld die dagelijks proberen de challenges te kraken.

Onsite CTF’s

Nog leuker is het natuurlijk om een on-site CTF bij te wonen of zelf aan deel te nemen. Er is een aantal bekende CTF’s. Secure by design organiseert elk jaar een CTF waar ongeveer 250 deelnemers op afkomen. Afgelopen jaren was het een uitgebreide penetratietest-stijl CTF in een studio in Hilversum.

Het Platform voor InformatieBeveiliging organiseert ook jaarlijks een CTF in Jeopardy-stijl. Aan meedoen zitten wel wat kosten verbonden, tenzij je lid bent, maar daarvoor krijg je wel een gezellige avond waar veel mensen aan deelnemen.

Hack in the box is een jaarlijkse hackingconferentie in Nederland, waar naast de conferentie ook een CTF wordt georganiseerd. Tijdens het tweedaags evenement wordt in teamverband geprobeerd de Jeopardy-stijl CTF te hacken.

Nog leuker is meedoen aan de CTF tijdens een van de hackingconferentie in de Verenigde Staten, zoals het eerder genoemde Def Con. Hiervoor moet je wel naar de VS, maar naast de CTF kun je ook de conferentie zelf bezoeken en er zijn leuke prijzen te winnen.

Tekst:Joost van ‘t Zand

▼ Volgende artikel
Sony-patent wijst op controller met touchscreen in plaats van knoppen
Huis

Sony-patent wijst op controller met touchscreen in plaats van knoppen

Sony heeft in de Verenigde Staten een patent vastgelegd voor een gamecontroller met een touchscreen waarbij spelers zelf kunnen bepalen waar op het scherm de actieknoppen geplaatst worden.

Het patent werd al in 2023 aangevraagd, maar is afgelopen week toegekend aan Sony. De controller zou volgens de beschrijving en de bijhorende illustraties op het grootste gedeelte van het oppervlak een touchscreen hebben in plaats van de gebruikelijke knoppen, en daar zouden spelers zelf kunnen kiezen waar ze knoppen op laten afbeelden om te gebruiken bij het besturen van games.

De controller zou dus geen daadwerkelijke knoppen hebben – in plaats daarvan gaat het om knoppen die op het scherm worden afgebeeld. Daarbij zou een sensor om druk en hitte te meten kunnen bepalen wanneer en hoe hard een bepaalde knop wordt ingedrukt.

Vooralsnog theoretisch

Volgens de beschrijving kan dit er voor zorgen dat er per game wordt bepaald welke knoppen nodig zijn, en welke niet. Daarbij kan het zo zijn dat de indeling van huidige controllers niet bij elke speler goed past – een probleem dat deze theoretische controller zou kunnen omzeilen.

Het is goed om in het achterhoofd te houden dat gamebedrijven continu patenten vastleggen voor technologie waar onderzoek naar gedaan wordt, en dat dit niet betekent dat Sony een dergelijke controller echt uitbrengt. In het verleden heeft bijvoorbeeld Nintendo ook wel eens een patent voor een dergelijke controller met touchscreen in plaats van knoppen vastgelegd, en daar is ook nog nietsd mee gedaan.

Sony is het bedrijf achter de PlayStation-consoles. De huidige PlayStation 5 wordt geleverd met de DualSense-controller. Die controller heeft wel gewoon fysieke knoppen om in te drukken.

View post on Instagram
 
Nieuw op ID: het complete plaatje

Misschien valt het je op dat er vanaf nu ook berichten over games, films en series op onze site verschijnen. Dat is een bewuste stap. Wij geloven dat technologie niet stopt bij hardware; het gaat uiteindelijk om wat je ermee beleeft. Daarom combineren we onze expertise in tech nu met het laatste nieuws over entertainment. Dat doen we met de gezichten die mensen kennen van Power Unlimited, dé experts op het gebied van gaming en streaming. Zo helpen we je niet alleen aan de beste tv, smartphone of laptop, maar vertellen we je ook direct wat je erop moet kijken of spelen. Je vindt hier dus voortaan de ideale mix van hardware én content.

▼ Volgende artikel
Waar voor je geld: 5 tosti-ijzers voor minder dan 60 euro
© MG | ID.nl
Huis

Waar voor je geld: 5 tosti-ijzers voor minder dan 60 euro

Zin in een lekkere snack maar geen zin om uitgebreid iets klaar te maken? Grote kans dat je een tosti gaat maken.Dat kun je natuurlijk in de pan doen, maar het is nog beter met een echt tosti-ijzer. Wij vonden op Kieskeurig.nl vijf mooie exemplaren voor een vriendelijke prijs.

Tefal Ultracompact SM1552

Met dit apparaat bereid je twee schelpvormige tosti's tegelijkertijd. De behuizing is vervaardigd uit roestvrij staal en kunststof, wat bijdraagt aan de stevigheid van het toestel. De vaste bakplaten zijn voorzien van een anti-aanbaklaag, waardoor voedselresten minder snel blijven plakken tijdens het gebruik. Aan de voorzijde vind je twee indicatielampjes: één om aan te geven dat de stroom is ingeschakeld en één die oplicht wanneer de platen de juiste temperatuur hebben bereikt.

De handgreep is uitgerust met een vergrendelingsclip die de helften stevig op elkaar houdt tijdens het bakproces. Door het compacte ontwerp en de mogelijkheid om het snoer op te bergen, kun je het toestel verticaal in een keukenkastje plaatsen. Het vermogen bedraagt 700 watt en het bakoppervlak meet 23 bij 13 centimeter.

Krups FDK Iconic FDK462

Dit bijzonder ogende model beschikt over extra grote en diepe bakplaten die bedoeld zijn voor dikkere sneetjes brood en een grotere hoeveelheid beleg. De platen zijn afgewerkt met een keramische anti-aanbaklaag, wat een specifieke eigenschap is binnen deze prijscategorie. Je bedient het toestel met een aan-uitschakelaar op de basis, ondersteund door indicatielampjes voor de status van de opwarming.

Met een vermogen van 850 watt warmen de platen op voor het maken van twee driehoekige sandwiches. Het apparaat weegt ongeveer 2,65 kilogram en staat op antislipvoetjes om verschuiven op het aanrecht te voorkomen. Na gebruik is er de optie om het toestel rechtopstaand op te bergen, waarbij het snoer in de daarvoor bestemde ruimte aan de onderkant kan worden gewikkeld.

Philips 3000 Series HD2330/90

Dit apparaat is uitgerust met een vermogen van 750 watt en beschikt over vaste platen voorzien van een anti-aanbaklaag. Het ontwerp is specifiek gericht op het maken van twee sandwiches tegelijk, waarbij de platen een diagonale inkeping maken om het brood in driehoeken te verdelen.

Aan de bovenzijde van de behuizing zijn indicatielampjes aangebracht die aangeven wanneer de stroom is ingeschakeld en wanneer de platen de juiste temperatuur hebben bereikt. Voor de veiligheid tijdens het gebruik is de handgreep voorzien van een vergrendelingsclip, waardoor de helften stevig op elkaar blijven zitten. Het toestel is zo geconstrueerd dat je het snoer om de voet kunt wikkelen, wat verticaal opbergen in een keukenkast mogelijk maakt. De behuizing is gemaakt van kunststof en het apparaat rust op antislipvoetjes om stabiel op het aanrecht te blijven staan.

Emerio ST-125833

Dit is een sandwichmaker die werkt met een vermogen van 900 watt. Het apparaat is ontworpen om twee sandwiches tegelijkertijd te bereiden en maakt gebruik van schelpvormige vormen die de randen van het brood dichtdrukken. De behuizing combineert zwart kunststof met accenten van roestvrij staal.

Aan de bovenzijde zijn twee indicatielampjes geplaatst voor de gebruiksstatus. Het toestel beschikt over een vergrendelbare clip op de handgreep, zodat de platen tijdens het bakken onder druk op elkaar blijven staan. De platen zijn vast gemonteerd en voorzien van een standaard anti-aanbaklaag. Dit model voldoet aan de CE-markering voor veiligheidseisen en is voorzien van een geaarde stekker.

Princess 112415 Panini Grill

Dit apparaat onderscheidt zich door het gebruik van een zwevend bovendeksel, waardoor de bovenste plaat zich aanpast aan de dikte van de inhoud tussen de grillplaten. Het bakoppervlak bedraagt 30 bij 24 centimeter, wat voldoende ruimte biedt voor twee tot drie sandwiches tegelijkertijd. De platen zijn geribbeld en voorzien van een anti-aanbaklaag.

Overtollig vet of vocht wordt via een afvoer naar het meegeleverde opvangbakje geleid. Met een vermogen van 2000 watt bereikt het toestel een maximale temperatuur van 250 graden Celsius. De behuizing is deels van geborsteld roestvrij staal en beschikt over een handgreep die koel blijft tijdens gebruik. Je kunt de grill zowel horizontaal als verticaal opbergen dankzij de vergrendeling die de platen bij elkaar houdt tijdens transport.