Негативные последствия шагов s5 и s6 блокируются с помощью механизмов контроля запуска задач (процессов, потоков). Это очень эффективные механизмы, но реализующие их средства, в том числе СЗИ НСД «Аккорд», которые будут описаны ниже, довольно дорогие и для их настройки нужно быть специалистом в компьютерных технологиях и ИБ.
Поскольку некоторые из перечисленных функций безопасности должны выполняться до загрузки ОС, их можно реализовать только с помощью сложного устройства и нельзя реализовать программно.
Эффективность СЗИ НСД «Аккорд» связана с тем, что он блокирует уязвимости, связанные с нарушением целостности, и создает доверенную среду для работы программных средств, обеспечивающих защиту компьютера на шагах s1-s6.
Несмотря на большую распространенность, цена СЗИ НСД «Аккорд» довольно высока, и его настройка – дело для профессионалов. Конечно, это лучшее решение для корпоративных задач, но ожидать его применения от, например, физических лиц – клиентов ДБО совершенно невозможно.
Однако если в компьютерах, использующих гарвардскую архитектуру, где потоки команд и данных уже разделены, сделать память неизменяемой, то не будет необходимости использовать сложные механизмы контроля целостности программ и данных до старта ОС, а контрольные процедуры можно исполнять под управлением проверенной и неизменяемой ОС.
Очевидно, что такая архитектура обеспечит неизменность ОС, программ и данных.
Если вернуться к схеме атаки, описанной выше, то видно, что шаг s3 не может быть выполнен, поэтому и шаги s5 и s6 (сама атака) тоже не исполнятся. Такой компьютер приобретет значительный «вирусный иммунитет», так как вредоносное ПО не будет на нем фиксироваться.
Недостатком при этом будет необходимость дорабатывать практически все ПО, так как разработчики существующего ПО не ограничивают себя в использовании операций записи в память. Для работы практически всех программ необходима возможность записи.
Чтобы можно было использовать без доработок все ранее разработанное ПО, необходимо дополнить предложенную архитектуру блоками сеансовой памяти, в которой и будут исполняться программы.
Таким образом, архитектура компьютера будет отличаться на разных этапах – это и есть динамически изменяемая Новая гарвардская архитектура (рис. 56).
Она отличается тем, что в ней используется память, для которой установлен режим «только чтение». При загрузке команды и данные размещаются в сеансовой памяти, в которой и исполняются. Начальная загрузка и копирование кодов в сеансовую память могут выполняться как последовательно, так и параллельно – суть разделения этапов от этого не меняется.
Рис. 56. Новая гарвардская архитектура
Новая архитектура характеризуется динамической изменяемостью, что обеспечивает защищенность и эффективность, неизменность операционной системы, «вирусный иммунитет» и не мешает возможности применения адаптированных стандартных ОС и всего ПО, написанного для них.
Основных преимуществ два: высокий уровень «вирусного иммунитета» и возможность создания и поддержки доверенной среды, возможность использовать все ранее наработанное ПО.
10.1.1.2. Борьба с вирусами или «вирусный иммунитет»
Каждая крупная компания, специализирующаяся в этой сфере, описывает свои достижения в своей собственной терминологии, основы которой не всегда ясны; иногда представляется, что термины используются произвольно. Именно поэтому неискушенному читателю сложно разобраться, включает ли проактивная защита в себя эвристические анализаторы или, наоборот, между ними есть четкая грань; означает ли наличие класса эвристических анализаторов то, что проактивная защита и поведенческие блокираторы носят не эвристический, а аналитический характер, и т. д.
Встретившись с новым для себя феноменом – компьютерными вирусами, человечество восприняло его как стихию и стало бороться с вирусами как таковыми, как с «вещью в себе», позабыв об их среде обитания и жизненном цикле в целом, выхватив всего лишь одно свойство вирусов (и то совершенно фрагментарно) и построив индустрию антивирусных программ, только исходя из абсолютно неправильного предположения, что можно написать программу, способную проанализировать другую программу.
Попробуем исключительно на понятийном уровне, избегая любых сложностей и подробностей, рассмотреть жизненный цикл вирусов, проиллюстрировать известные методы защиты информации и прокомментировать неудачи в антивирусной борьбе.
Жизненный цикл разрушающих программных воздействий (РПВ) включает в себя:
1) заказ на РПВ;
2) разработку РПВ;
3) транспортировку РПВ на компьютеры пользователей;
4) исполнение РПВ;
5) борьбу с РПВ;
6) восстановление состояния.
Противодействие на первых двух этапах – это зоны деятельности преимущественно государства. Заказчик РПВ – это заказчик преступления, разработчик РПВ – исполнитель. Так и надо к этому относиться.