Reklama

Cyberbezpieczeństwo

#CyberMagazyn: Capture The Flag. O co chodzi w zawodach CTF?

Tak w przybliżeniu wygląda osoba podczas zawodów CTF. Zdjęcie nie uwzględnia kubków kawy
Tak w przybliżeniu wygląda osoba podczas zawodów CTF. Zdjęcie nie uwzględnia kubków kawy
Autor. Pixabay

Zawody CTF (ang.Capture the Flag) to dobra okazja do nauki wielu nowych zagadnień z różnych dziedzin. Nie są niezbędne do zdobycia pracy w IT lub pogłębiania wiedzy stricte związanej z cyberbezpieczeństwem, lecz są ciekawą okazją do drużynowego rozwiązywania różnych zagadek.

Konkursy CTF zazwyczaj są darmowe oraz odbywają się zdalnie. Często rozpoczynają się w piątki lub soboty. Ich celem jest zdobycie tytułowej flagi, która zapisana jest jako ciąg znaków z wcześniej ustalonym prefiksem oraz zamknięta pomiędzy nawiasy klamrowe, np. ctf{TutajFlaga}. Wspomniane flagi mogą być zaszyte w różnej formie: tekstowej, graficznej czy dźwiękowej. Bardzo często po konkursach publikowane są rozwiązania zadań, stworzone przez ich autorów lub uczestników CTF-ów.

Kategorie zadań

Na CTF-ach można znaleźć różne rodzaje zadań, które przydzielone są do konkretnych kategorii. Wśród nich można wyróżnić m.in.:

  • Begginer – nieskomplikowane zadania o różnej tematyce;
  • Web – zadania polegające z reguły na wysłaniu odpowiednich zapytań HTTP;
  • OSINT – wyszukiwanie określonych informacji w sieci;
  • Crypto – zadania związane z kryptografią;
  • Pwn – zadania związane z eksploitacją binarną;
  • Stegano – wyszukiwanie informacji zaszytych w jakimś medium, np. obrazie lub dźwięku;
  • Blockchain – coraz popularniejsza kategoria dotycząca blockchainu;
  • Rev – inżynieria wsteczna (ang. reverse engineering);
  • Forensics – analiza danych;
  • Misc – zadania niepasujące do innych kategorii(ang. miscellaneous – różne, rozmaite).

Zależnie od uznania organizatorów na zawodach mogą pojawić się różne inne kategorie (np. hardware).

Czytaj też

Reklama

Czy warto brać udział w CTF-ach?

Konkursy Capture the Flag są specyficznym rodzajem rozrywki, który na pewno nie każdemu przypadnie do gustu. Nie zmienia to faktu, że dla wielu osób zdobycie flagi powoduje duży zastrzyk adrenaliny oraz endorfin – często po wielu godzinach udaje się dojść do upragnionej flagi, która na pierwszy rzut oka mogła wydawać się niemożliwa do zdobycia.

Nie warto zniechęcać się po swoim pierwszym konkursie. Z osobistego doświadczenia mogę przyznać, że mój pierwszy CTF był… niezbyt udany. Ale jak to mówi CTF-owe powiedzienie: try harder.

Reguły i cele CTF

Zabronione jest m.in. atakowanie infrastruktury, w tym ataki brute-force dokonywane online, jeżeli organizator nie stwierdzi inaczej. Tak jak w każdej rywalizacji drużynowej kluczowe jest fair-play.

Należy pamiętać o tym, że celem zawodów jest… zdobycie flagi. Dobrze opisał to Gynvael Coldwind, który powiedział:

„Jaki jest cel zadania CTF-owego? »Celem zadania CTF-owego jest znalezienie rozwiązania, żeby dostać flagę« – to jest największe kłamstwo, jakie się ludziom opowiada. Celem zadania CTF-owego jest zdobycie flagi, co nie znaczy, że trzeba cokolwiek rozwiązywać (…). Możemy po prostu zupełnie wyskoczyć z tej ścieżki i iść zupełnie inną drogą i też dotrzeć do flagi”.

Organizatorzy jednego z CTF-ów posłużyli się popularnym memem do określenia zasad konkursu:

Działania w czerwonym prostokącie są zabronione na praktycznie wszystkich konkursach
Działania w czerwonym prostokącie są zabronione na praktycznie wszystkich konkursach
Autor. ctf.pyjail.club
Slajd z prelekcji Gynvaela Coldwinda „Jak wygrywać CTFy”
Slajd z prelekcji Gynvaela Coldwinda „Jak wygrywać CTFy”
Autor. Jak wygrywać CTFy – Gynvael Coldwind

Czytaj też

Reklama

Jak się przygotować?

Nie ma jedynego słusznego zestawu narzędzi do CTF-ów. Kluczem jest zebranie drużyny, ponieważ to zawsze motywuje do działania. Na pewno warto uzbroić się w dużą dawkę cierpliwości oraz uprzednio zadbać o… podstawowe funkcje życiowe. Mowa tu o jedzeniu czy śnie. Niektóre drużyny dostosowują swój zegar biologiczny do strefy czasowej, gdzie hostowane są zawody, lecz dla początkujących oczywiście nie jest to konieczne.

Przy zadaniach OSINT-owych będziemy wykorzystywać przede wszystkim wyszukiwarki internetowe, m.in. Google czy Yandex. Warto również używać Wayback Machine, czyli tzw. „archiwum Internetu”. W zadaniach webowych mogą przydać się Burp Suite oraz cURL. Dla kryptografii nieocenione jest RsaCtfTool, zaś dla steganografii kluczowe są StegOnline oraz GIMP.

W kategorii Pwn warto wykorzystać DogBolta, zaś w przypadku analizy plików (forensics) warto wykorzystać Autopsy. W dekodowaniu różnych ciągów znaków można użyć CyberChefa, zaś przy ruchu sieciowym Wiresharka. Należy również mieć pod ręką maszynę wirtualną (lub komputer) działający na jednej z dystrubucji Linuksa, co czasem bywa bardzo przydatne.

Wszystkie wspomniane wyżej narzędzia są darmowe. Do CTF-ów ostatnio wykorzystywany jest też ChatGPT. Jego zastosowanie może nam pomóc lub przeszkodzić, lecz zgodnie z przytoczonymi słowami Gynvaela: celem jest zdobycie flagi, niekoniecznie wykorzystując zamierzone przez twórców rozwiązania, dzięki czemu nie musimy strofować się przed wykorzystaniem AI.

Czytaj też

Reklama

Przykład zadania OSINT-owego

Moją ulubioną kategorią są zadania OSINT-owe, lecz przez wielu uznawane za niepasujące do CTF-ów. Omówię jedno z takich zadań, które pojawiło się podczas TBTL CTF 2024.

Do zadania dołączony jest jedynie plik mp3. Nagranie zawiera automatycznie wygenerowaną mowę po chińsku. Dzięki transkrypcji nagrania możemy dojść do wniosku, że flaga jest numerem ubezpieczenia społecznego, zaczynającym się od 91 i kończącym na 56. Tłumaczenie jest dość niejednoznaczne, lecz warto wyszukać Yunhai Chain Holdings w Google.

Zadanie oraz tłumaczenie
Zadanie oraz tłumaczenie
Autor. Oskar Klimczuk / CyberDefence24

Po wpisaniu nazwy do wyszukiwarki naszym oczom ukazuje się artykuł zawierający nazwę firmy. Następnie poprosiłem ChatGPT o wylistowanie wszystkich nazw firm z artykułu.

ChatGPT pomaga podczas CTF
ChatGPT pomaga podczas CTF
Autor. Oskar Klimczuk / CyberDefence24

Po wyszukaniu frazy 云海链控股股份有限公司 (云海控股) w Google zostajemy przekierowani do strony firmy SSC. W stopce strony widoczny jest adres, który należało przetłumaczyć na chiński.

Stopka po angielsku i chińsku
Stopka po angielsku i chińsku
Autor. Oskar Klimczuk / CyberDefence24

Wyszukiwanie adresu w Google nic nie dało, dlatego wyszukałem adres w chińskim Baidu. Zacząłem klikać w różne miejsca w obrębie wyszukiwania, aż po lewej stronie ekranu dostrzegłem miniaturkę zdjęcia banku.

Widok z Baidu w momencie rozwiązania zadania
Widok z Baidu w momencie rozwiązania zadania
Autor. Oskar Klimczuk / CyberDefence24
Zdjęcie banku
Zdjęcie banku
Autor. Oskar Klimczuk / CyberDefence24

Ostatnim krokiem było skopiowanie nazwy banku oraz wyszukiwanie na stronie Registration China, skupiającą wspomniane numery. Po wpisaniu 海南澄迈农村商业银行(科技支行) naszym oczom ukazał się wspomniany numer, który był flagą. Rozwiązanie zadania to TBTL{91469027MA5TRBAW56}.

Nazwa banku na Baidu
Nazwa banku na Baidu
Autor. Oskar Klimczuk / CyberDefence24
Wynik z wyszukiwarki
Wynik z wyszukiwarki
Autor. Oskar Klimczuk / CyberDefence24

Czytaj też

Opinia eksperta

O komentarz poprosiliśmy Jakuba Domaradzkiego, który niejednokrotnie wypowiadał się na łamach naszego portalu.

Oskar Klimczuk, CyberDefence24: Jak to jest być graczem CTF?

Jakub Domaradzki: Wie pan, moim zdaniem to nie ma tak, że dobrze, albo że niedobrze. Gdybym miał powiedzieć, co cenię w CTF-ach najbardziej, powiedziałbym, że ludzi. Ludzi, którzy podali mi pomocną dłoń, kiedy nie mogłem znaleźć flagi, kiedy gubiłem się w debuggerze, i co ciekawe, to właśnie przypadkowe spotkania na Discordzie czy hackathonach wpływają na nasze podejście do Base64.

Chodzi o to, że kiedy wyznaje się pewne zasady – enumerację, linię najmniejszego oporu – nawet pozornie podstawowe, bywa, że nie znajduje się odpowiedniego zrozumienia w drużynie, który, by tak rzec, pomaga się rozwijać. Ja miałem szczęście, ponieważ znalazłem ludzi, z którymi znajduję flagi, i dziękuję CTF-om! Dziękuję im!

CTF to wyzwanie, CTF to zagadka, CTF to rozwój! Wielu ludzi pyta mnie o to samo: ale jak ty to robisz, skąd czerpiesz tę radość? A ja odpowiadam, że to proste! To umiłowanie do hackowania. To właśnie ono sprawia, że dzisiaj na przykład łamię binarki, a jutro – kto wie? Dlaczego by nie – oddam się rekreacji i będę, ot, choćby, uciekał… z piaskownicy…

A już zupełnie serio, CTFy poza świetną zabawą i możliwością poznania ciekawych ludzi o podobnym spektrum zainteresowań, stanowią fajne wyzwanie i możliwość nauki nowych rzeczy. No i nie zapominajmy o możliwości przechwalania się kto znalazł więcej flag :)

Czytaj też

Jak zacząć?

Nadchodzące wydarzenia skupia CTF Time. Często podczas CTF-ów osoby poszukują drużyny do grania i w ten sposób można się do nich przyłączyć. Należy pamiętać o tym, że nie trzeba być specjalistą, aby zacząć zabawę.

Serwis CyberDefence24.pl otrzymał tytuł #DigitalEUAmbassador (Ambasadora polityki cyfrowej UE). Jeśli są sprawy, które Was nurtują; pytania, na które nie znacie odpowiedzi; tematy, o których trzeba napisać – zapraszamy do kontaktu. Piszcie do nas na: [email protected].

Reklama

Komentarze

    Reklama