[ Alex WebKnacKer ] Хакинг и антихакинг - защита и нападение. Книги удк 004. 056. 5Alex WebKnacKer
Скачать 42.38 Mb.
|
ГЛАВА 3. Инструменты хакинга 43 Встроенные средства операционной системы Мы уже говорили, как хакеры переименовали пакет утилит W2RK (инструменты обслуживания Windows 2000) в пакет W2HK - инструменты хакинга Windows 2000, поскольку утилиты из этого пакета прекрасно подходят для исследования ата- куемой системы. В операционной системе Windows имеется и другое средство - Проводник (Explorer) Windows, весьма удобный для исследования информаци- онных ресурсов системы. Скажем, хакер может прибегнуть к поиску файлов по определенному ключевому слову, например, password, или пароль. Как указано в [3], просто удивительно, насколько распространена порочная практика хранения паролей доступа к закрытым информационным ресурсам, типа номеров кредитных карточек, в незащищённых текстовых файлах. Так что взломавший компьютерную систему хакер сможет без труда получить доступ и к другим интересным ресурсам, найдя, допустим, файл с названием password.txt или файл, содержащий строку пароль к провайдеру ISP. Антихакер должен уметь прятать ценные данные от таких инструментов хакинга - делать файлы невидимыми, сохранять в шифрованных дисках, присваивать ней- тральные имена и так далее. Неплохо также научиться применять средства шиф- рования, встроенные в файловую систему NTFS компьютеров Windows или предоставляемые другими криптографическими приложениями, например, PGP Desktop Security. - это программы, которые используют уязвимости для вторжения в компьютер, т.е. наиболее важные для хакера инструменты. В Главе 1 мы уже упоминали про Web-сайты различных организаций, поддерживающих базы дан- ных уязвимостей и эксплойтов компьютерных систем (см., например, сайт http://www.securitylab.ru). В Главе 12 мы опишем технологию применения экс- плойтов на примере хакинга сервера IIS. Найдя с помощью сканера CGIScan уязвимый сценарий, хакер может обратиться к базе данных уязвимостей и экс- плойтов и попытаться взломать доступ к серверу. К сожалению, нынче в Интер- нете очень трудно найти настоящий исполняемый файл эксплойта для совре- менных приложений - в отличие от предыдущего поколения программ, напри- мер, для серверов 4. В лучшем случае в Web представлены в виде исходных программных кодов, с которыми еще нужно долго разбираться. Так что эксплойты - это отнюдь не ключик, открывающий двери к искомому ре- сурсу, а скорее заготовка для этого ключика. Так что все в ваших руках. Для антихакера обязательно знание всех уязвимостей и эксплойтов, угрожаю- щих его системе; более того, эти сведения должны непрерывно обновляться, по- скольку «безопасность - это процесс» (Брюс Шнайер). То, что надежно защи- щает вас сегодня, завтра будет непригодно - кто-нибудь, да найдет маленькую дырочку в системе защиты, а уж расширить ее - это дело техники. 44 Быстро и легко. Хакинг и Антихакинг Вирусы и Вирусы - это тоже инструменты атаки, которые позволяют внедрить в систему соглядатая или просто злонамеренную программу. Особую опасность представ- ляют троянские кони - программы, которые внедряются в систему и позволяют хакеру удаленно управлять компьютером. В Главе 14 мы опишем возможности старого и заслуженного троянского коня NetBUS, который делает взломанный компьютер практически рабом хакера. А установка на ата- куемом компьютере - не такое уж и сложное дело, как это может показаться. Для этого следует только разослать письма с вложением - программой ского коня и дождаться, пока очередной щелкнет на ссылке с заманчи- вым предложением, скажем, обновить с помощью присланного вложения свой браузер Интернета. Для борьбы с такими инструментами хакинга существуют антивирусы и специа- лизированные программы удаления троянов. Для антихакера трояны также мо- гут пригодиться - скажем, получив от хакера письмецо с вирусной начинкой, выявите его злонамеренное содержимое антивирусом и отошлите начинку об- ратно авторам вместе с благодарностью за заботу. Или, например, вдруг кто-то украдет ваш компьютер - и тогда, быть может, хитро запрятанный троянский конь может облегчить поиски Помните однако, что распространение ви- русов карается по закону, и автор ни в коем случае не одобряет таких действий. Перехват Наиболее оснащенные и квалифицированные хакеры имеют в своем распоряже- нии совсем уж продвинутую возможность - перехватывать электромагнитное излучение, от сетевых кабелей и разных компонентов компьютеров, и извлекать из этого потока сигналов полезные данные. Несколько лет назад в прессе даже мелькали сообщения о системах тотальной слежки спецслужбами США за ВСЕМИ диапазонами радиоволн, которые только существуют на зем- ном шаре. На менее глобальном уровне атаки перехвата электромагнитного из- лучения могут выполняться с помощью фургона с оборудованием, принимаю- щим сигналы от работающего монитора компьютера в офисе конкурента. Такая угроза - отнюдь не пустая выдумка создателей популярных сериалов, и на хакерских сайтах имеется множество сведений о технологиях и оборудовании, используемом для таких атак. В США даже существует федеральный стандарт TEMPEST, регламентирующий построение защиты от угроз перехвата электро- магнитного излучения. Однако такие атаки - это сложное и дорогостоящее предприятие, и они угрожают только весьма серьезным организациям, которые, надо думать, не нуждаются в наших советах по защите. Поэтому такие атаки далее мы рассматривать не будем. ГЛАВА 3. Инструменты хакинга 45 В этой главе мы попытались облегчить читателям работу с книгой - по крайней мере, теперь вам стала ясна ее структура, и понятно, что следует прочитать, что- бы научиться выполнять определенную атаку. И в самом деле, зачем знакомить- ся с сетевыми если можно залезть через форточку в комнату с компью- тером (автор не советует), извлечь жесткий диск, быстро убежать и познако- миться с ним в спокойной обстановке? Или, к примеру, стоит ли пытаться за- лезть через Интернет на сервер организации, политика безопасности которой сводится к листочкам со списками паролей, приклеенным скотчем к мониторам компьютеров? В самом деле, почитайте содержимое хакерских сайтов Интернета - и что же? Оказывается, можно просто залезть в мусорный ящик организации, использую- щей компьютерные технологии (а кто их не использует), чтобы добыть целый мешок дискет, документов, всяких бумажек, содержащих практически все - от паролей доступа к компьютерной сети до самых конфиденциальных данных. Но в этой книге мы ограничимся хакерскими технологиями, не связанными с таки- ми экзотическими методами. Инструменты хакинга весьма разнообразны и выбор наиболее эффективных из них зависит от опыта и возможностей хакера. Причем, если вас интересует именно информация, а не всякие интересные штучки, свойственные личностям наподобие доктора Добрянского из Главы 1, следует избирать наиболее опти- мальную тактику вторжений. Антихакеру же следует уделить самое присталь- ное внимание всем технологиям хакинга, чтобы не стать субъектом, которого «кул в просторечии называют А теперь приступим к изучению самих инструментов хакинга, которые позво- ляют выполнять все эти удивительные вещи, про которые мы часто читаем в прессе и видим на экранах телевизоров, иногда видим пользователей этих инст- рументов в сопровождении джентльменов в фуражках и комментариев на тему «вот что бывает, если не слушаться чтобы избежать мно- гих неприятностей в дальнейшем, начнем с изучения своего противника - сис- темы защиты компьютеров Windows 2000/XP. Г Л А В А 4 . Защита 2000/XP Операционные системы семейства Windows 2000 с самого начала разрабатыва- лись с учетом требований документа TCSEC (Trusted Computer System Evaluation Criteria - Критерии оценки надежной системы) министерства обороны США. Для обеспечения безопасности компьютерных систем, созданных на базе Windows 2000, в нее включены средства защиты, поддерживающие три основ- ных компонента. • Аутентификация. • Авторизация. • Аудит. Рассмотрим эти компоненты системы защиты по. очереди. Аутентификацией называется обеспечение возможности для доказательства од- ного объекта или субъекта своей идентичности другому объекту или субъекту. Говоря понятнее, аутентификация - это процедура, подобная установлению вашей личности, когда вы получаете деньги в сберкассе, покупаете билет на самолет, регистрируетесь при входе в компьютер и так далее, т.е. доказываете, что вы - это вы. Один из способов аутентификации в компьютерной системе состоит во вводе вашего пользовательского идентификатора, в просторечии называемого «логи- ном» (от английского «log in» - регистрационное имя), и пароля - некой конфи- денциальной информации, знание которой обеспечивает владение определен- ным ресурсом. Получив введенный пользователем логин и пароль, компьютер сравнивает их со значением, которое хранится в специальной базе данных и, в случае совпадения, пропускает пользователя в систему. В компьютерах Windows такая база данных называется SAM (Security Account Manager - Диспетчер защиты учетных записей). База SAM учет- ные записи пользователей, включающие в себя все данные, необходимые систе- ме защиты для функционирования. Поэтому взлом базы SAM - одна из самых увлекательных и плодотворных задач хакинга, которую мы описываем в Главе 5 этой книги. Стоит отметить, что текстовый ввод логина и пароля вовсе не является единст- венным методом аутентификации. Ныне все. большую популярность набирает аутентификация с помощью электронных сертификатов, пластиковых карт и биометрических устройств, например, сканеров радужной оболочки глаза. Так- же не следует забывать, что процедуру аутентификации применяют компьютеры ГЛАВА 4. Защита Windows при общении друг с другом, используя при этом весьма сложные криптографи- ческие протоколы, обеспечивающие защиту линий связи от прослушивания. А поскольку, как правило, аутентификация необходима обоим объектам, т.е., на- пример, обоим компьютерам, устанавливающим сетевое взаимодействие, то ау- тентификация должна быть взаимной. Иначе, к примеру, покупая товар в не ау- тентифицированном Интернет-магазине, вы рискуете потерять (и, как следует из новостей на эту тему, очень даже с большой вероятностью) свои денежки, кото- рых, как известно, всегда мало. В любом случае, для аутентификации в компьютерных системах используются определенные алгоритмы, или, как чаще говорят, протоколы. Сетевые компью- теры Windows NT 4 для аутентификации друг друга использовали протокол NTLM (NT LAN Manager - Диспетчер локальной сети NT). Далее NTLM вошел в состав сетевых средств компьютеров Windows 2000/XP. Протокол NTLM, как и его предшественник, протокол LM (LAN Manager - Диспетчер локальной сети), настолько хорошо освоен хакерами, что один из способов взлома сетей Windows как раз и в принуждении компьютеров сети аутентифицироваться с помощью NTLM. В сетях Windows 2000/XP для аутентификации применяется гораздо более со- вершенный протокол Kerberos, обеспечивающий передачу между компьютера- ми данных, необходимых для взаимной аутентификации, в зашифрованном виде. Так что если вы когда-либо регистрировались на компьютере как пользо- ватель домена Windows 2000/XP, то знайте - вы аутентифицируетесь на сервере Windows 2000 по протоколу Kerberos. Из всего вышесказанного хакер может сделать вывод - все, что ему нужно для аутентификации в компьютерной системе Windows 2000/XP - это логин и осо- бенно пароль пользователя. Антихакер, естественно, должен хранить в полной тайне, поскольку с точки зрения компьютера тот, кто знает ваш логин и пароль - это вы и никто другой. Авторизация После аутентификации пользователя, пытающегося получить доступ к инфор- мационным ресурсам, компьютерная система должна проверить, к каким имен- но ресурсам этот пользователь имеет право обращаться. Данную задачу решает следующий компонент системы защиты - средства авторизации. Для авториза- ции пользователей в системах Windows каждому пользователю каждого инфор- мационного ресурса, например, файла или папки, определяется набор разреше- ний доступа. Например, пользователю Васе Пупкину можно разрешить только чтение важного файла, а Пете Лохову можно разрешить и его модификацию. Авторизацию не следует путать с аутентификацией, поскольку, например, и Вася Пупкин, и Петя Лохов оба могут пройти входную аутентификацию, но их возможности по нанесению системе ущерба могут существенно отличаться. 48 Быстро и легко. Хакинг и Чтобы облегчить авторизацию пользователей, в системах Windows разработан набор средств для управления доступом к ресурсам. Эти средства опираются на концепцию групп пользователей, и суть ее такова. Вместо того, чтобы для каждого отдельного пользователя устанавливать множество разреше- ний на доступ к различным ресурсам, эту задачу решают всего один раз для це- лой группы пользователей. Далее каждый новый пользователь включается в од- ну из существующих групп и получает те же права, или привилегии на доступ, которые определены для остальных членов группы. Например, Васю Пупкина можно включить в группу Гость (Guest), члены которой практически не имеют никаких прав, а Петю Лохова - в группу Пользователь (User), члены которой могут открывать и редактировать отдельные документы. Теперь вам, должно быть, становится ясным, почему следующей задачей хакера после входной регистрации в системе является расширение привилегий. Без по- лучения прав высокопривилегированной группы, лучше всего группы Админи- страторы (Administrators), ничего у хакера не выйдет, и останется ему только одно - «заклеить кулер скотчем» или выключить компьютер при работающем винчестере, чем и занимаются некоторые странные личности, обитающие в на- шем непростом Аудит Ясно, что включенный в гостевую группу Вася Пупкин будет обижен таким пренебрежением к своей персоне и захочет залезть туда, куда его не пускают. И вот, чтобы предотвратить его попытки несанкционированного доступа к чу- жим ресурсам, в системе устанавливают аудит - средства наблюдения за собы- тиями безопасности, о которых мы говорили в Главе 2, т.е. специальная про- грамма начинает отслеживать и фиксировать в журнале события, представляю- щие потенциальную угрозу вторжения в систему. В число событий безопасности входят попытки открытия файлов, входной регистрации в системе, запуска при- ложений и другие. Так что, если в системе с установленным аудитом Вася Пуп- кин попробует открыть файл, не имея на то разрешений, это событие будет за- фиксировано в журнале безопасности, вместе с указанием времени и учетной записи пользователя, вызвавшего такое событие. Просматривая журнал безопасности Windows можно определить очень многое, что позволит идентифицировать хакера, так что одна из важней- ших задач хакинга - это очистка журнала безопасности перед уходом. Как это делается, мы отдельно поговорим в Главе 7, а сейчас сформулируем, что должен сделать антихакер, чтобы предотвратить все попытки вторжения в систему. Хорошо организованная защита требует создания политики безопасности, под которой понимается документ, фиксирующий все правила, параметры, алгорит- мы, процедуры, организационные меры, применяемые организацией для обеспечения компьютерной безопасности. ГЛАВА 4. Защита Windows Например, политика безопасности может включать требование задавать пароли длиной не менее символов, или обязательный запуск парольной заставки пе- ред кратковременной отлучкой от компьютера, и так далее. Все эти вопросы достаточно подробно рассмотрены во множестве книг, например, [2], [6], так что не будем повторяться, а перейдем к более существенным для нас темам - как работает эта система защиты Windows 2000/XP, и что можно сделать, чтобы она не работала. работает Windows 2000/XP Работу всей системы защиты Windows 2000/XP обеспечивает служба SRM (Security Reference Monitor - Монитор защиты обращений). Монитор SRM рабо- тает в режиме ядра системы Windows 2000/XP, т.е. невидимо для пользователя. Однако в системе Windows есть программы, в том числе поддерживаю- щие графический интерфейс, которые позволяют обратиться к различным ком- понентам монитора SRM. Эти компоненты таковы. • Диспетчер LSA (Local Security Authority - Локальные средства защиты), про- веряющий, имеет ли пользователь разрешения на доступ к системе согласно политике безопасности, хранимой в специальной базе данных LSA. Иными словами, диспетчер LSA авторизует пользователей системы согласно приня- той политике безопасности. Помимо этого, диспетчер LSA управляет поли- тикой защиты системы и аудитом, а также ведет журнал безопасности. • Диспетчер SAM (Security Account Manager - Диспетчер учетных записей сис- темы защиты), который поддерживает работу с учетными записями локаль- ных пользователей и групп. Эти учетные записи необходимы для аутентифи- кации пользователей, которые далее авторизуются диспетчером LSA. • Служба AD (Active Directory - Активный каталог), которая поддерживает базу данных AD с учетными записями пользователей и групп домена. Эти учетные записи необходимы для аутентификации пользователей, далее диспетчером • Процедура регистрации, которая получает от пользователя введенный логин и пароль, после чего выполняет проверку двоякого рода: если при входной регистрации был указан домен, то контроллеру домена посылается запрос, причем для связи компьютеров используется протокол если же ука- зан локальный компьютер, то проверку выполняет локальный компьютер. Вам, наверное, уже стало понятным, как все это работает: процедура регистра- ции в диалоге, генерируемом при включении компьютера, предлагает пользова- телю ввести свой логин, пароль и указать компьютер/домен, в который он хочет войти. Далее серверы SAM и AD выполняют аутентификацию пользователя, а сервер LSA выполняет авторизацию пользователя. Если все прошло нормально, то пользователь входит в систему, и все его действия, т.е. обращения к инфор- мационным ресурсам, контролируются службой SRM. 50 Быстро и легко. Хакинг и Антихакинг Это, конечно, чрезвычайно упрощенная модель работы системы защиты Windows 2000/XP. Однако приведенных данных достаточно, чтобы выявить две основные уязвимости системы защиты. Во-первых, это наличие баз данных с паролями пользователей (SAM и AD); во-вторых, это наличие обмена информа- цией между компьютерами при регистрации пользователя в домене. Посмотрим, что это нам дает. SAM Понятно, что лучше искать то, что тебе надо, в местах, которые для этого отведены по определению. Так что самое лучшее, что может сделать хакер, по- пав в компьютер, это попробовать взломать доступ к базам SAM и AD, что сразу обеспечит его паролями доступа ко всем ресурсам компьютера. База SAM хра- нится в виде файла в каталоге а база AD - в каталоге Так что, чего, казалось бы, проще - открыть эти базы данных и прочитать содержимое! Не тут то В стародавние времена, когда любителей чужих секретов было не так много и они не были такие умные, это и в самом деле было несложно сделать, вернее, не так сложно, как в системах Windows 2000/XP. Для защиты паролей в базе SAM в системе Windows NT 4 использовалось слабенькое шифрование паролей, обеспе- чиваемое протоколом сетевой идентификации NTLM и, к тому же, для обратной совместимости были оставлены пароли, зашифрованные согласно протоколу сетевой идентификации LM, который использовался в предыдущих версия Windows. Шифрование LM было настолько слабо, что пароли в SAM взламыва- лись хакерскими утилитами, например, популярнейшей утилитой LOphtCrack (http://www.atstacke.com) без всяких затруднений, методом прямого перебора возможных вариантов. Недостатком первых версий утилиты LOphtCrack было отсутствие инструмента извлечения шифрованных паролей из базы SAM, но с этой задачей успешно справлялась не менее известная программа, запускаемая из командной строки, (http://www.atstacke.com). Так что в деле хакинга Windows царила пол- ная гармония - программа pwdump извлекала из базы SAM шифрованные паро- ли учетных записей и заносила их в файл, далее этот файл читала программа LOphtCrack, и путем некоторых усилий - очень небольших, учитывая недостатки протокола - расшифровывала добытые пароли. Однако все изменилось с появлением Service Pack 3 для Windows NT 4, в кото- ром было реализовано средство, называемое Syskey и представляющее собой инструмент для стойкого (надежного) шифрования паролей, хранимых в SAM. При желании пользователь Windows NT 4 мог включить средство Syskey само- стоятельно; в системах же Windows 2000/XP шифрование Syskey устанавливает- ся автоматически. В отличие от шифрования LM и NTLM шифрование Syskey не позволяет выполнять взлом паролей простым перебором, поскольку при ис- пользовании паролей достаточной длины это потребует неприемлемых затрат |