5 летию ICQ посвящается...

"История падения"

Один “деятель” из Питера (не будем тыкать в него пальцем)
запустил данную программу на своем компьютере.
К тому времени как Мирабилис засек атаку,
в его лог файлах осело около 100 000 юинов...

Фирма Мирабилис основана в июле 1996 года четырьмя израильскими программистами. Yair Goldfinger (26, Главный технарь, uin# 80000), Arik Vardi (27, Главный управляющий, uins# 60000, 66666), Amnon Amir (24, Главный мыслитель) и Sefi Vigiser (25, Президент, uin# 70000).

Само название фирмы происходит от латинского слова mirabilis, в переводе означающее - удивительный. Знаменателен тот факт, что это же слово дало название осадочному минералу мирабилиту, или же глауберовой соли. Данный минерал используется в медицине как мощное слабительное. Это явное предупреждение всем нам - пользуясь услугами Мирабилиса, слишком на них не полагайтесь, иначе однажды вас может “пронести” по полной программе.

НАЧАЛО ИСТОРИИ

В ноябре 96 года запустили версию 1.113, предназначенную для общего использования. К тому времени уже использовалась вторая вер- сия протокола связи клиента с сервером, а количество пользователей перевалило за 10000. Четырехзначные юины были тестовые и регистрировались программистами в период отладки предыдущей версии протокола в качестве пробных. На многих из них были установлены пароли нулевой длины, что уже не допускалось в общедоступной версии. В начале 99 года все они были стерты из базы данных Мирабилиса. Три аси на тот момент использовались российскими юзерами. На наши запросы о причине удаления этих юинов админы Мирабилиса делали большие квадратные глаза и говорили, что эти юины тестовые, и вы не могли их использовать ;).

Летом 97 года количество пользователей уже перевалило за миллион. В это же время был брошен первый камень в огород Мирабилиса.

HIJACK

Это была программа, написанная под Linux. Она использовала простоту и непродуманность второй версии протокола аси. Дело в том, что данный протокол, помимо того, что он был не кодированный, имел еще и ошибку, позволявшую вклиниться в процесс обмена данными между сервером и клиентом. Непродуманность протокола позволяла программе послать пакет с запросом на смену пароля от имени любого юина, находящегося в онлайне. Пакет формировался таким образом, что в нем указывался IP адрес реального пользователя атакуемой аси и новый пароль. Созданная таким образом имитация пакета принималась сервером за реальный запрос на смену пароля. Успех был полный - ведь для смены пароля на новый протокол аси не требует прислать старый.

Дыра была вскоре обнаружена и ликвидирована. Все было сделано без особых раздумий - просто отключили прием запросов на смену пароля для версии протокола, содержащей этот баг. Сам протокол не запрещался. Он до сих пор принимается сервером и позволяет пользовать асиных клиентов версии 1.113. Если вам надое- ли последние громоздкие версии, то завсегда можете вернуться к этому релизу.

Начиная с 99-ой версии клиента аси использует- ся 6 версия протокола. Ничего интересного в этой версии обнаружено не было и рассказы- вать о ней не стоит.

Whitepages bug. Part.1

Декабрь 1998-го. Этот декабрь был самым веселым в моей жизни. За этот месяц я успел раз- дарить по всей России не менее сотни самых красивых юинов. Проявить такую щедрость мне позволил один из самых забавных просчетов Мирабилиса.

Есть такой сервис - whitepages. Воспользовавшись им, вы можете сменить всю информацию для ваших юинов через веб-интерфейс. Зачем это нужно, я не могу понять до сих пор, но он существует. Когда после ввода пароля вы попадаете на страницу со своей информацией, сервер генерирует некий защитный код, который используется в дальнейшем вместо пароля. До конца 98 года этот пароль генерировался как функция от номера аси. Создателям данного проекта, видимо, казалось, что понять механизм генерации защитного кода и подобрать его невозможно. Они немного просчитались. Самую малость. Этого оказалось достаточно, чтобы в течение месяца все хорошие юины перекочевали в Россию, где до сих пор и тусуются.

Whitepages bug. Part.2.

Сентябрьский грабеж После того как Мирабилис поздравили с Новым годом, сменив ники админов на “Happy new year. From Russia with love”, они все же осознали происходящее. Еще через неделю они даже нашли ошибку и закрыли сервис на некоторое время. После этого математическая часть сервиса претерпела несколько изменений. Кончилось тем, что в последнем варианте генерируе- мый вместо пароля защитный код стал запоминаться сервером, и подделать его стало невозможно. Такой вариант успешно работал 9 месяцев после его зачатия, а потом по всем законам природы - разродился. В сентябре 99 случилось то, чего никто никак не ожидал. Сервис дал глобальный сбой. Сбой произошел из-за какой-то ошибки, приведшей к переполнению то ли буфера, то ли базы данных. Как результат - полное отключение механизма проверки защитного кода. Он по-прежнему успешно и целенаправленно генерировался при каждом вашем заходе на страницу со своей информацией, но при ее сме- не не проверялся. Проще говоря, каждый кул хацкер мог сменить примари-мейл для любого юина, всего лишь немного подкорректировав в notepad-е страничку со своей информацией. И заменив там свой юин на любой другой, пропи- сать к нему свое мыло. Подождав час, кул хацкер получал на это мыло пароль и становился счастливым обладателем красивой аси. Несмотря на то, что число пользователей на тот момент было равно 50 миллионам, нашел этот баг опять же наш соотечественник. Не знаю, как так получается! Наверное, нескромно было бы утверждать, что мы умнее всех ;). Может быть, любопытнее всех? Так и норовим сунуть нос в каждую дырочку и попробовать: а что будет, если...

К тому моменту, как Мирабилис оповестили о происходящем, юины устойчиво меняли владельцев раз в 1 час. Частота смены владельцев зависела от скорости отсылки пароля. Админы не верили в то, что такое может произойти. И пришли в себя только после демонстрационной смены информации.

Сентябрьские события вывели Мирабилис из равновесия. Уже не веря в себя, они приняли “соломоново решение” и убрали из whitepages возможность редактирования примари-мейла.

Теперь там нашему брату делать было нечего. Те, кто пошустрее, принялись за программинг. Идея создания программы перебора паролей давно витала в виртуальном воздухе Инета. Пос- ле того как сервер Мирабилиса стал сер, скучен и непробиваем, словно отвесная скала, наступи- ло самое подходящее время для воплощения этой эфемерной идеи в твердом теле упорядо- ченных байт.

Все программисты имеют средства труда, но не все из них имеют предмет труда. По Марксу предмет труда кузнеца - металл. У программиста предмет труда - идея. К сожалению, труд большинства наших программистов беспредметен. Рассматриваемый случай стал приятным исключением. Предмет был, и надо заметить - результат труда оказался весьма неплох. В ско- ром времени после сентябрьских событий была создана программа перебора паролей. Она ра- ботала в двух вариантах:

А. Подбор пароля для одного юина.

Б. Подбор юинов под один пароль.

В варианте А прога шлет запросы на коннект с сервером, поочередно меняя пароли. При таком подходе удавалось перебирать около 40 паролей в минуту. Учитывая, что при такой скорости полный перебор займет около 300 миллиардов лет, рассчитывать на многое не приходится. Од- нако вариант Б дал гораздо более интересные результаты. Во-первых, сервер поддерживает около 2 миллионов одновременно работающих юзеров и, естественно, должен обеспечивать беспрепятственный коннект множеству клиентских программ, а значит, работая в режиме поиска юина с конкретным паролем, программа может развить предельно допустимую скорость. Практика показывает, что скорость перебора составляет не менее 120 юинов в секунду. А если использовать для перебора словарь наиболее употребляемых паролей, то можно достигнуть поистине потрясающих результатов. И они были достигнуты.

Один “деятель” из Питера (не будем тыкать в него пальцем) запустил данную программу на своем компьютере. К тому времени как Мирабилис засек атаку, в его лог файлах осело около 100 000 юинов. Недолго думая, Мирабилис отключил данную подсеть, а заодно и половину России, от своего сервера. Мы-то недоумевали: чего это вдруг?! За что это нас!? А все из-за того, что кое-кто не воспользовался сокетом и атаковал со своего реального ip. Впрочем, не ошибается тот, кто ничего не делает.

КОНСЕРВАТИЗМ ИЛИ ЛЕНЬ?

Расплодившаяся в последнее время каста icq-хакеров сильно смахивает на злокачественное онкологическое образование. Этакая раковая опухоль Инета. Ослабленный организм поражается этим заболеванием, и если вовремя от него не избавиться, дело может прийти к летальному исходу. Организм Мирабилиса действительно ослаблен. Ослаблен работой плохих программистов и консервативной леностью бюрократической машины AOL-а. Вы можете поднять меня на смех и сказать: “Таких критиканов, которые ничего не умеют сами, много”. Я соглашусь с вами. Их много, и зачастую они ничего не умеют сами, но низкий профессиональный уровень программистов Мирабилиса виден не только по бесконечной череде грубых, а иногда откровенно детских ошибок, его признают сами сотрудники.

Автор: Михаил Ромашов

[an error occurred while processing this directive]