пришлось сказать, что я перезвоню на следующий день. Я решил, что в библиотеке компании должна быть эта документация, но не мог же я там появиться и попросить директора дать мне ее на время. Я должен был действовать как независимый хакер. Пришло время серьезно заняться социальной инженерией. Директор для этой цели не годится он знает мой голос. Все, что мне было надо, - это серийный номер. Я позвонил секретарше библиотеки и сказал, что я - программист из компании, которая установила им новую компьютерную систему, и хотел бы знать, нет ли у них восьмой версии программы? Этого она, конечно, не знала, но я вежливо объяснил, что ей нужно просто найти несколько дискет с приклеенными на них ярлычками... Найдя их в директорском офисе, она сообщила мне серийный номер. Одной из его цифр оказалась восьмерка, и я сказал ей, что все верно, и я просто хотел убедиться, что компания поставила им самую новую версию, и как только появится девятая версия, мы пошлем ее им.
Я больше суток разбирался в отладочной документации. Я обнаружил, как можно обойти программное окружение и как - самое главное! - выйти из него. Выйдя из отладки, я оказался перед приглашением к загрузке. Нажав в ответ 'circ' и 'JSC' - J. Smith Co. - я вошел внутрь. Разумеется, здесь я привожу вымышленное имя. После ввода верного пароля я оказался на втором уровне зашиты - circ,JSC была общая входная комбинация, известная любому легальному пользователю. Я знал, что означает 'ваш личный девятизначный код'. Номер социальной безопасности! Я знал, где родился и вырос директор, так что первые три цифры у меня были. Я написал программу для перебора последних шести цифр, и вскоре нашел верную комбинацию. Мне выдали сообщение: 'Добрый вечер, Ажейн Торнбакл! Пожалуйста, введите ваш личный пароль'. Директора звали иначе. Теперь мне был нужен пароль Ажейн. Я снова попробовал метод грубой силы, но безрезультатно. Я не знал, кто такая Ажейн Торнбакл, но у меня была извлеченная из мусора пачка рекламных проспектов компании. А вот и ответ: Торнбакл оказалась сотрудницей отдела службы управления информацией то есть программистом. Вычислить ее пароль мне так и не удалось; продолжив перебирать номера социальной безопасности, я опять вышел на номер директора библиотеки. Итак, чего я достиг? Программная оболочка - вещь интересная, и я научился с ее помощью как угодно редактировать файлы и т. п. Я сумел использовать одну из отладочных команд поиска для обнаружения слова 'circ' в файлах системы. В одном из них среди абракадабры я обнаружил слово 'minicirc', а затем 'circ'. Я попытался расшифровать абракадабру, идущую после 'circ', думая, что это зашифрованное 'JSC', и надеясь таким образом найти ключ к абракадабре после 'minicirc'. Безрезультатно. Вернувшись к входному приглашению, я попытался использовать 'minicirc' с различными паролями. Проблема была в том, что я не знал, что такое 'mini'. Я подумал, что это может быть модель программы или руководство. Наконец, я нашел верный пароль - T.CIRC1. Он-то и привел меня к заветному сообщению: 'Пожалуйста, введите вам личный девятизначный идентификационный код'. Через несколько секунд я нашел нужный номер, и экран очистился. 'Доброе утро, Новый Пользователь!' - появились на нем слова. - 'Пожалуйста, введите ваш личный пароль'. Я надеялся, что это - последний уровень зашиты. И точно: через несколько мгновений мне удалось войти, использовав пароль 'TRAIN'. Я гордился собой - я взломал-таки закрытую часть системы. Но приключения еще не закончились - ведь 'minicirc' была всего лишь учебной моделью настоящей системы. Ее можно было использовать для проверки книг для выдачи посетителям, регистрации новых посетителей, поиска в базах данных и т. д. Но в базе данных содержались только вымышленные имена и адреса. Многие другие свойства системы были бесполезны, но мне помогло само их наличие.
Там была электронная лоска объявлений, на которой инсталлировавшие программу оставили несколько стандартных сообшений-приветствий. Прочитав их, я узнал немало полезного. Каждое сообщение открывалось списком пославших его, и тех, кому оно предназначалось. Я заключил, что можно посылать сообщения из 'minicirc' в 'circ', и наоборот. Во-вторых, там оказались сообщения, предназначавшиеся одному пользователю, но по ошибке посланные всем. С помошью текстового редактора я написал письмо и лично послал его. Затем вышел, перезвонил и снова оказался в программной оболочке. Использовав редакторы отладчика, я нашел написанное мною письмо, и изменил его содержание, адресовав его директору библиотеки. Свое имя, под которым хранился файл, - 'Новый Пользователь' - я изменил на фиктивное имя представителя компании, произведшей программное обеспечение. В послании содержалась просьба к директору позвонить этому представителю для разговора насчет новой, девятой, версии - обратная инженерия! Телефонный номер, который я дал директору, принадлежал одному моему другу, которому я кратко объяснил, как действовать в случае, если директор позвонит. На всякий случай мы установили автоответчик. Когда директор позвонил, мой друг немного рассказал о новых разработках, а затем задал несколько технических вопросов о способе, с помошью которого в библиотеке была инсталлирована программа. Директор не знал этого, но сказал, что может посмотреть у себя на терминале, загрузившись в систему... 'Отлично', - сказал мой друг. - 'Делайте все то же, что обычно. Circ. JSC. Так, номер... Кстати, вы используете все тот же личный пароль?' 'Ну да, 'Firebird'. Ну вот, я загрузился...' Итак, последний шаг оказался самым легким.
Для завершения проекта мы стали думать, что же можно сделать, используя директорский системный доступ. Оказалось, что сделать можно многое. Покинув данный уровень, мы вышли на сетевой сервер, а оттуда загрузились в один из главных компьютеров, используя имя и пароль директора. Под конец, для подтверждения своего успеха, я использовал редактор интерактивного отладчика и изменил программу так, чтобы вместо пояснений к командам она выдавала на экран непристойную шутку. Затем я оставил файл в директории директора библиотеки, в котором объяснил, каким образом был совершен взлом.
комбинирование принципов
Если вы хотите быть по-настояшему удачливым хакером, вы должны стать 'хакером на все руки'. Недостаточно хорошо владеть методами социальной инженерии, или быть гением-программистом, и т. д. Вы должны обладать всеми этими навыками в совокупности с богатым воображением и установкой на конкретные цели. Плюс этика. Я действительно считаю, что хакерство без этики не ведет ни к чему хорошему - если вы будете причинять неприятности другим, то неприятности вскоре начнутся и у вас. Присутствовала ли этика в описанном мною взломе? Конечно - ведь я просто переименовал экранный файл, а неприличную шутку поместил в другой, под прежним именем. Позднее мы вместе с директором и программистами компании вместе обсудили план действий по заделыванию дыр в защите системы.
мысли в заключение
Спросите мудреца о цели существования вселенной, или еще что-нибудь в том же духе - и он ответит:
- Этого нельзя выразить словами. Я знаю ответ, я его чувствую, но неописуемое словами не опишешь. 'Ну и чушь!' - подумаете вы. Конечно. Но вместе с тем это правда. Мудрец действительно верит в то, что знает обо всех тайнах вселенной, но вы этого не поймете, пока сами не почувствуете то же самое. Вот ваш проводник в мире хакерства, лежащем за пределами этой книги. Из книги вы узнали идеи, методы и факты, которые позволят вам начать заниматься хакерст-вом, сводя к минимуму возможность совершения ошибок. Но это еще не все. Это хобби (игра? профессия?) требует, как и любое хобби, времени, сил, практики и еще, и еще, до тех пор, пока у вас все не начнет получаться так, как вы хотите.
несколько советов обеспокоенным администраторам
Если же вы прочли эту книгу с точки зрения соблюдения закона и обеспечения компьютерной безопасности - что ж, теперь вы знаете множество способов взлома самых 'непробиваемых' систем. Вы, наверное, уже составили список мер, которые примете против описанных мною методов. Объясните вашим пользователям, что никогда нельзя открывать никакую конфиденциальную информацию по телефону, по почте или в режиме онлайн. В ответ на просьбу открыть пароль следует отвечать просто: 'в этом я не смогу вам помочь'. Нельзя раскрывать имена или телефонные номера, адреса электронной почты иди физические адреса. Если человек спрашивает такие веши, он, скорее всего, является хакером.
Установите правила, по которым легальные пользователи задавали бы вопросы любому подозрительному типу, шатающемуся по офисам. Но не стоит и слишком давить на пользователей проблемами безопасности. Если вы проявите излишнюю бдительность - например, поменяете все пароли, - пользователи могут вас не понять. Объясните им, что они потеряют, если компьютерная безопасность будет нарушена. Убедите их, что это важно для всех сотрудников организации. Чтобы убедиться в нерушимости зашиты на все 100%, возьмите за правило регулярную проверку и очистку компьютеров. Найдите и залатайте дыры в защите вашей системы. Уберите все отладочные опции, которые могут быть причиной появления таких дыр. Если вы увольняете сотрудника, немедленно сотрите его доступ и поменяйте код всех остальных. Существует специальная литература о мерах по компьютерной безопасности, которые должен