До сих пор у профессионалов в области информационной безопасности нет
точного определения термина "атака" (вторжение - intrusion, нападение).
Каждый специалист в области безопасности трактует его по-своему.
Например, "вторжение - это любое действие, переводящее систему из
безопасного состояния в опасное". Встречаются и такие определения:
"вторжение - это любое нарушение политики безопасности" или "любое
действие, приводящее к нарушению целостности, конфиденциальности и
доступности системы и информации, в ней обрабатываемой". Однако я считаю
более правильным применение нижеприведенного термина, которое тесно
увязано с термином "уязвимость".
Атакой (attack) на информационную систему называется действие или последовательность связанных между собой действий нарушителя, которые
приводят к реализации угрозы путем использования уязвимостей этой
информационной системы [Лукацкий4-01].
Необходимо отметить, что в данной книге практически не рассмотрены такие
атаки, как "social engineering", которые также могут применяться для
компрометации ИС [Лукацкий8-02]. Данное мной определение очень точно
иллюстрирует практически весь спектр возможных атак. В том числе и "social
engineering", при которых используются человеческие слабости. А ведь
человек является такой же составляющей информационной системы, как и
компьютер, и тоже может считаться ее уязвимым местом.
Таким образом, атака отличается от события безопасности тем, что в
случае атаки злоумышленник пытается достичь некоторого результата,
противоречащего политике безопасности. Например, доступ пользователя к
файлу или вход в систему - это событие безопасности. Однако, если такой
доступ или вход осуществляется в нарушение прав доступа, то это уже
атака. Понять, имеет ли в конкретном случае место нарушение прав
доступа, поможет анализ признаков, характеризующих атаку. Эти признаки
описаны в главе 4. Если построить неформальную модель атаки, которая
расширяет описанную выше для события безопасности, то получится модель,
состоящая из 4-элементов (рис. 2.2).
Для того чтобы реализовать атаку, злоумышленник (intruder, attacker)
моделирует некоторое событие безопасности, которое приводит к искомому
результату при помощи некоего средства, использующего уязвимости
системы. Первые два элемента данной модели применяются для реализации
события безопасности, т. е. некоторого действия по отношению к адресату
для достижения результата, приводящего к нарушению политики
безопасности.
Предваряя описание автоматизированных средств обнаружения атак,
необходимо заметить, что они детектируют именно атаки и события
безопасности, а не инциденты. Модели, демонстрируемые на рис. 2.1 и 2.2,
не используют такой компонент, как "нарушитель" или "атакующий".
Oil-появляется только в описании инцидента безопасности. Это лишний
разобъясняет тот факт, что системы обнаружения атак не всегда могу
"отловить" злоумышленников, реализующих те или иные атаки.
Неизвестно, сколько реально существует методов атак. Связано это в
первую очередь с тем, что до сих пор отсутствуют какие-либо серьезные
математические исследования в этой области. Из близких по тематике
исследования можно привести работу 1996 года Фреда Коэна (Fred Cohen), в
которой описывались математические основы вирусной технологии. Одним из
интересны для нас результатов этой работы является доказательство
бесконечности число вирусов. Эти же результаты можно перенести и на
область атак, поскольку вирусы - ничто иное, как одно из подмножеств
атак.
Вспоминая вариацию известной поговорки, которая гласит, что
"отрицательный результат - тоже результат", можно сделать вывод, что
даже если злоумышленник не достиг желаемого результата, но использовал
какую-либо уязвимость, то все равно имела место именно атака.