Изъяны программных посредников
Вообще, уязвимость программных посредников не очень высока. После зашиты самого брандмауэра и реализации надежных правил, используемых программным посредником, вероятность обхода брандмауэра будет значительно ниже. Однако, как и следует ожидать, зачастую брандмауэр оказывается настроен неправильно.
Имя узла: localhost
Ранние программные посредники системы UNIX не заботились о необходимости ограничения локального доступа. Несмотря на контроль пользователей, использующих Internet, было вполне возможно, чтобы внутренний пользователь мог получить локальный доступ к самому брандмауэру. Несомненно, при использовании такой атаки требуется знание корректного имени пользователя или пароля, используемых на брандмауэре. Однако вы очень удивитесь после того, как узнаете, насколько легко их подобрать в некоторых случаях. Для того чтобы проверить, уязвим ли ваш программный посредник подобным атакам, выполните следующие действия.
После появления на экране приглашения на регистрацию:
С:\> nc – v – n 192.168.51.129 23 (UNKNOWN)[192.168.51.129] 23 (?) open Eagle Secure Gateway. Hostname:
- Введите localhost.
- Введите известное имя пользователя и пароль (или попробуйте с нескольких попыток их подобрать).
- Если процесс аутентификации успешно завершился, значит, вы получили локальный доступ на брандмауэре.
- Воспользуйтесь одним из средств генерации переполнения локального буфера (например, утилитой rdist) или любой другой аналогичной программой, чтобы получить привилегии администратора.
Контрмеры: защита от использования имени localhost
Предотвращение
Способ устранения ошибок в конфигурации во многом зависит от типа используемого брандмауэра. В любом случае можно реализовать правило, ограничивающее возможность доступа с определенных узлов. Конечно, лучше всего вообще запретить регистрацию с использованием имени localhost. Однако если это все же необходимо, установите TCP-оболочку, с помощью которой можно разрешить соединение лишь узлам с определенными IP-адресами.
Неавторизованный внешний доступ к программному посреднику
Такой подход наиболее пригоден для доступа к брандмауэрам, реализующим прозрачные функции, однако мы довольно часто сталкиваемся с его использованием. Администратор может уделить самое пристальное внимание обеспечению безопасности брандмауэра и установить строгие правила доступа, однако в то же время забыть о необходимости блокирования доступа извне. В этом случае сразу же возникнет два типа опасности: (1) взломщик может воспользоваться proxy-сервером для атак на всевозможные узлы Internet, активно применяя изъяны сценариев CG1 и различные методы мошенничества в Web, и (2) с помощью средств Web злоумышленник сможет получить доступ к вашей интрасети. Нам приходилось встречать подобным образом сконфигурированные брандмауэры и каждый раз мы могли получить доступ ко всей корпоративной интрасети.
Дня того чтобы узнать, уязвим ли ваш брандмауэр для такой атаки, измените в браузере параметры proxy-сервера так, чтобы они указывали на подозрительный (т.е. проверяемый) брандмауэр. В браузере Netscape для этого выполните следующие действия.
- Выберите команду Edit › Preferences.
- Выделите поддеревья Advanced и Proxies.
- Щелкните на кнопке Manual Proxy Configuration.
- Щелкните на кнопке View.
- Добавьте адрес тестируемого брандмауэра в соответствующий список адресов HTTP и выберите порт, находящийся в состоянии прослушивания. (Обычно 80, 81. 8000 или 8080, однако реальные номера могут значительно варьироваться. Для определения корректного порта воспользуйтесь утилитой nmap или другим аналогичным средством.)
- Введите в браузере адрес своего любимого Web-узла и следите за информацией, появляющейся в строке состояния.
Если в строке состояния отобразится адрес proxy-сервера, а затем на экране появится Web-страница, то, очевидно, вы имеете дело с неавторизованным proxy-сервером.
Если у вас имеется IP-адрес внутреннего Web-узла (не важно, маршрутизируется он или нет), то аналогичным образом можно попытаться получить доступ и к нему. Иногда этот внутренний IP-адрес можно встретить во время просмотра исходного кода HTTP. Зачастую Web-дизайнеры помещают имена узлов и IP-адреса в атрибуте HREF дескрипторов Web-страниц.
Контрмеры: защита от неавторизованного внешнего доступа к программному посреднику
Предотвращение
Для того чтобы предотвратить такую атаку, нужно запретить доступ к программному посреднику со стороны внешнего интерфейса брандмауэра. Поскольку конкретный алгоритм решения этой задачи сильно зависит от производителя, свяжитесь с ним для получения более подробной дополнительной информации.
На уровне сети необходимо ограничить входящий трафик к программному посреднику на пограничных маршрутизаторах. Это без особых проблем можно осуществить с помощью задания списков ACL этих маршрутизаторов.