Пришло время опубликовать прохождение второго нашего квеста (Напомню, что прохождение первого было опубликовано в Журнале "Хакер"). Надеемся, это поможет желающим завершить начатое и получить новые интересные знания, пройдя те злосчастные уровни, которые они не смогли пройти :)
Для тех, кто не в теме, напоминаю адрес квеста: тыц.
Как наверняка заметили те, кто проходил первый квест, во втором есть одно отличие - занудная скрепка-помощник, которая будет задалбывать вас своими советами на протяжении всего прохождения :)
Тем не менее, она иногда будет действительно давать дельные советы и даже решения уровней.
Уровень 0
После регистрации вы окажетесь на этом уровне. Чтобы перейти на следующий, достаточно просто как следует подонимать скрепку, пожаловавшись, что квест сложный и ответ к уровню вы найти сами не можете. После этого скрепка с радостью выдаст вам пароль к следующей задаче.
Уровень 1
Второй уровень без скрепки также не решить. Для непытливых умов эта задачка просто на внимательность, но есть и другие пути ее решения. Сначала как следует поболтаем со скрепкой, а потом взглянем на заголовок страницы - он изменился и теперь в нем содержится пароль. Другой путь - поснифать запросы-ответы к серверу, в одном из ответов скрепки будет скрипт, который и меняет заголовок страницы. Странно, что такой элементарный уровень не смогло пройти почти полторы тысячи человек.
Уровень 2
Очередной уровень на внимательность и сообразительность, не требующий каких-то особых навыков или знаний. Ответ содержится прямо в тексте задания. Можно заметить, что в тексте задания в слове "мозг" буква "г" на самом деле английская "r". Отталкиваясь от этого, можно найти и другие английские буквы, встречающиеся в русском тексте задания. Из этих букв и составляется ключевое слово для перехода на следующий уровень
Уровень 3
Очередной уровень на общее развитие. Скрепка подскажет, что нужно посмотреть видеоролик, данный в задании. Видеоролик состоит из фрагментов фильмов, по первым буквам имен (на английском языке) которых надо составить пароль. Для тех, кто какие-то фильмы не видел или не помнит, как они называются, вот имена (или ключевые их части):
Evan Almighty
Matrix (The)
Pirates of the Caribbean
Harry Potter and the Philosopher's Stone
Alice in Wonderland
Star Wars
Iron Man
Snatch
Уровень 4
И вновь задание на терпение и смекалку. Требуется найти профиль ВКонтакте одного из авторов квеста. Скрепка даст несколько подсказок, по которым и найдется его ID:
По указанным критериям находится около 250 человек, и методом пролистывания с самого начала профиль Kaimi находится в течение пары минут. После того, как профиль найден, остается обнаружить пароль. После беглого просмотра странички видим, что у Kaimi залито несколько фотографий США. На седьмой фотографии, если внимательно присмотреться, в левом нижнем углу можно прочитать слово, необходимое для дальнейшего прохождения.
Уровень 5
Здесь вам дадут картинку (gif), в которой спрятан пароль. Достаточно открыть эту картинку в любом редакторе gif-анимаций и взглянуть на список кадров. Их там 16, и на шестнадцатом спрятан пароль.
Уровень 6
Здесь опять сразу все понятно - даны 5 музыкальных треков, и необходимо определить их BPM. Способа есть, как минимум, два. Первый - найти программу, которая сделает это за вас. Насколько я помню, самой хорошей среди таких была MixMeister BPM Analyzer (еще и бесплатной!). Второй способ - узнать/определить с помощью винампа имена треков по их содержимому, а по именам уже искать в интернете BPM. После определения надо округлить все величины BPM до целых чисел и записать через запятую. Это и есть ответ.
Уровень 7
Здесь вы получите какой-то непонятный полосковый код. Очевидно, что надо его расшифровать. Скрепка подскажет, что такие коды используются почтой. Немного погуглив, обнаружим, что это POSTNET. Расшифровать код можно прямо по той методике, которая описана в википедии, либо найти какой-либо автоматический расшифровщик.
Уровень 8
Здесь снова дадут картинку, на которой изображена непонятная фигня. Скрепка может подсказать, что эта картинка обработана программой, появившейся аж в 84 году, и даже назовет часть имени этой программы. Останется просто заняться поиском и обнаружить, что программа эта - Gmask. Останется скачать ее и воспользоваться фильтрами (мы уже и сами не помним, какими, но подобрать не составит труда) для расшифровки картинки.
Уровень 9
Эта задачка посложнее предыдущих, и с ней придется повозиться. Даны две картинки. Чтобы получить ответ, нужно их сравнить (а если быть точным - вычесть одну из другой). На глаз отличия заметны, но пароль определить сложно, хотя он написан на одной из картинок. Вычесть картинки можно, например, в Photoshop, расположив их в двух слоях одного изображения и сменив режим наложения на Substract (Вычесть). Если пароль все еще незаметен, можно применить фильтр резкости:
Уровень 10
Этот уровень гораздо сложнее предыдущих, особенно для непосвященных. Вам придется заниматься реверсингом .NET-приложения. Однако, если знать, чем пользоваться, то думать в общем-то не придется особо. Для начала берем приложение и открываем его в модифицированном .NET Reflector (заменяет имена методов и переменных, состоящие из нечитабельных символов, на "генеренку" вида Method**** и т.д.), методов довольно мало, и обработчик нажатия на кнопку находится без проблем.
Код обфусцирован, но мы ясно видим, что вводимое в программу значение не играет никакой роли, а вместо него нас интересует текст, который возвращает вызов
1 |
TypeDef4.method0600000C(0x7cb065c6)))) |
Воспользуемся общеизвестным .NET-деобфускатором - Simple Assembly Explorer. Открываем обфусцированный метод, видим следующую картину:
Тыкаем правой клавишей мыши на поле с кодом, выбираем опцию Deobfuscator, в открывшемся окне выбираем профиль String Only. Вуаля, TypeDef4.method0600000C(0x7cb065c6)))) трансформируется в строку cmF3emVybw==. Остается только снять base64, и ключ получен.
Уровень 11
И снова картинка с неведомым содержимым. Скрепка скажет, что такие картинки используются в одном из эзотерических языков программирования. Остается открыть их список в Википедии и обнаружить там следующую строчку: "Piet (с цветовым кодированием)". После этого остается найти лишь интерпретатор языка и выполнить программу, изображенную на выданной вам картинке.
Уровень 12
В этом уровне и подсказывать-то нечего - вспомните школу, это простая проверка ваших знаний русского языка :) Все буквы, которые вы вставляете вместо знаков вопроса в выданном вам тексте, необходимо записать в одну строку, которая и будет ответом к следующему уровню.
Уровень 13
Здесь вы получите текстовый документ с картинкой в ASCII-арте. Скрепка вас сообщит, что, по ее мнению, это какой-то файл, пригодный для исполнения. Методом проб и ошибок можно догадаться, что это скрипт на языке Perl. Далее остается его исполнить и получить пароль к следующему уровню.
Уровень 14
Здесь вы получите файл неизвестного типа. Для начала придется определить, что же содержится в этом файле. Методом тыка определяется, что это rar-архив, в котором лежит XLS-документ. Но документ этот запаролен, и пароль придется побрутить. Одну из букв пароля и критерии для брута подскажет скрепка, так что это дело не займет много времени. Слово для перехода на следующий уровень содержится в самом документе.
Уровень 15
Пожалуй, самый сложный уровень, если принять во внимание 1, 2 и 3 квесты. Придется попотеть :)
Вам дадут ссылку на страничку, на которой размещена флешка. Скрепка подскажет, что все данные, необходимые для прохождения уровня, присутствуют на этой странице, и это чистая правда. Флеш-ролик дан чисто для отвлечения внимания, и реверсить его не придется. Зато в исходном коде HTML можно заметить, что на странице установлена фоновая картинка background.png. Скачиваем ее и видим логотип эппл. Но дело не в нем. Картинка эта на самом деле является еще и RAR-архивом! Об этом вы узнаете, сменив расширение файла на rar. Но архив не простой, а с паролем, и брутить его явно не вариант. Снова взглянем на исходник страницы и увидим, что она также подгружает кастомную иконку - favicon.ico. Скачиваем этот файл из той же директории, где лежит сама страница и открываем его в любом текстовом редакторе ( это же очевидно! :D ). В самом конце иконки видим осмысленное слово, и его используем для открытия ранее найденного rar-архива. В архиве находится pdf-документ. При распаковке многие антивирусы заругаются и удалят его, придется с этим смириться и на время отключить их. Этот документ, вообще говоря, должен исполнять cmd.exe, чтобы извлечь и создать exe-файл, но новые версии Adobe Reader'а запрещают исполнение внешних программ, поэтому придется либо воспользоваться 8-й версией ридера, либо руками исследовать PDF и вытащить из него exe-файл. Благо, vbs-скрипт, который создает и запускает необходимый exe-файл изнутри PDF (дада, We need to go deeper!), находится прямо в его конце в открытом виде. Можно его скопировать и исполнить. Сам exe-файл представляет собой программу размером 2.5 килобайта, который отображает форму с надписью "Almost there..." и проигрывает наш любимый трек группы Стекловата. :) Следует его либо пореверсить в любом дебаггере (защиты от отладки нет), либо воспользоваться любой утилитой для работы с окнами. В окне программы ниже кнопки "Выход" за границей окна находится ярлык (label), который отображает пароль для прохождения квеста.
Уровень 16
Фух, вот и все. Хочу поздравить всех, кто дошел до финала без прохождения - последние уровни действительно крайне непростые. Теперь мы дали возможность и остальным почувствовать себя крутыми хекерами!
В комментариях можете задавать любые вопросы по прохождению, раз оно теперь официально открыто. И не забывайте, что есть еще Третий квест в совершенно новом форм-факторе, который вы еще можете пройти без всяких подсказок!
Спасибо за квесты. Тема из Ninja Gaiden до сих пор стоит на телефоне.
Ещё, если можно и не трудно, ссылку на плагин рефлектора заменяющий имена методов.
<>
у меня пароль в заголовке (в опере) съелся из за ширины вкладки.
похоже, что основной текст съелся. между "" был текст первого задания.
Можно смотреть не на вкладку, а на заголовок страницы. И вообще, как я писал, можно снифать запросы :)
Andrew, можно мелодию из Ninja Gaiden?
Нашел
огромное спасибо интересный квест :) Респект, буду рад появлению новых))
Что я неправильно делаю на 7 левеле? Бар-код расшифрован верно, проверил его на генераторе кодов, ответ не подходит..
Какой ответ пишешь?
Очень понравился первый квест, правда застрял на Чипе и Дейле пока, так как очень не удобно играть с клавиатуры, возьму джойстик у товарища - обязательно пройду до конца без подсказок, обещаю.
Касательно второго квеста - проблема следующая.
Застрял на первом лвл и пришлось нагуглить эту страницу.
Я думаю что > 1500 человек (в том числе и я) не прошли первый уровень из-за того что браузеры a-la Google Chrome при большом количестве вкладок ПРОСТО НЕ ПОКАЗЫВАЮТ ТАЙТЛ СТРАНИЦЫ, вообще... Только иконки...
Все очень плохо :(
Мне приходилось занимать не последние места на C^2, а тут не прошел в течении получаса и первый уровень. Хотя и мог бы догадаться другой браузер взять.
Kaimi, несмотря на то что прошло довольно прилично времени с момента публикации квестов, хочется тебе сказать тебе и dx'у огромное спасибо за проделанную работу. Знай, интерес к ним еще долго не угаснет. Я еще младшему брату их покажу :)
От души!
Спасибо!
По поводу первого уровня с тайтлом - ну здесь можно было и посмотреть, какие запросы уходят на сайт, и какие ответы приходят, там вроде бы тоже видно, то что тайтл должен измениться (JavaScript соответствующий приходит). Хотя, наверное, то что в задании говорится о том, что задачка чисто на внимательность, несколько путает.
А так, прохождения всех четырех квестов уже опубликованы, так что если где-то затык, то можно и подсмотреть. Ответы не на все задачи выложены, но как получить ответ, описано для каждого задания.
Недавно проходил местный квест, попалось задание схожее с вашим в 2012. Вернулся случайно сюда.
Каими, дх - ваши квесты были нереально круты. Дали в свое время соотв. вектор для развития интересов и все, что имею - в большей части благодаря Вам. Спасибо.
Проходил этот квест в январе 2018-го года. Застрял на последнем задании. И с тех пор у меня лежал текстовый файлик на рабочем столе, в котором я фиксировал всякие пометки для себя по мере прохождения квеста. Вот он лежал шесть лет, мозолил глаза, и я решил снова попробовать пройти. Файл exe.exe не работает ни на одном из компьютеров, что у меня имеются, даже в режиме совместимости с Windows XP. Точнее, он вроде как запускается, но визуально никак себя не проявляет. Я пробовал запускать его через x64dbg (первая попавшаяся программа, которую нагуглил), там глаза разбегаются, но никаких форм я там не нашёл. Это вообще решаемая задача, если exe файл у меня не запускается корректно, можно ли как-то извлечь пароль, не исполняя exe файл?
Можно в IDA или Ghidra покопаться в нем. И там и там реализуется символьное исполнение, если я правильно помню. Но это все сложно, проще запустить и взять uuSpy какой-нибудь и решить, как описано
С uuSpy не вышло, потому что exe хоть и запускается, но никак себя визуально не проявляет, и процесс завершается через несколько секунд. Но я в итоге разобрался с x64dbg, и, запустив exe через него, смог найти ответ, потыкав несколько раз на стрелочку "выполнить".