Pull to refresh

Comments 116

UFO just landed and posted this here
UFO just landed and posted this here
Дальше — гораздо интереснее :)
Да нет, не опоздали. Это только первый шаг. Конечная цель — полный e-mail адрес
Вы говорили «опоздал» сами себе? :)))
ну тут нло бывает прилетает, почему б не скзать себе «опоздал»)
А можно эти сообщения как нибудь скрыть, а то ведь дальше людям будет не интересно играть :(
Увы, похоже, нельзя. Впрочем, надеюсь, что эти сообщения смогут кому-нибудь помочь.
У вас есть отличная возможность сделать свой мини-стартап для такой идеи. Честно скажу, что я рад буду участвовать в таких соревнованиях. Уверен, при желании это можно сделать за 2 недели.
П.С. если надумаете делать и сделаете, то обязательно напишите про это.
Обязательно напишу.

Это мой первый опыт создания такого рода задачки. Надо сказать, что многое я сделал неверно и многому научился. У меня есть ещё пара идей такого рода. Если HR меня не убьёт за трату времени сотрудников, поделюсь.
в журнале ХАКЕР уже много лет ведутся такие конкурсы :)
можете почитать, может какую-нить идейку для очередного теста возьмёте.
Ищите сами :)
Если кому-нибудь будет интересно, то через день опубликую комментарий с «полным прохождением».
идея хорошая.
но вторая подсказка с набегу как-то прямо нифигасебе!
Спасибо, старался. Задача была сделать охоту доступной (решаемой) не только для айтишников, но и для людей других профессий.
мне больше де-обфускация JS-кода «понравилась»…
нет, там нужен перебор для пароля, hash=23035
Ага, в условиях неопределенности длины это займет две сотни лет.
да нет, градиентный спуск решает. Там еще, блин, ограничение только на вводимые с клавиатуры символы
Да коллизию там найти вообще как нефиг делать вот например — ad565df7d2c5716 и судя по всему 15 символов пароль.
можно и на 14, и на 16 коллизии найти. Только вот непонятно, правильный это пароль или нет :))
А там дальше XOR шифрование… Но там снизу ключ похоже
_0__P_e_5___H__
o, t, 3

Предполагаю что первая строка это маска пароля а вторая то что туда подставлять, но что то пока не получается.
наверное, это часть пароля — 15 символов (для упрощения перебора :)
+ символы для проверки оставшихся
Что вы всё в лоб-то? ) Раз головоломка может быть пройдена обычным человеком, то нужно просто отвечать на вопросы… В первом пункте что спрашивают? Язык. Ликофрон, по логике, писал на древнегреческом. Дальше компьютер… Недалеко от Греции был найден механизм, который считает первым механическим компьютером (http://en.wikipedia.org/wiki/Antikythera_mechanism). Что дальше? ) ХЗ, может не надо вообще эти пункты связывать… )
да, в лоб не катит.
я вот набрутфорсил много тысяч паролей, хеш которых 23035, но естественно они не дали осмысленного текста :)
o0ooPoeo53AaHhl
o0ooPoeo53AaHik
o0ooPoeo53AaHjj
o0ooPoeo53AaHki
o0ooPoeo53AbHdk
o0ooPoeo53AbHfi
o0ooPoeo53AbHgl
o0ooPoeo53AbHhg
o0ooPoeo53AbHij
o0ooPoeo53AbHje
o0ooPoeo53AbHkh
o0ooPoeo53AcHfl
o0ooPoeo53AcHgk
o0ooPoeo53AcHhj
На ник посмотрите. Может подойдет
ну вот вам коллизии с ником
o0apPleo53UfHeb
o0apPleo53UfHjY
o0apPleo53UgHZl
o0apPleo53UgHae
o0apPleo53UgHbd
o0apPleo53UgHcc
(и это _далеко_ не все).
слишком-уж часто они попадаются, эти коллизии.
в возможно заметили большое кол-во букв «о» в тех «паролях» которые я выложил чуть выше? это потому, что я вдохновившись «подсказкой» «o, t, 3» поставил эти символы в начало алфавита.

нужна какая-то дополнительная информация.
жаль, что все мои идеи с картинкой оказались тупиковыми.
Вы очень верно мыслите. Вы сгенерировали тучу коллизий. Надо выбрать верную. Дело за программкой, которая фильтрует коллизи. Критерий: в расшифрованном сообщении должны быть только буквы-цифры-знаки припенания. Или можно взять критерием: в расшифровке должен быть '@' и '.'. Или ещё что-то в таком духе.
Так все-таки, надо знать программирование для того, чтобы разгадать риддл, или нет?

p.s.: препинания =)
Чтобы разгадать риддл не надо. Если хочется разгадать путь с computers, то надо.

Есть же ещё целых два пути: language и kittens.
первое что я сделал — посмотел на страницу фаербагом, скопировал js-код, сохранил копию html-ки локально и начал править ее.
и очень быстро наткнулся на упро в производительность :)
после перевода тестового полигона на хром (это, плюс оптимизация дали прирост производительности в 2000%). но приходилось переодически выводить алерты, чтобы вин7 не решила что «процесс не отвечает», (хотя он исправно продолжал крутить счетчик итераций).

самое интересное, что буквально за пару часов до вашего квеста я поставил триальную ms visual studio 2008, и написал свой «hello world».

на производительность я не жалуюсь, но некоторые мелкие моменты сильно тормозят процесс. например в C# нет аналога ф-ции char() или String.fromCharCode(), вместо этого достаточно просто скастовать (char) на int-переменную. это конечно просто и удобно, но как-то нетривиально/неочевидно. и неведомо где описано (возможно я еще не привык/не постиг дзен MSDN-а)

в любом случае, работа над брутфорсилкой продолжается :). если можно, когда будете выкладывать решение, выложите его ссылкой (например файлом на том-же oyotri.com), чтобы я не смог увидеть его в этой теме. хочется еще поковыряться.
Честно говоря, я проверял этот дело на Java (был под рукой). Но язык значения не имеет.

Скажу по секрету, что naething расшифровал одим анализом, не подбирая пароль.

Свою программу-тест выложу, когда доберусь до дома.
да нет, я не жалуюсь на язык (ну разве-что на производительность js в этом случае).
просто я сидел и думал — чего-бы написать следующее после hello world.
а тут вы, со своим квестом. осваиваем c# весело :)

насчет анализа — да я верю. но признаюсь, я даже не пытался гуглить по первому тексту. мне интересно «как-нибудь так».
если для всех, то на русском делать надо. обычный человек ничего не поймет
порадовала фраза «обычный человек»
А чего вы его минусуете? Если уж хотелось бухгалтеров и домохозяек привлечь, то нужно было на русском языке квест делать.
Вы правы, мне следовало сделать оговорку. У нас дефотный язык общения — английский. Так что пришлось всё сделать на нём.
А я думаю, нормально все. Язык — это +1 квест. Тоже кодирование =)
Я любитель, что бы мозги кипели. Спасибо за конкурс...start
А я думаю, больше стоит копнуть в процедуру проверки кода т.к. она на JS и работает локально… только, блин, в уме её распарсить что-то не выходит))
Блин! Хана окончанию рабочего дня))
там проверка пароля на хэш и использование его как ключа для декодирования следующего =)
не поможет
аспарсить можно, минутное дело. но вот сам код важен. там сравнивается не текст пароля, а его хешь (hash == 23035), а сам пароль учавствет в преобразовании s=code(s, pass)
Да, вижу, думаю что с этим делать)
UFO just landed and posted this here
UFO just landed and posted this here
Автор что хоть первое нужно делать? Про книгу что искать или про кота
Глупо тупо перебирать пароли, чтобы получить 23035?
UFO just landed and posted this here
парсер…

_0__P_e_5___H__
o, t, 3
Это ведь не пароль
Логично наверно, что эти 3 буквы нужно вставить в пробелы, но что-то не сходится с заветным 23035 при переборе всех возможных 59048 комбинаций.
буквы-то три. а вот пробела четыре.
и не понятно нужны-ли подчеркивания.
с пробелами разобрался. их 10 :)
буквы одних только o, t, 3 недостаточно. если подставлять весь алфавит — получается куча паролей с подходящим хешем, но они не подходят в качестве ключа к XOR-у.
o0ooPoeo53AaHhl
o0ooPoeo53AaHik
o0ooPoeo53AaHjj
o0ooPoeo53AaHki
o0ooPoeo53AbHdk
o0ooPoeo53AbHfi
o0ooPoeo53AbHgl
если XOR-ить зашифрованную строку самой маской, оставляя на месте неизвестных символов символы подчеркивания, то все равно получается белиберда: _l__I_9_j___♫___x__L_>_"___↔___b__
Подскажу Вам. Как Вы полагаете, какие символы должно содержать само зашифрованное сообщение?
я ожидаю символы латинского алфавита, либо русского.
но уж точно не "♫" или "↔".
если там юникод или бинарник — я иду спать :)
Не-не. Там символы латинского алфавита. У меня была мысль сунуть туда бинарник картинки с ответом, но получилось бы слишком мясо.

А спать очень помогает. Пусть Вам снится котёнок :)
var i=0; var r="";
for(j=0; j<s.length; j++)
{r+=String.fromCharCode((pass.charCodeAt(i++))^(s.charCodeAt(j))

я правильно полагаю, что в данном случае i будет равно j?
нет. первый символ — результат XOR-а первого символа пароля и строки s.
второй — результат XOR-а вторых символов, и т.д.
всего в строке s 34 символа. пароль используется по кругу. т.е. если в пароле 15 символов, то 16-ый символ из строки s будет XOR-ится с первым из пароля, а 17-ый со вторым и т.д.

чтобы хеш пароля был равен 23035 — в пароле должно быть от 14-ти до 17-ти символов, но скорее всего их там именно 15, т.к. крайние результаты были получены с использованием непечатных символов ASCII.

да и на 15 есть масса намеков.

символ. при написании этого комментария я использовал слово «символ» десять раз.

Очень символично. Да и ход мыслей верный.
Что делать с цифрами и словами под ними?
Если предположить что цифры — номера слов, то слов явно меньше, а если номера букв, то их (букв в словах) явно больше чем надо.

Можно предположить, что цифры — номера слов из текста по первой ссылке. Получается вот такая вот билеберда:
in afar army shall slew Othronus in ally of Othronus that the declare dwell Othronus the shall Coscynthus in And ally dwell grandfather city feet he shall the the countrymen the countrymen in the of Coscynthus hound his the with armyhe never army of

Может надо заменить слова по номерам в том тексте из слов в столбиках?
Жаль только, приза я нормального дать не могу :(
Всё на энтузиазме…
Блин… Застряла на третьей подсказке :(
Думаю, шансов разгадать ребус, рассматривая все три шарады — больше.
Взорвал свой мозг на втором шаге. Хоть убейте но не могу уловить связь между цитатой из книги какого-то греческого поэта и спящими котятами :)
вспомнился Notpron. Замечательная головоломка. Немало времени убил на нее, так и не пройдя и половины.
Ох, вы читаете мои мысли. Собственно, про нотпрон я и написал (:
Как-то обратил внимание:
День рождение автора: 17 апреля 1985 г.

И есть такая строчка: hash += ((n-j+417)^1985); — вряд ли случайно совпали все цифры :))
хотя — ерунда, просто увековечивание ДР в алгоритме
Всегда хотел что-то такое сделать :)
ппц вы добрые :D
посоветовал как лучше сделать, а вы минусы лепите
Ты ещё не готов, юный подаван…
Нельзя такие вещи по вечерам постить… Завтра же на работу… ;)
Его тот самый скрипт генерирует, или там потом ещё куча пунктов? )
Я деобфусцировал код (хотя Javascript не жалую, больше наСИшник). Подобрал пароль 999q2221p11q112, получил ответ Kel+}n/y }wln`q_r.3i, что из этого? Вставил другой подобранный кем-то пароль — получил другой ответ. Странный, конечно, механизм.
А что там «деобфусцировать»? Браузер сам всё нормально печатает ) А то, что хэш пароля сходится, не значит, что он верный. Там алгоритм слишком простой, коллизии неизбежны ;)
UFO just landed and posted this here
Всё, сдаюсь. Если вместо пароля подставить ваш шаблон 304_P_e_5_u_H17 и везде, где в нём знаки подчёркивания, в итоговом сообщении поставить подчёркивания, получится вот такая штука.

Al_I_9_j_M_lkjxR_L_>_"_B_hh*b_

Значит, пароль «немножко другой».
P.S. Хабр съел спецсимволы, их там много.
Не сдавайтесь так легко. Там же ещё есть пути (language и kittens).

Решение я опубликую часов через 10.
В свое время GOOGLE проводил так свою политику HR.
Если не ошибаюсь он провесил был плакаты что то похожее на:
зайдите на сайт www.{answer}.com
Где вопросом было что то вычислить, дальше еще что-то вычислить,
и в конце давался емейл адрес куда свое резюме отправлять можно было.

Что за фигня:

Delivery to the following recipient failed permanently:

ALEXANDRA@oyotri.com

Technical details of permanent failure:
Google tried to deliver your message, but it was rejected by the recipient domain. We recommend contacting the other email provider for further information about the cause of this error. The error that the other server returned was: 554 554 5.7.1 <ALEXANDRA@oyotri.com>: Relay access denied (state 14).
Могли бы и в ПМ написать автору!
может и не александра…
я такое имя тоже находил по тексту Literaure, но увы.
Это просто не тот e-mail адрес. При посыке email'а на правильный приходит восхищённый ответ от меня.
потому что не такого email, это было бы слишком просто…
И даже если подставить старое pass="_0__P_e_5___H__" (естественно, заменив неизвестные символы знаками подчёркивания), всё равно выходят спецсимволы.
видимо решивших пока маловато
Может автор просто отдыхает на выходных?
Если бы отдыхает… Сначала до трёх дня убеждал продукт манагмент, что юзабилити сосёт и что надо делать иначе. Махал руками, рисовал схемы и показывал мокапы. Потом до трёх ночи кодил ЮаЙ.

Сорри… наболело… Ответы комментом ниже.
Ответы

Первая подсказка: всё просто, цифрам надо сопоставить соответствующие буквы английского алфавита. Получится домен oyotri.com

Вторая подсказка:
Есть три пути решения. Пути независимые.

Котята: тупиковый путь. Не ведёт никуда. Создан для взрыва мозга.

Компьютер: сначала надо деобфусцировать страничку. Это довольно просто (firebug в помощь). Потом надо решить криптографическую задачку. Есть две подсказки: внизу страницы маска 304_P_e_5_u_H17 с дополнительными символами o, t и в доктайпе необычное слово ...l4/drowssap/st.... Маска — это несколько открытых символов пароля. Слово drowssap какбе намекает на то, что маску надо использовать задом наперёд. То есть имеем: пароль вида 71H_u_5_e_P_403, в пароле где-то есть символы o и t. Дальше можно либо написать программку которая генерирует перестановки, либо XORить имеющийся пароль с сообщением (ну и из общей логики открывать новые символы). Первый путь даст где-то 41000 коллизий, из них надо выбрать нужную. Второй путь даст несколько простых английских слов (типа «Congratulations! Email is...»).

Язык: надо погуглить отрывок. Появится имя автора и название произведения. Потом надо погуглить имя автора в google video (не даром «Watch this:» написано). Появится единственное видео «Lycophron clue». Надо посмотреть видео. Выписать слова, которые говорит мужчина в один столбик, а слова, которые говорит женщина — в другой. Потом надо взять первые буквы из каждого столбика и получить первую часть адреса. Домен адреса упомянут в одном из каментов к видео.

Всем большое спасибо за участие. В результате охоты было выслано 4 инвайта действительно хорошим людям (это вам не IE-лотерея, тут думать надо было). Очень здорово, что есть умные и упорные люди!
«Котята: тупиковый путь. Не ведёт никуда. Создан для взрыва мозга.»

МАТЬ ПЕРЕТЬМАТЬ!!! Я ЕЕ РЕШАЛ!!! пытался найти закономерности, составлять осмысленные предложения
Ох… Времени на котят было убито много. Это жестоко =).
> Создан для взрыва мозга
Вам это удалось, несомненно)
А продолжение будет? Сама идея конкурса очень понравилась. Да и хрен с ней, с бессонной ночью! Хоть и не победил, но это того стоило)))
Кстати, «компьютерный» путь самый очевидный на мой взгляд. Никогда бы не догадался, что первые буквы выписанных в два столбика слов — это первая часть адреса. Хоть убейте)
Зверюга!

А я и не додумался перевернуть…
UFO just landed and posted this here
Sign up to leave a comment.

Articles