KnigaRead.com/

Михаил Флёнов - Linux глазами хакера

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Михаил Флёнов, "Linux глазами хакера" бесплатно, без регистрации.
Перейти на страницу:

1. Общедоступный, содержащий необходимые строки для работы удаленных пользователей с общими ресурсами.

2. Локальный, видимый только пользователям вашей сети и содержащий все необходимые записи для их работы.

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

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

Использование парных серверов позволяет повысить производительность и безопасность. Сервисы DNS под Linux не очень требовательны к оборудованию, В моей сети работает четыре сервера на базе Red Hat Linux в текстовом режиме на компьютерах Pentium с частотой от 400 до 700 МГц. Когда-то это были офисные машины, но их мощности перестало хватать, и я превратил старое железо в DNS-серверы. Для выполнения этой задачи такой древней техники более чем достаточно и хватит на ближайшие годы. Таким образом, старому компьютеру можно дать новую жизнь, и довольно долгую, а главное, что для компании такое решение окажется приемлемым по цене.

Но технология создания вторичных серверов опасна. С помощью команды host хакер может добыть полную информацию о содержимом базы данных основного сервера, как это делают вторичные серверы для обновления своей базы.

Для получения базы взломщик может выполнить следующую директиву:

host -l server.com nsl.server.com

В ответ на это хакер получит из базы данных все записи о сервере server.com, Чтобы предотвратить это, необходимо явно прописать адреса вторичных серверов в файле named.conf. Для этого в разделе options{...} добавляем строку:

allow-transfer {192.168.1.1;}

Такого рода ограничение можно поместить и в описании отдельных зон, но лучше сделать это один раз в глобальных опциях. Если у вас нет вторичных серверов, то запретите перенос данных в эту зону следующей строкой:

allow-transfer {none;}

Серверы DNS могут быть подвержены атаке DoS. В ноябре 2002 года был произведен один из самых громких налетов на Интернет такого типа. Атака шла сразу на несколько корневых серверов. Если бы работу DNS выполнял только один сервер, то через некоторое время после начала штурма Интернет стал бы недоступным. Сеть осталась работоспособной благодаря следующим факторам:

□ избыточности серверов, которые дублируют записи;

□ наличию кэширующих серверов;

□ установке прокси-серверов, которые также умеют кэшировать DNS-записи.

В остальном защита DNS и любых других сервисов и ОС Linux идентичны. Как я уже говорил, лучший сервер — это тот, который выполняет узкую задачу. В нем меньше открытых портов и запущенных сервисов, поэтому его труднее взломать. Единственная сложность — большое количество серверов усложняет процесс обновления ОС. В Linux тоже бывают ошибки, и их надо исправлять, поэтому под эту процедуру попадают все серверы, в том числе и DNS.

Глава 12

Мониторинг системы

Первоначальная задача администратора — установить систему, правильно распределить права доступа и настроить все необходимые сервисы. После этого многие из них складывают ручки и начинают гонять монстров по коридорам виртуального мира Doom3. Если вы являетесь таким администратором, то рано или поздно ваша система будет взломана, и последствия будут плачевными.

Чтобы уменьшить вероятность проникновения в систему постороннего или обезопасить себя от недобросовестных пользователей вашей сети, нужно постоянно держать сервер под контролем. Большинство взломов происходит благодаря тому, что администраторы не успевают обновить какие-либо сервисы и установить заплатки. Очень часто взломщики узнают об уязвимости раньше и начинают ломать все серверы с этой ошибкой, которые попадаются на глаза.

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

Если взлом произошел, то ваша задача не просто восстановить работу, а предотвратить повторное вмешательство. Я много раз видел людей, которые после взлома просто восстанавливают удаленные файлы и продолжают заниматься своими делами в надежде, что такое не повторится. Это ошибка, потому что хакер уже почувствовал себя безнаказанным и обязательно вернется.

К следующему визиту вы должны быть готовы. Сделайте все возможное, чтобы найти сведения о взломщике, о том, как он проникает на сервер, и постарайтесь блокировать атаку. Вы также должны просмотреть все последние бюллетени ошибок (BugTraq) в поисках информации о дырах в вашей версии ОС и установленных сервисах.

Не будем дожидаться, когда злоумышленник проникнет в систему, и мы потеряем сон. Давайте рассмотрим действия, которые можно произвести еще до взлома, когда система работает нормально. Это поможет повысить безопасность сервера.

Все, о чем мы будем говорить в этой главе, необходимо делать и до проникновения в систему и после. Взломщики иногда оставляют потайные двери (например, устанавливают SUID-бит на программу, где его не должно быть), и вы должны регулярно сканировать систему на предмет безопасности описанными ниже методами. Особенно это касается новой системы (сразу после инсталляции и настройки), обновления, добавления программ или сразу после взлома.

12.1. Автоматизированная проверка безопасности

Практически каждый день специалисты по безопасности находят в разных системах недочеты и, откровенно говоря, дыры или даже пробоины. Весь этот перечень выкладывается в отчетах BugTraq на разных серверах. Я уже посоветовал посещать www.securityfocus.com, чтобы следить за новостями, и сейчас не отказываюсь от своих слов. Новинки действительно надо смотреть на подобных серверах, но ведь есть еще ворох старых уязвимостей, которые могли быть и не залатаны на сервере. Как же поступить с ними? Неужели придется качать все сплоиты и руками проверять каждую дыру? Ну, конечно же, нет. Существует громадное количество программ для автоматизации тестирования сервера на ошибки, и самые распространенные — SATAN, Internet Scanner, NetSonar, CyberCop Scanner.

Я не стану рекомендовать какую-нибудь определенную программу. Не существует такой утилиты, в которой была бы база абсолютно всех потенциальных уязвимостей. Поэтому скачивайте все, что попадется под руку, и тестируйте систему всеми доступными программами. Возможно, что-то вам и пригодится. Но обязательно обратите внимание на продукты компании Internet Security Systems (ISS, системы Интернет безопасности www.iss.net), потому что сканеры этой фирмы (Internet Scanner, Security Manager, System Scanner и Database Scanner) используют все три метода сканирования, о чем мы поговорим чуть позже. Сотрудники ISS работают в тесном контакте с Microsoft и постоянно обновляют базу данных уязвимостей. Но несмотря на то, что продукты этой фирмы лучшие, я советую использовать хотя бы еще один сканер другого производителя.

Компания Internet Security Systems разработала целый комплект утилит под общим названием SAFEsuite. В него входят не только компоненты проверки безопасности системы, но и модули выявления вторжения и оценки конфигурации основных серверных ОС.

Сканеры безопасности как антивирусы — защищают хорошо, но только от старых приемов. Любой новый метод взлома не будет обнаружен, пока вы не обновите программу. Поэтому я не рекомендую целиком и полностью полагаться на отчеты автоматизированного сканирования, а после работы программы самостоятельно проверить наличие последних уязвимостей, описанных в каком-либо бюллетене ошибок (BugTraq).

С помощью автоматизированного контроля очень хорошо производить первоначальную проверку, чтобы убедиться в отсутствии старых ляпсусов. Если ошибки найдены, то нужно обновить уязвимую программу/ОС/Сервис или поискать на том же сайте www.securityfocus.com способ обезвреживания. Почти всегда вместе с описанием уязвимости дается вакцина, позволяющая залатать прореху в сервисе или ОС. Вакцину может предложить и программа сканирования, если в базе данных есть решение проблемы для данного случая.

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*