Искусство вторжения
Шрифт:
«Я знал их систему лучше, чем кто бы то ни было. Любую их проблему я мог бы разрешить гораздо лучше, чем это могли сделать они сами. Я имею в виду, что прекрасно знал каждую часть их сети не только снаружи, но и изнутри».
ЕЩЕ НЕ ТАМ…
Эрик наконец заполучил, безопасно перегрузив к себе на компьютер, коды программ сервера… но еще не в такой форме, чтобы их можно было открыть и изучать. Из-за огромных объемов программ разработчики обычно хранят их на сервере в сжатом виде «zip». Эрик попробовал расшифровать
Эрик использовал новый усовершенствованный «взламыватель» паролей PkCrack, который использовал технику под названием «атака с известным текстом». Зная определенное количество текста в расшифрованном виде, и имея полный зашифрованный текст, программа могла расшифровать его весь или все файлы в архиве. «Я открыл zip-файл и обнаружил там файл „logo.tif“, затем я направился на их главный Интернет сайт и просмотрел там все файлы под названием „logo.tif“. Я перегрузил его к себе и „зазиповал“, после чего обнаружил, что у него в точности такая же проверочная сумма, как и у одного из защищенных zip-файлов, которые я старался раскрыть».
Теперь у Эрика был зашифрованный zip-файл и его расшифрованная версия logo.tif. Всего за пять минут программа PkCrack сравнила обе эти версии и раскрыла пароль для их расшифровки. С помощью пароля он быстро раскрыл все файлы.
После сотен длинных ночей Эрик наконец получил в свои руки полный текст программы, за которым он так долго и упорно охотился.
По поводу того, почему достижение отняло так много времени. Эрик отвечает:
«Каждому нравится что-то свое. Я люблю ставить перед собой задачу и решать ее так, чтобы меня не обнаружили. Я люблю делать все не так, как другие, и очень тихо. Я люблю находить креативные пути к решению любой проблемы. Действительно, перегрузить к себе текст может быть, и проще, но насколько интереснее мой путь. Крадите тексты, если вы воришка, а если можете избежать этого — будьте хакером».
Что же он делал с полученной программой и генератором ключей? Ответ состоит в том, что он и Роберт — герой следующей истории — ставят перед собой цели, которые типичны для кракеров всего мира. Вы найдете подробный рассказ об этом в разделе под названием «Распределение» перед окончанием главы.
РОБЕРТ, ДРУГ СПАМЕРА
В далекой Австралии живет еще один из этих честных джентльменов, которые днем трудятся, как уважаемые профессионалы в области безопасности и становятся опасными хакерами ночью, оттачивая свое мастерство и расплачиваясь в своих взаиморасчетах при помощи проникновения в самые труднодостижимые программистские компании мира.
Но Роберта, о котором у нас пойдет речь, нельзя было просто причислить к этой категории. Он слишком сложная личность для этого: один месяц он тратит на погоню за какой-нибудь программой исключительно ради собственного удовольствия и удовлетворения своего тщеславия, а другой месяц, чтобы заработать деньги, тратит на занятие, которое он сам же называет «грязным спамом». Не грязным. поскольку спамерство не его личная цель: и в то же время грязным из-за типа спамерства, которым он занимался.
«Зарабатывать себе на жизнь хакерством», — говорит он, «это жизненный принцип». Он не испытывал особого стыда, рассказывая нам свою историю. Он делал это безо всякого принуждения. При этом он даже придумал новый термин: «Вы можете назвать меня „спикером“ — хакером, который работает
«Ко мне обратился мой друг, который сказал: „Я хочу продать несколько порнофильмов с жестким мазохизмом тысячам людей. Мне хотелось бы получить несколько миллионов адресов электронной почты любителей подобных видеофильмов“.
Скорее всего, вы или я отказались бы от подобного предложения. Роберт «немного подумал об этом» и все же решил посмотреть, как он может решить поставленную задачу.
«Я просмотрел все эти жесткие мазохистские сайты», — говорит он, подчеркивая, что делал это, несмотря «на явное недовольство своей подружки». Свой поиск он проводил прямым и ясным способом — при помощи поисковика Google и другой поисковой машины, которая использовала различные поисковики.
В результате он получил список для работы: «Единственное, что я хотел узнать из всех этих порносайтов — это список людей, любящих мазохистские порнофильмы и желающих получить новинки этой гадости». Если Роберт и собирался помочь спамеру, то он не намеревался сам, «как все эти идиоты», рассылать сотни электронных писем всем и каждому, кто проявил хоть малейший интерес к объявленной теме, а также и тем, кто не проявлял к ней ни малейшего интереса.
ПОЛУЧЕНИЕ СПИСКА РАССЫЛКИ
Роберт обнаружил, что многие из тех самых мазохистских сайтов пользуются одним и тем же приложением для управления списком своих подписчиков, которое я буду называть SubscribeList.
«При помощи Google я обнаружил человека, который заказал себе такое приложение и хранил его на своем Интернет-сервере. По-моему, это был сайт где-то в Китае или на Тайване».
Следующий шаг был даже еще проще, чем он думал. «Интернет-сервер был сконфигурирован неправильно. Каждый пользователь мог посмотреть исходные коды его программ. Это была не самая последняя версия программ, но все же достаточно свежая».
Ошибка же заключалась в том, что кто-то случайно или по небрежности оставил сжатый архив этих программ в директории документов Интернет-сервера. Роберт перегрузил себе все коды программ.
С помощью этих программ и имен, которые он получил с сайтов, Роберт сделал вывод:
«Я мог бы разослать электронные письма с таким текстом: „Захотите на мой сайт, у нас есть нечто специальное по теме „порки“ за полцены. Масса людей подписалась бы на такое предложение“.
Итак, хотя у него была программа для управления листом рассылки, у него не было самого листа рассылки.
Он сел и начал изучать коды SubscribeList и в конце концов обнаружил некую возможность, написав программу Perl. Подробное техническое объяснение достаточно сложное (смотрите в разделе «Анализ» в конце главы).
Аналогично тому, как кракер в предыдущей истории использовал символ «&» для обмана программы и выполнения нужной ему команды, Роберт использовал брешь в «setup.pl». Этот хакерский путь называется «backticked variable injection flaw», он использует недоработку в программе setup.pl, которая недостаточно тщательно проверяет данные, передаваемые ей. (Различие лишь в операционных системах. Метод Эрика работал в среде Windows: метод Роберта — в Linux). Злонамеренный атакующий может послать такую команду, которая поменяет значение некоторого параметра таким образом, что текст может измениться на другой Perl-текст, который будет исполнять произвольные команды. Благодаря этой оплошности программиста атакующий может встраивать собственные команды.