Опубликован: 04.07.2008 | Доступ: свободный | Студентов: 629 / 31 | Оценка: 4.83 / 5.00 | Длительность: 42:11:00
Лекция 9:

Укрепление (hardening) сервера

Аннотация: В этой лекции рассматривается обеспечение еще одного дополнительного элемента безопасности, поскольку мы обсуждаем полную безопасность ИТ-системы как выше, так и ниже уровня приложений. В особенности мы рассмотрим те операционные системы (ОС), на которых запускаются приложения и сервера приложений, и уделим особое внимание обеспечению безопасности этих ОС с максимально возможной степенью
Ключевые слова: конфигурация, stealth, guidelines, базовая конфигурация, Экстранет, пакетная фильтрация, подозрительная активность, ISA Server, P2P, network mapper, пакетный фильтр, Intrusion Detection Systems, QNX, server operating system, многопользовательская операционная система, graphical user interface, соответствие реализации, мейнфрейм, DDE, dynamic data exchange, accounting management, NetBeui, win16, кеширование, мандат, security log, system log, системное событие, microsoft network, системный мониторинг, analysis tool, collaborative, computationally secure, соответствие политике безопасности, троян, virus-like, checker, security check, security risk, контрольные списки, openbsd, netbsd, корневой раздел, входящий поток, chargen, ddos, MTA, DSN, minix, пакетная система, custom install, PAM-5, apt-get, operating environment, reproducible, methodology, широковещание, NTP, WORM, фильтрация сообщений, lightweight directory access protocol, CDE, CFG, приветственное сообщение, common desktop environment, хакерские атаки, field separator, AWK, security tools, UUCP, скрытый файл, владелец файла, trusted computing, доверенная вычислительная база, TCB, безопасная установка, communications path, attention, TCP-сокет, UDP-сокет

Защита операционной системы осуществляется посредством процесса, называемого укреплением (hardening), в котором берется стандартная "боксовая" конфигурация (т. е. та, которая поставляется производителем для процесса установки со значениями параметров, выставленными по умолчанию) и закрываются все известные уязвимые места и потенциальные "дыры" безопасности файловой системы, фоновых служб и конфигурации сетевых служб.

В этой лекции мы рассмотрим "укрепление" тех операционных систем, на которых обычно Lotus-технологии и работают, а именно:

  • Windows (с ядром NT)-операционные системы:
    • Win32 – Windows NT4.0, Windows 2000 и Windows XP;
  • UNIX/Linux-операционные системы:
    • Sun Solaris – версия 8;
    • Linux (ядро 2.4) – SuSe и Red Hat;
    • IBM AIX.

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

9.1 Основные принципы "укрепления"

В этом разделе мы объясним некоторые фундаментальные принципы "укрепления". Необходимо понимать эти основы до того, как мы сможем обсуждать реальное "укрепление" ИТ-системы организации.

9.1.1 Начнем с операционной системы

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

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

Делайте изолированную установку

Во время установки ОС она должна быть физически отсоединена от любой сети, особенно от Интернета. Хотя результаты статистики варьируются в зависимости от того, кто предоставляет их, подсчитано, что установка ОС по умолчанию, будь то Windows или Linux, будет просканирована и взломана в течение часа после подсоединения к Интернету. К сожалению, для установки всех корректных патчей1Патч – заплатка, набор исправлений и улучшений. безопасности часто требуется больше времени, чем это.

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

Закрывайте ОС

Существует почти 100% вероятность, что установка "по умолчанию" приведёт к тому, что такая машина, или конфигурация, будет иметь как минимум одно уязвимое место, которое может быть использовано взломщиком для получения неавторизированного доступа.

Чтобы помешать этому, администратору следует быть готовым к установке всех подходящих патчей и обновлений. Это означает знание наперед, какие основные обновления доступны для данной ОС. Обновления часто бывают в форме пакетов обновлений (service pack) или обновленных релизов, которые доступны в пригодном для загрузки формате, что позволяет подготовить необходимые обновления на записываемом CD (компакт-диске) или ленте еще до установки.

После того как ОС с текущими обновлениями установлена, важно поддерживать ее в состоянии, всегда соответствующем последним обновлениям и исправлениям. Службы обновления предлагаются большинством производителей ОС (такие, как утилита up2date компании Red Hat и Windows Update Tool компании Microsoft). Эти инструменты должны использоваться с осторожностью, и вам следует понимать, что именно сделает с системой конкретный патч, полученный при помощи такой утилиты, до того, как он будет установлен.

Закрывайте службы

Операционная система – это лишь небольшая часть ИТ-системы. Подключенные дополнительные службы могут дать дополнительную функциональность, не входящую в "боксовую" конфигурацию, но, с другой стороны, могут стать причиной некоторой головной боли в плане безопасности. Например, одна из наиболее известных таких служб для ОС Windows Server – Internet Information Server (IIS, Информационный сервер Интернета), который стал источником огромного количества хорошо известных "дыр".

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

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

netstat –an

Кроме того, инструменты, такие, как Nessus, Nmap и Stealth, могут быстро выдать "снимок" ИТ-системы и того, какие потенциально уязвимые фоновые службы запущены в системе.

Определите базовый уровень

После того как ИТ-система пропатчена и закрыта, следующий важный шаг, который следует предпринять до того, как открывать ее миру, – это установить надлежащий базовый уровень для этой ИТ-системы.

Главным образом это означает, что должна существовать полная документация тех изменений, которые были выполнены с ИТ-системой. Любые изменения, сделанные с базовым уровнем, могут быть проконтролированы, и приняты соответствующие меры безопасности. Этим также устанавливается в организации единый стандарт конфигурации ИТ-систем, и любые необходимые корректировки могут быть сделаны быстро и единообразно, избегая тем самым самого понятия "самое слабое звено". (То есть такой системы, которая значительно отличается своей базовой конфигурацией и в которой нечаянно оставлены открытыми службы и порты. Такая система может быть использована для подготовки атак на другие системы организации.)

К тому же надлежащая безопасность полагается на соответствующую документацию. Именно по этой причине для организации должен существовать соответствующий ПСОНМ (политики, стандарты, общее направление мероприятий) (PSPG – Policies, Standards, Procedures Guideline) – документ, в котором содержатся детальные описания базовых конфигураций.

9.1.2 Инструменты защиты и предохранения

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

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

Брандмауэры

Детальное описание брандмауэров, их архитектуры и того, как наилучшим образом их использовать, дано в 4.1, "Инфраструктура компонентов". В этом разделе мы рассмотрим лишь некоторые базовые концепции брандмауэров.

Брандмауэр – это такое устройство, которое тщательно просматривает входящий сетевой трафик и, опираясь на набор правил, либо пропускает его, либо нет. Брандмауэры, как правило, стоят по периметру сети организации, защищая ее от Интернета, экстранета и других менее защищенных сегментов сети. Брандмауэр может работать на UNIX, Windows (предпочтительнее с ядром NT) или на любых других операционных системах с программным обеспечением, выполняющим пакетную фильтрацию, которые как минимум укреплены против взлома и имеют несколько сетевых карт для подключения к различным сегментам сети.

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

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

Фильтры приложений

Подобно брандмауэрам, фильтры приложений ограничивают поток данных согласно некоторому набору правил. В действительности некоторые устройства совмещают в себе брандмауэр и фильтр приложений. (Примером этого может быть Microsoft ISA Server, о котором подробнее можно узнать на странице http://www.microsoft.com/isaserver/.)

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

Например, если организация хочет ограничить использование P2P служб (к примеру, таких пиринговых клиентов, как KaZaa, Morpheus, eDonkey и т.д.), между брандмауэром и внутренней сетью следует установить фильтр приложений. Этот сервер приложений затем может быть отконфигурирован так, чтобы блокировать все запросы к таким P2P службам. Обычному HTTP трафику было бы позволено проходить, но весь файлообмен, основанный на службах P2P, блокировался бы.

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

Хотя фильтры приложений и важны для контроля того, какие данные входят и выходят из сети, тем не менее они ненадежны. Например, Web-сайты могут менять адреса и даже просто быть доступными по IP-адресу, тем самым обходя любые проверки URL-адресов. Кроме того, сайт, не содержащий ни единого слова (только рисунки), мог бы легко обойти проверку и пройти к запросившему пользователю, внезависимости от того, какие рисунки в нем содержатся.