hw-vs-sft

__аппаратные и программные комплексы на арене безопасности__\\ сравнительный анализ достоинств и недостатков

крис касперски, no-email

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

Если бы одна технология обладала бы неоспоримыми преимуществами перед всеми остальными, то конкурирующие решения давно бы вымерли как мамонты. Известное рыночное правило гласит: если имеется явный фаворит, захвативший ~69% рынка, то никакой проблемы выбора нет и все ОК. Имеющиеся альтернативные решения сосредоточены в экзотических нишах, где на их позиции никто не покушается, и потребители таких продуктов обычно заранее знают, что им нужно (в конце концов, мы обсуждаем не покупку нового холодильника, а введение в строй сложного комплекса, характеристики которого должны быть досконально изучены инженерами, иначе о какой IT-индустрии вообще идет речь?!).

Наличие многочисленных конкурирующих решений с близкими характеристиками, порождает… нет, отнюдь не свободу, а _проблему_ выбора, поскольку с ходу очень трудно разобраться какие характеристики нам действительно нужны, а какие только мешают. Независимые обозреватели очень часто используют так называемые интегрированные тесты, в которой каждой характеристике присваивается свой «вес» (взятый, как правило, с потолка), после чего мы получаем набор скалярных коэффициентов, представленный в виде симпатичной диаграммы, знакомство с которой зачастую приводит в ужас.

Какой, например, вес имеет легкость управления? Вопреки распространенному заблуждению — ровным счетом никакого! Мы же не о прикладных программах говорим, а о защитных комплексах, ориентированных на автономную работу, предполагающую минимум планового обслуживания. А это значит, что все технические проблемы можно возложить на специалистов (администраторов и прочий IT-персонал), чтобы знали, что они не даром своей хлеб едят. Концепция «купил железку, воткнул, все заработало» подходит только для SOHO-офисов и создает лишь видимость безопасности, поскольку, конфигурация по умолчанию очень мало от чего защищает. Крутись, не крутись, а для грамотной настройки все равно потребуется глубокие знания сетевых протоколов и методов хакерских атак. То есть, другими словами, потребуются специалисты. А у специалистов свои понятия и чем больше «ручек» и органов управления у девайса – тем легче он поддается настойке!!!

Или вот другой пример. Плотность монтажа. Да, действительно, аппаратные решения, как правило, обладают более высокой плотностью монтажа, что позволяет развертывать мощные «вычислительные центры» даже на скромной площади. Но… проблема нехватки свободного пространства в России (в отличии, например, от Японии) носит локальный, а не глобальный характер и потому весомость данного критерия варьируется в очень широких пределах и должна определяется каждым потребителем индивидуально.

Никаких интегрированных тестов! Никаких религиозных войн «железо» против «софта». Задача автора состоит в том, чтобы показать когда выгоднее использовать то или иное решение. Причем, в большинстве случаев оба решения рекомендуется использовать совместно друг с другом.

  1. плюсы аппаратных решений:
    1. более низкая цена по сравнению с программными;
    2. отсутствие необходимости в постоянном обслуживании;
    3. предсказуемая производительность при пиковой загрузке;
    4. намного более высокая сложность атаки с захватом управления;
    5. компактность, что актуально для серверов с высокой плотностью монтажа;
  2. минусы аппаратных решений:
    1. сложность (или невозможность) обновлений;
    2. невозможность адаптации под конкретные нужды;
    3. зачастую намного более бедная функциональность;

Рисунок 1 типичная схема устройства аппаратного брандмауэра/IDS

hw-vs-sft_image_1.jpg

Рисунок 2 внешний вид аппаратного брандмауэра Barracuda Firewall

hw-vs-sft_image_2.jpg

Рисунок 3 Cisco 2600 со снятой крышкой (маршутизатор со встроенным брандмауэром)

hw-vs-sft_image_3.jpg

Рисунок 4 беспроводной мультимедиа сервер/VPN-роутер от OvisLink

Рисунок 5 аппаратный NetgearsBreakthroughSSLVPNGateway

Рисунок 6 а теперь для контраста — брандмауэр, собранный на основе ПК. Сколько тут лишних деталей!!!

hw-vs-sft_image_6.jpg

Рисунок 7 аппаратный файловый сервер, собранный на основе двух жестких дисков, подключенных к микроконтроллеру, поддерживающему RAID, Ethernet и немного памяти, куда вмещается урезанный Linux с Самбой

hw-vs-sft_image_7.jpg

Рисунок 8 аппаратный файловый сервер в собранном виде

Рисунок 9 логотип, который по праву мог бы красоваться на многих «аппаратных» решениях

«Аппаратное решение» по большому счету это всего лишь раскрученный брэнд. Чисто аппаратные решения уже давно перевелись в природе. Аппаратной может быть реализация регистра сдвига (на триггерах), но любое мало-мальски сложное устройство гораздо легче, выгоднее и дешевле собрать из микроконтроллера, нагрузив его программным обеспечением. В частности, современные жесткие диски поддерживают развитую операционную систему, а их прошивка имеет модульную организацию, где каждый модуль борется с другими модулями за память, процессорные ресурсы, порты ввода/вывода и по возможности максимально обстрагивается от деталей реализации конкретной модели жесткого диска, чтобы производитель мог использовать его и в других винчестерах. То есть без операционной системы — никуда.

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

Возьмем «аппаратный» брандмауэр и залезем внутрь его. Что мы увидим? Как правило микроконтроллер с поддержкой Ethernet и несколько микросхем оперативной памяти плюс ПЗУ в котором зашито что-то очень похожее на NetBSD или слегка изуродованный Linux. Жесткий диск может быть, а может и отсутствовать, поскольку BSD способна грузиться прямо из ПЗУ, сохраняя конфигурации в энергонезависимой памяти, что предотвращает крах системы, ибо падение лечится простой перезагрузкой (примечание: NetBSD обычно используется потому, что она портирована под рекордное количество платформ и в отличии от Linux'а допускает коммерческое использование с закрытой архитектурой).

Ну, и чем эта штука отличается от обыкновенного ПК? BSD/Linux можно загружать и с Read-Only носителей, исключая случайную или преднамеренную порчу кода операционной системы. К тому же вместо NetBSD мы можем установить намного более защищенную OpenBSD, атаковать которую в разы сложнее. В чем же разница?!

С технической точки зрения — ПК, будучи многоцелевым устройством, чрезвычайно избыточен, а потому его себестоимость намного выше себестоимости узкоспециализированного брандмауэра, собранного на базе минимум микросхем и решающего всего одну, поставленную перед ним задачу — фильтрацию пакетов на основе заданных политик. В предельно вырожденной ситуации для этого потребуется всего лишь один микроконтроллер с Ethernet'ом, ну и микросхемами обвязки. Программное обеспечение — BSD, Linux ну или гибрид того и другого. Никаких лицензионных отчислений! Стоит все это будет — копейки. Конечно, брандмауэр, установленный на высокоскоростных каналах, требует достаточно мощного процессора (но не x86, т. к. в этом случае львиная доля команд последнего останется незадействованной), буферной оперативной памяти и еще много чего, но даже в этом случае соотношение производительность/себестоимость будет обгонять ПК.

С другой стороны, если у нас уже есть ПК, то, установив на него брандмауэр, из все той же OpenBSD, мы получим защитный комплекс практически даром. Естественно, настраивать его нам придется своими руками, выкидывая все лишние компоненты из OpenBSD, которые могут быть атакованы. В конечном счете, от всего ПК у нас останется только брандмауэр, причем, без какой-либо поддержки со стороны производителя. И все технические проблемы, возникающие при эксплуатации «самоделки» — это _наши_ проблемы.

Напротив, покупая аппаратный брандмауэр, мы приобретаем законченный продукт, готовый к употреблению и поставщик обязан своевременно исправлять все проблемы. В частности, выпускать заплатки, обновления… Стоп! Какие такие обновления?! Если код операционной системы зашит в ПЗУ, то обновить его практически невозможно. Энергонезависимая память дает гораздо большее пространство для маневра, но все-таки имеет свои ограничения. В частности, заснуть туда поддержку новых протоколов (которые появились в Висте и в Server 2008) навряд ли удастся, поэтому, «программный» брандмауэр в этом плане намного более предпочтительнее.

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

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

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

Впрочем, аппаратный брандмауэр это не обязательно «выделенный компьютер». Высокая степень интеграции современных микросхем привела к тому, что полнофункциональные брандмауэры стали встраиваться практически куда угодно, например, в DSL-модемы. Насколько они надежны? Хм, риторический вопрос. Надежны-то они, быть может и надежны. Если порт закрыт, то просочиться сквозь него никак не получится, разве что мы имеем дело с ошибкой реализации, которые встречаются достаточно часто. И самая распространенная из них — при установке исходящего TCP/IP соединения c WEB-узлом (например) операционная система клиентского компьютера открывает локальный порт, который открывается так же и на брандмауэре. И ось, и брандмауэр, принимая пакеты, проверяют номер TCP-последовательности, затрудняя посылку «левых» пакетов от злоумышленника, однако, популярные оси не проверяют IP-адрес отправителя и это (по идее) должен делать брандмауэр, но дешевые брандмауэры, интегрированные в DSL модемы, этого не делают, а потому могут быть атакованы (хоть и не без труда). Еще они не ведут логи, не поддерживают гибкую политику управления доступом… в общем, отсекают лишь пионеров и прочих вандалов.

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

Выделенные брандмауэры достаточно трудно обойти снаружи защищаемой сети, но пробить их изнутри — плевое дело. Рассмотрим крайне недемократичный выделенный брандмауэр, на котором открыт всего лишь один 80й порт для исходящих соединений. Предполагается, что сотрудники организации будут ходить по сайтам, включенных в список разрешенных. Насколько надежна такая защита, при условии, что брандмауэр свободен от ошибок реализации?

Она _абсолютно_ ненадежна! Выделенный брандмауэр не знает какое приложение устанавливает соединение по 80му порту. Это может быть не только IE, Горящий Лис или Опера, но так же и злобный червь или даже хакерский shell. Однажды заброшенный на компьютер (например, через почтовую рассылку или дыру в том же IE) он сможет передавать любые данные во внешний мир. И «белый» список WEB-узлов тому не помеха. Практически все такие узлы имеют форумы, гостевые книги, WEB-mail'ыили какие бы то ни было другие «трансферы» данных. Даже если червь не может соединиться непосредственно с хакерским узлом, он заходит на один из «белых» сайтов, оставляет там зашифрованное послание, которое читает хакер, и пишет еще одно — с командами для червя, который забирает их оттуда под «неусыпным» взором выделенного брандмауэра с точки зрения которого «в Багдаде все спокойно».

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

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

Возникает резонный вопрос: если персональные брандмауэры столь хороши, то зачем нам нужны выделенные да еще и аппаратные? Не пора ли их выкинуть на свалку?! Увы! Персональный брандмауэр не слишком надежная конструкция, чтобы ей было можно доверять безопасность корпоративной сети и в одиночку с хакерами ему ну никак не справится.

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

На помощь атакующему приходит тот факт, что многие персональные брандмауэры хранят политики доступа либо в файлах, либо в ветвях реестра, доступных на запись всем желающим это раз. Оконная подсистема Windows представляет собой одну сплошную дыру и менее привилегированные приложения могут беспрепятственно посылать сообщения окнам и элементам управления более привилегированных приложений, имитируя мышиный или клавиатурный ввод, посредством которого можно отключить брандмауэр через его пользовательский интерфейс (естественно, для этого хакер должен знать брандмауэр «в лицо», однако, учитывая, что брандмауэров не так уж и много — это не такая уж и сложная задача). Самая универсальная атака работает по следующему сценарию: зловредный код ломится в сеть, одновременно с этим сканируя список окон на предмет появления новых диалогов, и, если таковые появляются, ищет кнопку с надписью «yes» и «давит» на нее путем посылки соответствующего сообщения. Просто, но чрезвычайно эффективно. Можно даже сказать убийственно эффективно.

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

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

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

hw-vs-sft_image_9.jpg

Рисунок 10 Thomas Ptacek

Q: представьтесь пожалуйста

A: Я являюсь соучредителем фирмы Matasano Security, специализирующейся на безопасности и занимающейся независимым тестированием различных защитных комплексов, а так же разработкой новых методов обхода брандмауэров, IDS и т. д.

Q: каким решениям вы отдаете предпочтение: программным или аппаратным?

A: нет универсального ответа на поставленный вопрос. Все зависит от целей, которые вы ставите, и ресурсов, которыми вы располагаете. Практически все продукты, представленные на рынке, имеют право на существование и большинство из них довольно прочно удерживаются в своих нишах. Как в боксе существуют различные весовые категории, так и в защитных комплексах бессмысленно сравнивать дешевый SOHO-брандмауэр, встроенный в десяти мегабитный DSL-модем, с брандмауэром, подключенным к магистральному каналу и обрабатывающему сотни тысяч соединений одновременно. Эта истина кажется очевидной, до тех пор, пока SOHO-потребитель, решивший приобрести дорогую «железку» с ужасом не обнаружит, что без высокооплачиваемого администратора она ничем не лучше Windows Firewall.

Q: хорошо, давайте отсечем SOHO-рынок и сосредоточимся на крупных компаниях

A: насколько крупных? если у компании имеется развитая локальная сеть, то скорее всего у нее имеется и маршутизатор и бьюсь о заклад, что в 9 из 10 случаев это будет CISCO, а раз так, то в него _уже_ встроен брандмауэр и никакого дополнительного железа или программного обеспечения покупать не требуется. Естественно, мы говорим об отражении тех атак, против которых брандмауэр, собственно говоря, и предназначен. Наличие брандмауэра не устраняет необходимость установки антивирусного программного обеспечения, систем обнаружения вторжений и т.д., поскольку брандмауэр это всего лишь _часть_ огромного защитного комплекса. Можно провести такую аналогию: мы врезаем железную дверь (брандмауэр), но забываем установить решетки на окнах. Дальше мысль развивать?

Q: какие брандмауэры легче ломаются: программные или аппаратные?

A: программные брандмауэры доступы для изучения всем желающим, а таких желающих очень много. Как следствие — дыры обнаруживаются постоянно. Аппаратный брандмауэр невозможно скачать по Сети, его необходимо купить или получить к нему доступ на работе (если только босс даст добро на эксперименты с ним), в результате чего круг лиц, соприкасающихся с аппаратными брандмауэрами, существенно сокращается и потому они потенциально намного более безопасны. С другой стороны, если в популярном аппаратном брандмауэре обнаруживается дыра, а установка обновлений конструктивно не предусмотрена, то это означает, что вам нужно копить деньги на новую «железку». А в случае программных брандмауэров достаточно своевременно устанавливать свежую заплатку.

hw-vs-sft_image_10.jpg

Рисунок 11 BlueKnight

Q: представьтесьпожалуйста

A: я руковожу отделом по разработке ядерных компонентов программных брандмауэров и систем обнаружения вторжений, а так же прошивок к аппаратным системам защиты

Q: какое из двух обозначенных решений по вашему является наиболее защищенным?

A: аппаратные комплексы, построенные на базе микропроцессоров или процессоров с архитектурой отличной от x86, намного более защищены в силу того, что подавляющее большинство хакеров знакомы только с x86 и написать shell-код для другого процессора они просто не в состоянии, особенно если это заказной процессор со слегка измененной системой команд, документация на которым распространяется только под NDA и который использует оперативную память только в качестве буферов для хранения данных, среди которых нет никаких указателей, то есть, даже если в прошивке имеется ошибка переполнения буфера — максимум чего может добиться хакер: затереть заголовок соседнего пакета, чтобы он проскользнул сквозь брандмауэр вопреки назначенным политикам доступа, но это крайне маловероятно, поскольку содержимое буферной памяти хаотично и чрезвычайно трудно предсказуемо. И хотя в наших лабораториях нам удалось воспроизвести такую атаку, это был чисто лабораторный эксперимент. Сомневаюсь, что кому-то удастся реализовать его в условиях дикого Интернета, особенно если хакер не располагает полной информацией об устройстве брандмауэра.

Q: TCP/IP стек — очень сложная штука. Какие реализации вы используете?

A: мы используем BSD стек, взятый из NetBSD и доработанный под наши нужды. Теоретически, это означает, что любая дыра, обнаруженная в стеке NeBSD, так или иначе затрагивает и наши продукты (а точнее продукты наших партнеров, поскольку мы выпускам не сами брандмауэры, а лишь ядерное программное обеспечение для них, поверх которого набрасывается еще много вспомогательного кода). Поэтому, мы интенсивно работаем в этом направлении, предугадывая возможные дефекты BSD стека и устанавливая дополнительные уровни защиты. Машинный код находится в области памяти недоступной для записи, а в оперативной памяти нет никаких указателей, которые можно было бы затереть. В оригинальной NetBSD все не так и для удаления указателей из кучи нам потребовалось написать свой собственный аллакатор, но это уже корпоративная тайна ;)

Q: то есть, защищенность ваших продуктов основана на закрытости их архитектуры?

A: надеюсь, что меня не закидают помидорами, если я отвечу «да», но когда покупатель получает «коробку», устройство которой ему не известно и из которой очень сложно вытянуть программный код, то для поиска дыр требуются специализированные инструменты и солидные вложения, в то время как защитный комплекс, построенный на базе ПК, может ковырять каждый парень из гаража, отсюда — и огромное количество дыр, обнаруживаемых чуть ли не ежедневно.

hw-vs-sft_image_11.jpg

Рисунок 12 Jesse Adelman

Q: представьтесь, пожалуйста

A: я администрирую локальную сеть предприятия, насчитывающего свыше тысячи компьютеров, управляемых десятком серверов, нуждающихся в защите как изнутри (инсайдеры), так и извне (хакеры).

Q: какие защитные комплексы вы предпочитаете: программные или аппаратные?

A: аппаратные. И вот почему. Во-первых, они требуют минимум обслуживания (в общем случае не требуют обслуживания вообще), во-вторых, потребляют намного меньше энергии, что критично при питании от UPS, в-третьих (и это самое главное) в документации на всякий аппаратный комплекс обозначена пиковая мощность, а программные решения, воздвигнутые на базе ПК с OpenBSD, обладают совершенно непредсказуемыми характеристиками и их параметры приходится вычислять эмпирическим путем, причем, наличие жестких дисков с файловыми системами, подверженными фрагментации, вызывает неуклонную деградацию производительности, а нормальных дефрагментаторов для OpenBSD нет и неизвестно когда они появятся, поэтому, приходится оставлять солидный задел по мощности. Другой серьезный недостаток программных защитных комплексов: очень плохая поддержка со стороны производителя. Даже в случае коммерческих пакетов, производитель ПО стремится спихнуть все проблемы на «железо» и очень трудно доказать, что железо тут ни при чем. Фактически, мне самому приходится искать источник проблем занимаясь «обратным проектированием» (или, попросту говоря, хакерством), а потом тыкать разработчиков носом в их дерьмо, которое они все равно не собираются исправлять. Open Source проекты это вообще ужас и сплошной кошмарный сон. Документации нет и не предвидится. Стоимость enterprise систем намного превышает цену аппаратных железок. Считается, что мы платим за поддержку. Но вот только где эта поддержка? Документация представляет собой бессистемное собрание различных отрывочных заметок, написанных совершенно непроходимым языком. Текста много — смысла мало. И хотя это всего лишь мое личное впечатление (с которым многие наверняка не согласятся и приведут кучу контраргументов), я предпочитаю аппаратные решения.

Q: из сказанного непонятно — используете ли вы программные решения или нет?

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

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

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

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

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