UPD: Внутри поста вы можете скачать сертификат участника
Итак, напомним условия:
- Первый, кто правильно решил все задачи, получит набор с Raspberry Pi 3.
- Ещё 20 призёров будут выбраны случайным образом с помощью randstuff.ru из тех, кто решил все задачи до полуночи воскресенья (21 октября) по московскому времени. Везунчики получат специальные призы от DC, Диск-О, GeekBrains и других продуктов компании.
Главный приз получает — тадам! — пользователь с ником nis! Он начал проходить квест практически сразу после публикации и уложился меньше, чем за 2 часа. Поздравляем, ты молодец!
А вот и остальные призёры:
· dNix
· andranik3949
· capfreedom228
· term1nal
· qwertyu123
· Yor
· trololo
· uid
· prettysmilefordevil
· qqwwqq_itog
· exdark
· cryptopirate
· rus--hitman
· AlienaAngel
· Mi7teR
· Avis Rara 2
· nok1a
· Vovcick
· AK2
· ApollopA1
Мы люди честные, поэтому вот видео с процедурой выбора. Благодарите randstuff.ru :)
Поздравляем всех призёров с победой! Мы напишем вам на указанную почту.
Сертификат участника
Правильные ответы
№1 Пин-пад и тепловизор
Тепловизор показывает холодные области оттенками синего; чем теплее область, тем она ближе к красному цвету.
С помощью хорошего тепловизора можно различить разницу температур меньше 0.5 °C, в т.ч. прикосновение руки (см. мой пост).
Поэтому те кнопки, которые нажимались раньше будут более «остывшими».
№2 Как называется предмет
Имя файла hcraes-egami-esrever-elgoog.jpg. Если перевернуть — google-reverse-image-search.
Скармливаем полный URL картинки в Google.
№3 Ильич
Достаточно просто открыть изображение в новой вкладке браузера или в графическом редакторе, чтобы увидеть ответ.
№4 Город на фото
Нужен просмотрщик картинок с функцией чтения EXIF, например, XnView.
Получаем координаты 55° 20' 37.51" северной широты, 36° 11' 9.12" восточной долготы.
Вводим 55° 20' 37.51" 36° 11' 9.12" в любой картографический сервис (Google Maps, Яндекс.Карты) — узнаем название города.
№5 Знак ?
Знак вопроса на странице — это, на самом деле, картинка. Достаточно просто открыть её в новой вкладке браузера или увеличить масштаб, чтобы увидеть ответ.
№6 Оффлайн
№7 Лабиринт
Открываем картинку с лабиринтом в любом графическом редакторе и заливаем инструментом paint bucket точку рядом со входом.
№8 Крутятся хэши
<div class="spin md5">
9f61408e3afb633e50cdf1b20de6f466</div>
MD5 — это алгоритм хэширования. Хотя расшифровка невозможна, существуют интернет-сервисы, которые могут найти исходный текст по хэшу.
№9 ASCII-арт
г=VT-100======================================================================¬¦ --------¬------¬ ------¬ ---¬ --¬ ¦¦ L==--г==---г==--¬--г===--¬----¬ --¦ ¦¦ --¦ ------г---¦ --¦--г--¬ --¦ ¦¦ --¦ --г==--¬--¦ --¦--¦L--¬--¦ ¦¦ --¦ --¦ --¦L------г---¦ L----¦ ¦¦ L=- L=- L=- L=====- L=- L===- ¦L=========
№10 Бип-бип-бип
Декодируем морзянку: три коротких — три длинных — три коротких.
№11 Сеть
Можно включить режим отладки браузера и найти во вкладке сеть изображение с сервером.
Можно найти регулярным выражением в HTML-коде страницы.
Самый «дубовый» способ — уменьшить масштаб страницы по максимуму и найти глазами.
№12 Unicode
Четыре варианта:
¦ ? O = ответ
? ? O = ответ
¦ ? O = ответ
¦ ? O = ответ
Первая строка является подсказкой: 0x263A + 0x31 = 0x266B, т.е. единица здесь представляет не себя, а код 0x31 (49).
Таким образом, для получения ответа на калькуляторе в шестнадцатеричном режиме вычитаем из первого кода символа второй. Полученную разность преобразуем назад в символ по таблице Unicode. В Windows для этого есть утитита charmap.exe.
? ? O = 5
¦ ? O = )
¦ ? O = +
P.S. если вы указали в ответе десятичный или шестнадцатеричный код, это тоже зачтено.
№13
Фронтенд-программисты также могли бы убрать CSS или раскодировать строку по восьмеричным ASCII-кодам в Javascript.
Получаем строку /ix.zip.
Добавляем ее к адресу сайта, получаем puzzle.mail.ru/ix.zip, скачиваем.
Внутри архива — файл bogus.mp3.
bogus.mp3 не проигрывается аудиоплеером, на что указывает и название «bogus» — т.е. «фиктивный», «поддельный».
Очевидно, расширение не совпадает с настоящим типом файла. Открываем его в блокноте — он начинается с символов GIF89 — значит это gif-изображение. Переименовываем — это на самом деле анимация. Нужно открыть ее в просмотрщике или редакторе, который позволит посмотреть ее покадрово — под Windows подойдет Media Player Classic.
№14 RFC 1464 и Lorem ipsum
<img src="loremipsum.png" width="2" height="2">
<iframe src="http://quiz14.donkeyhot.org/" width="1" height="1">
У нас, во-первых есть картинка puzzle.mail.ru/loremipsum.png с каким-то текстом на латыни, во-вторых, перейдем на quiz14.donkeyhot.org, где находим следующий ключ: read rfc1464 and try again.
Гуглим, что такое RFC1464 — это документ «Using the Domain Name System To Store Arbitrary String Attributes» либо можно сразу попасть на страницу в Википедии TXT record. Вкратце: в системе DNS можно хранить произвольные публичные текстовые записи, связанные с доменом, получить которые может любой пользователь Интернет.
Узнаем, как прочитать эту самую TXT-запись: либо воспользоваться онлайн-сервисом, либо в командной строке набрать:
nslookup
set type=txt
quiz14.donkeyhot.org
Не заслуживающий доверия ответ:
quiz14.donkeyhot.org text =«puzzle.mail.ru/mask14.gif»
(nslookup должен работать в любой ОС)
Теперь у нас есть две картинки одинакового размера. Вторая, как следует из её имени файла, — это маска, которую мы накладываем на loremipsum.png в любом редакторе, поддерживающем слои (Paint.NET, GIMP, Photoshop и т.д.). Получаем картинку (горизонтальные линии добавлены для упрощения), читаем слева направо, сверху вниз: MCMXCVIII. Текст на латыни намекает, что это число в римской системе счисления. Т.к. ответ по условию должен быть десятичным числом, то переводим сами или на калькуляторе.
M = 1000 +
CM = (1000-100) +
XC = (100-10) +
V = 5 +
III = 3
№15 Вирус
В вашей сети 10.0.0.0/[19...25] появилась зараженная машина. За сколько минут будут заражены все машины в сети? (Предполагается, что все адреса используются)
Узнаем, что это за запись — это адрес сети и маска. Есть онлайн-калькуляторы — гуглятся по запросу «netmask calculator».
Если вручную считать, то число после слеша означает, сколько бит из 32 будет отдано под адрес сети. Оставшиеся 32-20=12 бит можно использовать под адреса машин, т.е. получается 212=4096 адреса максимум (на самом деле 4094, потому что первый адрес 10.0.0.0 — это адрес сети, а последний 10.0.15.255 — широковещательный, но это не влияет на ответ).
Количество зараженных машин растет в геометрической прогрессии каждые 30 секунд: 2, 4, 8… Легко заметить, что число зараженных машин , где t — время в минутах. N=4096 и обратная функция даст нам искомое время полного заражения:
P.S. В этом вопросе небольшая недоработка: не указано, как округлять ответ. Поэтому за правильные зачтены дробные, а также округленные вверх и вниз.
№16 CellID
Нужно понять, где вы находитесь. У вас нет GPS, но вы включили инженерный режим в телефоне и увидели следующую информацию:
… MCC:372,MNC:1,LAC:2300,CellID:33250
Как называется остров?
MCC=372 указывает на Республику Гаити. Но Гаити принадлежит несколько островов. Вбиваем все коды в базу вышек сотовой связи, например тут, и узнать точное местоположение на карте.
№17 Даты
15-10-1998 51101
15-10-2008 54754
15-10-2018 ???
Печенье по-английски cookie или biscuit.
Первое — явный намёк на куки. Любым способом узнаем куки страницы, например, через панель веб-разработки (Chrome, FF, IE — F12, Opera Ctrl+Shift+I).
Замечаем куки podskazka_17_sha256 — это хэш, ищем онлайн сервис раскодировки SHA-256, получаем MJD. Узнаем, что это — Modified Julian Date.
В общем-то и без подсказки легко догадаться, что числа в правом столбце — это дни. 54754-51101=3653 — похоже на число дней за 10 лет с 3 високосными днями.
В онлайн-сервисе или сами вычисляем MJD для 15-10-2018. Если сами, то 54754+365*10+2
P.S. В виде исключения, как правильный ответ засчитывается 58407
№18 Сложение в столбик
В примере некоторые цифры заменены на буквы.
Найдите, чему равны эти цифры и запишите ответ в виде ABCDE, например, 12345.
Смотрим следующий разряд — разряд единиц: либо B+B=9, либо B+B=19, но 9 нечетное число, значит из предыдущего разряда пришла единица переноса. Т.е. либо 2B=8, тогда B=4, либо 2B=18, тогда B=9, но девятка уже встречается в открытую, значит, только B=4.
Смотрим разряд десятков: теперь известно, что E+C=11.
Смотрим последний (самый правый) разряд 9+4=A, значит A=3 и была единица переноса.
Смотрим четвертый разряд после запятой: единицы из предыдущего разряда не переносились, (4+4+1=9) и 1+E=C. Также мы знаем, что E+C=11, т.е. C=11-E, значит 1+E=11-E, переносим 2E=11-1, получается E=5, С=6.
P.S. Некоторые так увлеклись, что в ответ записали итоговую сумму вместо значений ABCDE — зачтено как правильное в качестве исключения.
№19 Год посадки деревьев
2. ???
3. Ответом является год посадки деревьев (четыре цифры).
На предыдущем уровне мы получили 54,466149 и 64,797544 — сложив с подсказкой, понимаем, что это геокоординаты в градусах.
Вбиваем в картографический сервис, видим юбилейную рощу в Курганской области.
Столетний юбилей Ленина праздновался в 1870+100=1970 году
P.S. Восемь дотошных человек раскопали, что рощу, возможно, посадили в 1967 году, этот ответ тоже засчитывается.
№20 Бэслемьч кчэафчкыь
Для упрощения все буквы Ё в тексте заменены на Е, Ъ — на Ь.
Она указывает на подсказки в заголовках HTTP. Их можно посмотреть в отладочной консоли браузера:
X-Hint-1: /hint15.png
X-Hint-2: /_.jpg
В https://puzzle.mail.ru/hint15.png семафорной азбукой зашифровано "ЦЕЗАРЬ".
На https://puzzle.mail.ru/_.jpg изображен персонаж х/ф «Матрица» — Cypher. Если вы вдруг не смотрели «Матрицу», то вы
Итого получаем Цезарь + cypher = шифр Цезаря
Зная, что это шифр Цезаря, можно взять какое-нибудь слово и, сдвигая символы на N позиций в алфавите, получить значение сдвига 13 максимум за 30 попыток.
NB! В задании непроизвольно получилось усложение, т.к. не было указано, что й заменено на и. Сейчас это исправлено.
Статистика
№ ур. | прошло человек | % от всех |
1 | 5414 | 83,5% |
2 | 3896 | 60,1% |
3 | 3666 | 56,5% |
4 | 3341 | 51,5% |
5 | 4061 | 62,6% |
6 | 4097 | 63,2% |
7 | 2940 | 45,3% |
8 | 2588 | 39,9% |
9 | 3180 | 49,0% |
10 | 2613 | 40,3% |
11 | 3473 | 53,5% |
12 | 1683 | 25,9% |
13 | 1244 | 19,2% |
14 | 978 | 15,1% |
15 | 1485 | 22,9% |
16 | 2245 | 34,6% |
17 | 1813 | 27,9% |
18 | 1828 | 28,2% |
19 | 1683 | 25,9% |
20 | 1266 | 19,5% |
кол-во решенных | человек | % |
1 | 765 | 12,2% |
2 | 537 | 8,6% |
3 | 403 | 6,4% |
4 | 335 | 5,3% |
5 | 340 | 5,4% |
6 | 337 | 5,4% |
7 | 340 | 5,4% |
8 | 379 | 6,0% |
9 | 339 | 5,4% |
10 | 310 | 4,9% |
11 | 262 | 4,2% |
12 | 209 | 3,3% |
13 | 208 | 3,3% |
14 | 180 | 2,9% |
15 | 175 | 2,8% |
16 | 202 | 3,2% |
17 | 230 | 3,7% |
18 | 242 | 3,9% |
19 | 299 | 4,8% |
20 | 182 | 2,9% |
Спасибо всем, кто принимал участие! Спасибо AloneCoder и Daria_Yakovleva, которые помогли провести этот квест. Увидимся на следующем квесте!
Комментарии (81)
AdmAlexus
22.10.2018 19:36А давайте всем зарешавшим сделаем красивые сертификаты? Чтобы можно было распечатать и на стенку повесить?
P.S. С днём рождения!!!
RedComrade
22.10.2018 20:06не нашел себя в списке и не нашел задание где ответ отличается, куда жаловаться? а так был веселый микроctf
iamoverit
23.10.2018 11:20ну хотя ничего удивительного если сотрудники мейл ру в екселе вбивают порядковые номера строк победителей ВРУЧНУЮ {2:25 в видео 168 строка = 18.}
klim76
22.10.2018 21:04так то 2й вопрос не однозначно решается :-/
Milliard
22.10.2018 23:09google-reverse-image-search
klim76
23.10.2018 08:16может я конечно тупой, но у меня всё равно ищется ружьё
gag_fenix Автор
23.10.2018 18:28Да, такое получается, если в настройках Google стоит английский, а не русский.
Milliard
23.10.2018 20:42У меня теперь тоже находится Rifle, даже на отзеркаленное изображение, хотя когда проходил квест находился Чапельник.
AlexRay
23.10.2018 10:44+1У меня похожая беда. Причём я бы ответил правильно, если бы не воспользовался подсказкой про image search.
Скриншотjohnfound
23.10.2018 15:53У меня тоже выходит rifle:
Скриншот 1domix32
23.10.2018 12:29Мне кстати гугл тоже ружо искал. И я такой набираю, жму Enter и… ничего. Думал там проверка ответа сработала и таки я ввел неправильно. Оказалось что оно по Enter просто все очищает (Chrome/macOS), а не проверяет. В итоге правильный ответ из текстов по ссылкам таки должен был уйти.
DeniSix
22.10.2018 21:09Неожиданно приятно! Спасибо за квест, как всегда хорошая разминка для ума.
Похоже, Ваши квесты становятся для меня уже традицией :)
В быстром прохождении была, конечно, изрядная доля везения в нужное время проверить RSS и, еще не выветрившийся, кураж от 310 BTC Challenge.
Gl_Proxy
22.10.2018 22:30+2Как можно посмотреть свои ответы, а то уже и не помню сколько правильно сделал.
Kolonist
22.10.2018 23:09А я вот долго думал, что ответить на вопрос с морзянкой и в конце концов перемудрил.
То, что это SOS азбукой морзе, я понял сразу, но подумав, что это было бы слишком просто, полез в исходники страницы, нашел подсказку, прочитал id3 и ответил содержимым тега, т.е. Samuel Morse.
Потом долго сомневался, но в итоге решил, что SOS там для отвлечения внимания и надо отвечать используя подсказку.
117
25.10.2018 12:15Плюсую. Сбило с толку «Хм, кажется, ваш браузер устарел. Лезьте в код — там есть ответ :)», долго сомневался, но посчитал, что подсказка прямо указывает на ответ — Морзе.
BJM
25.10.2018 13:11+1. Имено случай когда подсказка вредит и воспринимается за ответ. Так звучание SOS знают (почти) все.
GrigorGri
23.10.2018 01:59-114-ое весьма не однозначно на мой взгляд. Так как буквы не на одной линии и сильно удалены друг от друга нет весомых мотивов считать их частью одной записи числа.
Это было единственное задание где ошибся — ответил m+m+c+c+x+v+i+i+i = 2218. ИМХО, стоило бы считать правильными оба варианта ответа.mazahakajay
23.10.2018 09:03аналогично. записывал их подряд. Правда у меня получилось mcmiiivxc — 2014
Xardas2000
23.10.2018 18:31Изначально тоже так написал, но решил проверить на обратность, точно ли 2218 — это m+m+c+c+x+v+i+i+i, и в итоге получил правильный ответ)
Alexufo
23.10.2018 03:02Про микроточку я ничего не понял. Кто нибудь пояснит? Нужно было увидеть серый пиксель вне графического знака чтоли?
Sirion
23.10.2018 04:08Знак вопроса — это уменьшенное изображение. В натуральную величину оно больше. А если увеличить его ещё сильнее, то станет виден ответ.
shushu
23.10.2018 07:41в 17й задаче подсказку с хешем не понял, но вы правы, и так понятно что это MJD, спасибо за обьяснение! :)
Подсказки на последнем видел, перепробовал все варианты сдвига — ничего путёвого не получилось. побробовал кастомный алфавит, без ё и т.д — тоже самое.
попробовал применить частотный анализ и просто заменить буквы — в итоге забил и вернулся к работе :)
Спасибо за квест! Люблю такие штуки :)
CryptoPirate
23.10.2018 09:54Если вы в детстве ездили в деревню к бабушке или видели фильм «День выборов», то второй вопрос в подсказках не нуждается :-)
domix32
23.10.2018 12:24+1В 10 самый простой способ посмотреть во вкладке запросов какие ресурс подгружаются. Браузер умный, одну и ту же картинку не станет грузить несколько раз. Название тоже показывает и сохранять ничего не надо.
gotz
23.10.2018 18:29Для второго вопроса учли ответ «сковородник»?
ru.wikipedia.org/wiki/%D0%A7%D0%B0%D0%BF%D0%B5%D0%BB%D1%8C%D0%BD%D0%B8%D0%BA
pomalliko
23.10.2018 18:51странички с персональными результатами решили не делать?
можно дополнить статистику: сколько всего участников, сколько из них ответили на все 20 вопросов правильно.gag_fenix Автор
23.10.2018 18:52Да персональную статистику сделать не успеваю :(
сколько всего участников, сколько из них ответили на все 20 вопросов
Добавил в конце поста.
ProfBiss
23.10.2018 18:52Обидно однако, не смог пройти дальше 2го вопроса, хоть и перепробовал правильный ответ в разных раскладках и задом наперёд писал и аппер и ловер кейсом и синонимами joxi.ru/xAewebtpWnpomy, а когда написал комментарий его просто не приняли.
Garbageman
23.10.2018 19:02+1В 4м вопросе просто нажал на картинку правой кнопкой и «Найти картинку (Яндекс)»)))))
rootoslav
23.10.2018 19:02+117й вопрос сбил с толку. Я нашел в куках хэш, сделал декрипт SHA-256, получил буквы mjd. В вопросе было три вопросительных знака ??? (они и сбили меня с толку, т.е. посчитал что в ответе всего три символа). Я и подумал, что MJD это и есть ответ, не стал копать дальше. На остальные вопросы ответил верно, спасибо за квест, было здорово.
Ci_devant
23.10.2018 19:03-1«Каждая зараженная машина заражает еще одну каждые 30 секунд.» — Очень плохо сформулировано условие. Я предположил, что это линейная прогрессия. «По пальцам» надо настучать тому, кто это писал!
gag_fenix Автор
23.10.2018 19:12Ну я для себя сделал вывод, что формат лучше делать классическим: нельзя пройти на следующий уровень, пока не дал правильный ответ. Когда можно вводить все, что угодно, то больше ошибок.
Если у вас есть идеи для вопросов для следующих квестов, присылайте мне в ЛС (-;johnfound
24.10.2018 11:52Ну я для себя сделал вывод, что формат лучше делать классическим: нельзя пройти на следующий уровень, пока не дал правильный ответ. Когда можно вводить все, что угодно, то больше ошибок.
Не трогайте это. Так игра намного интереснее! Только UI наверное стоит как-то поменять, чтобы не путались. Хотя мне все было более-менее ясно.
Arris
25.10.2018 11:35плохая идея. Потому что, к примеру, я ответил правильно на 15 и 16 задачи, застрял на 17, пропустил, сделал 18 и 19… с целью вернуться к 17-ой потом.
Идиотизм — заставлять человека биться о задачу снова и снова, не давая отвлечься на другие.
Steed
25.10.2018 13:08Это сразу раскроет правильные ответы, чего вы, как я понял по формату этого квеста, хотели избежать.
AlexanderY
23.10.2018 19:12Ребята, у вас с куками в этой штуке ничего не напутано? Или может какие-то другие баги? У меня куча ответов просто не засчитывалась (из тех, что у вас перечислены как правильные), но зато засчитывались другие. Например:
2 — Чапельник — у меня засчиталось только название файла
3 — 1917 — у меня засчитался hex-код красного цвета, которым залита страница
4 — Верея — у меня засчиталась только Vereya
5 — Микроточка — у меня засчитался только размер файла в пикселях
10 — SOS — у меня засчитал Samuel Morse
14 — 1998 — у меня засчитал 10009009053 (1000 900 90 5 3 из римских)
15 — единственный вопрос, который вообще не засчитался. Был вариант 10.0.0.0/23. В итоге я перепробовал вообще все числа от 0 до 25 — ничего не подошло
16 — Гаити — у меня засчитал Haiti
17 — я не успел погуглить, что такое MJD, но эти три буквы засчитались в качестве ответа, т.е. число 58406 я не вводил
19 — 1970 — у меня засчитал только D970
Если что, браузер Firefox. Многие вещи показались очень неочевидными (особенно в начале, где прямым текстом написано, что ответ это «1917», но он не подходил). Но даже так прошел 19/20 :)AlexanderY
23.10.2018 19:15Другими словами, непонятно по какому принципу меня пускали дальше — получается, на часть вопросов я ответил неправильно, но прошел. Но на другие вопросы я отвечал правильно — и меня не пускали дальше. В конце написали, что прошел 19 из 20, я уж не знаю — означает ли это правильное решение девятнадцати задач.
gag_fenix Автор
23.10.2018 20:51В том-то и фишка, что можно указывать любые ответы и переходить к любому вопросу.
AlexanderY
24.10.2018 06:17Но я не переходил вручную, в том то и дело (только с вопроса про подсети).
Milliard
23.10.2018 20:41У меня по нажатию Enter поле ответа в Firefox очищалось. Нужно было нажимать кнопку «Ответить». Возможно причина в этом.
gotz
25.10.2018 14:56Получил сертификат 19 из 20 — с ПУСТЫМ полем ФИО 8-O
bakarapara
25.10.2018 15:15задание №21 — написать скрипт который будет впечатывать имя участника в сертификат :D
gag_fenix Автор
25.10.2018 15:17Ну спрашивать у всех ФИО — это слишком. А ник вписывать — не все оценят.
Поэтому специально сделали пустым.
Furriest
А счастливчики с краю чего, извините?