Статьи Брандмауэр-системы. Элементы. Часть 2

Discussion in 'Статьи' started by FraiDex, 18 Sep 2007.

  1. FraiDex

    FraiDex Elder - Старейшина

    Joined:
    16 Jun 2006
    Messages:
    193
    Likes Received:
    68
    Reputations:
    -11
    Продолжим рассматривать элементы брандмауэр-систем.

    Шлюзы прикладного уровня.

    Шлюз прикладного уровня является своеобразными воротами в наружные сети (рис.1).
    [​IMG]
    Во многих системах шлюз прикладного уровня – единственная компьютерная система к которой возможен доступ из вне, поэтому шлюз нуждается в особенной защите. Система, на которой установлен шлюз прикладного уровня, называется бастионным узлом (bastion host).

    Шлюз, реализованный как шлюз с «двойным подключением», имеет два сетевых интерфейса. Один из них относится к внутренней сети, а второй к внешней (Интернет). Таким образом, в шлюзе такого типа осуществляется полный контроль над пакетами, передаваемыми между сетями.

    Работают шлюзы и в режиме «одинарного подключения», т.е. имеется только один сетевой интерфейс. Однако, такой шлюз может обойти злоумышленник.

    Работа шлюза

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

    · Принципы
    Шлюз получает пакеты по средствам сетевых драйверов TCP/IP и соответствующих портов. В том случае, если порт предназначен конкретно только для одной службы, то на системе должна быть установлена специальная программа, она позволяет производить через шлюз передачу пакетов, принадлежащих одной службе. Такая программа называется прокси-агентом.

    Так же на прокси-агент можно возложить некоторые функции по безопасности службы, за которую он отвечает.

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

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

    Шлюз имеет два IP-адреса, один во внешней сети (например, Интернет), а второй во внутренней локальной сети. Таким образом, для работы с компьютерами из внешней сети, используется один IP, а для работы с компьютерами из внутренней – второй.

    Прокси-агенты

    Прокси-агенты бывают двух уровней: прикладного и канального.
    Прокси-агенты прикладного уровня используются для работы с конкретной службой/приложением. Они используют команды определенного протокола, могут анализировать информацию этого протокола и управлять ей. Работают они обычно со стандартными клиентскими программами для FTP, Telnet и т.д.

    Ниже мы рассмотрим несколько примеров прокси-агентов прикладного уровня.

    · SMTP-прокси
    При работе SMTP-прокси непосредственной связи с получателем почты нет. Принцип работы агента следующий: поступающая почта сохраняется в специальном каталоге на шлюзе после проверки агентом заголовка пакета. Потом в ход вступает MTA-агент (рис.2), который по средствам другого MTA или непосредственно отсылает почту пользователю. Это предотвращает возможность прямого доступа к MTA-агенту через SMTP-агента.
    [​IMG]
    Сам по себе SMTP-агент обрабатывает команды, которые не представляют угрозы. Например, HELO, MAIL, RCPT, RSET, DATA и т.д.

    Данный принцип позволил снизить угрозу атак на весьма уязвимую утилиту sendmail, которая является MTA-агентом на большинстве почтовых серверов.

    · Telnet-прокси

    Этот агент отвечает за обмен данными с помощью Telnet-клиентов. Он имеет специальный функции обеспечения безопасности. Система-отправитель устанавливает соединение с портом 23 шлюза. После прохождения пользователем аутентификации активируется профайл пользователя, который содержит следующую информацию:
    IP-отправителя, имя пользователя, IP-получателя. После этого шлюз устанавливает подключение с портом 23 системы получателя и становится прозрачным.

    · FTP-прокси
    FTP-прокси обеспечивает управляемый обмен файлами через протокол FTP (рис.3). Для установления соединения система-клиент контактирует с поротом 21 на шлюзе, после прохождения аутентификации и идентификации пользователи, активируется его профайл, который содержит информацию о компьютерной системе отправителя (IP, MAC и т.д.), имени пользователя, информацию о компьютерной системе получателя. После этого шлюз устанавливает соединение с системой-получателем и становится прозрачным для обмена.
    [​IMG]
    Однако, прокси-агенту можно задать дополнительные параметры, допустим ограничения по именам передаваемых файлов. Так же, имеется фильтр команд, который позволяет пользователю осуществлять команды, только разрешенные его правами, изложенными в профайле.

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

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

    · Java-прокси
    Этот агент позволяет без опаски использовать java-элементы. Всем известно, что данные элементы крайне небезопасны. Множество факторов на это влияет, одним из них является и давний конфликт Microsoft с Sun (разработчик языка java). В итоге Майкрософт отказалась покупать лицензию на среду разработки у Sun и разработала свою. Это привело к несовместимости и необходимости поддержки двух средств, как следствие – повышенная уязвимость.

    · Прокси-агенты аутентификации
    Шлюз может так же служить инструментом аутентификации пользователей (рис.4), если на нем установлены специальные прокси-агенты, занимающиеся аутентификацией. В таком случае аутентификация является разовой и ее повторение не требуется для новых сеансов. Недостатком подобной системы является то, что соединение между шлюзом и пользователем не является уникальным. И когда пользователь работает с какой-то службой, то этим может воспользоваться взломщик.
    [​IMG]
    · Прозрачный прокси-агент
    Задачей таких прокси является незаметный для пользователя анализ, допустим качества и безопасности сайтов и т.д. При определении угрозы, данные отсылаются в консоль управления шлюзом, где автоматическая система или администратор принимает решение.

    Прокси-агенты канального уровня используются для приложений использующих протоколы UDP и TCP. При передачи данных осуществляется переключение потов, что позволяет осуществлять управляемый обмен данными с одного IP-адреса.

    Диспетчер безопасности

    Использование модуля диспетчера безопасности позволяет создать качественное, простое, и, что самое главное, контролируемое администрирование элементов брандмауэр-систем.

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

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

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

    · Целостность правил фильтрации. Ошибки ввода в данных (например, MAC-адреса, IP-адреса, номер протокола/портов) должны выявляться проверкой.
    · Простота применения. Меню диспетчера должно иметь простой эргономичный дизайн, способствовать безошибочной навигации по системе.
    · Правила фильтрации должны настраиваться соответственно уровню протокола. Нельзя допускать возможность входа пользователей любых уровней.Повторяющиеся записи должны быть удалены. Правила должны проверяться администратором систематически.
    Для обеспечения более устойчивой системы безопасности должны быть дополнительные функции управления доступом.
    · Управление доступом к диспетчеру: для предотвращения внесения несанкционированных изменений в правила должны проводиться процедуры аутентификации и идентификации.
    · Управление правами доступа в диспетчере: для обеспечения безопасности всем пользователям, работающим с диспетчером, должны быть присвоены определенные права, например, администратора, оператора ввода данных, наблюдателя, аудитора.
    Для особых операций, касающихся безопасности, при работе с диспетчером безопасности должно соблюдаться правило «двух персон» (один и тот же пароль одновременно водят два человека.

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

    http://sa-sec.org/
     
    #1 FraiDex, 18 Sep 2007
    Last edited: 18 Sep 2007