Computerworld, США

Компьютеры становятся все более взаимосвязанными, а их ПО — все более сложным. Оба этих фактора снижают стойкость вычислительных систем против инфицирования и вторжения

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

«Мы долго эксплуатировали идеи 70-х, и теперь провалы очевидны для каждого, — говорит известный исследователь компьютерных систем Дэвид Паттерсон, президент ассоциации Association for Computing Machinery, профессор Калифорнийского университета в Беркли. — Проблемы безопасности бросаются в глаза».

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

Обнаружение и предотвращение

Компания Sana Security продает программные средства для предотвращения вторжений, скопированные с биологических иммунных систем. Выпускаемый компанией продукт Primary Response основан на использовании программных агентов для построения профиля нормального поведения приложения на основе исполняемых ветвей кода. Затем он следит за отклонениями от нормы в работе приложения, не требуя никаких предопределенных сигнатур или правил политики.

Primary Response пресекает аномальное поведение, блокируя выполнение системных запросов. Благодаря непрерывному обучению, как утверждают в Sana, он может распознать и разрешить легальные изменения кода. Это позволяет минимизировать ложные срабатывания, которые могут стать главным недостатком такого рода инструментов безопасности.

Корни технологии Sana находятся в Университете Нью-Мексико, где развивают методы «отказоустойчивых адаптивных вычислений». Они работают, в частности, над методом RISE (Randomized Instruction Set Emulation — «эмуляция рандомизированного набора команд»), который базируется на представлениях о пользе разнообразия кода. Эти же представления справедливы и в биологии: дикие растения сильнее сопротивляются болезням благодаря большему генетическому разнообразию, нежели окультуренные, чья однородность намного выше.

Метод RISE делает каждую систему уникальной, случайным образом изменяя код, так что каждый компьютер приходится атаковать по-разному. Часть машинного кода «рандомизируется» во время инициализации процесса, а затем «дерандомизируется», когда он выбирается для выполнения. Тем временем злонамеренный код не может распознать целевую программу.

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

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

Восстановление работоспособности

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

Паттерсон и его коллеги из Беркли работают над концепцией вычислений, ориентированных на восстановление (Recovery-Oriented Computing, ROC), согласно которой компьютерные системы выполняют быстрые, почти невидимые «микроперезагрузки» столкнувшегося с теми или иными трудностями кода, например, при переполнении буфера, в то время как другая часть прикладной системы оказывается в состоянии продолжить свою работу. Ключевым элементом ROC является интеллектуальный монитор, который следит за выполняющимися процессами, выявляет потенциальные проблемы и вызывает микроперезагрузку, не доводя дело до общего системного сбоя.

Выпускаемый компанией Sana Security продукт Primary Response основан на использовании программных агентов для построения профиля нормального поведения приложения. Затем он следит за отклонениями от нормы в работе приложения, не требуя никаких предопределенных сигнатур или правил политики

Паттерсон говорит, что налицо гармоничное сочетание между инструментами для обнаружения и предотвращения нападения, наподобие Sana Primary Response, и инструментами восстановления, такими как ROC.

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

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

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

Проект по адаптивному сдерживанию операций ввода/вывода (Responsive Input/Output Throttling) в Университете Нью-Мексико объединяет различные механизмы защиты, подражая биологическим аналогам. При этом сдерживание сделано существенно более гибким путем объединения с агентами, изучающими нормальное поведение определенных комбинаций пользователей, машин и приложений.

«Вы включаете механизм сдерживания, и он первым делом изучает темпы, характерные для вашего сетевого поведения, — говорит Мэтью Виллиамсон, старший исследователь компании Sana, ранее занимавшийся разработкой технологии сдерживания в лаборатории HP Labs.-- Сдерживание приглашает к размышлению о пропорциях, не ограничиваясь простым вопросом ?это разрешено или нет??. Специалисты по безопасности склонны мыслить категориями ?черное — белое?. Но о безопасности и ее цене не следует рас?суждать, руководствуясь принципом «или — или».

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