Хакеры


стр. III. RTM - стр. 59


Первым делом Бостик разослал "Vims Posting #2", поправку к его первой заплате на дырку в sendmail, обеспечивающую более совершенную защиту от вируса. Это сообщение было отправлено в 8 00 Вопрос дезассемблирования вируса уже обсуждался. Предстояла долгая и тяжелая работа, но это был единственный способ окончательно определить, не скрывается ли где-нибудь в программе разрушительный иод. Работу Беркли дублировала в Кембридже группа программистов из МГГ, которые также всю ночь не смыкали глаз. В середине дня в Беркли поступило сообщение из МГГ, то) у вируса есть еще один способ атаки. Используя дыру в маленькой программе finger, входившей в пакет UNIX, вирус подучил возможность выводить finger из строя, посылая больше символов, чем она могла обработать Как только происходило переполнение буфера ввода, захватчик получал возможность стартовать небольшую программу, переносившую все тело вируса целиком на атакуемый компьютер.

Бостик скептически отнесся к информации из МГГ, ведь finger была такой мелкой, банальней утилитой. Он представить не мог, что в программе всего в 15 строк длиной могут содержаться серьезные дыры. Чтобы доказать свою правоту, команда из МГГ прислала ему образец программы, демонстрировавший дефект в finger. В тот же день Бостик разослал "Virus Posting #3" - заплату на finger. Это стало последней каплей, убедившей Бостика, что единственный способ узнать, остается ли еще опасность, это разобрать вирус строка за строкой. Программу нужно декомпилировать.

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


Начало  Назад  Вперед