Zdobyć flagę... i to nie jedną - wywiad z drużyną Dragon Sector, zwycięzcą międzynarodowych zawodów CTF

27-01-2015, 21:49

Nawet mainstreamowe media pisały ostatnio o polskich specjalistach od bezpieczeństwa, którzy okazali się najlepsi na świecie, zakończyli bowiem rok 2014 na pierwszym miejscu w klasyfikacji generalnej Capture The Flag. Konkurowali z zagranicznymi zespołami, m.in. z USA, Niemiec i Rosji, wielokrotnie wygrywając. Nam opowiedzieli, jak tego dokonali.

Zawody CTF odbywają się na całym świecie średnio co dwa tygodnie i trwają od 8 do nawet 48 godzin. W tym czasie kilku-, kilkunastoosobowe drużyny starają się rozwiązać szereg nietypowych zadań z różnych dziedzin - zaczynając od bezpieczeństwa aplikacji webowych i natywnych, poprzez inżynierię odwrotną, algorytmikę i informatykę śledczą, na steganografii i kryptoanalizie kończąc.

Rozgrywki bywają prowadzone zarówno w trybie online, jak i offline, zwykle przy okazji prestiżowych konferencji. Uczestniczy w nich od 10 (w przypadku finałów) do 2000 zespołów, w tym właśnie Dragon Sector. W ubiegłym roku polska drużyna rozegrała 33 rankingowe turnieje - 7 spośród nich zakończyła na pierwszym miejscu, a na podium stanęła w sumie 18 razy.

Dragon Sector na zawodach Insomni’Hack 2014 w Genewie

Powyższe zdjęcie zostało zrobione na zawodach Insomni’Hack 2014 w Genewie. Są na nim widoczni (od lewej):

  • valis,
  • Tomasz “KeiDii” Bukowski (NASK/CERT Polska),
  • Gynvael Coldwind (Google, kapitan zespołu),
  • Michał “Redford” Kowalczyk (student Uniwersytetu Warszawskiego),
  • Sergiusz “q3k” Bazański (freelancer),
  • Mateusz “j00ru” Jurczyk (Google, wice-kapitan),
  • Maciej “mak” Kotowicz (NASK/CERT Polska),
  • Tomek “tkd” Dubrownik (Google).

Oprócz nich do zespołu należą:

  • Adam Iwaniuk (Cubiware),
  • Mateusz “Mawekl” Pstruś,
  • Krzysztof “vnd” Katowicz-Kowalewski,
  • Jakub “Lympho” Korepta,
  • Robert “jagger” Święcki (Google).

 

Anna Wasilewska-Śpioch, Dziennik Internautów: Zaczęliście dwa lata temu we trójkę (Gynvael Coldwind, Mateusz Jurczyk, Adam Iwaniuk). Od tego czasu zespół znacznie się rozrósł. Jak wyglądała rekrutacja? Wciągaliście swoich znajomych, ludzie sami się do Was zgłaszali? Co trzeba było zrobić, żeby do Was dołączyć? Czy skład zespołu został już ustalony na sztywno, czy wciąż jeszcze jesteście otwarci na propozycje?

Dragon Sector: Pierwszy sezon (2013) rozpoczęliśmy w składzie zaledwie trzech osób. Kiedy zaczęliśmy osiągać pierwsze sukcesy, naszym długoterminowym celem stało się powiększenie zespołu do kilkunastu, co najmniej dwunastu, zawodników - zazwyczaj tylu graczy jest w czołowych zespołach CTF na świecie. Rekrutacja przebiegała organicznie - kilka osób znaliśmy już wcześniej i zaproponowaliśmy im wspólną grę, zaś pozostali zawodnicy albo sami się z nami skontaktowali, albo zostali poleceni przez obecnych członków. Ostatecznie liczbę dwunastu osób w drużynie osiągnęliśmy na początku stycznia 2014, przy czym w dalszym ciągu szukamy nowych, aktywnych graczy.

Sama rekrutacja przebiega według następującego schematu: kandydat jest zapraszany, w charakterze gościa, do wspólnej gry wraz z zespołem podczas kilku kolejnych turniejów. Jeśli z powodzeniem poradzi sobie z kilkoma złożonymi technicznie zadaniami, a także dobrze dogaduje się z innymi graczami, proponujemy mu dołączenie do zespołu.

Nie mogę nie zwrócić uwagi na to, że jesteście stricte męskim zespołem. Zetknęliście się z kobietami, które - w Waszym mniemaniu - mogłyby sobie poradzić z zadaniami publikowanymi podczas CTF-ów? Jak to wygląda na arenie międzynarodowej - czy biorąc udział w rozgrywkach offline, widzieliście zespoły, które miały w swoim składzie kobiety?

Jasne, że tak! Żeby daleko nie szukać, CTF organizowany przez nas - CONFidence DS CTF - w maju zeszłego roku wygrała liub - specjalistka z ukraińskiego zespołu dcua (6 miejsce w klasyfikacji generalnej na koniec 2014). Swojego czasu gościnnie grała z nami również hasherezade, ekspertka z zakresu inżynierii wstecznej.

Przejdźmy do samych rozgrywek - jak to wygląda od strony organizacyjnej? CTF-y typu Jeopardy trwają od 24 do 48 godzin, musicie w tym czasie rozwiązać od 5 do 50 zadań. Jakoś je między siebie dzielicie? Pracujecie w kilka osób nad jednym zadaniem? Ktoś się w czymś konkretnym specjalizuje czy każdy po trochu we wszystkim?

Jeśli chodzi o podział pracy, to nie stosujemy sztywnego przydziału zawodników do zadań czy kategorii - każdy z nas sam wybiera, nad czym chce pracować. Pod koniec turnieju, gdy najczęściej zostaną już tylko najtrudniejsze zadania, zwyczajowo pracujemy wkilkuosobowych zespołach nad każdym z nich. Oczywiście, każdy z nas ma swoją ulubioną kategorię (lub kilka), w której się specjalizuje, ale poza tym praktycznie każdy zawodnik zespołu jest w stanie rozwiązać zadania o umiarkowanym poziomie trudności z dowolnej kategorii.

Dragon Sector na zawodach Codegate 2014 w Seulu, fot. Katarzyna Zakrawacz-Święcki
Dragon Sector na zawodach Codegate 2014 w Seulu, fot. Katarzyna Zakrawacz-Święcki

Czego używacie do komunikowania się, współpracy zdalnej?

Skuteczna komunikacja podczas rozgrywek CTF jest sprawą pierwszorzędną. W naszym przypadku używamy przede wszystkim protokołu IRC (Internet Relay Chat) do komunikacji tekstowej oraz programu Mumble do głosowej. W celu wymiany plików, notatek i śledzenia postępu przy zadaniach korzystamy z Google Drive i Google Docs. W zasadzie poszliśmy o krok dalej i stworzyliśmy zestaw narzędzi, które przekazują informacje pomiędzy Google Docs, IRC i Mumble. Dzięki temu gdy któryś z graczy przypisze się do zadania w Google Docs, od razu pojawia się informacja o tym na IRC-u oraz Mumble itp.

Innym typem CTF-ów jest Attack-Defense, gdzie punkty zdobywa się nie poprzez rozwiązywanie zadań, a poprzez ochronę własnego serwera i atakowanie serwerów innych drużyn. Jak organizujecie się w takim przypadku? Udział w których zawodach (Jeopardy czy Attack-Defense) daje Wam większą satysfakcję?

Oba rodzaje zawodów dostarczają nam mnóstwo satysfakcji. Trzeba jednak przyznać, że format Attack-Defense wymaga z reguły znacznie więcej refleksu i nieustannego skupienia.

Podczas gdy formuła Jeopardy sprowadza się w zasadzie do znajdowania podatności w zadaniach dostarczonych przez organizatorów i tworzenia eksploitów (skryptów/programów wykorzystujących w zautomatyzowany sposób znalezioną podatność), w formacie Attack-Defense trzeba nadzorować kilka dodatkowych procesów jednocześnie. Konieczne jest tutaj dbanie o poprawne działanie własnych serwisów na serwerze drużyny, naprawianie znalezionych błędów (co często sprowadza się do modyfikowania kodu binarnego usług dostarczonych przez organizatorów), ciągłe szukanie podatności i tworzenie eksploitów na nie oraz atakowanie serwerów innych drużyn.

W formacie rozgrywki Attack-Defense trzeba też przeznaczyć pewną liczbę osób do zadań typowo administracyjnych. To oni będą musieli przygotować sieć konkursową przed rozpoczęciem gry, zadbać o działanie naszych usług, analizować ruch sieciowy, blokować ataki inicjowane przez pozostałe drużyny czy szukać backdoorów (potencjalnie podłożonych przez inne drużyny) na naszym serwerze. Na późniejszym etapie zmagań równie ważne jest posiadanie odpowiedniego zestawu narzędzi do atakowania wielu drużyn jednocześnie oraz dbanie o to, by odnalezione błędy były na bieżąco wykorzystywane, co jest głównym źródłem punktów konkursowych.

Pora pochwalić się wynikami :-) Opowiedzcie, co udało się Wam osiągnąć w ubiegłym roku.

Przede wszystkim jesteśmy niezmiernie zadowoleni z zakończenia ubiegłego sezonu na pierwszym miejscu w klasyfikacji generalnej prowadzonej przez serwis CTFTime.org - po trzecim miejscu w sezonie 2013 miejsce pierwsze było naszym wymarzonym celem i jesteśmy bardzo szczęśliwi, że udało się nam go zrealizować.

Dragon Sector na zawodach Codegate 2014 w Seulu, fot. Katarzyna Zakrawacz-Święcki
Dragon Sector na zawodach Codegate 2014 w Seulu, fot. Katarzyna Zakrawacz-Święcki

Już początek ubiegłego roku rozpoczął się bardzo obiecująco, m.in. od wygranej w Genewie (turniej Insomni’hack), trzeciego miejsca na prestiżowych zawodach Codegate w Seulu i znów pierwszego miejsca w Moskwie (PHDays). W tzw. międzyczasie zdobyliśmy dziką kartę uprawniającą do udziału w finale DEF CON CTF - zdecydowanie najbardziej prestiżowego turnieju rozgrywanego w ciągu roku, odbywającego się w sierpniu w Las Vegas podczas konferencji DEF CON 22. Ostatecznie DEF CON CTF - trwający trzy dni turniej w formacie Attack-Defense - zakończyliśmy na trzecim miejscu, z którego to jesteśmy bardzo zadowoleni.

Sezon zakończył się turniejem rozgrywanym w Hamburgu - 31C3 CTF - odbywającym się podczas konferencji Chaos Communication Congress, jednego z największych wydarzeń sceny bezpieczeństwa komputerowego w Europie. Stanęliśmy tam po raz kolejny na podium, zdobywając trzecie miejsce. Podsumowując sezon 2014: na podium stawaliśmy 18 razy na 33 zmagania turniejowe, w których wzięliśmy udział.

Spośród zadań, z którymi zetknęliście się podczas CTF-ów, które wydały się Wam najciekawsze, najbardziej wymagające, najdziwniejsze itp.

Jednym z nietypowych zadań (a właściwie serii zadań) było hakowanie specjalnie przygotowanej gry komputerowej o nazwie PwnAdventure podczas konkursu Ghost In The Shellcode. Celem była taka manipulacja kodem źródłowym gry, aby umożliwić wykonanie wyznaczonych przez organizatorów zadań, np. pokonanie potwora, którego według wbudowanych w grę algorytmów nie powinno dać się pokonać, zdobycie skarbu, do którego teoretycznie nie ma dostępu, a także uzyskania super-mocy: umiejętności latania, szybkiego poruszania się lub teleportowania postaci.

Interesujące są też wszelkie zadania, które dotyczą fizycznych układów elektronicznych. Za dobry przykład może posłużyć jedno z zadań, z którym przyszło nam się zmierzyć podczas trwania wspomnianych wcześniej zawodów DEF CON CTF. W pierwszym (z trzech) dniu zawodów organizatorzy dostarczyli wszystkim drużynom przygotowane przez nich urządzenia (patrz zdjęcie poniżej), które umożliwiały wysyłanie krótkich wiadomości tekstowych, a jak się później okazało, również graficznych, do analogicznych urządzeń należących do innych zespołów. Ostatecznym celem było znalezienie błędów w firmwarze i przejęcie kontroli nad urządzeniami będącymi w posiadaniu pozostałych uczestników rozgrywki.

Urządzenie dostarczone wszystkim drużynom przez organizatorów zawodów DEF CON CTF
Źródło: www.routards.org

Analizę urządzenia rozpoczęliśmy od pobrania z układu jego kodu wykonywalnego, czyli firmware’u, oraz jego dekompilacji przy użyciu programu IDA Pro. Badanie procedur wysyłających i odbierających wiadomości zajęło nam wiele godzin, jednak już następnego dnia udało się zrozumieć kod na tyle dobrze, by odnaleźć podatność umożliwiającą zaprojektowanie skutecznego ataku. Błąd ten tkwił w implementacji algorytmu dekompresującego otrzymane bitmapy graficzne i umożliwiał nadpisanie stosu systemowego poprzez specjalnie przygotowaną wiadomość.

Czytelników zainteresowanych szczegółami znalezionego błędu oraz sposobem jego wykorzystania zachęcamy do przeczytania opisu rozwiązania opublikowanego przez drużynę Routards. Na poniższym wideo można natomiast zobaczyć przykładowe rozwiązanie zadania crash (pwn za 400 pkt) z zawodów SIGINT 2013:

Dodatkowo - dla zainteresowanych - podajemy linki do opisów rozwiązań:

W ubiegłym roku zorganizowaliście również jeden CTF single-player podczas konferencji CONFidence w Krakowie. Czy wszystko poszło po Waszej myśli? Jak duże było zainteresowanie? Planujecie w tym roku powtórkę?

Organizowany przez nas CTF podczas konferencji CONFidence był świetnym testem naszej infrastruktury konkursowej. Przed samym CTF-em na CONFidence odbył się tzw. teaser CTF - krótka runda online z kilkoma zadaniami. Udział w nim wzięło około 100 osób (głównie z Polski). Podczas rundy finałowej, rozgrywanej w Krakowie, uczestników było kilkunastu, a poziom samej rozgrywki był wysoki. Ostatecznie pierwsze dwa miejsca zajęli gracze z ukraińskiego teamu dcua.

Mamy nadzieję, że w niedługim czasie uda się nam zorganizować pełnowymiarowy, rankingowy CTF o zasięgu światowym. Niestety, nie możemy jeszcze zdradzić zbyt wielu szczegółów na ten temat.

Czy oprócz Was w międzynarodowych zawodach CTF biorą udział jakieś inne polskie drużyny?

W bieżącym sezonie dobrą passą może pochwalić się jeszcze jeden polski zespół - Snatch The Root, który ostatnio zaczął sięgać po coraz wyższe miejsca w poszczególnych zawodach, m.in. kilka dni temu wygrał turniej WCTF. Zdecydowanie trzymamy za niego kciuki :)

Jakie cele stawiacie sobie na ten rok? Co jeszcze - po zeszłorocznym zwycięstwie w klasyfikacji generalnej - pozostało do osiągnięcia? W czym na razie nie czujecie się najlepsi, ale chcecie to zmienić w najbliższej przyszłości?

Naturalnie, chcielibyśmy powtórzyć wynik z poprzedniego sezonu. Przeciwnicy są jednak niezwykle silni, więc przed nami mnóstwo nieprzespanych nocy, podczas których będziemy mierzyć się z zadaniami. Tematyka, którą się zajmujemy, jest niezwykle dynamiczna, więc dużo czasu spędzimy na doskonaleniu swoich umiejętności.

Drugą istotną ambicją naszego zespołu jest zajęcie pierwszego miejsca w tegorocznych zawodach DEF CON CTF, co z kolei będzie wymagać specjalnego treningu i przygotowania pod format Attack-Defense.

Po cichu również liczymy, że w obecnym sezonie pojawi się więcej polskich zespołów CTF - tego typu turnieje pozwalają zarówno pogłębić swoje umiejętności z dziedziny bezpieczeństwa komputerowego, jak i zapewniają świetną rozrywkę umysłową w formie ciekawych, nietrywialnych zadań, a także element rywalizacji, który potrafi skutecznie zmobilizować do pracy. Kto wie, być może kiedyś podium globalnego rankingu CTF zdominowane będzie przez polskie drużyny?

Byłoby super :-) Dziękuję za rozmowę i liczę na to, że jeszcze nieraz będę mogła napisać w Dzienniku Internautów o odnoszonych przez Was sukcesach.


Następny artykuł » zamknij

Z arsenału Google

Źródło: DI24.pl
Tematy pokrewne:  

tag zawodytag wywiadytag Dragon Sectortag CTFtag Capture The Flag
Komentarze
comments powered by Disqus
To warto przeczytać












  
znajdź w serwisie

RSS - Wywiad
Wywiad  
RSS - Interwencje
RSS - Porady
Porady  
RSS - Listy
Listy  
Jak czytać DI?
Newsletter

Podaj teraz tylko e-mail!



RSS
Copyright © 1998-2017 by Dziennik Internautów Sp. z o.o. (GRUPA INFOR PL) Wszelkie prawa zastrzeżone.