Найти в Дзене
SupaRoullete

Cегодня была взломана рулетка на площадке Hydra

Привет, друзья! Если вы читаете эту статью, то, должно быть, знаете, что такое hydra и рулетка на этом ресурсе. Если нет - закрываем вкладку.

Около трех месяцев назад я всерьез заинтересовался возможностью узнать выигрышное поле рулетки Гидры по исходным данным, которые предоставляются до начала игры, а именно номер рулетки и MD5 хэш выигрышной комбинации.

Далее будет техническая часть, можете пропустить, кому не интересно. Так вот, подкованным в IT людям известно, что функция хэширования MD5, используемая в рулетке гидры, не имеет обратного преобразования. Таким образом, по исходным данным можно быть уверенным в "честности" рулетки. Берется номер рулетки + выигрышное поле + случайная строка цифр размерностью 16 разрядов (если что, это квадриллион - миллион миллиардов). Я поставил перед собой задачу написать и максимально оптимизировать код для проверки одного числа. После месяца написания и оптимизации кода по вечерам, я получил первый результат. Чтобы проверить одну фишку из ста необходимо было иметь очень производительный ПК и примерно 9-19 часов в зависимости от выигрышной комбинации. Проверить все числа за короткий срок невозможно было ни на домашнем компе, ни даже в сетях крупных предприятий от 1000 рабочих станций. Однако занялся я этим не просто так, такие результаты я ожидал. По роду деятельности я имею непосредственное отношение к одной из DevOps команд Amazon AWS. Вот тут, я думаю, некоторым из вас стало всё понятно, число серверов Амазона исчисляется миллионами :)

Еще около двух месяцев понадобилось мне, чтобы внедрить код, наладить грамотное распределение ресурсов и синхронизировать вычисления со всех серверов в простую однокнопочную панельку. Результат вы можете наблюдать на видео ниже (VLC плеер в режиме захвата экрана почему-то похерил курсор мышки, но по кнопкам видно, куда нажимаю). Для видео были созданы два новых аккаунта:

Ну как вам? :)

Публиковать эту статью я не боюсь. Администрация Гидры может поменять алгоритм - я перепишу свое программу под него. Пока рулетка остается прозрачной для пользователей, показывая исходные данные и хэш, метод будет работать. Если данные спрятать - рулетка перестает быть открытой для пользователей.

@suparoulette_bot

UPD 1: Не пишите c просьбой продать программу.