Blog (40)
Komentarze (807)
Recenzje (3)
@DocentO diodzie, co nie chciała podać pytania, i o psie Cerberze, co gdzieś tam szczekał

O diodzie, co nie chciała podać pytania, i o psie Cerberze, co gdzieś tam szczekał

16.09.2012 02:01

Za nami pierwsze zadanie specjalne w konkursie z diodą. Zapowiadaliśmy, że łatwo nie będzie i słowa dotrzymaliśmy ;‑) Biorąc pod uwagę, że punktacja za to zadanie była identyczna jak za każde inne pytanie, to nie ma co panikować w razie "wtopy" - można to potraktować po prostu jako urozmaicenie zabawy i próbować rozgryźć kolejne zadania. Jeśli jednak ktoś odpowiedział poprawnie, a wcześniej powinęła mu się noga lub był na bakier z czasem, to na pewno wiele dzisiaj zyskał.

Zadania specjalne to nie pytania, to zadania. Z takim założeniem przygotowaliśmy wczorajszą odsłonę konkursu. W związku z tym, że konkurs porusza się wokół tematyki Windows Server 2012, zadanie musiało mieć związek z IT, choć jak się okazuje, jeśli ktoś wpadł na trop rozwiązania, to skomplikowana wiedza wcale nie była potrzebna. Zadanie podzielone było praktycznie rzecz ujmując na trzy etapy. Punkty dostać można było naturalnie tylko po przejściu wszystkich. Niektórzy niestety zatrzymywali się gdzieś po drodze i żal to powiedzieć, ale wielu było o dosłownie jedno googlowe zapytanie od ostatecznej odpowiedzi ;‑) Do rzeczy jednak: o co chodziło z tą diodą, co nie chciała ujawnić pytania, i co u licha robi tu ten pies? ;‑)

Po wejściu na stronę konkursową, pytanie brzmiało następująco:

430182

To jest etap pierwszy: wiadomo, że treść pytania to tak naprawdę tylko podpowiedź informująca o tym, jak uzyskać właściwe pytanie ;‑) Jeśli ktoś wpisywał w pole odpowiedzi "pytanie do diody" albo "jakie jest pytanie?", to cóż - bardzo nam przykro, ale tego uznać nie możemy. W końcu informacja poniżej, białą czcionką, jasno nakazywała wpisać tam odpowiedź, a nie pytania. Podobnie ma się sprawa z osobami, które wpisywały w pole odpowiedzi polecenia shellowe służące do uzyskania właściwej treści pytania...

No dobrze, co wiemy z podpowiedzi? Że aby poznać treść pytania, należy zapytać o "dioda.dobreprogramy.pl". To z kolei powinno kojarzyć się z adresem, ale brak "http://" z przodu czy chociażby "www" nie sugeruje, aby był to adres URL strony internetowej. Zresztą wpisanie go w przeglądarkę, co robili praktycznie wszyscy, nie zwróci niczego - taka witryna nie istnieje. Niektórzy nawet oburzali się na forum i w mailach do redakcji, że pytanie nie działa ;‑) Otrzymaliśmy też kilkadziesiąt maili od uczestników z pytaniem o treść pytania ;‑) Co ciekawe, maile kierowane były też na adres dioda@dobreprogramy.pl, z którego przychodzą powiadomienia - zbieżność nazw tu akurat przypadkowa, ale plus dla Was za pomysłowość ;‑) Było to w końcu logiczne posunięcie, zapytać w ten sposób diodę, choć nie do końca - w podpowiedzi nie było przecież mowy o adresie mailowym (zamiast @ była kropka). Być może więc jest to jednak jakaś domena, a właściwie poddomena/host w domenie "dobreprogramy.pl". Chodźmy więc dalej tą drogą...

Teraz mamy wiele możliwości dalszej analizy. Skupmy się na Windows, bo to w końcu konkurs o Windows Server, ale jego posiadanie nie było wcale wymagane ;‑) Do przejścia tego pierwszego etapu wystarczy narzędzie nslookup, które jest wbudowane w każdą wersję Windows, serwerową i kliencką, niemal od zarania dziejów i służy do odpytywania serwerów DNS. Otwieramy więc wiersz polecenia (cmd.exe) i próbujemy. Mały disclaimer tutaj: ponieważ mój komputer automatycznie korzysta z naszych serwerów DNS (i żeby nikt nie pomyślał, że korzystanie z nich było wymagane do rozwiązania zadania - choć początkowo tak chciałem zrobić :P), do zrobienia poniższych screenów użyłem serwera Google Public DNS (8.8.8.8).

430186

No cóż, nie ma lekko ;‑) Niemniej otrzymujemy tu bardzo istotną wskazówkę: nie dostaliśmy komunikatu o nieistniejącej domenie (spróbujcie odpytać np. "dioda1.dobreprogramy.pl" - zwrot serwera będzie zupełnie inny!). To oznacza, że rekord "dioda" istnieje w strefie "dobreprogramy.pl", ale po prostu nie jest typu A (adres IPv4 hosta - domyślny dla nslookup). Trzeba więc pytać o inny typ rekordu. Zakładając, zgodnie z pierwotną podpowiedzią, że szukamy tekstu pytania, możemy strzelić, że chodzi o rekord typu TXT, albo po prostu, tak jak w przykładzie poniżej, zapytać serwer o dowolny typ rekordu istniejący pod tą nazwą (ANY).

430188

Bingo :‑) Etap pierwszy zaliczony. Naszym oczom ukazała się właściwa treść pytania:

Na górze róże, na dole serwer, Na jakim porcie szczeka pies Cerber? Jeśli to wiesz, bilet dostaniesz. Jeśli nie, na zawsze niezalogowanym pozostaniesz.

No, muszę przyznać że wspiąłem się na wyżyny moich poetyckich zdolności by ułożyć tę łamigłówkę ;‑) Tak czy inaczej, mamy pytanie. Co mnie zdziwiło, niektórzy wklejali jego treść do odpowiedzi... Myślę, że wyraźnie w podpowiedzi napisane było, że pod "dioda.dobreprogramy.pl" kryje się treść pytania, a nie odpowiedź. Znając pytanie, odpowiedź musimy niestety znaleźć sami.

Etap drugi to więc rozszyfrowanie, o co tak naprawdę chodzi w pytaniu. Ta informacja zawarta jest w pierwszej strofce wierszyka. Z grubsza rzecz ujmując, trzeba podać numer portu, na jakim działa pewna usługa. Jaka? Co kojarzy Wam się z psem Cerberem - mitologicznym, trójgłowym psem strzegącym Hadesu? Tu niestety roiło się od pułapek, prawdopodobnie był to najtrudniejszy moment... Niektórzy odpowiadali, że chodzi o port 21 - zapewne myśląc o Cerberus FTP Server. Jeszcze inni szukali słowa "Cerber" na liście portów IANA i wyszukiwali tak dziwne porty jak 5150 (Malware Cerberus RAT?). Wszystkie te przypadki mają jednak słaby związek z Windows Server 2012, a konkurs przecież pod patronatem merytorycznym Microsoftu - tu powinna zapalić się Wam czerwona lampka, coś tu chyba nie pasuje... ;‑)

Gdyby lampki nie było, druga strofka, czyli jakby etap trzeci zadania, powinna jednoznacznie naprowadzić na rozwiązanie lub przynajmniej zbić z tropu tych, którzy myśleli o FTP. Mowa jest o bilecie i o logowaniu. Z pewnością przy FTP nie ma mowy o żadnych biletach... Jeśli jednak ktoś miał kiedyś do czynienia z Active Directory - usługą katalogową w Windows Server 2012, ale także np. w Windows 2000 Server - i dodał do tego fakt, że konkurs dotyczy Windows Server, to w tym momencie już na pewno wiedział, że chodzi o protokół Kerberos, który odpowiada za uwierzytelnianie i oparty jest o system "biletów". Uczestniczą w nim zasadniczo trzy podmioty (stąd nawiązanie do psa Cerbera, który miał trzy głowy) i pierwszą odpowiedzią serwera po pomyślnym uwierzytelnieniu klienta jest tzw. Ticket Granting Ticket, w skrócie: bilet (token) umożliwiający ubieganie się o dalsze bilety (dalszy dostęp do kolejnych usług i zasobów). Po szczegóły odsyłam np. do podlinkowanej wyżej Wikipedii.

Nawet jednak jeśli ktoś nie wiedział, do czego tak naprawdę służy Kerberos i że wydaje on jakieś bilety, wystarczyło trochę pogooglać. Oczywiście trzeba było użyć wszystkich słów kluczowych, które padły w wierszyku. Wygooglanie "cerberus windows" przyniesie oczywiste, kompletnie nieadekwatne wyniki, ale już na przykład "cerberus windows ticket" sprawi, że trafimy na stronę Wikipedii poświęconą protokołowi Kerberos. Wtedy wystarczyło już tylko sprawdzić, jaki jest jego domyślny port, o czym Wikipedia naturalnie nie zapomniała wspomnieć. Nie miało znaczenia, czy w odpowiedzi podaliśmy też protokół (TCP/UDP), chodziło tylko o numer portu. Uznawaliśmy wszystkie odpowiedzi, które po prostu jednoznacznie wskazywały, że uczestnik wiedział o co chodzi w pytaniu i podał port 88 :‑) Jeden z uczestników nawet odpowiedział nam (poprawnie) w formie wierszyka ;‑)

Serdeczne gratulacje dla wszystkich, którzy podołali zadaniu, a zwłaszcza dla smagusa, który zrobił to jako pierwszy w 2 minuty i 10 sekund :‑) Muszę przyznać, że także dla mnie przygoda z wczorajszym zadaniem była sporą frajdą. Miło mi też, że wielu z Was doceniło ciekawość pytania ;‑) Porada na przyszłe zadania specjalne: nie strzelajcie tak szybko, zastanówcie się dwa razy. Bonus kusi, ale specyfika zadań specjalnych sprawia, że udzielenie poprawnej odpowiedzi daje spore korzyści - 500 punktów tu zdobyte może w ogólnym rozrachunku okazać się warte więcej, niż warte jest ryzyko wiążące się z chęcią uzyskania kompletu 750 oczek...

Na koniec osobiste pozdrowienia dla Mańka_88, bardzo spodobał mi się jego wierszyk w komentarzach pod newsem ;‑)

Na górze dioda, pytanie kłoda, Docenta poezja, zadanie herezja :D
Wybrane dla Ciebie
Komentarze (127)