Opinie uczestników o konkursie #stopkrkanalytica

Opracowanie własnego konkursu CTF (capture the flag) to nie lada wyzwanie. W ramach tegorocznego udziału w CONFidence (Kraków 2018) postanowiliśmy przygotować dla uczestników wydarzenia coś nowego i nieszablonowego.

 

Challenge #stopkrkanalytica osadziliśmy w tematyce cloud security, ze względu na rosnące zapotrzebowanie firm na tego rodzaju usługi. Inspiracją do stworzenia fabuły były bieżące newsy dotyczące sprawy Cambridge Analytica.

 

Konkurs odbił się szerokim echem, a zainteresowanie przerosło nasze oczekiwania! Nagrodę przewidzieliśmy dla 9 pierwszych osób, które przesłały rozwiązanie.

 

O zadaniu możecie dowiedzieć się więcej tutaj, a my chcemy podziękować uczestnikom za wspólną zabawę i podzielić się ich wrażeniami.

 

 

 

stopkrkanalytica_post_join_the_game

 

Interesting thing here is the fact that anyone can name their bucket as they want. This may inducts some risk, e.g. cyber criminals can use it to phishing attacks (if a company broadly uses buckets „example-media” and „example-doc”, then it would be quite easy to convince an empolyee to download a file from „example-policies”).

 

Który element zadania był dla ciebie najtrudniejszy?

Analizowanie backupu – chyba było tam najwięcej potencjalnych wątków, które można było podjąć. WordPress, users.sql, private.zip, excele no i maile. A w samych mailach też sporo potencjalnych wektorów ataku. Sądzę, że gdybym wiedział, że snapshoty w AWS mogą być publiczne to byłoby łatwiej. Ale było to też moje pierwsze spotkanie z AWS.

Całe zadanie od początku wydało mi się interesujące. Większe doświadczenie mam z reversingiem czy klasycznymi zadaniami CTF. Zadania z zakresu web security zawsze stanowią dla mnie większy problem, więc lubię je ćwiczyć. A właśnie na tego typu zadanie zapowiadało się #stopkrkanalytica. Później gdy okazało się, że zadanie dotyczy głównie usług AWS pomyślałem, że to świetna okazja żeby czegoś nowego się nauczyć.

Kiedy zaczynałem rozwiązywać challenge, nie było żadnych podpowiedzi, więc starałem się szukać rozwiązań. Może istnieje jakaś domena, a na niej info leak? A może po prostu trzeba siłowo szukać innych bucketów…? 😉

Nigdy nie używałem AWS, więc nie znam jego specyfiki. Gdyby nie wskazówka z linkiem do gotowego skanera S3 to pewnie nie rozwiązałbym zadania. Nie miałem aż tyle czasu, żeby odkrywać jak działa S3 i że w ogóle pozwala na odkrywanie bucketów.

Zdecydowanie najtrudniejszy był początek. Zbyt dużo uwagi poświęciłem na S3 krkanalytica-confidential zapominając, że cenne informacje mogą znajdować się także w innych S3, przez co zmarnowałem sporo czasu. Niepotrzebnie czas straciłem również na łamanie hasła do pliku private.zip (można było łatwo zgadnąć) i późniejsze przeglądanie jego zawartości.

 

stopkrkanalytica_more_aws_buckets

 

Co najbardziej cię zaskoczyło?

Chyba sama końcówka. Spodziewałem się jakieś flagi (tekstu), a tu QR code, który jeszcze prowadził do gif’a Zuckerberga. Myślałem, że to jakiś fałszywy trop – ostatnia próba zadrwienia z atakującego i myślałem, że coś źle zrobiłem. Jednak chwila pomyślenia i wyszło mi, że wszystko jest ok Początkowe wahanie zrzucam na fakt, że kończyłem rozwiązywanie koło 1 w nocy 🙂

Najtrudniejszy element to chyba konieczność szybkiego zaznajomienia się z AWS-em i usługami, których używałem sporadycznie, a do tego wszystkiego trzeba było poznać typowe problemy bezpieczeństwa tych rozwiązań.

Fakt, że musiałem odpalić instancje na EC2!

Najbardziej zaskoczył mnie QR Code w pliku z tajnymi kodami. Uznałem że to kolejny etap z kategorii stegano. Spodziewałem się albo flagi podobnej do KrkA{…} albo jakiegoś tekstu „Super tajny kod to: 000000000”.

 

stopkrkanalytica_mailbox_backup

 

Co zajęło ci najwięcej czasu?

Chyba pierwszy etap, czyli wyszukanie drugiego kontenera S3 („-backup”). Próbowałem innych narzędzi (WaybackMachine) zanim skorzystałem z lazys3 i one nie dawały mi żadnych rezultatów.

Już sam początek był dla mnie trudny, ponieważ nie wiedziałem od której strony zacząć. Dopiero podpowiedź, aby szukać podobnych bucketów pomogła mi ruszyć z miejsca. Drugim momentem, który zajął mi dużo czasu był problem z podmontowaniem snapshota z innego regionu niż ten, w którym mogłem odpalać instancje EC2. Dopiero później odkryłem możliwość kopiowania snapshotów między regionami.

Przeglądanie wymownych PE, ‚WANNASEX.EXE’ i ‚STARFUCK.EXE’, które totalnie zawładnęły moją VM-ką na kilkanascie minut.

Zadanie rozwiązywałem na raty, więc trochę ciężko ocenić, który element zajął mi najwięcej czasu. Przez pewien czas próbowałem łamać hasła z bazy users.sql zakładając, że to zadanie z kategorii crypto. Później okazało się to ślepą uliczką. Trochę czasu zajęło mi utworzenie dysku ze snapshota, podpięcie go do maszyny i utworzenie samej maszyny w supernieczytelnej konsoli AWS (w porównaniu do Google Cloud).

 

stopkrkanalytica_shared_repositories

 

Co spodobało ci się najbardziej?

Całe zadanie było bardzo fajne, nawet pomimo moich trudności w kilku jego etapach. Chyba najbardziej ulubionym momentem było to, jak po wykonaniu ‚git log’ zobaczyłem komunikat zaczynający się od ‚Ooops forgot to remove access keys’ – wiedziałem, że jestem już blisko.

Ulubionymi momentami były te gdy udawało mi się znaleźć jakiś błąd konfiguracji, o którym chwilę wcześniej czytałem, jak na przykład złe zarządzanie poziomami dostępu do plików w buckecie.

Oczywiscie zdobycie kluczy 😉

# git log –oneline
edd5e96 Ooops forgot to remove access keys
b15890b init commit

Mój ulubiony moment to ten, w którym po wpisaniu polecenia „git log” zobaczyłem commit z komentarzem o usunięciu kluczy AWS. Wtedy już wiedziałem, że flaga jest moja.

 

stopkrkanalytica_the_sabotage_has_been_stopped

 

Dlaczego zdecydowałeś się wziąć udział w konkursie?

Trochę liczyłem na nagrodę – zawsze fajnie coś wygrać, ale głównym moim motywatorem była chęć sprawdzenia się.

Zadanie było interesujące z wielu powodów. Nagroda była bardzo atrakcyjna to na pewno. Ale możliwość poznania nowych interesujących technik i nabycia umiejętności była nawet ważniejsza. Poza tym zadanie miało oś fabularną, a to zawsze miły dodatek i sprawia, że można lepiej wczuć się w akcję. Imersja jest większa 🙂

Zobaczyłem challenge i postanowiłem spróbować. Szczególnie, że nie mam szerokiego doświadczenia z cloud security. No i… nie ukrywam, że czekam na koszulki!

Zdecydowałem się na udział w konkursie głównie z powodu nagrody. Dodatkową motywacją był fakt, że po 2 dniach tylko 4 osoby rozwiązały zadanie, więc był jeszcze czas na zmierzenie się z zadaniem w weekend i szansa na wygraną.

 

stopkrkanalytica_winners

 

 

Przekonałeś się, aby spróbować swoich sił i rozwiązać zadanie? Zapraszamy: https://www.securing.pl/krkanalytica/index.html

 

A tutaj znajdziesz opis rozwiązania (ale nie polecamy zaglądać przed przystąpieniem do zadania, żeby nie popsuć sobie zabawy):

 

Chcesz podzielić się swoją opinią o #stopkrkanalytica? Napisz do nas: krkanalytica@securing.pl. Chętnie poznamy twoje zdanie! 🙂

 

Trzymaj z nami kontakt:

Inne artykuły