czwartek, 29 stycznia 2026

picoCTF - Riddle Registry

W tym poście chciałbym opisać rozwiązania zadania Riddle Registy w dziale Forensics picoCTF. 


Do zadania dołączono plik PDF:

Tekst nie jest specjalnie ukryty, wystarczy go skopiować i wkleić np. do notatnika i dostaniemy ukryty tekst:


Jeśli chcecie lepiej ukryć tekst bez dużego wysiłku. To wystarczy go przedrukować do nowego dokumentu. Czyli po otwarciu udostępnionego pliku widać, że dane da się w nim zaznaczać:


Jeśli ten cały plik przedrukujemy do nowego dokumentu:


To już tekstu nie da się go już zaznaczyć. Całość widziana jest jako zdjęcie. 

W oryginalnym dokumencie zaciemnianie możemy wykonać przez zaznaczenie tekstu a następnie wybranie koloru podświetlenia:


Wybieramy kolor linii zgodny z kolorem tekstu. Dalej trzeba go przedrukować jako PDF, żeby dokument został spłaszczony. Nie da się co prawda kopiować tekstu, natomiast zaciemnione fragmenty raczej są nie do odzyskania, lub jest to dosyć skomplikowane:


Dobra wracamy do zadania. 

Niestety nie ma tak łatwo. W tekście nie znajdziemy flagi. Ok to może otwórzmy plik w Notepadzie i sprawdźmy czy czegoś tam nie schowano. Od razu po otwarciu rzuca się w oczy pole z autorem dokumentu:


Tekst jest następujący:

  1. cGljb0NURntwdXp6bDNkX20zdGFkYXRhX2YwdW5kIV9jYTc2YmJiMn0\075

Wklejamy całość do strony dekodującej Base64:


Usuwamy co najwyżej znak \075 lub 4 z końcowego stringa. Możemy ją zamienić też na znak =, Ponieważ \075 oznacza zapis ósemkowy, który odpowiada wartości 61 dziesiętnie. To z kolei odpowiada wspomnianemu "=". 

Wklejamy flagę i kończymy zadanie.