ваши программы и записи от полного уничтожения". Он инсталлировал логи-
ческую бомбу, которая взорвется в определенный день.
У программы-червя есть лишь одна цель: саморазмножение. Он осматрива-
ется вокруг, и копирует себя, где только может, причем каждая новая ко-
пия продолжает заниматься тем же самым. Через некоторое время после на-
чала работы такой программы компьютер или сеть оказываются буквально за-
биты сотнями или даже тысячами неудержимо размножающихся программ.
Вирус выполняет функции обеих вышеописанных программ. Программа
(спрятанная, подобно "троянскому коню", внутри прикладной программы) са-
моразмножается, пока возможно, а затем взрывается (как логическая бом-
ба).
Логические бомбы опасны, но, по крайней мере, известно, чего от них
ждать. Вирусы же и черви, в отличие от логических бомб, не только опас-
ны, но и непредсказуемы. Я убежден, что настоящий хакер никогда не соз-
даст червя, поскольку они слишком деструктивны и бессмысленны. Но он мо-
жет воспользоваться вирусом, при условии, что вирус не причинит вреда
системе, самоуничтожаясь по мере своего продвижения, и ни разу не поя-
вится на одном и том же месте дважды.
Вирус может пересылать пароли с помощью электронной почты по опреде-
ленному адресу, с помощью метода перебора в конце концов проникать в
системы и т. п. Существует много путей применения вирусов, но их трудно
использовать безопасно.
Ходили слухи об одном микрокомпьютерном вирусе, который, если бы он
действительно существовал, согрел бы сердце каждого хакера. Он назывался
AT&Tack Virus. Скопировав себя на компьютер, он сразу же пытался найти
Hayes-модем или совместимый. Если таковой существовал, вирус выключал
динамик модема и соединялся с заранее запрограммированным номером. После
этого, естественно, любой, кто находился по вызванному им номеру, полу-
чал удаленный доступ к вашему компьютеру.
Лично мне кажется, что это не более, чем слух. Разумеется, на данный
момент ни одна из коммерчески доступных программ обнаружения вирусов не
содержит никаких упоминаний о AT&Tack Virus. Но мне кажется, что такая
штука лучше работала бы в качестве "троянского коня", размешенного в
графической программе, нежели в качестве вируса.
Одним из достоинств "троянских лошадок" и вирусов является конструи-
рование каналов для сбора данных и пересылки их к вам в удобочитаемой
форме. Допустим, вирус присоединяется к программе загрузки и собирает
пароли. Нет смысла отправлять этот вирус гулять по всему свету, не питая
надежд заполучить в свои руки те пароли, которые он соберет. Как я уже
упоминал, вирус может периодически пересылать вам пароли с помощью
электронной почты (но только не в ваш легальный бюджет!).
Можно также шифровать почту перед отправкой. Проблема с шифрованием
состоит в том, что вам понадобится ключ. Любой, кто обнаружит ваш вирус
или "троянского коня", легко сможет вычислить ваш ключ и понять, что за
почту пересылает вирус (или какие временные файлы создает "троянский
конь"). Значит, вам придется зашифровать этот ключ... а для этого нужен
еще один ключ... а его тоже надо как-то обезопасить... значит, еще один
ключ... И так - до бесконечности. Но давайте разберемся в ситуации.
Если вы собираетесь так или иначе прибегать к кодированию, будет про-
ще заставить ваш вирус или "троянского коня" посылать зашифрованные дан-
ные в какую-либо большую, не подвергающуюся цензуре конференцию. Недос-
таток: вам придется мистифицировать почту, иначе кто-либо заметит, что
пользователь (который, сам того не зная, приводит в действие ваш вирус)
посылает слишком много "мусора".
Вы можете также подгрузить зашифрованный файл во входную директорию
какого-нибудь анонимного FTP. Убедитесь, что компьютерная зашита позво-
лит вам затем выгрузить файлы из этой директории, поскольку зачастую она
не разрешает это делать.
Для пересылки коротких сообщений (например, одного пароля) ваша прог-
рамма-обманка может временно переименовать какой-либо файл с очень низ-
кой степенью зашиты (атрибуты которого способен изменить кто угодно) в
это сообщение. Ваш "троянский конь",вирус будет входить в директорию,
маскируясь под различных пользователей сети, и пытаться переименовать
файл в данное сообщение. Ваш "троянский конь",вирус не должен оставлять
сообщение об ошибке. (Вы можете "вживить" блок постоянного наблюдения,
который в виде фоновой задачи будете следить за состоянием этого файла;
как изменится имя файла, фоновый процесс сохранит новое имя, а после
вернет файлу его первоначальное имя.
Другие короткие сообщения можно пересылать по битам. Например, если
файл Х находится в определенной директории, ваша программа посылает вам
цифру 1, а если директория пуста - цифру О. Фоновая задача в то же время
следит за появлением и исчезновением из вашей директории этого файла.
Когда соберется необходимое количество нулей и единиц (восемь для
ASCII-кодов), программа переводит их в символы сообщения. Например,
01000001 - это заглавная "А". 01000010 - "В", и т. д. Чтобы послать
восьмизначный пароль, вашему вирусу или "троянскому коню" потребуется 64
уничтожения и восстановления файла X. Биты будут пересылаться по одному,
тогда, когда спрятанная программа сможет делать это незаметно.
КАК выбраться ИЗ заточения на волю
Допустим, вы совершили взлом, но единственный доступ, который вы об-
наружили, это доступ к двум-трем командам или неинтересному информацион-
ному блоку. В этом случае вам придется думать, как выбраться из этой
программы-тюрьмы и вернуться на уровень операционной системы. Если преж-
де вы серьезно занимались программированием, ваша задача облегчится.
Программист знает типы лазеек и ошибок, а также способы их обнаруже-
ния. Если он завязнет в бюджете, который запускает информационную прог-
рамму, то использует все, даже самые неожиданные, способы в поисках ве-
щей, от которых человек, создавший эту программу, не додумался защи-
титься, в надежде получить сообщение об ошибке и вырваться к приглашению
ОС.
Вот что можно попробовать.
Вводить неверные, неподходящие или слишком длинные ответы на пригла-
шения; особенно подойдут буквенные ответы вместо требуемых числовых.
Или, если вас просят ввести число, которое будет анализироваться функци-
ей, попробуйте ввести слишком маленькое или несуразно большое. Попытай-
тесь вводить ответы с прерыванием, типа Ctrl-Z, Ctrl-C или даже Ctrl-P.
Постарайтесь использовать команду "Find" для поиска вне доступных ресур-
сов. Посмотрите, нельзя ли установить программы для несуществующего ап-
паратного обеспечения или объема памяти.
Если в ловушке имеется нечто вроде текстового редактора, например,
программы для пересылки почты системным операторам, попробуйте создать
резервный файл и послать ваше сообщение в качестве команды на выполне-
ние. Можно также попробовать создавать несоразмерно большие сообщения.
Если в редакторе имеются специальные функции проверки текста, напишите
громадный абзац, поместите в буфер и скопируйте под первый. Затем проде-
лайте то же самое с двумя абзацами, и т. д., до тех пор, пока программа
либо не даст сбой, либо не разрешит вам продолжать. Если это письмо,
посмотрите, что получится, если вы попытаетесь сохранить или послать все
сообщение целиком.
Вы можете оказаться в программе, похожей на обычную ОС или управляю-
щую программу, в которой меню со списком опций либо недоступно, либо вы-
зывается с помощью команды HELP. Вам выдается приглашение к вводу коман-
ды. К некоторым прикладным командам добавляется имя файла, с которым вы
собираетесь работать (например, для редактирования файла с помощью текс-
тового процессора:
"WORD_PROC STORY.DOC"). Если система работает в режиме онлайн, попро-
буйте ввести таким образом слишком много данных ("WORD_PROC STORY.DOC
FILE.ONE FILE.TWO...") или неподходящие данные. Например:
WORD_PROC WORD.PROC WORD_PROC \directoryname WORD_PROC
nonexistent-filename WORD_PROC ,etc,date, [или другая команда].
Тактика "неподходящих данных" с успехом применялась до последнего
времени. Можно прибегнуть также к переполнению стека команд, т. е. раз-
мещению множества команд в одну линию. Команды могут быть разделены про-
белами, скобками, слешами, или другими знаками пунктуации. Синтаксичес-
кий анализатор может оказаться не в состоянии интерпретировать слишком
большое количество команд. Если строчный редактор не разрешит вам вво-
дить столько строк, попробуйте с помощью программирования создать впе-
чатление, что большой стек команд послан прямо с клавиатуры.
Если в вашем распоряжении имеется язык программирования или компиля-
тор, попробуйте поставить какие-либо величины на места, вовсе для этого
не предназначенные. Возможно, вам удастся откомпилировать программу в
специальные области памяти, записав ее поверх машинной программы, кото-
рая препятствует вашему продвижению вперед, или заставить программу пе-
реместиться в новое положение, где можно будет прибегнуть к дополни-
тельным инструкциям.
Наконец, попробуйте загрузить программу в редактор электронной почты,
или любой другой, или программу-доктор, и изменить ее так, чтобы она
разрушалась при запуске.
Дефекты наиболее часто встречаются в следующих видах программного
обеспечения: Новое ПО (программное обеспечение) - одна из первых версий,
или прошедшая Бета-проверку и т. п. Программы, по каким-то причинам фи-
нансового или рекламного порядка "слепленные" на скорую руку. Программы,
годами остававшиеся неизменными, несмотря на изменения аппаратного обес-
печения и пр. Обновляющееся ПО. ПО, не обладающее коммерческой цен-
ностью.
Путешествуя по сетям, выберите время, чтобы остановиться и прочесть
заметки о новых версиях старого программного обеспечения. В них часто
сообщается об исправленных дефектах старых версий. К тому времени, как
вы об этом прочтете, еще далеко не все успеют поменять свои старые вер-
сии программ на новые.
возвращение к месту действия
Предусмотрительный хакер всегда обеспечит себя лазейкой, чтобы в
дальнейшем, если понадобится, беспрепятственно войти снова. Обычно это
делается с помощью установки фиктивного бюджета для использования в ус-
пешных взломах. В конце концов, нет никакой гарантии, что бюджет, кото-
рый вы использовали при первом взломе, сохранится к тому времени, как вы
загрузитесь снова, или что пароль или другая важная входная информация
не изменится, закрыв вам доступ. Если вы получили доступ не с помощью
пароля, а какими-то командными или техническими средствами, вам тем бо-
лее понадобится такой потайной вход, чтобы заново не возиться со всей
этой ерундой.
Во многих ОС можно запускать программы даже после того, как пользова-
тель вышел из системы. Иногда можно установить программу на начало рабо-
ты в определенное время. Написание подходящей программы и ее запуск с
помощью одной из этих команд поможет вам, если вы захотите вернуться к
месту своего действия.
задание выполнено... но не совсем!
Эй! Взгляните-ка, что у вас получилось! Итак, вы провели исследова-
ния, нашли нужный компьютер, взломали его, и теперь разгуливаете внутри.
Это четыре составляющих хакерской деятельности. Это и означает - быть
хакером.
Первые четыре составляющих выполняются по порядку, одна за другой. Но
вот последняя часть на самом деле вовсе не последняя. О ее выполнении
следует заботиться с самого начала и до конца, ни на секунду не забывая
о ней.
Ведь то, чем вы занимаетесь, - ХАКЕРСТВО, а это, как вам известно,
вещь незаконная. Значит, вы должны подумать о собственной безопасности.
Давайте теперь рассмотрим, что же такое хакерство, которое считается
незаконным в нашем обществе, как можно заниматься хакерством, не попада-