25 CTF-ülesannete loomine
Peatükk annab ülevaate
- kuidas luua CTF-ülesandeid
- millistest kohtadest leiab näidiseid
CTF-ülesannete loomiseks oleks hea kursis olla, milliseid ülesandeid on maailmas olemas. Võib-olla on kergem esialgu teha sarnaseid ülesanded ehk võtta mõni ülesanne aluseks ja siis seda muuta. Eestis on selleks üks hea ülesannete portaal: https://ylesanded.targaltinternetis.ee/
Ülesande juures on mõistlik kirjeldada ära:
- Pealkiri
- Alateemast (mis liiki on ülesanne)
- Liigi kirjeldusest (rünne või kaitse, kuldvillak)
- Ülesande raskusaste
- Ülesande lahendamisele kuluv keskmine aeg
- Õpiväljundist (mida ülesanne mõõdab)
- Kirjeldusest (kontekst vastavalt stsenaariumile, kui vaja)
- Ülesande kirjeldus (mida tegema peab, mis on eesmärk, kuhu peab jõudma/saavutama)
- Ülesande sisumaterjalid: tekstid, pildid, videod jms failid, algkood, lõppfailid, serverid jne.
- Ülesande kasutuskirjeldus: (1) kuidas käivitada, (2) loetelu failidest, mida antakse lahendajale, (3) kuidas lahendada, (4) vihjed, (5) kuidas lippu muuta ja taas kompileerida
- Loetelu lisamaterjalidest, programmidest, mis on vajalikud ülesande lahendamiseks (viidatav mini-õppematerjal kui vaja)
- Õige vastus(ed), “lipp” (Flag)
Rasvaselt on märgitud info, mis on hädavajalik ülesande loomisel.
Edasijõudnutele!
Näiteid ülesannete teemadest Eestis talenditaseme võistlustel**
- Non-blind SQL injection – võistleja peab kasutama ära lihtsamat korralikult töötlemata sisendit SQL lause käitumise muutmiseks
- Android APK reverse-engineering – võistleja peab pakkima lahti Androidi rakenduse mis on .apk kujul ja leidma selle ressurssidest (nt strings.xml) vajaliku üles leidma
- OSINT – Fotol või muul sarnasel sisus olev info võimaldab paari-kolme sammuga tuvastada mingi saladuse (vms.) mis võimaldab liigset ligipääsu nt FTP serverile
- Email forensics – Antud e-maili konto varukoopia (vms.) analüüs toimunu selgitamiseks. Lihtsam sõnaotsing/grep (nt Outlook’i .pst fail)
- Malware forensics – Lihtsama pahavara(perekonna) tuvastamine (kuid mitte keeruline reverseengineering, keerulisem võiks olla pigem osa lõppvoorust)
- Path traversal – võistleja peab leidma veebirakenduses oleva path traversal turvaaugu ja sellega vajaliku faili välja lugema
Näidiskeskkondasid ja ülesannete kogusid**
Midagi ikka leiate, mis huvi pakub!
ENISA/ECSC ülesanded: https://challenges.ecsc.eu/
Erinevad keskkonnad:
http://overthewire.org/wargames/
https://www.hacking-lab.com/index.html
https://www.cybrary.it/catalog/
https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project
https://www.owasp.org/index.php/OWASP_Juice_Shop_Project
https://opencyberchallenge.net/wiki/Downloads
https://exploit-exercises.com/
https://microcorruption.com/login
https://legacy.hackerexperience.com/
24 pähklit https://www.ripstech.com/php-security-calendar-2017/
Kogumik http://www.blackroomsec.com/updated-hacking-challenge-site-links/