только проникнуть в любой компьютер, но, оказавшись внутри, еще и сделает кое-что для того, чтобы взлом не оказался напрасным. Одно дело - просто проникнуть в базу данных, и другое - суметь так изменить записи в этой базе, чтобы вас не поймали за руку.
Чтобы стать самым лучшим хакером, необходимо знать основные команды ОС - как работать с файлами, посылать и получать почту и т. д. Хакер также должен знать малоизвестные команды, а также файлы, программы и директории, обычно встречающиеся в машинах под управлением данной ОС, изучить руководства по ОС и ее язык; знать, кто и как использует ОС, и разбираться в сообщениях об ошибках.
Но мы еще не добрались до самого сложного. Видите ли, все вышесказанное является лишь надводной частью айсберга. Ведь вся эта информация является вполне доступной и ее можно найти в справочниках и руководствах. Хакеру же необходимо знать секретную часть ОС, которой нет в руководствах, а если и есть, то она описывается настолько техническим и туманным языком, что понять ее способны лишь немногие. Списки 'основных ве-шей, которые необходимо знать хакеру' посвящены тому, что такое ОС и что она делает, но хакер - чтобы успешно входить в любую систему, которая ему или ей понравится, и уметь ею пользоваться - должен знать, КАК она работает, и почему она работает именно так.
Операционные системы настолько огромны, что просто невозможно толком проверить их, дабы ликвидировать все малейшие дефекты. Порой компьютерные менеджеры изменяют ОС, включая в них свойства или функции, которые им понравятся, и тем самым создают лазейки в системной зашите. Иногда мульти программисты, работающие над различными частями ОС, даже не советуются между собой по жизненно важным аспектам, что в конечном итоге может привести к системному конфликту, когда эти программные блоки соединяются друг с другом.
Случайный пользователь не помнит о возможных нарушениях компьютерной зашиты. Хакер тоже может не помнить о них; но, если он обладает фундаментальными знаниями ОС, которая лежит в основе всех этих нарушений, то сможет, подумав, обнаружить лазейки и использовать их. В данной книге я не собираюсь углубляться в изучение технических аспектов каждой операционной системы, да настоящим хакерам это и не нужно. Найдите любую ОС, с которой сможете ознакомиться. Изучите основные команды и узнайте, как они запрограммированы. Вычислите способы, с помощью которых можно сымитировать команду, не набирая ее непосредственно в ответ на приглашение ОС. Что происходит с памятью при использовании команды? Можно ли изменить память? Вот такие веши важны для хакера, который хочет, чтобы его заветные мечты стали реальностью.
В оставшейся части этой главы приведены примеры подобных технически ориентированных ха-керских методов. Причина проста и неоспорима:
ничто хорошее в этой жизни не дается даром. Вам придется немало поработать, чтобы вершить великие дела, попав в систему. Конечно, никто не мешает просто изучать определенные веши, только когда приспичит, - например, какой-нибудь командный язык, или метод работы прикладной программы. Но, не обладая знаниями об основных принципах работы ОС, вы станете совершать свои взломы вслепую, и все особенности и дефекты системы пройдут мимо вашего внимания, как и любого обычного пользователя.
А теперь давайте вернемся к началу главы: что же все-таки делать после того, как вы окажетесь внутри?
оглядитесь ВОКРУГ
Что можно обнаружить, взломав систему или сеть? Да что угодно!
Там могут быть файлы для чтения, программы, которые можно запустить, пути соединения одного компьютера с другими, или одной сети с другими сетями.
Поищите резервные файлы или файлы с автоматическим сохранением через определенный промежуток времени. Некоторые текстовые редакторы оставляют подобные файлы, которые может прочесть каждый, кто на них наткнется, и, если системный администратор недавно редактировал с помощью такого редактора файл, содержащий ценную информацию, например, файл с паролями, значит, вам повезло. Электронная почта тоже не всегда уничтожается автоматически, а скапливается в файлах на диске (возможно, спрятанных). Уничтоженные недавно файлы порой могут не уничтожаться немедленно, а становиться спрятанными, или переноситься в специальную директорию.
Вы можете обнаружить журналы регистрации. При загрузке неопытные пользователи часто набирают пароли в окне приглашения к вводу имени, и в журналах встречаются сообщения о подобных ошибках. Например, если Джордж Вашингтон пытается войти в свой бюджет в UNIX, используя свой пароль 'cherrytree', но набирает его слишком поспешно, происходит следующее:
WashingtonUs1ername:cherrytree2Password:
Джордж соображает, что поторопился. Он напечатал свое имя еще до того, как появилось входное приглашение, и его пароль, отнюдь не в виде звездочек, появился в строке пользовательского имени. Он несколько раз нажимает3, чтобы очистить экран, но ошибка-то уже сделана. Где-то в административных директориях появился регистрационный файл следующего содержания:
Unsuccessful login of user cherrytree @ Tue, Mar 24,1992, 14:16:03
Теперь вам остается только перебрать различных пользователей системы, пока вы не найдете того, кому принадлежит этот пароль.
Журналы системных операторов иногда содержат также записи отосланных и полученных файлов, ошибки, явившиеся результатом ввода несанкционированных команд, новых бюджетов или очередных пользователей, получивших статус привилегированного пользователя.
Если говорить о безопасности, первое, что вы должны сделать, загрузившись в чей-либо бюджет, - сразу же постараться узнать, кому он принадлежит (если вы еще не знаете этого). При загрузке вам, скорее всего, будет выдано сообщение о том, когда произошло последнее обращение к бюджету, и, возможно, данные о том, откуда пользователь устанавливал связь.
Если легальный пользователь, бюджет которого вы взломали, только что загружался сам, у вас могут возникнуть проблемы. Заметьте, в какое время дня пользователь входил в бюджет, и сами постарайтесь входить в это же время. Постарайтесь войти в бюджет одновременно с двух разных компьютеров - не появится ли на втором компьютере сообщение об ошибке. Можете ли вы распознать присутствие в бюджете вашего 'конкурента'? Вам необходимо узнать обо воем этом, поскольку вам необходимо иметь возможность использовать бюджет, не вызывая подозрений со стороны его владельца.
Например, произошло так, что вы загрузились в бюджет, а в тоже время легальный пользователь, пытаясь сделать то же самое, получает сообщение:
'Пользователь такой-то уже установил связь через вход 11 б'. Вы не сможете узнать, что это произошло, но вы можете подготовиться к такому случаю. Пошлите настоящему пользователю сообщение якобы от системного менеджера, и оставьте не прочтенным. Когда настоящий владелец бюджета войдет в систему, его будет ждать нечто вроде:
Message #01
From 1513 SuperUser
То Al-l.USERS@calli.poo.mil
В подразделе группы С системы локальной сети произошла техническая неполадка, что привело к проблемам с работой нескольких из наших схем соединительных портов. Если во время загрузки вы получите сообщение о том, что вы уже вошли в систему, просим вас повторить свой вызов через несколько минут.
Мы приносим свои извинения по поводу возникших проблем и постараемся устранить неисправность как можно скорее, но наладка займет некоторое время. Нам пришлось выбирать между временными неудобствами и полным выключением системы. Мы надеемся, вы согласитесь, что лучше иметь систему с временными недостатками, чем не иметь системы вообще.
Мы ожидаем, что проблема будет решена к 3 марта. Спасибо за сотрудничество.
Пользователи часто хранят в своей директории личные ретроспективные журналы регистрации. Это могут быть ретроспективные отчеты о вводе команд, чтении новостей из определенных групп, передаче или уничтожении файлов. Из них вы сможете узнать, когда и как пользователь работает в системе, а также уровень его пользовательской компетентности.
Если взломанный вами бюджет используется нечасто, можете особенно не опасаться его настоящего владельца - разве что системный менеджер заподозрит неладное, заметив внезапно повысившуюся активность загрузки в бюджет, который никогда не отличался 'посещаемостью'.