Koniec roku to bardzo dobra okazja do wszelkiej maści podsumowań. 2017 to był dla mnie zawodowo całkiem niezły rok:
Tag: Gynvael
Misja Gynvaela 011
MISJA 011 goo.gl/keE94T DIFFICULTY: █████░░░░░ [5/10] ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ Jednemu z naszych agentów polowych poszczęściło się - zakradł się do biura podejrzanego i zrobił zdjęcie bardzo ważnego dokumentu. Zdjęcie udało się wywołać i otrzymaliśmy dzisiaj archiwum z jego skanem. Ponieważ jestem obecnie bardzo zajęty i mam bardzo ważne spotkanie, poniżej jest link do pliku - zajmij się tym. goo.gl/A6sMwA Powodzenia! -- Odzyskaną wiadomość umieść w komentarzu pod tym video :) Linki do kodu/wpisów na blogu/etc z opisem rozwiązania są również mile widziane! P.S. Rozwiązanie zadania przedstawię na jednym z vlogów w okolicy dwóch tygodni.
Misja Gynvaela 010
MISJA 010 goo.gl/oAdvWe DIFFICULTY: ███░░░░░░░ [3/10] ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ Otrzymaliśmy dokument PDF w którym podobno jest zaszyta ukryta wiadomość. Zwracamy się do Ciebie z prośbą o jej odnalezienie: https://goo.gl/wgt94W Powodzenia! -- Odzyskaną wiadomość umieść w komentarzu pod tym video :) Linki do kodu/wpisów na blogu/etc z opisem rozwiązania są również mile widziane! P.S. Rozwiązanie zadania przedstawię na początku kolejnego livestreama. P.S. Pomysłodawcą misji jest foxtrot_charlie.
Misja Gynvaela 009
MISJA 009 goo.gl/q49Fw7 DIFFICULTY: ██████░░░░ [6/10] ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ Do naszych techników trafiło nagranie, w postaci pliku dźwiękowego, z osobliwymi piskami. Nagranie otrzymaliśmy od lokalnego radioamatora i możesz je pobrać poniżej: https://goo.gl/NeJHD2 Jeśli możesz, wyręcz naszych techników w zdekodowaniu wiadomości - są obecnie zajęci naprawą naszego elektrohydroturbobulbulatora. Powodzenia! -- Odzyskaną wiadomość umieść w komentarzu pod tym video :) Linki do kodu/wpisów na blogu/etc z opisem rozwiązania są również mile widziane! P.S. Rozwiązanie zadania przedstawię na początku kolejnego livestreama.
Misja Gynvaela 008
MISJA 008 goo.gl/gg4QcA DIFFICULTY: █████████░ [9/10] ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ Otrzymaliśmy dość nietypową prośbę o pomoc od lokalnego Instytutu Archeologii. Okazało się, iż podczas prac remontowych studni w pobliskim zamku odkryto niewielki tunel. Poproszono nas abyśmy skorzystali z naszego autonomicznego drona wyposażonego w LIDAR (laserowy skaner odległości zamontowany na obracającej się platformie) do stworzenia mapy tunelu. Przed chwilą dotarliśmy na miejsce i opuściliśmy drona do studni. Interfejs I/O drona znajduje się pod poniższym adresem: http://gynvael.coldwind.pl/misja008_drone_output/ Powodzenia! -- Korzystając z powyższych danych stwórz mapę tunelu (i, jak zwykle, znajdź tajne hasło). Wszelkie dołączone do odpowiedzi animacje są bardzo mile widziane. Odzyskaną wiadomość (oraz mapę) umieśc w komentarzu pod tym video :) Linki do kodu/wpisów na blogu/etc z opisem rozwiązania są również mile widziane! HINT 1: Serwer może wolno odpowiadać a grota jest dość duża. Zachęcam więc do cache'owania danych na dysku (adresy skanów są stałe dla danej pozycji i nigdy nie ulegają zmianie). HINT 2: Hasło będzie można odczytać z mapy po odnalezieniu i zeskanowaniu centralnej komnaty. P.S. Rozwiązanie zadania przedstawie na początku kolejnego livestreama.
Misja Gynvaela 007
MISJA 007 goo.gl/f6ogMR DIFFICULTY: █░░░░░░░░░ [1/10] ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ Otrzymaliśmy zaszyfrowaną wiadomość. Podobno użyty został potężny algorytm ROTn, ale ze zmieniającym się kluczem. Klucz podobno zmienia się w prosty do przewidzenia sposób, więć zostawiamy rozkodowanie wiadomości Tobie: KFGS WUSTRX DBZAYE KIGHFL RPNOMS -- Odzyskaną wiadomość umieśc w komentarzu pod tym video :) Linki do kodu/wpisów na blogu/etc z opisem rozwiązania są również mile widziane! P.S. Rozwiązanie zadania przedstawie na początku kolejnego livestreama.
Misja Gynvaela 006
MISJA 006 goo.gl/te47XT DIFFICULTY: ███░░░░░░░ [3/10] ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ Przeglądając stare dokumenty z lat '60 zeszłego wieku natrafiliśmy na taką oto notatkę: c5 c2 c3 c4 c9 c3 40 82 a8 93 82 a8 40 86 81 91 95 a8 40 87 84 a8 82 a8 40 82 a8 93 40 93 96 87 89 83 a9 95 a8 4b 40 c1 93 85 40 95 89 85 40 91 85 a2 a3 4b Przypuszczamy, że to jakieś zdanie w języku Polskim, ale nie udało nam się tego zdekodować. Zrzucimy to więc na Ciebie. Powodzenia! -- Odzyskaną wiadomość umieśc w komentarzu pod tym video :) Linki do kodu/wpisów na blogu/etc z opisem rozwiązania są również mile widziane! P.S. Rozwiązanie zadania przedstawie na początku kolejnego livestreama.
Misja Gynvaela 005
MISJA 005 goo.gl/BX0XeI DIFFICULTY: ██░░░░░░░░ [2/10] ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ Jeden z naszych agentów dostał się wczoraj w nocy do silnie strzeżonej placówki dyplomatycznej i zrobił zdjęcie kartki z hasłem do jednego z ich serwerów. Fotografię otrzymaliśmy nieco po północy, ale wygląda na to, że jest uszkodzone. http://gynvael.vexillium.org/ext/m5_tajne.png Przeanalizuj powyższą fotografię i spróbuj odzyskać wykradzione hasło. -- Odzyskaną wiadomość umieść w komentarzu pod tym video :) Linki do kodu/wpisów na blogu/etc z opisem rozwiązania są również mile widziane! P.S. Rozwiązanie zadania przedstawię na początku kolejnego livestreama.
Opisany poziom sugeruje trudność zadania, ale, parafrazując pewnego popularnego polskiego polityka (partii PZPR): wyraźnie je przeszacowuje.
Misja Gynvaela 004
MISJA 004 goo.gl/ DIFFICULTY: ███░░░░░░░ [3/10]
┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅
Jeden z naszych agentów infiltruje siedzibę wrogiego syndykatu, i utknął pod
drzwiami z elektronicznym zamkiem. Udało mu się dostać do elektroniki i zrzucić
krótki program, który sprawdza wprowadzony kod i otwiera drzwi.
Twoim zadaniem będzie wykonanie analizy poniższego programiku oraz znalezienie
poprawnego kodu.
#include <stdio.h>
int check(char*b){char*p;for(p=b;*p;p++);if(((p-b)^42)!=47)return(
~0xffffffff);unsigned long long ch=0x1451723121264133ULL;for(p=b;*
p;p++)ch=((ch<<9)|(ch>>55))^*p;return!!(14422328074577807877ULL==
ch);}int main(void){char buf[1234];scanf("%1233s",buf);puts("nope"
"\0good"+check(buf)*(6-1));return 0;}
--
Odzyskaną wiadomość umieśc w komentarzu pod tym video :)
Linki do kodu/wpisów na blogu/etc z opisem rozwiązania są również mile
widziane!
P.S. Rozwiązanie zadania przedstawie na początku kolejnego livestreama.
Kod, jak widać, jest trochę bardzo nieczytelny. Ok, to jest C, ale i tak powinno być lepiej. Dlatego pierwszym krokiem ku rozwiązaniu zadania było jego poprawne sformatowanie. Do tego użyłem http://format.krzaq.cc, mojego webowego frontendu dla clang-format.
Misja Gynvaela 003
MISJA 003 goo.gl/ZPQvV0 DIFFICULTY: ██░░░░░░░░ [2/10]
Tym razem nie trzeba nic robić. Wystarczy uruchomić poniższy skrypt, chwilkę
poczekać, a hasło zostanie wypisane. No, taką dłuższą chwilkę...
#!/usr/bin/python
def magic1(a, b):
o = 0
i = 0
while i < a:
o += 1
i += 1
i = 0
while i < b:
o += 1
i += 1
return o
def magic2(a, b):
o = 0
i = 0
while i < b:
o = magic1(o, a)
i += 1
return o
n1 = int("2867279575674690971609643216365"
"4161626212087501848651843132337"
"3373323997065608342")
n2 = int("1240905467219837578349182398365"
"3459812983123659128386518235966"
"4109783723654812937")
n = magic2(magic1(n1, n2), 1337)
print hex(n)[2:-1].decode("hex").splitlines()[0]