Организация и технологии защиты информации: обнаружение и предотвращение информационных атак в автоматизированных системах предприятий 9785759806981

Проблема защиты автоматизированных систем от информационных атак является одной из наиболее актуальных и значимых в ИТ-и

206 17 11MB

Russian Pages 572 [574] Year 2011

Report DMCA / Copyright

DOWNLOAD FILE

Организация и технологии защиты информации: обнаружение и предотвращение информационных атак в автоматизированных системах предприятий
 9785759806981

Table of contents :
Содержание
Термины и определения
Введение
Лекция 1. Основные понятия и определения в области информационной безопасноcти автоматизированных систем
Лекция 2. Модели защиты автоматизированных систем от информационных атак
Лекция 2. Модели защиты автоматизированных систем от информационных атак
Лекция 4. Обзор существующих средств защиты информации
Лекция 5. Технологии аутентификации пользователей
Лекция 6. Криптографические средства защиты
Лекция 7. Нормативно-правовая основа обеспечения информационной безопасности
Лекция 8. Системы обнаружения атак
Лекция 9. Защита от внутренних угроз информационной безопасности
Лекция 10. Информационная безопасность территориально-распределенных сетей связи X.25, Frame Relay и ATM
Лекция 11. Обучение и сертификация специалистов в области информационной безопасности
Лекция 12. Практические аспекты внедрения системы управления информационной безопасностью в соответствии с ISO 27001
Лекция 13. Практические аспекты защиты веб-порталов от информационных атак
Литература
Список сокращений

Citation preview

ßêíï àÜ ì íîÞá éé÷å ï éäÞá ì í ä î á î Þ÷ íô Ü û  ôæ ê çÜ  ùæ ê éê è äæ ä

ÞÜíąĐĄĞĊ

ëíàÝêåäÝóåü åïâòêëèëàåå äÝöåïø åêñëíéÝóåå ĎāčĀĐēĆąčĈą ĈďĐąĄĎĒĂĐĀęąčĈą ĈčĔĎĐČĀĖĈĎččěĕĀĒĀĊ ĂĀĂĒĎČĀĒĈćĈĐĎĂĀččěĕ đĈđĒąČĀĕ ďĐąĄďĐĈÿĒĈĉ ðĘĆĂĎďĆĐďĒďĂĉĆ

äćĄĀĒąċĜđĊĈĉĄĎČ ßĎđēĄĀĐđĒĂąččĎăĎēčĈĂąĐđĈĒąĒĀ­ÞěđĘąĉĘĊĎċěĝĊĎčĎČĈĊĈ èĎđĊĂĀ 

УДК 65.39(075) ББК 004.056.5 С32

Рецензент профессор кафедры корпоративных информационных систем Государственного университета — Высшей школы экономики О.Р. Козырев

ISBN 978-5-7598-0698-1

© Сердюк В.А., 2011 © Оформление. Издательский дом Государственного университета — Высшей школы экономики, 2011

Содержание Термины и определения .................................................................. 9 Введение ........................................................................................ 19 Лекция 1. Основные понятия и определения в области информационной безопасноcти автоматизированных систем.......... 22 1.1. Информация как основной объект защиты........................... 22 1.2. Автоматизированная система как среда для обработки, хранения и передачи информации ............................................... 25 1.3. Основные виды уязвимостей автоматизированных систем .... 31 1.3.1. Уязвимости «buffer overflow» ........................................ 35 1.3.2. Уязвимости «SQL injection» ......................................... 40 1.3.3. Уязвимости «format string» ........................................... 44 1.3.4. Уязвимости «Directory traversal» .................................. 45 1.3.5. Уязвимости «Cross Site Scripting» . ............................... 46 1.3.6. Уязвимости программных реализаций стека TCP/IP ......................................................................... 48 1.3.7. Уязвимости протоколов стека TCP/IP ........................ 49 1.4. Основные виды информационных атак ................................ 51 1.4.1. Стадия рекогносцировки ............................................ 54 1.4.2. Стадия вторжения и атакующего воздействия ........... 63 1.4.3. Стадия дальнейшего развития атаки .......................... 72 1.5. Возможные последствия информационных атак .................. 75 Лекция 2. Модели защиты автоматизированных систем от информационных атак . .............................................................. 78 2.1. Анализ существующих моделей информационных атак ...... 78 2.1.1. Табличные и диаграммные модели информационных атак . ........................................................ 80 2.1.2. Формализованные модели информационных атак . .. 85 2.1.3. Математическая модель информационных атак, построенная на основе теоретико-множественного аппарата . ............................................................................... 92 2.2. Анализ существующих моделей процесса обнаружения информационных атак ................................................................ 104 2.2.1. Сигнатурные модели процесса обнаружения атак . ... 106 2.2.2. Поведенческие модели процесса выявления атак ..... 113 2.2.3. Поведенческая модель выявления аномалий в сетевом трафике ............................................................... 115 3

Содержание

Лекция 3. Аудит информационной безопасности и оценка рисков..... 136 3.1. Основные понятия аудита безопасности ............................. 136 3.2.Модели оценки рисков информационной безопасности .... 142 3.2.1. Модель, заложенная в основу программного комплекса оценки рисков «Кондор» ................................. 150 3.2.2. Модель, заложенная в основу программного комплекса оценки рисков «Гриф» ...................................... 154 3.2.3. Модель, заложенная в основу программного комплекса оценки рисков «Risk Matrix» ............................ 156 3.2.4. Модель, заложенная в основу методики оценки рисков «OCTAVE» ............................................................... 157 3.3. Модель оценки рисков, базирующаяся на основе графовой модели атак ................................................................. 160 3.4. Особенности использования графовой модели оценки рисков безопасности ................................................................... 167 Лекция 4. Обзор существующих средств защиты информации .................................................................................. 180 4.1. Средства криптографической защиты информации .......... 182 4.2. Средства разграничения доступа пользователей к информационным ресурсам АС . ............................................. 192 4.3. Средства межсетевого экранирования ................................ 198 4.4. Средства анализа защищенности автоматизированных систем .......................................................................................... 201 4.5. Средства антивирусной защиты . ......................................... 203 4.6. Средства защиты от спама . .................................................. 204 4.7. Средства контентного анализа ............................................. 205 4.8. Системы обнаружения атак и история их развития ............ 207 Лекция 5. Технологии аутентификации пользователей . ............... 215 5.1. Аутентификация пользователей на основе сетевых адресов ........................................................................... 215 5.2. Аутентификация пользователей на основе паролей ........... 217 5.3. Биометрическая аутентификация пользователей ............... 221 5.4. Аутентификация пользователей на основе симметричных секретных ключей ....................................................................... 222 5.5. Аутентификация пользователей на основе инфраструктуры открытых ключей ............................................ 230 5.5.1. Аутентификация пользователей в веб-портале ........ 241 5.5.2. Аутентификация пользователей в системе SAP R/3 .... 247 4

Содержание

5.5.3. Аутентификация пользователей на сервере терминальных служб ........................................................... 250 Лекция 6. Криптографические средства защиты .......................... 252 6.1. Шифры перестановки .......................................................... 254 6.1.1. Шифр перестановки «скитала» ................................. 254 6.1.2. Шифрующие таблицы................................................ 255 6.1.3. Применение магических квадратов .......................... 258 6.2. Шифры простой замены ...................................................... 259 6.2.1. Полибианский квадрат . ............................................ 259 6.2.2. Система шифрования Цезаря ................................... 260 6.3. Шифры сложной замены ..................................................... 261 6.3.1. Шифр Гронсфельда ................................................... 262 6.3.2. Система шифрования Вижинера .............................. 263 6.3.3. Шифр «двойной квадрат» Уитстона ......................... 265 6.4. Криптография, базирующаяся на симметричном шифровании ................................................................................ 266 6.5. Криптография с открытым ключом . ................................... 273 6.6. Обзор интерфейса программирования Microsoft CryptoAPI ..................................................................... 278 6.6.1. Обзор функции CryptoAPI 1.0 ................................... 279 6.6.2. Получение информации о криптопровайдерах, установленных в системе .................................................... 283 6.7. Особенности сертификации и стандартизации криптографических средств . ...................................................... 285 Лекция 7. Нормативно-правовая основа обеспечения информационной безопасности . ................................................... 287 7.1. Обзор российского законодательства в области информационной безопасности ................................................. 288 7.2. Обзор международных стандартов в области информационной безопасности ................................................. 295 7.3. Стандарты в области обнаружения информационных атак ................................................................ 303 7.4. Особенности использования Критериев оценки безопасности информационных технологий (ISO 15408) для систем обнаружения атак ..................................................... 308 7.5. Статьи Уголовного кодекса РФ, касающиеся вопросов обеспечения информационной безопасности ........... 319 5

Содержание

Лекция 8. Системы обнаружения атак . ........................................ 327 8.1. Сбор исходной информации системами обнаружения атак ..... 327 8.1.1. Источники информации для систем обнаружения атак . .............................................................. 327 8.1.2. Сетевые датчики систем обнаружения атак............. 334 8.1.3. Хостовые датчики систем обнаружения атак .......... 343 8.1.4. Сопоставление функциональных возможностей сетевых и хостовых датчиков .............................................. 349 8.1.5. Защита датчиков систем обнаружения атак от воздействий злоумышленников . ................................... 352 8.2. Методы обнаружения информационных атак .................... 355 8.3. Противодействие выявленным информационным атакам .... 356 8.3.1. Пассивные методы реагирования на атаки .............. 357 8.3.2. Активные методы реагирования на атаки ................ 364 8.4. Проблема выбора системы обнаружения информационных атак ................................................................ 378 8.4.1. Факторы выбора систем обнаружения атак ............. 379 8.4.2. Тестирование систем обнаружения атак . ................. 399 Лекция 9. Защита от внутренних угроз информационной безопасности ................................................................................ 407 9.1. Каналы утечки конфиденциальной информации . ............. 407 9.2. Изолированная автоматизированная система для работы с конфиденциальной информацией ....................... 409 9.3. Системы активного мониторинга рабочих станций пользователей .............................................................................. 411 9.4. Выделенный сегмент терминального доступа к конфиденциальной информации ............................................ 411 9.5. Средства контентного анализа исходящих пакетов данных . .......................................................................... 413 9.6. Средства криптографической защиты конфиденциальной информации ............................................... 415 9.7. Примеры систем защиты от внутренних угроз безопасности ...................................................................... 418 9.7.1. Система «InfoWatch Net Monitor» ............................. 418 9.7.2. Система «Insider» ....................................................... 420 9.7.3. Система «Урядник» . .................................................. 423 9.7.4. Система «DeviceLock» ............................................... 425 6

Содержание

Лекция 10. Информационная безопасность территориально-распределенных сетей связи X.25, Frame Relay и ATM ....................................................................... 429 10.1. Технология X.25 .................................................................. 429 10.1.1. Пакетный уровень стека протоколов сети X.25 ...... 434 10.1.2. Канальный уровень стека протоколов сети X.25 .... 441 10.1.3. Физический уровень стека протоколов сети X.25 .... 446 10.1.4. Адресация в сетях X.25 . ............................................ 447 10.2. Анализ уязвимостей технологии X.25 ................................ 447 10.2.1. Атаки нарушителя на физическом уровне стека сети X.25 . ................................................................... 448 10.2.2. Атаки нарушителя на канальном уровне стека протоколов сети X.25 . ............................................... 450 10.2.3. Атаки нарушителя, реализуемые на пакетном уровне стека протоколов сети Х.25 .................................... 456 10.3. Технология Frame Relay ...................................................... 462 10.3.1. Сетевой уровень стека протоколов сети Frame Relay .................................................................. 466 10.3.2. Канальный уровень стека протоколов сети Frame Relay .................................................................. 468 10.3.3. Физический уровень стека протоколов сети Frame Relay .................................................................. 470 10.4. Анализ уязвимостей технологии Frame Relay .................... 471 10.4.1. Атаки нарушителя на физическом уровне стека сети Frame Relay ........................................................ 471 10.4.2. Атаки нарушителя на канальном уровне стека протоколов сети Frame Relay .................................... 474 10.4.3. Атаки нарушителя на сетевом уровне стека протоколов сети Frame Relay .................................... 478 10.5. Технология ATM ................................................................. 480 10.5.1. Уровень адаптации стека протоколов сети ATM .... 484 10.5.2. Уровень ATM . .......................................................... 485 10.5.3. Физический уровень стека сети ATM ..................... 487 10.5.4. Адресация в сети ATM ............................................. 491 10.6. Анализ уязвимостей технологии ATM ............................... 493 10.6.1. Атаки нарушителя на физическом уровне стека сети ATM . .................................................................. 493 10.6.2. Атаки нарушителя на уровне ATM стека протоколов сети .................................................................. 495 10.6.3. Атаки нарушителя на уровне адаптации стека протоколов сети ATM ............................................... 498 7

Содержание

10.6.4. Атаки нарушителя, направленные на активизацию уязвимостей протоколов ILMI, PNNI и Q.2931 .......................................................... 501 Лекция 11. Обучение и сертификация специалистов в области информационной безопасности..................................... 504 11.1. Построение политики достижения осведомленности и проведения тренингов . ............................................................ 510 11.2. Средства для реализации программы осведомленности ..... 511 11.3. Коммуникация .................................................................... 512 11.4. Образовательные программы в области социальной инженерии ................................................................................... 513 Лекция 12. Практические аспекты внедрения системы управления информационной безопасностью в соответствии с ISO 27001 .......................................................... 517 12.1. Выбор области деятельности компании, которая будет охвачена СУИБ .................................................... 519 12.2. Проведение обследования компании ................................ 520 12.3. Оценка и анализ рисков информационной безопасности .... 521 12.4. Разработка проекта по внедрению системы управления информационной безопасностью .......................... 521 12.5. Внедрение системы управления информационной безопасностью на предприятии .................................................. 522 Лекция 13. Практические аспекты защиты веб-порталов от информационных атак.............................................................. 527 13.1. Подсистема разграничения доступа . ................................. 529 13.2. Подсистема антивирусной защиты .................................... 533 13.3. Подсистема контроля целостности .................................... 533 13.4. Подсистема обнаружения вторжений ................................ 534 13.5. Подсистема анализа защищенности .................................. 536 13.6. Подсистема криптографической защиты .......................... 537 13.7. Подсистема управления средствами защиты веб-портала ...... 538 Литература ................................................................................... 541 Список сокращений . .................................................................. 568

8

Термины и определения Автоматизированная система (АС) — система, состоящая из персонала и комплекса средств автоматизации его деятельности, реализующая информационную технологию выполнения установленных функций. Администратор безопасности АС — физическое или юридическое лицо, ответственное за реализацию политики обеспечения информационной безопасности АС. Активная атака — преднамеренное несанкционированное изменение состояния системы. Примерами активных атак могут служить модификация сообщений, дублирование ранее переданных пакетов данных, вставка ложных сообщений. Атака типа «отказ в обслуживании» (Denial of Service attack) — совокупность действий злоумышленника, направленная на нарушение доступности информационных ресурсов АС. Атаки данного типа могут быть направлены на нарушение работоспособности системы или на блокирование доступа к ней со стороны легальных пользователей. Аудит информационной безопасности — периодический, независимый и документированный процесс получения свидетельств аудита и объективной их оценки с целью установления степени выполнения в организации установленных требований по обеспечению информационной безопасности. Внутренние аудиты («аудиты первой стороной») проводятся самой организацией или от ее имени для анализа менеджмента или других внутренних целей и могут служить основанием для самодеклараций организации о соответствии требованиям по информационной безопасности. Внешние аудиты включают «аудиты второй стороной» и «аудиты третьей стороной». Аудиты второй стороной проводятся сторонами, заинтересованными в деятельности организации, например, потребителями или другими лицами от их имени. Аудиты третьей стороной проводятся внешними независимыми организациями. Аутентификация — проверка принадлежности субъекту доступа предъявленного им идентификатора, подтверждение подлинности. Аутентификационные параметры — информация, используемая для установления подлинности субъекта доступа. 9

Термины и определения

База данных — объективная форма представления и организации совокупности данных (статей, расчетов и т.д.), систематизированных таким образом, чтобы эти данные могли быть найдены и обработаны с помощью электронной вычислительной машины. Вредоносные программы типа «троянский конь» (Trojan Horses) — программы типа «троянский конь» относятся к вредоносному программному коду, однако в отличие от вирусов не имеют возможности самостоятельного распространения в АС. Программы данного типа маскируются под видом штатного программного обеспечения системы и позволяют нарушителю получить удаленный несанкционированный доступ к тем узлам, на которых они установлены. Вредоносные программы типа «spyware» — вредоносное программное обесепечение типа «spyware» предназначено для сбора определенной информации о работе пользователя. Примером таких данных может служить список веб-сайтов, посещаемых пользователем, перечень программ, установленных на рабочей станции пользователя, содержимое сообщений электронной почты и др. Собранная информация перенаправляется программами «spyware» на заранее определенные адреса в сети Интернет. Вредоносное программное обеспечение данного типа может являться потенциальным каналом утечки конфиденциальной информации из АС. Вредоносные программы типа «adware» — основная функциональная задача вредоносных программ класса «adware» заключается в отображении рекламной информации на рабочих станциях пользователей. Для этого, как правило, такие программы отображают на экране пользователя рекламные баннеры, содержащие информацию о тех или иных товарах и услугах. В большинстве случаев программы «adware» распространяются вместе с другим программным обеспечением, которое устанавливается на узлы АС. Несмотря на то что программы типа «adware» не представляют непосредственную угрозу для конфиденциальности или целостности информационных ресурсов АС, их работа может приводить к нарушению доступности вследствие несанкционированного использования вычислительных ресурсов рабочих станций. Владелец информации — субъект, осуществляющий владение и пользование информацией и реализующий полномочия распоряжения в пределах прав, установленных законом и/или собственником информации. 10

Термины и определения

Внутренние атаки — атаки, источниками которых являются легальные пользователи АС. Примеры внутренних атак — кража конфиденциальной информации, запуск несанкционированного программного обеспечения и др. Внешние атаки — атаки, источник которых находится за пределами АС, например в сети Интернет. Датчики системы обнаружения атак — программные или программно-аппаратные модули, предназначенные для сбора информации, необходимой для выявления атак. Доступ к информации — получение субъектом возможности ознакомления с информацией, в том числе при помощи технических средств. Доступность информации — состояние информации, характеризуемое способностью АС обеспечивать беспрепятственный доступ к информации субъектов, имеющих на это полномочия. Задание по безопасности — совокупность требований без­ опасности и спецификаций, предназначенная для использования в качестве основы для оценки конкретного продукта или системы. Защищаемая информация — информация, являющаяся предметом собственности и подлежащая защите в соответствии с требованиями правовых документов или требованиями, устанавливаемыми собственником информации. Защита информации — деятельность по предотвращению утечки защищаемой информации, несанкционированных и непреднамеренных воздействий на защищаемую информацию. Защита информации от несанкционированного доступа или воздействия на информацию — деятельность, направленная на предотвращение или существенное затруднение несанкционированного доступа к информации (или воздействия на информацию). Идентификатор доступа — уникальный признак субъекта или объекта доступа. Идентификация — присвоение субъектам и объектам доступа идентификатора и (или) сравнение предъявляемого идентификатора с перечнем присвоенных идентификаторов. Интернет-портал — автоматизированная система, предназначенная для предоставления различных услуг и сервисов через сеть Интернет. Порталы могут применяться для решения самых разнообразных задач, таких, например, как реклама в сети Интернет характера деятельности компании, организация интернет-торговли или же обеспечение работы системы «клиент-банк». 11

Термины и определения

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

Термины и определения

вать сохранение в тайне информации от субъектов, не имеющих полномочий на ознакомление с ней. Корпоративная информационная система — информационная система, участниками которой может быть ограниченный круг лиц, определенный ее владельцем или соглашением участников этой информационной системы. Критерии фильтрации — параметры, атрибуты, характеристики, на основе которых осуществляется разрешение или запрещение дальнейшей передачи пакетов (данных) в соответствии с заданными правилами разграничения доступа (правилами фильтрации). Криптографическая защита — защита данных при помощи криптографического преобразования данных. Ключ — последовательность символов, управляющая операциями шифрования и дешифрования. Маскирование — стремление какого-либо логического объекта выглядеть в виде другого логического объекта. Менеджмент риска — скоординированные действия по руководству и управлению в отношении риска с целью его минимизации. Межсетевой экран (брандмауэр) — локальное (однокомпонентное) или функционально-распределенное программное (программно-аппаратное) средство (комплекс), реализующее контроль за информацией, поступающей в АС и/или выходящей из АС. Межсетевой экран обеспечивает защиту АС посредством фильтрации информации, т.е. ее анализа по совокупности критериев и принятия решения о ее распространении в (из) АС на основе заданных правил, проводя таким образом разграничение доступа субъектов из одной АС к объектам другой АС. Мониторинг информационной безопасности организации — постоянное наблюдение за событиями безопасности, сбор, анализ и обобщение результатов наблюдения. Нарушитель (злоумышленник) — физическое или юридическое лицо, техническое устройство или программа, процесс или событие, субъект или пользователь АС, производящие несанкцио­ нированные или непреднамеренные действия, способные привести к реализации угрозы информационной безопасности АС. Недекларированные возможности — функциональные возможности программного обеспечения, не описанные или не со13

Термины и определения

ответствующие описанным в документации, при использовании которых возможно нарушение конфиденциальности, доступности или целостности обрабатываемой информации. Несанкционированный доступ к информации — доступ к информации или действия с информацией, нарушающие правила разграничения доступа с использованием штатных средств, предоставляемых АС. Нормативный документ — документ, содержащий правила, общие принципы или характеристики, касающиеся различных видов деятельности или их результатов. Примечание: термин «нормативный документ» охватывает такие понятия, как стандарты, документы технических условий, своды правил и регламенты. Носитель информации — физическое лицо или материальный объект, в том числе физическое поле, в котором информация находит свое отражение в виде символов, образов, сигналов, технических решений и процессов, количественных характеристик физических величин. Объект защиты информации — информация, или носитель информации, или информационный процесс, которые необходимо защищать в соответствии с поставленной целью защиты информации. Ошибка первого рода (false positive) — возникает в ситуации, при которой происходит ложное срабатывание, т.е. регистрируется факт проведения атаки, в то время как реальной атаки не происходит. Ошибка второго рода (false negative) — появляется в ситуации, когда система не обнаруживает атаку, которая на самом деле проводится в АС. Пароль — конфиденциальная информация аутентификации, состоящая из строки знаков. Пассивная атака — угроза несанкционированного раскрытия информации без изменения состояния системы. К пассивным атакам относятся те, которые при их реализации не приводят к какой-либо модификации любой информации, содержащейся в системе (ах), и где работа и состояние системы не изменяются. Примером пассивной атаки является перехват конфиденциальной информации. Пиринговые сети (P2P networks) — файлообменные сети, для подключения к которым должно использоваться специализиро14

Термины и определения

ванное программное обеспечение. Примерами таких сетей являются «eDonkey», «DirectConnet», «BitTorrent» и «Kazaa». Поведенческие методы выявления атак — базируются на моделях штатного процесса функционирования АС. Принцип использования поведенческих методов заключается в обнаружении несоответствия между текущим режимом функционирования АС и режимом штатной работы. Любое такое несоответствие в рамках поведенческого метода рассматривается в качестве информационной атаки. Политика информационной безопасности АС — совокупность требований и правил по обеспечению информационной безопасности АС. Пользователь сети — физические или юридические лица, имеющие доступ к ресурсам сети через терминал или другие средства связи, и процессы, выполняемые на различных ресурсах сети. Пакет — блок данных, посланных по сети, состоящий из заголовка и поля данных. Порт — числовой идентификатор сетевой службы, запущенной на хосте. Порт называется «открытым», если служба, которая с ним связана, может принимать входящие запросы от клиентов. В противном случае порт называется «закрытым». Профиль защиты — независимая от реализации совокупность требований безопасности для некоторой категории систем, отвечающая специфическим запросам потребителя. Распределенная атака типа «отказ в обслуживании» (Distributed denial of service attack) — атака типа «отказ в обслуживании», которая проводится одновременно из нескольких источников. Расшифрование информации — процесс преобразования зашифрованных данных в открытые при помощи шифра. Риск информационной безопасности — неопределенность, предполагающая возможность ущерба состояния защищенности интересов (целей) организации в условиях угроз в информационной сфере. Сетевой адрес — адресные данные, идентифицирующие субъекты и объекты и используемые протоколом сетевого уровня модели взаимодействия открытых систем ISO. Сигнатурные методы выявления атак — описывают каждую атаку в виде специальных сигнатур, примерами которых могут быть: строка символов, семантическое выражение на специаль15

Термины и определения

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

Термины и определения

Технологическая безопасность АС — защищенность АС от возможных информационных атак на этапе проектирования и разработки системы. Угроза информационной безопасности АС — возможное последствие информационной атаки, необнаружение, непредотвращение и неликвидация последствий которого может привести к нарушению конфиденциальности, целостности и доступности информации АС. Уязвимость АС — недостатки в системе мер защиты АС или же отсутствие таких мер, позволяющие нарушителю совершать действия, приводящие к успешной реализации угрозы информационной безопасности АС. Уязвимость типа «buffer overflow» («переполнение буфера») — в основе уязвимости типа «переполнение буфера» лежит возможность переполнения стека атакуемой подпрограммы, в результате чего нарушитель получает возможность выполнить любые команды на стороне узла, где запущена эта подпрограмма. Уязвимости типа «SQL Injection» («инъекция в SQL-запросы») — уязвимость даст возможность нарушителю выполнять несанкционированные операции над содержимым баз данных SQL-серверов путем вставки дополнительных команд в SQL-запросы. Уязвимости типа «Directory traversal» («просмотр директорий») — уязвимость может позволить злоумышленнику получить несанкционированный доступ к файловым ресурсам сервера в обход установленных правил разграничения доступа. Уязвимости типа «Cross Site Scripting» («межсайтовое выполнение сценариев») — уязвимость характерна для серверных вебприложений, не предусматривающих проверку синтаксиса входных данных, на основе которых формируются HTML-документы, отправляемые пользователям. Уязвимости реализаций стека TCP/IP — связаны с ошибками, которые допускаются программистами на этапе реализации программных модулей, отвечающих за обработку входящих и исходящих пакетов данных. В подавляющем большинстве уязвимости данного типа обусловлены тем, что в программах не предусматривается возможность обработки пакетов данных, которые имеют некорректную структуру или поля которых содержат нестандартные значения. Как правило, атаки на основе данных уязвимостей приводят к нарушению работоспособности узлов АС. 17

Термины и определения

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

Введение В настоящее время информационная безопасность является одним из наиболее динамично развивающихся направлений в области информационных технологий. В первую очередь это связано с тем, что количество информационных атак ежегодно увеличивается как в России, так и во всем мире. Так, например, согласно статистике Министерства внутренних дел РФ количество компьютерных преступлений, связанных с несанкционированным доступом к конфиденциальной информации, увеличилось с 600 инцидентов в 2000 г. до 7 тыс. в 2004 г. К основным причинам роста количества атак можно отнести следующие факторы: •• с каждым годом увеличивается количество пользователей общедоступных сетей связи, таких, например, как сеть Интернет. При этом в качестве новых пользователей выступают как отдельные клиентские рабочие станции, так и целые корпоративные сети; •• увеличивается количество уязвимостей, ежедневно обнаруживаемых в существующем общесистемном и прикладном программном обеспечении; •• возрастает число возможных объектов атаки. Если несколько лет назад в качестве основных объектов несанкционированного воздействия рассматривались исключительно серверы стандартных веб-служб, такие как HTTP, SMTP и FTP, то к настоящему моменту разработаны средства реализации атак на маршрутизаторы, коммутаторы, межсетевые экраны и др.; •• упрощение методов реализации информационных атак. В сети Интернет можно без труда найти программные реализации атак, направленных на активизацию различных уязвимостей. При этом использование этих средств сводится к вводу IP-адреса объекта атаки и нажатию соответствующей управляющей кнопки; •• увеличение числа внутренних атак со стороны пользователей АС. Примерами таких атак является кража конфиденциальной информации или запуск вредоносного ПО на рабочих станциях пользователей. Вопрос защиты и безопасного взаимодействия компьютеров при подключении их к всемирной компьютерной сети Интернет, придерживающейся идеологии глобальности, открытости и свободной доступности, стал особенно острым. Поэтому для многих компаний важно не только защитить свои локальные сети и ин19

Введение

формационные ресурсы от вторжения извне, но и организовать надежные и безопасные системы взаимодействия с удаленными подразделениями через Интернет. Своего решения ждут также задачи, связанные с электронной коммерцией, так как ее широкомасштабное применение невозможно без принятия особых мер по обеспечению безопасности и конфиденциальности трансакций. Создавшаяся ситуация заставила почти все ведущие страны мира резко повысить внимание к решению проблемы обеспечения информационной безопасности. Проведенный анализ доступных научно-технических источников показывает, что реализация задач по защите информации благодаря методам криптографии и существующим протоколам взаимодействия претерпела серьезную эволюцию. Однако решение многих важных вопросов в области информационной безопасности столкнулось с серьезными трудностями, обусловленными, в частности, и такой причиной, как наличие существенного разрыва между бурным развитием современных сетевых технологий и медленной проработкой теоретических положений и подходов к обеспечению информационной безопасности в открытой сетевой среде. Главным недостатком существующих средств и систем является то, что ими не учитываются ряд важных свойств динамики функционирования корпоративных в условиях нештатных и критических ситуаций и не обладают свойством адаптивности к постоянно меняющемуся уровню проявления угроз. Необходимо также отметить, что уровень сложности информационных атак также постоянно растет. Данное утверждение можно проиллюстрировать на примере эволюции компьютерных вирусов. В момент своего первого появления в 1980-х гг. вирусы представляли собой достаточно простые программы, которые самостоятельно распространялись в автоматизированных системах (АС) и основной задачей которых было нарушение работоспособности системы. Сегодня же компьютерные вирусы представляют собой существенно более сложные программные средства, способные распространяться практически в любой среде передачи информации, а также маскироваться под работу штатного ПО. Кроме того, современные модификации компьютерных вирусов в основном используются для кражи конфиденциальной информации, а также для получения несанкционированного доступа к компьютерам пользователей. Аналогичная тенденция характерна 20

Введение

и для других видов угроз безопасности, для реализации которых постоянно придумываются более изощренные методы и средства проведения атак. С учетом вышесказанного можно с уверенностью утверждать, что проблема защиты АС от информационных атак является одной из наиболее актуальных и значимых в области ИТ-индустрии. По всему миру ежегодно проводится большое количество исследований, направленных на разработку новых и более эффективных методов противодействия угрозам злоумышленников. С учетом актуальности вопросов, связанных с защитой от внешних и внутренних информационных атак, и было написано это учебное пособие, в основу которого заложен многолетний практический опыт проектирования, разработки и внедрения комплексных системы защиты от информационных атак. Особое внимание в пособии уделено средствам защиты, которые классифицируются как системы обнаружения атак — IDS (Intrusion Detection System) и системы предотвращения атак — IPS (Intrusion Prevention System). Представленное на суд читателя учебное пособие включает лекционные материалы, охватывающие следующие основные темы в области информационной безопасности: •• основные виды уязвимостей, информационных атак и их возможных последствий; •• математические модели защиты автоматизированных систем от информационных атак; •• практические аспекты проведения аудита и оценки рисков информационной безопасности; •• существующие криптографические методы защиты информационных ресурсов; •• технологии идентификации, аутентификации и авторизации пользователей информационных систем; •• информационная безопасность территориально-распреде­ лен­ных сетей связи X.25, Frame Relay и ATM (Asynchronous Transfer Mode); •• системы обнаружения и предотвращения атак и особенности их практического применения; •• обучение и сертификация специалистов по информационной безопасности.

21

Лекция 1

Основные понятия и определения в области информационной безопасности автоматизированных систем

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

1.1. Информация как основной объект защиты В соответствии с Федеральным законом «Об информации, информатизации и защите информации» информационные ресурсы могут быть: •• открытыми, т.е. общедоступными (публикации, сообщения в СМИ, выступления на конференциях и выставках, интервью и т.п.); •• ограниченного доступа, т.е. охраняемыми, требующими защиты. В свою очередь, информационные ресурсы ограниченного доступа подразделяются на ресурсы, составляющие государственную тайну (секретные), и конфиденциальные (от лат. confidentia — доверие). Информационные ресурсы, составляющие государственную тайну, регламентируются Законом РФ «О государственной тайне» от 21 июля 1993 г. № 5485-1. Закон регулирует отношения, возникающие в связи с отнесением сведений к государственной тайне, их засекречиванием или рассекречиванием и защитой в интересах обеспечения безопасности Российской Федерации. Правила отнесения сведений, составляющих государственную тайну, к раз22

Лекция 1. Основные понятия и определения в области информационной...

личным степеням секретности утверждены постановлением Правительства РФ от 4 сентября 1995 г. № 870. К конфиденциальной информации в соответствии с Указом Президента РФ от 6 марта 1997 г. № 188 относятся: •• сведения о фактах, событиях и обстоятельствах частной жизни гражданина, позволяющие идентифицировать его личность (персональные данные), за исключением сведений, подлежащих распространению в средствах массовой информации в установленных федеральными законами случаях; •• сведения, составляющие тайну следствия и судопроизводства; •• служебные сведения, доступ к которым ограничен органами государственной власти в соответствии с Гражданским кодексом РФ и федеральными законами. Эти сведения составляют служебную тайну; •• сведения, которые связаны с профессиональной деятельностью и доступ к которым ограничен в соответствии с Конституцией РФ и федеральными законами (врачебная, нотариальная, адвокатская тайна, тайна переписки, телефонных переговоров, почтовых отправлений, телеграфных сообщений и т.д.); •• сведения, которые связаны с коммерческой деятельностью и доступ к которым ограничен в соответствии с Гражданским кодексом РФ и федеральными законами. Эти сведения составляют коммерческую тайну; •• сведения о существе изобретения (идеи, конструкторской разработки или промышленного образца) до официальной публикации информации о нем. Под служебной тайной следует понимать несекретные сведения ограниченного доступа, связанные с владением и распоряжением интеллектуальной собственностью на информационные ресурсы в сфере управленческих или производственных отношений в государственных учреждениях, неправомерное оглашение (разглашение, утечка или несанкционированный доступ) которых может нанести ущерб интересам конкретного ведомства или учреждения. Классификация информации по степени конфиденциальности и нормативные правовые акты, закрепляющие требования к обработке служебной информации, представлены на рис. 1.1. 23

Лекция 1. Основные понятия и определения в области информационной...

Рис. 1.1. Нормативно-правовые акты, закрепляющие требования к обработке служебной информации

Любой информационный ресурс хранится, обрабатывается или передается в рамках определенной автоматизированной системы, возможные характеристики которой будут рассмотрены ниже. 24

Лекция 1. Основные понятия и определения в области информационной...

1.2. Автоматизированная система как среда для обработки, хранения и передачи информации Автоматизированные системы представляют собой совокупность персонала и комплекса средств автоматизации его деятельности, реализующие информационную технологию выполнения установленных функций. Примерами АС могут являться локальные вычислительные сети, интернет-порталы, системы электронного документооборота и др. Основная задача АС заключается в поддержке бизнес-процессов организации посредством своевременного предоставления необходимых информационных ресурсов. В общем случае АС можно представить в виде совокупности взаимодействующих узлов, таких как рабочие станции пользователей, серверы или коммуникационное оборудование. Каждый из них, в свою очередь, состоит из: •• аппаратного обеспечения, включающего технические средства узла, такие как сетевые адаптеры, процессоры, микросхемы плат и др.; •• общесистемного программного обеспечения, на котором функционирует операционная система узла и все ее составные модули; •• прикладного программного обеспечения, обеспечивающего решение прикладных задач, для которых предназначена АС. На каждом из узлов АС могут храниться и обрабатываться информационные ресурсы, осуществить доступ к которым возможно через локальное или сетевое взаимодействие. В локальном варианте передача данных осуществляется при помощи элементов управления, непосредственно подключенных к узлам АС (например, консоли, клавиатуры, мыши и т.д.). При сетевом — обмен информацией производится по каналам связи. Сетевая передача данных может быть представлена в виде семиуровневой модели взаимодействия открытых систем (ВОС). Каждый уровень этой модели соответствует определенным функциям, реализация которых позволяет обеспечить эффективный обмен информацией (табл. 1.1).

25

Лекция 1. Основные понятия и определения в области информационной...

Таблица 1.1 Функции семиуровневой модели взаимодействия открытых систем Наименование уровня модели

Функции, которые реализуются на соответствующем уровне модели ВОС

Прикладной уро- Реализуется программный интерфейс для доступа вень различных приложений к функциям передачи информации по каналам связи АС Уровень представления

Определяется формат данных, которые будут передаваться между узлами АС по сети

Сеансовый уровень

Выполняются функции установления и закрытия логического соединения между узлами АС

Транспортный уровень

Реализуются функции управления сетевым соединением, по которому передаются данные между узлами АС

Сетевой уровень

Осуществляется управление сетевыми адресами узлов АС, а также обеспечивается фрагментация и сборка передаваемых пакетов данных

Канальный уровень

Обеспечивается преобразование данных в соответствующий формат физической среды передачи информации АС

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

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

Лекция 1. Основные понятия и определения в области информационной...

уровней, в результате чего она принимает первоначальный вид. Схематично процесс обработки информации при ее передаче от отправителя к получателю показан на рис. 1.2.

Рис. 1.2. Схема процесса преобразования информации при ее передаче по каналам связи

Необходимо отметить, что в настоящее время из всех известных вариантов сетевых протоколов, основанных на модели ВОС, наибольшее распространение получил стек TCP/IP, который используется более чем в 90% действующих локальных и территориально-распределенных сетях связи. Характерная особенность состоит в том, что он не использует ни функции уровня представления, ни сеансовый уровень модели ВОС. А поскольку в последующих лекциях учебного пособия речь будет идти только об АС, построенных на базе стека TCP/IP, эти два уровня модели ВОС в дальнейшем упоминаться не будут. Существенным для функций модели ВОС является то, что реализованы они могут быть на уровне аппаратного, общесистемного или прикладного ПО АС. Причем для организации сетевого взаимодействия между узлами АС необязательно реализовывать функции всех уровней модели ВОС. Примеры того, какие функции тех или иных уровней модели ВОС используются узлами АС, отражены в табл. 1.2. 27

Лекция 1. Основные понятия и определения в области информационной...

Таблица 1.2 Узлы АС, реализующие функции различных уровней модели ВОС Тип узла

Физический уровень

Канальный уровень

Сетевой уровень

Транспортный уровень

Прикладной уровень

Повторитель

+









Коммутатор

+

+







Маршрутизатор

+

+

+





Автономная рабочая станция/ сервер











Сетевая рабочая станция/сервер

+

+

+

+

+

Помимо уровней модели ВОС, уровней аппаратного, общесистемного и прикладного ПО, в АС присутствует также уровень информационных ресурсов, на котором хранятся, обрабатываются и передаются те или иные данные. Типы и формат информационных ресурсов этого уровня определяются составом и конфигурацией используемого аппаратного и программного обеспечения АС. Так, например, при использовании серверов СУБД в качестве информационных ресурсов могут выступать таблицы баз данных, а при использовании веб-серверов такими ресурсами могут быть гипертекстовые документы. С учетом наличия модели ВОС и трехуровневой модели узлов концептуально АС представляется уже как множество узлов, способных взаимодействовать между собой по каналам связи. Этот тип концептуального видения АС будет использован автором в последующих лекциях данного учебного пособия при описании информационных атак, а также средств защиты. Пример модели АС, состоящей из двух узлов, приведен на рис. 1.3. Жизненный цикл любой АС включает, как правило, два этапа — технологический и эксплуатационный. На технологическом этапе осуществляются проектирование и разработка АС. На эксплуатационном выполняются настройка и штатное функционирование АС. На каждом из этапов жизненного цикла основным объектом защиты является информация, которая может передаваться по каналам связи или же находиться в состоянии хранения либо обработки в узлах АС. 28

Лекция 1. Основные понятия и определения в области информационной...

Рис. 1.3. Концептуальная модель АС, состоящей из двух узлов

По существу любая АС может быть подвергнута информационной атаке1, или совокупному воздействию злоумышленника, направленному на нарушение одного из трех свойств информации — конфиденциальности, целостности или доступности. С учетом высокого уровня значимости рассмотрим их более подробно. Свойство конфиденциальности предполагает ограничение в праве на доступ к информации неполномочным лицам, логическим объектам или процессам. Характерным примером нарушения конфиденциальности информации является ее несанкционированное изъятие с целью дальнейшей перепродажи, использования ее во вред владельцу и т.п. Целостность информации подразумевает, что она не подвергалась изменению или уничтожению в результате несанкционированного доступа. В качестве примера нарушения этого свойства можно привести ситуацию, в которой злоумышленник преднамеренно искажает содержимое одного из электронных документов, хранящихся в системе. И наконец, свойство доступ1

Иногда в литературе вместо понятия «информационная атака» используется синонимичный термин «вторжение» (от англ. intrusion).

29

Лекция 1. Основные понятия и определения в области информационной...

ности информации говорит о том, что она может быть использована по запросу со стороны любого уполномоченного на это пользователя. Однако злоумышленник может нарушить доступность интернет-портала, в результате чего ни один из легальных пользователей уже не сможет воспользоваться его содержимым. Таким образом, в результате нарушения конфиденциальности, целостности или доступности информации злоумышленник может оказать отрицательное влияние на ход бизнес-процессов компании, базирующихся на информационных ресурсах, которые подверглись несанкционированному воздействию. Однако стоит упомянуть о том, что для реализации информационной атаки нарушителю необходимо активизировать и использовать определенную уязвимость АС. Другими словами, ему необходимо найти то слабое место в АС, которое позволило бы успешно реализовать намеченную атаку. В перечень такого рода уязвимостей могут входить: некорректная конфигурация сетевых служб АС, наличие ПО без установленных модулей обновления, использование нестойких к угадыванию паролей, отсутствие необходимых средств защиты информации и др. Логическая взаимосвязь уязвимости, атаки и ее возможных последствий показана на рис. 1.4.

Рис. 1.4. Взаимосвязь уязвимости, атаки и ее возможных последствий

В последующих разделах лекции 1 приводится описание основных типов уязвимостей, информационных атак, а также их возможных последствий. 30

Лекция 1. Основные понятия и определения в области информационной...

1.3. Основные виды уязвимостей автоматизированных систем Можно с уверенностью констатировать, что уязвимости являются основной причиной возникновения информационных атак. Наличие же слабых мест в АС может быть обусловлено самыми различными факторами, начиная с простой халатности сотрудников и заканчивая преднамеренными действиями злоумышленников. Поэтому весьма полезной в этом аспекте является классификация известных типов уязвимостей, основные элементы которой представлены на рис. 1.5.

Рис. 1.5. Классификация уязвимостей автоматизированных систем

31

Лекция 1. Основные понятия и определения в области информационной...

Уязвимости могут присутствовать как в программно-аппа­ ратном, так и в организационно-правовом обеспечении АС. Характерно, что основная часть уязвимостей организационноправового обеспечения обусловлена отсутствием на предприятиях нормативных документов, касающихся вопросов информационной безопасности. В качестве примера уязвимости данного типа может служить отсутствие в организации утвержденной концепции или политики информационной безопасности, которая бы определяла требования к защите АС, а также конкретные пути их реализации. Организационно-правовые уязвимости имеют место и в тех случаях, когда существующие нормативно-правовые документы не полностью охватывают все необходимые аспекты защиты от информационных атак или же когда такие документы существуют лишь на бумаге и не внедряются на практике. Так, например, в организации может отсутствовать регламент, в соответствии с которым должно осуществляться обновление сигнатурных баз антивирусных средств защиты. Такая уязвимость может привести к несвоевременному обновлению сигнатур вирусов и к возможному пропуску потенциально опасных вирусных атак. Уязвимости программно-аппаратного обеспечения могут присутствовать в программных или аппаратных компонентах рабочих станций пользователей АС, серверов, а также коммуникационного оборудования и каналов связи АС. В соответствии с трехуровневой моделью узла АС, изображенной на рис. 1.3, уязвимость может быть отнесена к аппаратному обеспечению, а также к общесистемному или прикладному ПО. В том случае, если уязвимость содержится в программно-аппаратном обеспечении АС, отвечающем за организацию сетевого взаимодействия между узлами АС, она может быть дополнительно соотнесена с одним из пяти уровней модели ВОС — физическим, канальным, сетевым, транспортным или прикладным. Важно отметить тот факт, что уязвимости могут быть внесены как на технологическом, так и на эксплуатационном этапах жизненного цикла АС. На технологическом этапе нарушителями могут стать инженерно-технические работники, участвующие в процессе проектирования, разработки, установки и настройки программно-аппаратного обеспечения АС. Как правило, технологические уязвимости могут быть внесены на следующих стадиях: 32

Лекция 1. Основные понятия и определения в области информационной...

•• проектирования АС, в процессе которого нарушителем могут быть выбраны такие технологии для хранения, обработки и передачи информации, в которых отсутствуют механизмы защиты. В качестве примера уязвимостей этого типа можно привести проект подключения АС к сети Интернет напрямую без средств межсетевого экранирования; •• разработки программно-аппаратного обеспечения АС. На этом этапе программистами могут быть допущены непреднамеренные ошибки, использование которых может привести к нарушению безопасности АС. Примерами таких уязвимостей, связанных с ошибками разработчиков, являются «buffer overflow», «SQL Injection» и «format string», которые более полно рассмотрены ниже; •• установки и развертывания АС, в процессе которой могут быть выбраны параметры работы АС, уязвимые потенциальным атакам нарушителей. Внесение эксплуатационных уязвимостей может иметь место при неправильной настройке и использовании программноаппаратного обеспечения АС. В отличие от технологических устранение эксплуатационных уязвимостей требует меньших усилий, поскольку для этого достаточно изменить конфигурацию АС. Характерными примерами уязвимостей этого типа являются: •• наличие слабых, нестойких к угадыванию паролей доступа к ресурсам АС. При активизации этой уязвимости нарушитель может получить несанкционированный доступ к АС путем взлома пароля при помощи метода полного перебора или подбора по словарю; •• наличие в системе незаблокированных встроенных учетных записей пользователей, при помощи которых потенциальный нарушитель может собрать дополнительную информацию, необходимую для проведения атаки. Примерами таких учетных записей являются запись «Guest» в операционных системах или запись «Anonymous» в FTP-серверах; •• неправильным образом установленные права доступа пользователей к информационным ресурсам АС. Так, если в результате ошибки администратора пользователи, работающие с системой, получили больше прав доступа, чем это необходимо для выполнения их функциональных обязанностей, результатом может быть несанкционированное использование дополнительных полномочий для проведения атак. Например, если пользователи будут иметь права доступа на чтение содержимого исходных текстов 33

Лекция 1. Основные понятия и определения в области информационной...

серверных сценариев, выполняемых на стороне веб-сервера, то этим может воспользоваться потенциальный нарушитель для изучения алгоритмов работы механизмов защиты веб-приложений и поиска в них уязвимых мест; •• наличие в АС неиспользуемых, но потенциально опасных сетевых служб и программных компонентов. Так, например, большая часть сетевых серверных служб, таких как веб-серверы и серверы СУБД, поставляются вместе с примерами программ, которые демонстрируют функциональные возможности этих продуктов. В некоторых случаях эти программы имеют высокий уровень привилегий в системе или содержат уязвимости, использование которых злоумышленником может привести к нарушению информационной безопасности системы. Примерами таких программ являются образцы CGI-модулей, которые поставляются вместе с веб-приложениями, а также примеры хранимых процедур в серверах СУБД; •• неправильная конфигурация средств защиты, приводящая к возможности проведения сетевых атак. Примером могут служить ошибки в настройке межсетевого экрана, использование которых дает возможность злоумышленнику передавать необходимые ему пакеты данных. Необходимо подчеркнуть, что технологические и эксплуатационные уязвимости могут быть внесены потенциальными нарушителями как преднамеренным, так и непреднамеренным путем. Непреднамеренное или неумышленное внесение связано с некомпетентностью или халатностью персонала, работающего с АС. Примерами непреднамеренных эксплуатационных уязвимостей являются: некорректное использование или настройка программно-аппаратного обеспечения АС, неумышленное отключение средств защиты АС, использование легкоугадываемых паролей и др. К числу непреднамеренных технологических уязвимостей можно отнести и неумышленное внесение ошибок в разрабатываемое ПО. Преднамеренное или умышленное внесение уязвимостей в АС связано с реализацией корыстных целей злоумышленников. В число преднамеренных технологических уязвимостей АС может входить использование такого проекта АС, в котором заложены недекларированные каналы утечки конфиденциальной информации из АС. В качестве примеров преднамеренных эксплуатацион34

Лекция 1. Основные понятия и определения в области информационной...

ных уязвимостей можно назвать умышленный ввод ошибочных данных, преднамеренное использование криптографически нестойких ключей шифрования и др. С учетом высокой значимости технологических уязвимостей, связанных с ошибками в общесистемном и прикладном программном обеспечении АС, приведем описание наиболее распространенных их типов. 1.3.1. Уязвимости «buffer overflow» В основе уязвимости «buffer overflow» («переполнение буфера») лежит возможность переполнения стека атакуемой подпрограммы, в результате чего нарушитель получает возможность выполнить любые команды на стороне узла, где запущена эта подпрограмма. Наличие именно такой возможности позволило провести первую крупномасштабную атаку в сети Интернет в 1988 г., которая впоследствии получила название «интернет-червь Ч. Морриса». Базируясь на уязвимости в сетевой службе fingerd, эта атака буквально за несколько дней парализовала работу более половины всех компьютеров, подключенных к сети Интернет. И  по сей день уязвимость класса «buffer overflow» считается одним из наиболее распространенных и весьма опасных типов уязвимостей, имеющихся в общесистемном и прикладном ПО. Для более полного представления особенностей уязвимости этого типа рассмотрим основные принципы организации стека процессора семейства Intel x86. Стек представляет собой область памяти, специально выделенной для временного хранения данных подпрограмм. В защищенном режиме работы микропроцессора максимальный размер стека ограничивается четырьмя гигабайтами. Структура стека организована в соответствии с принципом LIFO (Last In First Out — «последним пришел, первым ушел»). Это означает, что при чтении информации из стека извлекается блок данных, который был записан в стек последним, а не первым. Для записи информации в стек используется инструкция процессора PUSH, а для чтения — POP. При этом одна из особенностей стека заключается в том, что при записи данных в стек он увеличивается в сторону младших адресов памяти. Для работы со стеком используются три регистра процессора (рис. 1.6): 35

Лекция 1. Основные понятия и определения в области информационной...

• ss — сегментный регистр, содержащий адрес начала сегмента стека; • sp / esp — регистр указателя стека, который всегда указывает на вершину стека, т.е. содержит смещение, по которому в стек был занесен последний элемент данных. Если стек пуст, то значение sp/esp равно адресу последнего байта сегмента, выделенного под стек; • bp / ebp — регистр указателя базы кадра стека, который обычно используется для хранения адреса стека, где хранятся локальные переменные. При использовании регистров sp/esp и bp/ ebp их значения являются смещениями относительно сегментного регистра ss.

Рис. 1.6. Схема организации стека

Рассмотрим порядок записи данных в стек при вызове функций на примере программы, исходный текст которой приведен в листинге 1.1. 36

Лекция 1. Основные понятия и определения в области информационной...

void test(int a, int b, int c){ char p1[6]; char p2[9]; } void main() { test(1,2,3); } Листинг 1.1. Пример программы на языке Си, в которой вызывается функция test()

При вызове функции test в стек сначала записываются значения трех параметров — a, b и c в обратном порядке. Затем в стек помещается адрес возврата, в котором указывается адрес инструкции, которая должна быть выполнена процессором сразу после завершения работы функции test. При выходе из функции test этот адрес возврата автоматически копируется в регистр EIP (Extended Instruction Pointer), значение которого считывает процессор и передает управление на команду по адресу этого регистра. Также в реестре сохраняется значение регистра EBP (содержит адрес, начиная с которого в стек вносится или забирается информация), который указывает на локальные переменные функции main. Далее в стек записываются локальные символьные массивы p1 и p2, которые определены в функции test. Итоговая структура стека функции test() показана на рис. 1.7. … Память, выделенная под символьный массив p2 Память, выделенная под символьный массив p1 Сохраненное значение регистра EBP Адрес возврата Значение параметра вызова a Значение параметра вызова b Значение параметра вызова c … Рис. 1.7. Структура стека функции test()

37

Лекция 1. Основные понятия и определения в области информационной...

Уязвимость «buffer overflow» вызвана отсутствием в программе проверки размерности данных, которые записываются в стек. Это может позволить потенциальному нарушителю записать в стек избыточную информацию, которая смогла бы изменить значение адреса возврата и передать управление на фрагмент ранее внедренного вредоносного кода. В листинге 1.2 приведен исходный код программы, который демонстрирует изменения содержимого стека при попытке переполнения одной из его переменных. #include int main(int argc, char **argv){ char a1[4]=»abc»; char a2[8]=»defghij»; strcpy(a2, «0123456789»); printf(«%s\n», a1); return 0; } Листинг 1.2. Пример программы, демонстрирующей изменения в стеке при его переполнении

В приведенной программе определено два символьных массива типа char — a1 и a2. Размер первого массива a1 составляет четыре, а второго — восемь байт. После определения переменных в программе при помощи функции strcpy выполняется операция записи строкового значения «0123456789» в массив a2. При этом записываемое значение на семь байт превышает размер массива a2, что приводит к его переполнению и изменению значения массива a1, который размещен в стеке до a2. На рис. 1.8 показано состояние фрагмента стека с переменными a1 и a2 до и после вызова функции strcpy. d h a

e i b

...

...

f j c

j \0 \0

0 4 8

1 5 9

...

2 6 \0 ...

3 7 \0

Рис. 1.8. Состояние фрагмента стека с переменными a1 и a2

38

Лекция 1. Основные понятия и определения в области информационной...

В левой части рис. 1.8 показано расположение в стеке содержимого двух переменных — a1 и a2. Значения этих переменных завершаются символом «\0», что является признаком окончания строки. При этом с учетом последовательности объявления переменных в программе первым в стеке размещается символьный массив a1, а затем массив a2. После вызова функции strcpy происходит переполнение массива a2, поскольку в него записывается на семь символов больше, чем предусмотрено его размером. В результате этого переполнения часть избыточной информации записывается в массив a1, который размещен в стеке сразу вслед за массивом a2. После компиляции и запуска программы, приведенной в листинге 1.2, на экране будет выведено значение измененного массива a1, которое будет принимать значение «89». Таким образом, для активизации уязвимости «buffer overflow» нарушитель может переполнить одну из переменных стека с целью изменения адреса возврата и записи в него адреса вредоносного кода, на который будет передано управление после завершения работы функции, в которой был переполнен стек. Вредоносный код, который должен быть выполнен в результате активизации уязвимости, также записывается в стек в процессе его переполнения. Как правило, в его качестве выступает последовательность команд (так называемая «shell code»), выполнение которой позволяет получить удаленную консоль управления компьютером, на котором была активизирована уязвимость. Уязвимости «buffer overflow» могут содержаться как в общесистемном, так и в прикладном программном обеспечении. В общем случае можно выделить следующие основные категории программ, которые могут включать уязвимость этого типа: •• программы, которые запускаются локально на хосте. Активизация уязвимости в программах этого типа может позволить нарушителю несанкционированно расширить свои права доступа к ресурсам локальной системы. Переполнение буфера программ осуществляется путем их запуска пользователем и ввода данных, приводящих к переполнению стека; •• сетевые приложения, которые обеспечивают интерактивное взаимодействие с пользователем на основе сетевых протоколов. Для активизации уязвимости в сетевых приложениях нарушитель может сформировать удаленный запрос, содержащий входные данные, необходимые для переполнения стека в уяз39

Лекция 1. Основные понятия и определения в области информационной...

вимой программе. Примером сетевых программ являются вебприложения, такие как CGI-модули, PHP-сценарии, активные серверные страницы ASP и др.; •• хранимые процедуры серверов СУБД. Активизация уязвимости на таких серверах возможна путем как локального запуска хранимых процедур, так и формирования удаленного запроса к соответствующей процедуре. 1.3.2. Уязвимости «SQL injection» Уязвимости типа «SQL Injection» («инъекция в SQL-запросы») позволяют нарушителю выполнять несанкционированные операции над содержимым баз данных SQL-серверов путем вставки дополнительных команд в SQL-запросы. Любой SQL-запрос представляет собой последовательность команд для сервера СУБД, сформированную на основе специализированного языка структурированных запросов SQL. Данная уязвимость характерна для приложений, которые получают в качестве входных данных параметры доступа к базе данных, после чего на их основе формируют SQL-запрос к серверам СУБД. Уязвимость «SQL Injection» заключается в отсутствии функции проверки корректности данных, поступающих на вход программе. Это потенциально может позволить нарушителю составить входные данные таким образом, что приведет к искажению искомого SQL-запроса к СУБД. Ниже приведено описание различных примеров использования уязвимостей типа «SQL Injection». Активизация уязвимости «SQL Injection» с целью получения несанкционированного доступа к ИС

В ряде случаях уязвимости «SQL Injection» могут иметь место в программах, которые выполняют функции идентификации и аутентификации пользователя в информационной системе. Активизация таких уязвимостей может позволить нарушителю получить несанкционированный доступ к системе путем обхода процедуры аутентификации. В листинге 1.3 приведен пример исходного текста уязвимой программы, которая проводит аутентификацию пользователя на основе пароля.

40

Лекция 1. Основные понятия и определения в области информационной...

SQLQuery = «SELECT Username FROM Users WHERE Username = '» & strUsername & «' AND Password = '» & strPassword & «'» strAuthCheck = GetQueryResult(SQLQuery) If strAuthCheck = «» Then boolAuthenticated = False Else boolAuthenticated = True End If Листинг 1.3. Фрагмент исходного кода уязвимой программы аутентификации пользователей

Алгоритм работы приведенной выше программы выглядит следующим образом. На основе регистрационного имени и пароля, введенного пользователем, программа формирует SQL-запрос, текст которого содержится в переменной SQLQuery. Далее при помощи сформированного запроса программа проводит в таблице Users поиск записи, содержащей имя и пароль, введенные пользователем. Если такая запись находится в таблице, то делается вывод о том, что аутентифицируемый пользователь зарегистрирован в системе и ему разрешается доступ к содержимому информационной системы. Поиск и извлечение информации из таблицы базы данных осуществляются при помощи SQL-оператора «SELECT». Сущность уязвимости рассмотренной программы состоит в отсутствии проверки корректности значений регистрационного имени и пароля, вводимых пользователем. Эти значения содержатся в переменных strUsername и strPassword соответственно. Воспользовавшись этой ошибкой разработчика программы, злоумышленник может путем манипуляций со значениями переменных strUsername и strPassword модифицировать SQL-запрос. Так, например, в случае, если нарушитель в качестве регистрационного имени и пароля введет значение «’OR ‘’=’», будет сформирован следующий SQL-запрос: «SELECT Username FROM Users WHERE Username = '’ OR ‘’=’’ AND Password = ‘‘ OR ‘’=’’» (полужирным шрифтом выделены команды, которые внедряются нарушителем в исходный SQL-запрос).

41

Лекция 1. Основные понятия и определения в области информационной...

Поскольку в SQL-запрос были добавлены два новых параметра — «OR ‘’=’’», то одновременно с поиском пустой учетной записи пользователя в таблице Users будет возвращена первая строка таблицы. Так как в результате выполнения функции GetQueryResult будет возвращено непустое значение, то нарушитель сможет беспрепятственно пройти через процедуру аутентификации и получить доступ к информационной системе как легальный пользователь. Активизация уязвимости «SQL Injection» с целью несанкционированного извлечения данных из СУБД

Для несанкционированного извлечения данных из СУБД нарушитель может добавить в исходный текст SQL-запроса оператора UNION SELECT, который позволяет формировать одновременно несколько запросов к таблицам СУБД. Рассмотрим процедуру активизации уязвимости «SQL Injection» этого типа на примере следующего запроса, выполняющего выборку из таблицы Employees по названию города, которое вводится пользователем и передается в запрос через переменную strCity: SQLString = «SELECT FirstName, LastName FROM Employees WHERE City = '» & strCity & «'» Для того чтобы дополнительно извлечь информацию из другой таблицы с именем OtherTable, нарушитель может ввести следующее значение через переменную strCity: «' UNION ALL SELECT OtherField FROM OtherTable WHERE ‘’=’». В результате такой вставки получится SQL-запрос, который позволит получить доступ к информации, хранящейся в поле OtherField таблицы OtherTable: SELECT FirstName, LastName FROM Employees WHERE City = '' UNION ALL SELECT OtherField FROM OtherTable WHERE ''='' После выполнения SQL-запроса делается выборка данных из таблицы OtherTable. При этом никакой информации из таблицы Employees извлечено не будет, поскольку в сформированном запросе указано, что из этой таблицы необходимо получить только те записи, в которых поле City содержит пустое значение. 42

Лекция 1. Основные понятия и определения в области информационной...

Несанкционированное извлечение данных из таблиц СУБД возможно путем несанкционированного искажения не только запроса SELECT, но и INSERT. Оператор INSERT используется для добавления информации в базы данных информационной системы. Активизация уязвимости «SQL Injection» в операторе INSERT возможна в том случае, если уязвимое приложение предусматривает возможность добавления в СУБД информации, вводимой пользователем, а также позволяет просматривать добавленные данные. Продемонстрируем вышесказанное следующим примером. Предположим, что в приложении проводится процедура регистрации пользователя, где он вводит свои персональные данные, которые затем при помощи INSERT-запроса записываются в таблицу TableName: INSERT INTO TableName VALUES ('» & strValueOne & «', '» & strValueTwo & «', '» & strValueThree & «')» При этом после прохождения процедуры регистрации пользователь имеет возможность просмотреть ранее введенные данные. С целью модификации исходного SQL-запроса нарушитель может ввести вместо одной из переменных strValueOne, strValueTwo или strValueThree SQL-запрос типа «’ + (SELECT TOP 1 FieldName FROM OtherName) + ‘». Это позволит злоумышленнику добавить в таблицу TableName не только свои персональные данные, но и информацию, извлеченную из СУБД при помощи вставленного запроса SELECT. Нарушитель может получить доступ к извлеченной информации при просмотре своих персональных данных. Активизация уязвимости «SQL Injection» с целью несанкционированного изменения данных в СУБД

Для несанкционированного изменения содержимого таблиц SQL-сервера нарушитель может воспользоваться уязвимостью, базирующейся на возможности модификации исходного SELECTзапроса. Для внесения изменений в текст запроса необходимо добавить лишь оператор INTO, в параметрах которого указывается имя таблицы БД, куда необходимо добавить сделанную выборку. В результате такого изменения должен получиться запрос следую43

Лекция 1. Основные понятия и определения в области информационной...

щего типа: «SELECT FROM INTO ». Активизация уязвимости «SQL Injection» с целью нарушения работоспособности SQL-сервера

Работоспособность SQL-сервера может быть нарушена при помощи несанкционированного использования рассмотренных выше запросов SELECT с параметром INTO. Для этого нарушителю достаточно сформировать их последовательность, которая предусматривала бы запись избыточного объема информации в базу данных. После заполнения свободного дискового пространства работа сервера СУБД будет нарушена. 1.3.3. Уязвимости «format string» Уязвимости типа «format string» («форматирующая строка») могут быть характерны для тех приложений, в которых используются функции типа printf() с непроверяемым параметром форматирующей строки. Форматирующая строка используется для определения общего числа параметров вызова функции, а также правил преобразования параметров вызова в символьные значения. В листинге 1.4 приведен фрагмент исходного кода программы, в котором используется функция printf(), выводящая на экран десятичные значения переменных i и j. Форматирующая строка функции printf(), приведенной в листинге, содержится в строковой переменной format_string. int i = 10; int j = 20; char *format_string = “Переменная i = %d, переменная j = %d”; printf(format_string, i, j); Листинг 1.4. Пример использования функции printf()

Параметры форматирующей строки задаются при помощи управляющего символа «%». Так, например, параметр «%d» используется для вывода десятичного числа, а параметр «%x» — для вывода 44

Лекция 1. Основные понятия и определения в области информационной...

шестнадцатеричного значения. Каждому параметру форматирования соответствует один аргумент, который указывается сразу после форматирующей строки. Для двух параметров «%d», приведенных в листинге 1.4, аргументами являются переменные i и j. Необходимо отметить, что если в форматирующей строке определен параметр, но отсутствует его аргумент, то в этом случае на экран будет выведено содержимое участка памяти стека, где должен находиться параметр. В форматирующей строке также может быть использован параметр «%n», который позволяет записывать в произвольный адрес памяти значение, которое определяется до параметра. Потенциальная уязвимость «format string» возникает в том случае, когда содержимое форматирующей строки задается не разработчиком программы, а формируется на основе непроверяемых входных параметров вызова одной из функций программы. Например, для вывода на экран строкового значения переменной str можно использовать два варианта записи функции printf(): 1) printf(“%s”, str); — при таком варианте использования функции printf() форматирующая строка «%s» задается разработчиком в явном виде и не может быть скомпрометирована нарушителем; 2) printf(str); — такое использование функции printf() может привести к тому, что потенциальный нарушитель сможет самостоятельно сформировать значение форматирующей строки при помощи переменной str и активизировать уязвимость «format string» путем манипуляции со значениями параметров «%x» и «%n». Несанкционированное использование параметра «%x» может позволить нарушителю получить доступ к содержимому любого участка памяти в стеке, а при помощи параметра «%n» возможно изменение адреса возврата функции путем записи нового значения и передачи управления на вредоносный код, размещенный в памяти компьютера. Уязвимости класса «format string» могут быть присущи любым приложениям, которые некорректно используют следующие функции: fprintf(), printf(), snprintf(), vprintf(), vsprintf(), vsnprintf(), secproctitle() и syslog(). 1.3.4. Уязвимости «Directory traversal» Уязвимости типа «Directory traversal» («просмотр директорий») могут позволить злоумышленнику получить несанкцио45

Лекция 1. Основные понятия и определения в области информационной...

нированный доступ к файловым ресурсам сервера в обход установленных правил разграничения доступа. Уязвимость может присутствовать в приложениях, которые работают с файловыми ресурсами, адреса которых динамически формируются на основе непроверяемых входных данных. Рассмотрим особенности уязвимостей данного типа на примере ASP-приложения «getnews.asp», функционирующего в среде веб-сервера. Предположим, что данное приложение предназначено для вывода на экран пользователя содержимого новостного файла, имя которого подается на вход программе при помощи параметра «item». Так, например, при обращении к веб-серверу при помощи HTTP-запроса «http://192.168.0.1/ getnews.asp?item=1. html» приложение «getnews.asp» извлечет из параметра «item» имя запрашиваемого файла — «1.html» и выведет его на экран браузера пользователя. Уязвимость данного приложения заключается в отсутствии проверки синтаксиса значения параметра «item», через который передается имя файла. С учетом этого потенциальный нарушитель может напрямую обратиться к рассматриваемому приложению, указав в параметре «item» имя файла, к которому он хочет получить доступ. При этом для перемещения по файловой системе веб-сервера злоумышленник может использовать служебные символы «../», которые дают возможность «перейти вверх» на один уровень иерархии в файловой системе. Таким образом, в результате HTTP-запроса «http://192.168.0.1/getnews.asp?item= ../../../../WINNT/win.ini» нарушитель сможет получить несанкционированный доступ к содержимому системного файла «win.ini». Аналогичным образом злоумышленник может несанкционированно запустить приложение на стороне сервера. 1.3.5. Уязвимости «Cross Site Scripting» Уязвимости «Cross Site Scripting» («межсайтовое выполнение сценариев») характерны для серверных веб-приложений, не предусматривающих проверку синтаксиса входных данных, на основе которых формируются HTML-документы, отправляемые пользователям. На основе данной уязвимости нарушитель может использовать одно из уязвимых веб-приложений для посылки пользователям вредоносного HTML-кода, при помощи которого злоумышленник может получить несанкционированный доступ к 46

Лекция 1. Основные понятия и определения в области информационной...

элементам «cookies» или перенаправить браузер пользователя на потенциально опасный веб-сайт. При этом вредоносный HTMLкод будет запущен от имени веб-сервера, с которого он был загружен на рабочую станцию пользователя. Как правило, вредоносный код создается на основе сценарных языков программирования, таких как JavaScript, VBScript и др. Рассмотрим пример атаки на основе уязвимости «Cross Site Scripting», направленной на получение несанкционированного доступа к ресурсам веб-сервера путем использования скомпрометированных элементов «cookies»1. Предположим, что объектом атаки является веб-сервер «www.server.ru», для доступа к ресурсам которого пользователи должны пройти аутентификацию на основе пароля. При этом в результате аутентификации пользователю присваивается числовой идентификатор, который записывается в элемент «cookies» и используется в дальнейшем для автоматической проверки пользователя. В данном случае целью атаки является получение несанкционированного доступа к элементу «cookies» с целью его дальнейшего использования для несанкционированного проникновения в ресурсы сервера от имени пользователя. Допустим, что на веб-сервере «www.server.ru» запущено служебное серверное приложение «ShowError.asp», которое предназначено для отображения информации об ошибке. На вход данному приложению подается параметр «error_text», содержащий текстовое описание ошибки, которое выводится на экран пользователя в виде HTML-документа. При этом в процессе работы приложения не проводится никаких проверок синтаксиса значения параметра «error_text», что дает возможность нарушителю использовать этот параметр для передачи вредоносного HTML-кода. В этом случае злоумышленник может создать ссылку на уязвимое приложение следующего типа: «Link Text ». После этого злоумышленнику необходимо сделать так, чтобы один из легальных пользователей сервера «www.server.ru» обратился по указанной выше ссылке. Для этого нарушитель может разо1

Элементы «с���������������������������������������������������������� ookies���������������������������������������������������� » используются в интернет-браузерах для хранения небольшого объема информации о сетевой сессии пользователя.

47

Лекция 1. Основные понятия и определения в области информационной...

слать документ с такой ссылкой по электронной почте или разместить ее на одном из общедоступных интернет-форумов. Если кто-либо из таких пользователей обратится по приведенной выше ссылке, то автоматически будет сформирован запрос к уязвимому приложению «ShowError.asp», в процессе выполнения которого пользователю будет возвращен вредоносный HTML-код «». В результате запуска вредоносного кода будет выполнена функция «document.location.replace», которая несанкционированно передаст значение элемента «cookies» пользователя по адресу «http://hacker.org/steal.cgi». Используя полученное значение, злоумышленник сможет получить доступ к ресурсам сервера «www.server.ru» от имени одного из легальных пользователей. 1.3.6. Уязвимости программных реализаций стека TCP/IP Уязвимости реализаций стека TCP/IP связаны с ошибками, которые допускаются программистами на этапе реализации программных модулей, отвечающих за обработку входящих и исходящих пакетов данных. В подавляющем большинстве уязвимости данного типа обусловлены тем, что в программах не предусматривается возможность обработки пакетов данных с некорректной структурой или пакетов, поля которых содержат нестандартные значения. Как правило, атаки на основе таких уязвимостей приводят к нарушению работоспособности узлов АС. В качестве примера атаки, активизирующей уязвимость реализации стека TCP/IP, можно привести атаку типа «Land», смысл которой заключается в отправке узлу АС IP-дейтаграммы, в которой адрес отправителя совпадает с адресом получателя. Получив такую дейтаграмму, ОС узла АС попытается сформировать ответ, направив его как бы «самому себе», в результате чего в работе ПО узла может произойти сбой, что приведет к нарушению его работоспособности. Пример IP-дейтаграммы, которая может быть использована для реализации атаки «Land», приведен на рис. 1.9. Рассмотренная атака, основанная на уязвимости, связанной с неправильной обработкой пакетов, в которых адрес отправителя совпадает с адресом получателя, характерна для ОС Windows Server 2003, а также Windows XP в которых не установлены соответствующие модули обновления ПО. 48

Лекция 1. Основные понятия и определения в области информационной... 4 (версия IP) Длина заголовка 0 (Тип сервиса) Общая длина 1234 (Идентификатор) 0 (Флаги) 0 (Смещение) 29 (Время жизни) 06 (Идентификатор Контрольная сумма протокола) 195.164.125.16 (IP-адрес получателя) 195.164.125.16 (IP-адрес отправителя) 0 (Опции) 0 (Выравнивание) Поле данных IP-пакета

Рис. 1.9. Пример IP-дейтаграммы, при помощи которой реализуется атака «Land»

1.3.7. Уязвимости протоколов стека TCP/IP В некоторых случаях ошибки и недостатки могут содержаться не только в программно-аппаратном обеспечении АС, но и в спецификациях и стандартах, описывающих протоколы стека TCP/IP. Они связаны в основном с отсутствием в протоколах встроенных средств защиты, что делает их уязвимыми к различным информационным атакам. Для иллюстрации вышесказанного рассмотрим описание информационной атаки, основанной на уязвимости протокола ARP (Address Resolution Protocol). Этот протокол используется для преобразования IP-адресов хостов АС в соответствующие им аппаратные MAC-адреса. Ниже приводится краткое описание алгоритма штатной работы этого протокола на том примере, когда рабочей станции X необходимо определить аппаратный MAC-адрес сервера Y. 1. На первом шаге алгоритма рабочая станция X отправляет широковещательный ARP-запрос, в одном из служебных полей которого указывается IP-адрес сервера Y. 2. Все узлы АС, находящиеся в одном сегменте вместе с рабочей станцией X, включая сервер Y, получают и обрабатывают широковещательный ARP-запрос. 3. Распознав в ARP-запросе свой IP-адрес, сервер Y отправляет рабочей станции X ARP-ответ, в котором указывается свой аппаратный MAC-адрес. Все остальные узлы, получившие ARPзапрос, не выполняют никаких действий. 49

Лекция 1. Основные понятия и определения в области информационной...

4. Получив ARP-ответ, рабочая станция X использует содержащийся в ответе MAC-адрес для отправки данных непосредственно серверу Y. В данном случае потенциальной уязвимостью является отсутствие встроенных средств аутентификации узлов, взаимодействующих между собой по протоколу ARP. В случае использования этой уязвимости в рассмотренном выше примере нарушитель сможет сформировать от имени сервера Y ложный ARP-ответ, содержащий MAC-адрес узла злоумышленника. Это приведет к тому, что рабочая станция X будет посылать информацию не серверу, а узлу нарушителя, что позволит ему получить несанкционированный доступ к информации, передаваемой между рабочей станцией X и сервером Y (рис. 1.10).

Рис. 1.10. Схема реализации атаки на основе уязвимости протокола ARP

Рассмотренная уязвимость протокола ARP заложена в основу методов перехвата анализа пакетов данных, циркулирующих в коммутируемых средах. Важно подчеркнуть, что уязвимости протоколов стека TCP/ IP обусловлены тем, что на момент их проектирования не уделялось достаточно внимания вопросам информационной безопасности. 50

Лекция 1. Основные понятия и определения в области информационной...

1.4. Основные виды информационных атак Изложенные в разделе 1.2 материалы показывают, каким образом злоумышленники могут использовать уязвимости АС для реализации своих информационных атак на ресурсы АС. В целях систематизации информации о различных типах атак автором учебного пособия была разработана их классификация, которая показана на рис. 1.11. Необходимо подчеркнуть, что основным отличием ее от существующих разработок в этой области является взаимосвязь с классификационными схемами уязвимостей и теми последствиями, которые можно ожидать от проведенных атак. Это позволяет использовать разработанную схему для определения типа несанкционированного воздействия, установления причин ее возникновения, а также прогнозирования последствий, к которым может привести классифицируемая атака. Разработанная классификация позволяет подразделять любую атаку на следующие четыре стадии: •• стадия рекогносцировки. На этом этапе нарушитель осуществляет сбор данных об объекте атаки, на основе которых планируются дальнейшие стадии атаки. Примерами такой информации являются: тип и версия операционной системы (ОС), установленной на узлах АС, список пользователей, зарегистрированных в системе, сведения об используемом прикладном ПО и др. При этом в качестве объектов атак могут выступать рабочие станции пользователей, серверы, а также коммуникационное оборудование АС; •• стадия вторжения в АС. На этом этапе нарушитель получает несанкционированный доступ к ресурсам тех узлов АС, по отношению к которым совершается атака; •• стадия атакующего воздействия на АС. Данный этап направлен на достижение нарушителем тех целей, ради которых предпринималась атака. Примерами таких действий могут являться нарушение работоспособности АС, кража конфиденциальной информации, хранимой в системе, удаление или модификация данных системы и др. При этом атакующий получает возможность осуществлять действия, направленные на удаление следов его присутствия в АС; •• стадия дальнейшего развития атаки. На этом этапе выполняются действия, которые направлены на продолжение атаки на ресурсы других узлов АС. 51

Лекция 1. Основные понятия и определения в области информационной... Информационные атаки на автоматизированные системы По стадии жизненного цикла атаки Стадия рекогносцировки

Стадия вторжения

Стадия атакующего воздействия

Стадия дальнейшего развития атаки

По этапу жизненного цикла АС, на котором реализуется атака Атаки, реализумые на технологическом этапе

Атаки, реализумые на эксплуатационном этапе

По степени преднамеренности реализации атаки Преднамеренные атаки

Непреднамеренные атаки

По уровню модели ВОС, на которой осуществляется информационная атака Атаки на физичес ком уровне

Атаки на сете вом уровне

Атаки на канальном уровне

Атаки на транс портном уровне

Атаки на приклад ном уровне

По источнику атаки Внутренние атаки

Внешние атаки

По объекту атаки Атаки на серверы АС

Атаки на коммуникационное оборудование и каналы связи АС

Атаки на рабочие станции пользователей АС

По степени активности атаки Активные атаки

Пассивные атаки

По степени распределенности атаки Однонаправленные атаки

Распределенные атаки

По типу уязвимости, активизируемой атакой По типу последствия атаки

Классификационная схема уязвимостей АС Классификационная схема последствий атак

Рис. 1.11. Классификация информационных атак на АС

Схематично стадии жизненного цикла информационной атаки изображены на рис. 1.12. Информационные атаки могут быть подразделены на внешние и внутренние. Внешние сетевые атаки проводятся извне с узлов, которые не входят в состав АС. Примером внешней сетевой атаки является вторжение нарушителя в ЛВС из сети Интернет. Внутренние атаки проводятся с одного из серверов или с одной 52

Лекция 1. Основные понятия и определения в области информационной...

из рабочих станций АС. В качестве примера такой атаки можно привести действия сотрудника компании, приводящие к утечке конфиденциальной информации.

Рис. 1.12. Жизненный цикл типовой информационной атаки на ресурсы АС

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

53

Лекция 1. Основные понятия и определения в области информационной...

1.4.1. Стадия рекогносцировки Действия злоумышленника на этапе рекогносцировки направлены на сбор информации, которая используется при выборе методов и средств для дальнейшей реализации атаки. Как правило, для сбора искомой информации используются методы сетевого сканирования. В процессе проведения сканирования злоумышленник посылает хостам по сети серию запросов, после чего анализирует полученные ответы с целью получения необходимых данных. В число наиболее распространенных методов сканирования входит: •• сканирование системы на основе протокола ICMP (Internet Control Message Protocol); •• сканирование портов, позволяющее получить информацию о сетевых службах, запущенных на хостах АС; •• сканирование, предназначенное для идентификации типа операционной системы, установленной на узлах АС; •• сканирование прикладных сервисов АС, направленное на получение информации о зарегистрированных пользователях, общедоступных информационных ресурсах и др. Основное назначение протокола ICMP заключается в формировании диагностических сообщений о работе сетевого оборудования. Эти же служебные ICMP-сообщения могут использоваться и для сканирования узлов АС. В табл. 1.3 приведены различные типы сообщений протокола ICMP, а также информация, которая может быть получена с их помощью. Для автоматизации процесса ICMP-сканирования могут использоваться различные программные утилиты. Так, например, в состав любой ОС входит служебная утилита «ping», которая позволяет определить доступность узла путем посылки сообщений типа «ICMP Echo». Другими примерами подобных утилит являются «icmpush» и «icmpquery». Легко видеть, что ICMP-сканирование позволяет получить лишь базовую информацию о работоспособности узлов, а также о некоторых других параметрах функционирования системы. Для определения перечня сетевых сервисов, используемых в АС, могут применяться различные способы сканирования TCP- и UDPпортов. На сегодняшний день можно выделить следующие основные методы сканирования портов: 54

Лекция 1. Основные понятия и определения в области информационной...

Таблица 1.3 Методы сканирования на основе протокола ICMP №

Тип ICMPсообщения

Информация, которая может быть получена

1

0 (ICMP Echo)

Данный тип ������������������������ ICMP�������������������� -сообщения может использоваться для определения работоспособности хоста. В процессе сканирования узлу посылается сообщение «ICMP Echo», после чего ожидается получение сообщения «ICMP Echo Reply». Получение такого сообщения означает, что сканируемый хост работоспособен и доступен по сети

2

3

13 Сообщение «����������������������������� ICMP������������������������� Timestamp��������������� ������������������������ » может исполь(ICMP Timestamp) зоваться для определения системного времени, установленного на сканируемом узле. Искомая информация будет передана посредством сообщения «ICMP Timestamp Reply» 17 (ICMP Address Mask)

Использование сообщения типа «�������� ICMP���� Ad��� dress Mask» позволяет получить информацию об используемой маске сетевого адаптера сканируемого хоста

1. Метод «TCP Connect», который реализуется путем попытки установления TCP-соединения по заданному порту. В случае если соединение успешно устанавливается, это означает, что порт является открытым, в противном случае — закрытым. При этом согласно стандарту RFC 793 данный метод сканирования реализует полноценный трехступенчатый алгоритм установления TCPсоединения, который схематично показан на рис. 1.13.

Рис. 1.13. Схема установления TCP-соединения между клиентом и сервером

55

Лекция 1. Основные понятия и определения в области информационной...

2. Метод «TCP SYN», который в отличие от предыдущего способа не предполагает полноценного установления TCPсоединения. При использовании данного метода сканируемому узлу посылается только TCP-пакет с флагом SYN. Если в ответ на это сообщение поступает пакет TCP-пакет с флагами SYN и ACK, то порт считается открытым. Если же порт закрыт, то в ответ должен быть получен пакет с флагом RST (флаг наличия срочных данных в пакете). Рассмотренный метод иногда называют «полуоткрытым» сканированием, поскольку он использует лишь первый этап установления TCP-соединения. 3. Метод «SYN/ACK» предполагает направление сканируемому узлу TCP-пакета с флагами SYN и ACK, что соответствует второму этапу установления TCP-соединения (рис. 1.13). В случае если сканируемый порт является закрытым, в ответ будет получено сообщение с флагом RST. При поступлении пакета с флагами SYN и ACK на открытый порт, он будет отброшен. 4. Метод «TCP FIN», при использовании которого хосту посылается TCP-пакет с установленным флагом FIN. В случае если порт, на который посылается такое сообщение, является закрытым, в ответ направляется пакет с флагом RST. Данный метод сканирования применим только для ОС класса UNIX, поскольку в системах Windows не предусмотрена отправка каких-либо пакетов в ответ на TCP-пакеты с флагом FIN. 5. Метод «XMAS tree», в процессе применения которого хосту направляется TCP-пакет с установленными флагами FIN, URG и PUSH. В результате сканирования хост должен послать в ответ сообщение с флагом RST для всех закрытых портов. 6. Метод нулевого сканирования предполагает посылку хосту TCP-пакета, в котором отсутствуют установленные флаги. В соответствии со стандартом RFC 793 операционная система сканируемого хоста должна отправить в ответ TCP-пакет с флагом RST для всех закрытых портов. 7. Метод скрытого сканирования «FTP Bounce» позволяет скрыть реальный источник сканирования за счет использования промежуточных файловых FTP-серверов. Для реализации данного метода злоумышленнику достаточно подключиться к одному из общедоступных FTP-серверов, после чего при помощи команды PORT он может попытаться установить соединение со сканируемым хостом по указанному адресу и порту. Далее нарушитель для 56

Лекция 1. Основные понятия и определения в области информационной...

проверки статуса установленного соединения может выполнить команду LIST. При условии, что сканируемый порт открыт, от FTP-сервера он может получить ответ с кодами 150 и 226, в противном случае поступит сообщение с кодом 425 (рис. 1.14). Рассмотренный режим работы протокола FTP более подробно описан в спецификации RFC959. 1. Установление соединения с FTPсервером

3. Попытка установления TCPсоединения по порту, номер которого был получен на втором шаге сканирования

2. Посылка команды PORT c IPадресом и номером порта сканируемого сервера

Компьютер нарушителя

5. Получение ответа с кодом 150/226, если порт открыт или сообщения с кодом 425 в противном случае FTPсервер

4.. Получение TCPпакета с флагами SYN/ACK, если порт является открытым

Серверобъект сканирования

Рис. 1.14. Схема проведения скрытого сканирования с использованием FTP-сервера

8. Метод «Ident» предполагает использование в процессе сканирования одноименной сетевой службы ident, характерной для систем класса UNIX. При помощи данной службы удаленные пользователи имеют возможность получить информацию о текущих сетевых соединениях, установленных с сервером. Для этого пользователю достаточно подключиться к службе ident по 113-му порту и ввести в качестве входных данных номера портов отправителя и получателя, после чего будет получена информация о сетевом соединении, соответствующему введенным параметрам. При помощи перебора значений портов отправителя и получателя потенциальный нарушитель может получить информацию обо всех текущих соединениях и тем самым определить список открытых портов. 9. Метод сканирования UDP-портов, в процессе которого на заданное множество портов посылается пакет UDP. Получение в ответ сообщения «ICMP port unreachable» означает, что порт закрыт. В противном же случае порт считается открытым. Однако с учетом того, что в стандарте, описывающем протокол UDP, не определены методы реагирования на UDP-пакеты, поступающие на закрытые порты, точность этого метода входит в зависимость от типа используемой ОС. Необходимо отметить, что рассмотренные методы сканирования TCP-портов применимы не ко всем ОС. В частности, не57

Powered by TCPDF (www.tcpdf.org)

Лекция 1. Основные понятия и определения в области информационной...

которые типы систем формируют TCP-пакеты с флагом RST по отношению не только к открытым, но и к закрытым портам. В целях маскирования своих действий по сканированию портов узлов АС злоумышленники могут использовать один из следующих способов: •• применение фрагментированных IP-дейтаграмм и TCPпакетов, разделенных на несколько пакетов данных меньшего размера; •• проведение сканирования портов с определенной временной задержкой. Так, например, для того чтобы не вызвать подозрений, злоумышленники могут сканировать лишь по несколько портов в день; •• сканирование хостов от имени ложных хостов путем подмены реального IP-адреса отправителя. Использование всех вышеперечисленных способов маскирования направлено на усложнение процесса обнаружения попыток сканирования средствами защиты АС. После определения списка открытых портов действия нарушителя могут быть направлены на идентификацию прикладных сервисов, которые на них запущены. Для этого, как правило, применяется метод сбора и анализа заголовков ответов (banners) на посланные запросы. В таких заголовках может содержаться информация о типе и версии прикладного ПО, прослушивающего сканируемый порт, и в некоторых случаях информация об ОС и аппаратной платформе узла. Текст заголовка можно получить при помощи стандартных утилит типа «telnet». Так, например, на рис. 1.15 приведен пример заголовка, который был получен в ответ на попытку установить соединение с хостом «ftp.netscape.com» по 21-му порту при помощи telnet. > telnet ftp.netscape.com 21 Trying 207.200.74.26 ... Connected to ftp.netscape.com. Escape character is '^]'. 220 ftp29 FTP server (UNIX(r) System V Release 4.0) ready. SYST 215 UNIX Type: L8 Version: SUNOS Рис.1.15. Вывод утилиты telnet при попытке установить соединение с хостом ftp.netscape.com

58

Лекция 1. Основные понятия и определения в области информационной...

На основе информации, показанной на рис. 1.15, можно определить, что на 21-м порте сканируемого хоста запущен FTPсервер, функционирующий под управлением ОС Sun Solaris. В настоящее время в сети Интернет существует большое количество программных утилит, позволяющих провести сканирование портов и идентификацию сетевых сервисов АС при помощи рассмотренных выше методов. Наиболее распространенными программами этого типа являются «strobe», «netcat», «portscan» и «nmap». Кроме сканирования портов на этапе рекогносцировки нарушитель также может совершать действия, направленные на сбор информации о типе ОС, установленной на узлах системы. Для определения типа ОС может быть использован рассмотренный выше метод сбора и анализа заголовков, возвращаемых сетевыми службами. В тех случаях, когда не представляется возможным определить тип ОС на основе полученных заголовков, можно использовать другой метод, который основан на том факте, что разные системы по-разному реализуют требования стандартов RFC, в которых определены правила взаимодействия на основе различных сетевых протоколов. Таким образом, при формировании одних и тех же сетевых запросов разные ОС в ответ отправляют отличные друг от друга данные, на основе которых можно с большой долей вероятности определить характеристики используемой ОС. Данный метод в некоторых случаях также позволяет определить тип аппаратной платформы, на основе которой функционирует та или иная ОС. Ниже приводится описание методов, которые могут быть использованы для идентификации типа ОС с учетом различных реализаций стека TCP/IP: 1. Метод «FIN Probe», который подразумевает посылку сканируемому хосту TCP-пакета с установленным флагом FIN. Согласно спецификации RFC 793 узлы не должны отвечать на такие сообщения, однако некоторые типы ОС, например, Windows, BSDI, Cisco, HP/UX, MVS и IRIX, отправляют в ответ TCP-пакет с флагами FIN и ACK. 2. Метод «BOGUS flag Probe», при использовании которого сканируемому хосту посылается TCP-пакет с неопределенным флагом. Некоторые ОС передают аналогичный флаг в ответе на такое сообщение. Примером таких ОС является Linux, версия ядра которой меньше 2.0.35. 59

Лекция 1. Основные понятия и определения в области информационной...

3. Метод анализа значений начальных порядковых номеров ISN (Initial Sequence Numbers), которые используются для идентификации TCP-соединения. Данный метод основан на том факте, что различные ОС используют разные способы для генерации номеров ISN. 4. Метод анализа значения флага DF (Don’t Fragment). Некоторые типы ОС устанавливают в отправляемых IP-пакетах флаг DF в целях повышения производительности. 5. Метод анализа начального размера окна TCP. Данный метод позволяет идентифицировать тип ОС на основе значения размерности окна TCP, которое устанавливается различными ОС. Так, например, системы класса Windows используют значение «0x402E», в то время как системы AIX — «0x3F25». 6. Метод анализа номеров подтверждения (Acknowledge Number) в полях TCP-пакетов. Метод базируется на том предположении, что различные типы ОС по-разному формируют значения номеров подтверждения. 7. Метод анализа частоты поступления ICMP-сообщений об ошибках. Согласно стандарту RFC 1812 операционные системы должны ограничивать частоту посылки ICMP-сообщений об ошибках. Некоторые ОС, такие как Linux, выполняют это требование, что делает возможной их идентификацию путем формирования большого количества UDP-пакетов на закрытый порт и анализа частоты поступления сообщений об ошибках. 8. Метод анализа текста сообщений об ошибках в ICMPпакетах. Различные виды ОС отсылают разный объем информации для одних и тех же сообщений об ошибках. Эта особенность позволяет определить тип ОС путем анализа полученного текста сообщения. 9. Метод проверки целостности поступающих ICMP-сообщений об ошибках. Согласно спецификации протокола ICMP все сообщения об ошибках должны также содержать копию исходного IPпакета, в ответ на которой и отсылается сообщение. Однако некоторые ОС модифицируют исходные поля IP-пакета в возвращаемых сообщениях, что дает возможность провести их идентификацию. 10. Метод анализа поля «Type of Service», который основан на проверке поля «ToS» сообщений «ICMP port unreachable». В зависимости от типа ОС в этом поле будут содержаться различные числовые значения. 60

Лекция 1. Основные понятия и определения в области информационной...

11. Метод сканирования на основе фрагментированных IPдейтаграмм. Метод основан на том, что различные ОС по-разному обрабатывают некорректным образом фрагментированные пакеты данных. В зависимости от результатов этой обработки имеется возможность идентифицировать тип ОС. 12. Метод сканирования с использованием различных параметров TCP, который предполагает анализ реакции узла на TCPпакеты с различными значениями в поле «Параметры» (Options). Наиболее распространенной утилитой для идентификации типа ОС является «nmap» (http://www.insecure.org/nmap/), в которой реализовано большинство из рассмотренных методов сканирования ОС. Еще одним методом сбора информации о параметрах системы может являться сканирование прикладных сервисов, работающих в АС. В данном случае для проведения сканирования используются протоколы прикладного уровня стека TCP/IP, которые поддерживаются прикладными сервисами. В качестве примера методов сканирования этой группы можно привести: 1. Метод SNMP-сканирования. Протокол SNMP (Simple Network Management Protocol) предназначен для мониторинга и управления параметрами работы хостов АС. В основу данного протокола заложена модель взаимодействия между агентом и менеджером, в рамках которой в качестве агента выступает управляемый программный модуль, выполняющий функции сбора необходимой информации о работе АС, а также выполнения команд, полученных от менеджера. Агенты SNMP могут быть установлены на рабочих станциях пользователей, серверах, коммуникационном оборудовании и других узлах АС. При этом на стороне агентов информация хранится в специальных структурированных базах данных MIB (Management Information Base). Сканирование заключается в извлечении информации из MIB-баз агентов при помощи SNMP-запросов. Состав информации, которую можно получить при помощи SNMP-сканирования, зависит от структуры баз данных MIB. Так, например, сканирование штатного SNMPагента ОС Windows 2000 может позволить получить список зарегистрированных пользователей, перечень общедоступных файловых ресурсов, имя домена, сведения о запущенных службах и др. 2. Метод NetBIOS-сканирования позволяет использовать одноименный протокол для получения информации о параметрах 61

Лекция 1. Основные понятия и определения в области информационной...

ОС Windows. Данный метод сканирования позволяет получать информацию о зарегистрированных пользователях, общедоступных файловых ресурсах, списке доменов Windows и др. При этом для сбора этой информации могут использоваться штатные утилиты ОС Windows, такие как «net view» и «nbtstat». Метод NetBIOSсканирования основан на возможности анонимного подключения к общедоступному ресурсу IPC$, который по умолчанию присутствует в ОС Windows. 3. Сканирование при помощи сетевого сервиса finger. Служба finger используется в ОС класса UNIX для предоставления удаленным клиентам информации о пользователях, зарегистрированных в системе. Злоумышленник может сформировать запросы к данной службе с целью получения списка пользователей, работающих на сканируемом сервере. 4. Сканирование на основе протокола RPC. Протокол RPC (Remote Procedure Call) обеспечивает возможность взаимодействия распределенных приложений посредством удаленного вызова и исполнения процедур на стороне сервера. Согласно данному протоколу для получения доступа к приложению все клиенты сначала должны подключиться к так называемому картографу портов (RPC portmapper), который предоставляет возможность получения списка приложений, запущенных на сервере, а также номеров портов, по которым они доступны. Эта функциональная особенность протокола RPC может быть использована потенциальным злоумышленником для сбора информации о приложениях, присутствующих в АС. Кроме рассмотренных выше методов сканирования существуют также и другие способы сбора информации, которые могут применяться нарушителем для получения необходимых данных. К ним можно отнести следующие способы: •• анализ сетевого трафика посредством перехвата передаваемых пакетов данных. Для этого злоумышленник может использовать специальные программные анализаторы трафика, при помощи которых можно определить существующие информационные потоки АС, схему адресации узлов, а также типы сетевых сервисов, используемых в АС; •• анализ информации, опубликованной в общедоступных источниках сети Интернет. Примером могут служить данные об особенностях АС организации, которые традиционно могут при62

Лекция 1. Основные понятия и определения в области информационной...

сутствовать на ее DNS-серверах или веб-сайтах. Подобную информацию можно найти в сообщениях интернет-форумов, которые публикуются сотрудниками компании; •• использование методов «социальной инженерии» для сбора необходимой информации у сотрудников компании. Методы этого типа предполагают использование обмана и мошенничества для получения нужных данных. Обобщая сказанное, можно отметить, что основная задача сбора информации на этапе рекогносцировки заключается в поиске уязвимых мест АС, которые могут быть использованы при проведении дальнейших стадий атаки. 1.4.2. Стадия вторжения и атакующего воздействия Методы реализации этапов вторжения и атакующего воздействия зависят от большого числа параметров, таких, например, как откуда проводится атака, что является ее целью, какими средствами защищена система, какие уязвимости используются во время атаки и т.п. Лучшей иллюстрации возможных действий нарушителя в этом случае будет рассмотрение и анализ ряда моделей несанкционированного проникновения в информационные ресурсы. Модель информационной атаки на общедоступный веб-портал

Веб-порталы представляют собой автоматизированные системы, предназначенные для предоставления различных услуг и сервисов через сеть Интернет. Они могут использоваться для решения самых разнообразных задач, таких, например, как реклама в сети Интернет характера деятельности компании, организация интернет-торговли или же обеспечение работы системы «клиентбанк». Этому способствует тот факт, что на сегодняшний день на отечественном рынке информационных технологий представлено несколько готовых промышленных решений, на основе которых возможно построение полнофункциональных веб-порталов. К таким решениям относится семейство продуктов «Internet Information Services» компании Microsoft, «Sun ONE Portal» компании Sun Microsystems и «WebSphere» компании IBM. Типовая архитектура веб-портала, как правило, включает следующие основные компоненты: 63

Лекция 1. Основные понятия и определения в области информационной...

•• публичные веб-серверы, которые обеспечивают доступ пользователей сети Интернет к информационным ресурсам портала; •• кэш-серверы, обеспечивающие временное хранение копии ресурсов, к которым получали доступ интернет-пользователи. При обращении к ресурсам веб-портала первоначально производится попытка извлечения ресурса из памяти кэш-серверов, и при условии отсутствия ресурса запрос передается публичным вебсерверам. Использование кэш-серверов позволяет снизить нагрузку на основные публичные серверы, а также уменьшить время доступа пользователей к кэшированным ресурсам; •• DNS-серверы, обеспечивающие возможность преобразования символьных имен серверов веб-портала в соответствующие им IP-адреса; •• серверы приложений, на которых установлено специализированное программное обеспечение, предназначенное для управления информационным содержимым веб-портала; •• серверы баз данных, которые обеспечивают централизованное хранение информационных ресурсов веб-портала; •• коммуникационное оборудование, обеспечивающее взаимодействие между различными серверами веб-портала. Как правило, серверы веб-порталов размещаются на территории интернет-провайдеров, которые имеют возможность обеспечить необходимую полосу пропускания каналов, по которым серверы портала подключаются к сети Интернет. Управление вебпорталом в этом случае осуществляется удаленно через Интернет с автоматизированных рабочих мест (АРМ) администраторов. Обобщенная архитектура веб-портала изображена на рис. 1.16. Тот факт, что на публичных веб-порталах, как правило, хранится открытая информация, доступная любому пользователю сети Интернет, атаки злоумышленников могут быть направлены на нарушение конфиденциальности и целостности ресурсов портала. Исходя из приведенной выше структуры веб-портала, атаки нарушителей могут быть направлены на пограничные маршрутизаторы, публичные веб-серверы, серверы приложений и баз данных, а также DNS-серверы. Различные варианты реализации атак на эти компоненты веб-портала рассмотрены в табл. 1.4. 64

Лекция 1. Основные понятия и определения в области информационной...

Рис. 1.16. Типовая архитектура веб-портала

Таблица 1.4 Возможные варианты атак на компоненты веб-портала №

Компонент веб-портала

Описание возможных атак на веб-портал

1

Пограничный маршрутизатор

••атаки, направленные на нарушение работоспособности маршрутизатора посредством использования уязвимостей реализации стека TCP/IP. В результате реализации атак данного типа блокируется доступ пользователей к ресурсам веб-портала; ••атаки, направленные на несанкционированное изменение таблиц маршрутизации с целью блокирования корректного перенаправления пакетов данных веб-серверу портала

2

DNS-сервер

••атаки, направленные на нарушение целостности таблиц соответствия символьных имен и IP-адресов веб-сервера. В случае успешного проведения атаки пользователи будут перенаправляться на ложный сервер и не смогут получить доступ к ресурсам портала; ••атаки, направленные на нарушение работоспособности ����������������������������������� DNS�������������������������������� -сервера посредством использования уязвимостей типа «buffer overflow»

65

Лекция 1. Основные понятия и определения в области информационной...

Окончание табл. 1.4 3

Веб-сервер

••распределенные атаки «отказ в обслуживании», направленные на блокирование доступа к серверу посредством формирования большого количества запросов на установление TCPсоединения из различных источников; ••атаки, направленные на искажение документов, хранящихся на сервере при помощи вредоносного кода, запущенного посредством использования уязвимостей типа «format string»

4

Сервер СУБД

••атаки, направленные на искажение содержимого баз данных портала посредством использования уязвимостей «SQL Injection» ••атаки, направленные на нарушение работоспособности сервера СУБД посредством использования уязвимостей «buffer overflow»

Модель атаки, направленной на утечку конфиденциальной информации

Информационные атаки, направленные на утечку конфиденциальной информации, могут быть подразделены на два типа  — внешние и внутренние. Источник внешних информационных атак находится за пределами АС, поэтому для их реализации злоумышленник должен сначала получить несанкционированный доступ к одному из внутренних ресурсов системы. Для этого, как правило, первоначально проводится атака на сетевые службы, доступные из сети Интернет, такие как веб-сервисы, почтовые службы, файловые сервисы и др. В случае успешной атаки на эти ресурсы они могут быть использованы в качестве плацдарма для проведения атаки изнутри АС. Однако наиболее опасными являются внутренние атаки, в которых в качестве потенциальных злоумышленников часто выступают сотрудники компании. При этом такие сотрудники имеют легальный доступ к конфиденциальной информации, который им необходим для выполнения своих функциональных обязанностей. Целью такого рода нарушителей является передача информации за пределы АС с целью ее последующего несанкционированного использования — продажи, опубликования ее в открытом доступе и т.д. В этом случае можно выделить следующие возможные каналы утечки конфиденциальной информации (рис. 1.17): 66

Лекция 1. Основные понятия и определения в области информационной...

•• несанкционированное копирование конфиденциальной информации на внешние носители и вынос ее за пределы контролируемой территории предприятия. Примерами таких носителей являются floppy-диски, компакт-диски CD-ROM, Flash-диски и др.; •• вывод на печать конфиденциальной информации и вынос распечатанных документов за пределы контролируемой территории. Необходимо отметить, что в данном случае могут использоваться как локальные принтеры, которые непосредственно подключены к компьютеру злоумышленника, так и удаленные, взаимодействие с которыми осуществляется по сети; •• несанкционированная передача конфиденциальной информации по сети на внешние серверы, расположенные вне контролируемой территории предприятия. Так, например, зло­ умышленник может передать конфиденциальную информацию на внешние почтовые или файловые серверы сети Интернет, а затем загрузить ее оттуда, находясь в дома или в любом другом месте. Для передачи информации нарушитель может использовать протоколы SMTP, HTTP, FTP или любой другой протокол в зависимости от настроек фильтрации исходящих пакетов данных, применяемых в АС. При этом с целью маскирования своих действий нарушитель может предварительно зашифровать отправляемую информацию или передать ее под видом стандартных графических или видеофайлов при помощи методов стеганографии; •• хищение носителей, содержащих конфиденциальную информацию, — жестких дисков, магнитных лент, компакт-дисков CD-ROM и др.

Рис. 1.17. Каналы утечки конфиденциальной информации

67

Лекция 1. Основные понятия и определения в области информационной...

Модель вирусной сетевой атаки на внутренние информационные ресурсы АС

Информационный вирус представляет собой специально созданный программный код, способный самостоятельно распространяться в компьютерной среде. В настоящее время можно выделить следующие типы вирусов: файловые и загрузочные вирусы, «сетевые черви», бестелесные вирусы, а также комбинированный тип вирусов. В данном разделе рассматривается лишь одна из разновидностей вирусов — «сетевые черви», которые распространяются в системе посредством использования имеющихся уязвимостей программного обеспечения. Вот лишь несколько примеров компьютерных вирусов данного типа, которые основываются на уязвимостях типа «buffer overflow»: •• «W32.Blaster.Worm», базирующийся на уязвимости «buffer overflow» в службе DCOM RPC ОС Windows 2000/XP; •• «W32.Slammer.Worm» — его распространение по сети осуществляется на основе переполнения буфера в одной из подпрограмм сервера СУБД Microsoft SQL Server 2000; •• «W32.Sasser.Worm», инфицирующий хосты путем использования уязвимости «buffer overflow», содержащейся в системной службе LSASS. Источники вирусных угроз безопасности могут находиться как внутри, так и вовне АС. Внутренние угрозы связаны с действиями пользователей и персонала, обслуживающего АС. Внешние угрозы связаны с вирусными атаками из сети Интернет или других сетей связи общего пользования, к которым подключена АС (рис. 1.18).

Рис. 1.18. Возможные источники инфицирования узлов АС

68

Лекция 1. Основные понятия и определения в области информационной...

Инфицирование АС вирусами может осуществляться посредством локального или сетевого взаимодействия с узлами АС. Локальное взаимодействие предполагает использование съемных носителей, таких как диски CD-ROM или DVD-ROM, floppy- и zip-диски, USB-диски, а также карты дополнительной памяти, которые применяются в мобильных устройствах, таких как PDA, смартфоны, фотоаппараты и т.д. Инфицирование АС в этом случае может осуществляться посредством загрузки хоста с зараженного носителя или запуска зараженного файла. При этом съемные носители могут подключаться к хостам АС при помощи внешних портов типа USB, FireWire, COM, LPT и др. Для инфицирования АС через сетевое взаимодействие может быть использован один из следующих базовых методов: •• электронная почта. В соответствии с результатами последних исследований ассоциации ICSA электронная почта является основным каналом проникновения вирусов в АС. В большинстве случаев рассылка вируса осуществляется по тем адресам, которые входят в состав адресных книг, хранящихся на зараженных хостах. При этом для передачи инфицированных почтовых сообщений вирусы могут использовать как штатные почтовые клиенты, установленные на хостах, так и в виде собственного клиентского ПО, интегрированного в код вируса. Инфицирование вирусами может осуществляться по любым протоколам, обеспечивающим возможность передачи почтовых сообщений — SMTP, POP3, IMAP и др.; •• пиринговые сети P2P (Peer-To-Peer), которые представляют собой файлообменные сети, для подключения к ним должно использоваться специализированное ПО. Примерами таких сетей являются «eDonkey», «DirectConnet», «BitTorrent» и «Kazaa». За последние несколько лет было зафиксировано несколько видов вирусов, которые распространяли инфицированные файлы через сети данного типа; •• сетевые каталоги и файлы, в которых хранится информация общего доступа. Данный метод инфицирования АС предполагает удаленное заражение файлов, расположенных в общедоступных каталогах. Эти каталоги также могут быть использованы для копирования в них инфицированных файлов. Доступ вирусов к сетевым каталогам и файлам может осуществляться по таким протоколам, как SMB, NFS, FTP и др.; 69

Лекция 1. Основные понятия и определения в области информационной...

•• система обмена мгновенными сообщениями (instant messaging). На сегодняшний день большинство систем данного типа, таких, например, как ICQ и Windows Messenger, позволяют обмениваться не только текстовыми сообщениями, но и файлами. Эта функциональная возможность может быть использована вирусами для своего распространения среди пользователей, которые применяют на своих рабочих станциях системы обмена сообщениями; •• протоколы доступа к интернет-ресурсам. Инфицированные файлы могут попасть в АС из сети Интернет по таким протоколам, как HTTP, FTP, NNTP и др. При этом заражение хоста через протокол HTTP может осуществляться посредством передачи не только инфицированных файлов, но и ActiveX-объектов, Java-аплетов, а также JavaScript/VBScript-сценариев; •• протоколы доступа к внутренним корпоративным информационным ресурсам, таким как DCOM, CORBA, TDS, RPC и др. Вирусные атаки могут быть направлены на рабочие станции пользователей, серверы, коммуникационное оборудование и каналы связи. Как правило, сетевые вирусные атаки приводят к следующим последствиям: •• нарушение работоспособности инфицированных хостов; •• нарушение работоспособности определенных сетевых сервисов, запущенных на инфицированных хостах; •• нарушение работоспособности каналов связи в результате генерации большого объема трафика. Модель атаки на рабочие станции пользователей, работающих с интернет-ресурсами

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

Лекция 1. Основные понятия и определения в области информационной...

клиенты, FTP-клиенты для загрузки файлов и др. Для успешного проведения атаки клиентской программы должен поступить вредоносный код, предназначенный для использования имеющейся в ней уязвимости. Для этого нарушитель может сделать так, чтобы пользователь при помощи интернет-браузера обратился к ресурсу определенного веб-сайта, с которого автоматически на компьютер пользователя будет загружен вредоносный код. Еще одним способом проведения атаки является посылка пользователю электронного письма, содержащего вредоносный код, который автоматически будет запущен при просмотре почтового сообщения. Ниже приводится список наиболее распространенных уязвимостей интернет-браузеров, на основе которых злоумышленники могут реализовывать информационные атаки: 1. Уязвимости типа «buffer overflow», при помощи которых нарушитель может запустить на стороне рабочей станции произвольный вредоносный код. 2. Неправильная конфигурация интернет-браузера, позволяющая загружать вредоносные объекты ActiveX. ActiveX-объекты представляют собой полноценные программные приложения, имеющие высокие привилегии работы в ОС. 3. Уязвимости в реализации виртуальной машины Java, интегрированной в интернет-браузеры. Данную уязвимость могут использовать Java-аплеты, являющиеся специальными программами, которые выполняются в среде браузера. В результате использования таких уязвимостей может быть нарушена работоспособность браузера или собрана информация о компьютере, на котором запущен Java-аплет. 4. Ошибки в ПО браузера, позволяющие получать несанкционированный доступ к файловым ресурсам рабочих станций. Уязвимости данного типа могут быть использованы при помощи сценариев JavaScript/VBScript, запускаемых при доступе пользователя к ресурсам веб-сайта злоумышленника. 5. Ошибки в ПО браузера, которые могут использоваться злоумышленниками для подделки веб-сайтов. На основе уязвимости данного типа может быть проведена атака, в результате которой пользователь будет перенаправлен на веб-сайт нарушителя, в то время как в адресной строке браузера будет отображаться имя легального информационного ресурса. 71

Лекция 1. Основные понятия и определения в области информационной...

Рассмотренные уязвимости характерны для большинства современных интернет-браузеров, включая Internet Explorer, Mozilla FireFox и Opera, для которых не установлены соответствующие модули обновления программного обеспечения. 1.4.3. Стадия дальнейшего развития атаки На последней стадии проведения информационной атаки злоумышленник может совершать следующие основные группы действий: •• установка вредоносного ПО на атакованный узел с целью получения удаленного канала управления; •• использование атакованного узла в качестве плацдарма для проведения атаки на другие узлы АС; •• скрытие своих следов присутствия в системе. После того как злоумышленник, посредством использования различных уязвимостей, получит несанкционированный доступ к ресурсам узла АС, для него не составляет проблемы установить на этот узел вредоносное программное обеспечение типа «троянский конь» (Trojan Hors). В настоящее время можно выделить два основных вида программ «троянский конь»: •• программы типа RAT (Remote Access Trojans) или «Backdoor», предоставляющие злоумышленнику возможность удаленного несанкционированного доступа к хостам АС. Примерами таких программ являются «BackOrifice», «SubSeven», «Cafeene» и др.; •• программы типа «Rootkits», которые представляют собой набор специализированных программных средств, позволяющих нарушителю получить удаленный доступ к хостам АС, а также выполнять действия по перехвату клавиатурного ввода, изменению журналов регистрации, подмены установленных приложений и т.д. Как правило, троянские программы маскируются под штатное ПО операционной системы, что осложняет процесс их выявления и удаления из АС. Программы данного класса предполагают наличие удаленного канала управления, при помощи которого нарушитель может выполнять команды на хостах. Каналы управления троянскими программами могут быть двух типов: 1) канал, в котором инициатором соединения является узел злоумышленника. Такой метод управления предполагает запуск на инфицированном компьютере сетевой службы, прослушивающей 72

Лекция 1. Основные понятия и определения в области информационной...

определенный TCP- или UDP-порт. При возникновении необходимости в передаче команды управления программа нарушителя устанавливает соединение с хостом и посылает заданную информацию. Характерной особенностью каналов управления данного типа является использование нестандартных номеров портов и протоколов, по которым передаются команды программам типа «троянский конь»; 2) канал, в рамках которого команды передаются по инициативе троянской программы. При использовании такого метода управления троянская программа с заданной периодичностью подключается к внешнему ресурсу и получает от него определенные команды. Как правило, передача команд управления в этом случае осуществляется по стандартным протоколам сети Интернет, таким как SMTP, POP3 или HTTP. Обнаружение несанкционированных каналов управления данного типа осложнено тем, что в процессе их работы не практикуется использование специфических протоколов или номеров портов. Кроме троянских программ нарушитель может установить на рабочую станцию пользователя и другой вид вредоносного ПО — «spyware» или «adware». Программы типа «spyware» предназначены для сбора определенной информации о работе пользователя. Примером таких данных может служить: список веб-сайтов, посещаемых пользователем, список программ, установленных на рабочей станции пользователя, содержимое сообщений электронной почты и др. Собранная информация перенаправляется программами «spyware» на заранее определенные адреса в сети Интернет. Вредоносное ПО данного типа может являться потенциальным каналом утечки конфиденциальной информации из АС. Основная функциональная задача вредоносных программ класса «adware» заключается в отображении рекламной информации на рабочих станциях пользователей. Для этого, как правило, данные программы показывают на экране пользователя рекламные баннеры, содержащие информацию о тех или иных товарах и услугах. В большинстве случаев программы «adware» распространяются вместе с другим ПО, которое устанавливается на узлы АС. Несмотря на то что программы типа «adware» не представляют непосредственную угрозу для конфиденциальности или целостности информационных ресурсов АС, их работа может приводить к нарушению доступности вследствие несанкционированного ис73

Лекция 1. Основные понятия и определения в области информационной...

пользования вычислительных ресурсов рабочих станций. Кроме того, программы «adware» могут отвлекать пользователей от выполнения своих служебных обязанностей из-за необходимости выполнять действия, связанные с закрытием диалоговых окон с рекламной информацией. На основе удаленного канала управления, установленного при помощи программ типа «троянский конь», злоумышленники могут использовать скомпрометированные узлы в качестве стартовой площадки для проведения других атак. При этом анонимность атаки обеспечивается за счет того, что реализуется она фактически от имени чужих узлов. Вот лишь некоторые примеры действий, которые может совершать нарушитель при помощи узлов: •• рассылка спама. Для этого на контролируемые злоумышленником узлы устанавливается ПО почтового сервера, при помощи которого осуществляется массовая рассылка почтовой коррес­ понденции; •• проведение распределенных атак типа «отказ в обслуживании». В этом случае по команде злоумышленника узлы, находящиеся под его контролем, могут начать одновременную атаку на указанный хост. Примером такой атаки может являться генерация большого количества запросов на установление соединения, в результате которых может быть заблокирован доступ к атакованному хосту; •• проведение сканирования подсети, в которой расположен скомпрометированный узел. Для этого выполняются действия, относящиеся к стадии рекогносцировки жизненного цикла атаки. Для снижения риска обнаружения информационной атаки злоумышленник может применять различные методы сокрытия следов своего присутствия в АС. Для этого, в первую очередь, осуществляется удаление записей журналов регистрации, которые могут указывать на признаки проведения атаки. При этом удаляется информация не только из системных журналов, таких как SysLog или EventLog, но и из журналов прикладного ПО, на которое совершалась атака. Так, например, если была проведена атака на веб-сервер Microsoft IIS, то данные о действиях нарушителя могут быть сохранены в журнале этого сервера. Помимо очистки журналов аудита нарушителем могут совершаться действия и по маскированию вредоносного ПО, которое было установлено в системе. Для этого файлы вредоносных про74

Лекция 1. Основные понятия и определения в области информационной...

грамм могут заменять собой файлы компонентов ОС. В данном случае изменения могут быть незамечены, поскольку не изменится состав файлов, хранящихся на компьютере.

1.5. Возможные последствия информационных атак Последствия, к которым могут привести информационные атаки, могут рассматриваться исходя из той или иной ситуации. Так, например, последствие одной и той же атаки может сводиться к искажению системного файла на сервере для системного администратора, в то время как для руководителя компании — к приостановке одного из важнейших бизнес-процессов предприятия. Для систематизации различных критериев, при помощи которых можно описывать последствия атак, была разработана их классификация, которая показана на рис. 1.19. Основным критерием здесь является свойство информации, к нарушению которого может привести успешная атака на ресурсы АС. Иными словами любая информационная атака может в конечном счете привести к нарушению конфиденциальности, целостности или доступности информационных ресурсов АС.

Рис. 1.19. Классификация последствий атак на АС

75

Лекция 1. Основные понятия и определения в области информационной...

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

Лекция 1. Основные понятия и определения в области информационной...

Последствия информационных атак могут воздействовать на аппаратное, общесистемное или прикладное программное обеспечение, а также на информацию, которая хранится в АС. Так, например, воздействие на аппаратное обеспечение может быть направлено на несанкционированное изменение памяти микросхемы BIOS, расположенной на материнской плате инфицированного компьютера. В результате такой атаки может быть изменен пароль доступа к настройкам BIOS или полностью искажено содержимое памяти BIOS, что приведет к блокированию возможности загрузки компьютера. Восстановление работоспособности хоста в этом случае может потребовать перепрограммирования памяти BIOS. В процессе воздействия на общесистемное и прикладное программное обеспечение информационные атаки могут привести к модификации компонентов операционных систем, а также тех программ, которые установлены. Для ликвидации последствий этого типа необходимо провести восстановление отдельных файлов или переустановку инфицированных программ. Воздействие атак на информационном уровне направлено на объекты данных, которые обрабатываются общесистемным и прикладным ПО АС. Примерами таких объектов могут являться файлы, таблицы баз данных, хранилища электронной почты, адресные книги пользователей и др.

Лекция 2

Модели защиты автоматизированных систем от информационных атак

Интенсивное внедрение новых информационных технологий в АС предприятий и организаций различного уровня и назначения заставляет уделять серьезное внимание проблеме разработки и внедрения средств защиты АС от атак нарушителей. Для снижения трудоемкости работ по созданию, внедрению и оценке эффективности средств защиты применяются специализированные математические модели. В лекции 2 приведены результаты сравнительного анализа следующих типов моделей: •• моделей информационных атак, предназначенных для воспроизведения необходимых свойств и характеристик атак. Модели этого типа позволяют в лабораторных условиях провести исследование характеристик определенной атаки для того, чтобы определить, какие средства защиты могут использоваться для ее нейтрализации; •• моделей процесса обнаружения информационных атак, позволяющих формально описать процесс выявления атак на информационные ресурсы АС; •• моделей процесса оценки рисков информационной без­ опасности АС, которые позволяют определить эффективность применения всей системы обеспечения безопасности АС в целом.

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

Лекция 2. Модели защиты автоматизированных систем от информационных атак

•• возможность учета в модели последовательности действий, совершаемых нарушителем в процессе проведения информационной атаки; •• уровень детализации модели.

Рис. 2.1. Классификация моделей информационных атак

Необходимо отметить, что для эффективного использования моделей атак для исследования возможных действий нарушителя по отношению к АС они должны обладать следующими основными свойствами: •• универсальность — позволяет использовать модель для представления различных типов атак вне зависимости от источника, объекта и средства реализации атаки; •• расширяемость — обеспечивает возможность добавления в модель новых характеристик атаки. Это свойство позволяет пользователю изменять состав характеристик моделируемых атак в зависимости от среды АС, в которой они рассматриваются; •• формализуемость — свойство, которое указывает на возможность использования математического аппарата для описания параметров модели; 79

Лекция 2. Модели защиты автоматизированных систем от информационных атак

•• простота — дает возможность пользователю легко воспринимать структуру и способы реализации моделируемой атаки; •• многофакторность — позволяет учитывать три основных параметра моделируемой информационной атаки: уязвимость, активизируемая атакой, способ реализации атаки и ее возможные последствия. Первые модели информационных атак на ресурсы АС были разработаны в середине 1990-х гг. и представляли собой неформальное табличное или диаграммное описание действий нарушителя. Во второй половине 1990-х гг. были опубликованы первые научные работы, описывающие формализованные представления информационных атак. Ниже приведены результаты анализа характеристик табличных, диаграммных и формализованных моделей информационных атак. 2.1.1. Табличные и диаграммные модели информационных атак Одна из первых диаграммных моделей информационных атак была разработана Дж. Говардом. Эта модель включает семь параметров, описание которых приведено в табл. 2.1. Таблица 2.1 Описание параметров модели информационной атаки Дж. Говарда Наименование параметра

Описание параметра

Категория нарушителей

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

Средства реализации атаки

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

80

Лекция 2. Модели защиты автоматизированных систем от информационных атак

Наименование параметра

Описание параметра

Тип активизируемой уязвимости

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

Метод атаки

Определяет один из двух возможных методов реализации атаки — получение НСД к информации или несанкционированное искажение информации

Объект атаки

Определяет тип объекта, на который осуществляется атака. В модели имеется возможность определить два значения параметра — файлы или данные, находящие в процессе передачи в АС

Последствие атаки

Определяет одно из четырех возможных последствий информационных атак: искажение информации, нарушение конфиденциальности информации, кража информации или нарушение работоспособности одного из узлов АС

Цели атаки

Определяет возможные цели проведения атаки

Модель Дж. Говарда, базирующаяся на рассмотренных выше параметрах, имеет вид диаграммы, изображенной на рис. 2.2. Основными преимуществами рассмотренной выше модели являются ее универсальность и простота, что позволяет за короткий промежуток времени составить диаграмму атаки. Кроме того, она характеризуется многофакторностью и учитывает три базовых параметра информационной атаки: уязвимость, метод реализации атаки и ее последствия. И все же, несмотря на положительные стороны, основными недостатками модели являются ее статичность и неспособность к расширению. В модели задано фиксированное множество параметров с заранее определенными значениями, что не позволяет ее использовать для описания атак, базирующихся на новых типах уязвимостей или приводящих к новым последствиям, отсутствующим в параметрах модели.

81

Лекция 2. Модели защиты автоматизированных систем от информационных атак Средства реализации атаки ПользоваХакеры тельские команды Сценарии Шпионы или программы Автономные прогТеррористы раммные модули => => Комплексы Сотрудники программных компаний средств РаспреПрофессио­ деленные нальные препрограммные ступники средства Средства перехвата и Вандалы анализа информации Категория нарушителей

Объект атаки Файлы

=>

Данные, находящиеся в процессе передачи через АС

=>

Тип уязвимости

Метод атаки

Уязвимость этапа проектирования АС

Уязвимость этапа разработки и реализации АС

Получение НСД к информации

=>

Несанкционированное искажение информации в АС

Уязвимость этапа настройки конфигурационных параметров АС

Последствие атаки Искажение информации Нарушение конфиденциальности информации

=>

Цели атаки Нанесение ущерба АС

=>

Получение финансовой выгоды

Кража информации

Получение политической выгоды

Нарушение работоспособности одного из узлов АС

Приобретение более высокого статуса

Рис. 2.2. Диаграмма модели информационной атаки Дж. Говарда

Примером табличной модели информационной атаки является разработка Г. Амора. Его модель базируется на трех группах параметров: последствия атаки, источник атаки и методы ее реализации. Значения первых двух групп параметров указываются 82

Лекция 2. Модели защиты автоматизированных систем от информационных атак

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

Источники атаки Администраторы АС

Программисты

Операторы ввода данных

Внутренние пользователи

Внешние пользователи

Кража и уничтожение носителей информации











Внедрение в ПО АС недекларированных функций удаления данных









Внедрение в ПО АС недекларированных функций искажения данных

Ввод ложных данных





Нарушение работоспособности одного из сетевых сервисов АС



Внедрение в ПО АС недекларированных функций блокирования работы сервисов АС







Кража информации







Физическое уничтожение носителей информации

Удаление информации

Искажение информации

Получение Получение НСД к НСД к информа- информации ции

Рис. 2.3. Пример табличной модели информационной атаки Г. Амора

83

Лекция 2. Модели защиты автоматизированных систем от информационных атак

Проведенный анализ рассмотренной модели информационной атаки показал, что ее основными преимуществами являются простота и универсальность. К недостаткам модели можно отнести следующие: •• модель не учитывает уязвимости, на основе которых реализуются информационные атаки; •• отсутствует возможность определения сценариев реализации информационной атаки, учитывающих последовательность действий нарушителя; •• модель включает только три группы параметров и не может быть расширена из-за статичной табличной формы представления; •• в модели не предусмотрено формальное описание атаки. Другим примером диаграммной формы представления информационной атаки является модель Ф. Коена. Эта модель состоит из трех параметров, на основе которых при помощи графической диаграммы описывается причинно-следственная связь между источниками, механизмами реализации атак и их последствиями (рис. 2.4).

Рис. 2.4. Диаграмма модели информационной атаки Ф. Коена

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

Лекция 2. Модели защиты автоматизированных систем от информационных атак

делить эти два понятия. Важно отметить, что эта особенность модели не позволяет различать две атаки, которые, используя одни и те же механизмы реализации, активизируют различные уязвимости. Это является недостатком модели, существенно уменьшающим количество информационных атак, которые могут быть представлены с ее помощью. Вместе с тем необходимо отметить, что помимо графического представления модель Ф. Коена предусматривает и текстовое описание моделируемых атак. В этом случае атака представляется в виде фрагмента текста, описывающего элементы всех трех перечисленных выше параметров диаграммы. 2.1.2. Формализованные модели информационных атак В настоящее время наибольшее распространение получила формализованная модель информационной атаки, разработанная Б. Шнайером. В качестве основополагающей конструкции здесь выступает иерархическое дерево G = < L, E >, где L — множество вершин дерева, E — множество дуг дерева. Каждая вершина дерева G ассоциируется с определенным действием нарушителя, а корень дерева обозначает конечную цель информационной атаки. На графе G имеется возможность составить множество возможных путей Gp, где каждый путь gp ∈ Gp представляет собой последовательность дуг (ep1, ep2,...,epn) вида epk = (li, lj) li, lj ∈ L, при этом конечная вершина дуги epk одновременно является начальной вершиной дуги epk+1. В качестве начальной вершины пути могут выступать листья дерева G, а в качестве конечной вершины — корень дерева G. Таким образом, каждый элемент множества Gp описывает один из возможных сценариев проведения информационной атаки. Дуги дерева G могут связываться на основе двух типов логических связок — «И» и «ИЛИ». На рис. 2.5 изображен фрагмент дерева атак Gq0, построенного на основе логической связки «И». Корень этого дерева — вершина lq0 ∈ Lq0 — обозначает действие нарушителя, для выполнения которого злоумышленник первоначально должен осуществить все операции, которые обозначаются элементами {lqi ∈ Lq0}i ∈[1, n] (где n — мощность множества Lq0). При этом последовательность действий, выполняемых нарушителем, определяется индексами вершин, т.е. первым выполняется действие, ассоциированное с вершиной lq1 ∈ Lq0, а последним — lqn ∈ Lq0. 85

Лекция 2. Модели защиты автоматизированных систем от информационных атак

Рис. 2.5. Фрагмент дерева атак, построенного на основе логической связки «И»

Пример фрагмента другого дерева атак Gr0, построенного на основе логической связки «ИЛИ», показан на рис. 2.6.

Gr 0   Lr 0 , E r 0  Lr 0  {lr 0 , lr 1 , lr 2 , ..., lr n } — множество вершин E r 0  {(lr 0 , lr 1 ), (lr 0 , lr 2 )} — множество дуг

Графическое представление дерева Gr 0:

Текстовое представление дерева Gr 0:

lr 0

lr 1

lr 2

lr 0 «ИЛИ» lr 1

...

lr 2 ... lr n

lr n

Рис. 2.6. Фрагмент дерева атак, построенного на основе логической связки «ИЛИ»

Вершина lr0 ∈ Lr0 изображенного выше дерева Gr0 также обозначает действие нарушителя, перед выполнением которого он должен выполнить любое из действий, которые обозначаются элементами {lri ∈ Lr0 }i ∈[1,n] (где n — мощность множества Lr0). Деревья атак могут одновременно включать дуги, построенные на основе логических связок «И» и «ИЛИ». Это позволяет использовать деревья атак для построения сложных сценариев 86

Лекция 2. Модели защиты автоматизированных систем от информационных атак

информационного вторжения в АС. Рассмотрим пример модели сетевой атаки на веб-сервер, представленной в виде дерева G = . Определим множества L и E следующим образом: L = {l0 — нарушение работоспособности веб-сервера, l1 — определение IP-адреса веб-сервера, l2 — определение типа ОС веб-сервера, l3 — сбор информации о прикладном ПО веб-сервера, l4 — активизация уязвимостей ПО веб-сервера, l5 — анализ ответов веб-сервера на TCP-запросы, l6 — анализ ответов веб-сервера на UDP-запросы, l7 — анализ ответов веб-сервера на ICMP-запросы, l8 — анализ заголовков ответов веб-сервера на HTTP-запросы, l9  — сбор информации о CGI-модулях веб-сервера, l10 — активизация уязвимости, связанной с переполнением буфера одного из модулей веб-сервера, l11 — формирование большого количества запросов на установление TCP-соединения с целью нарушения работоспособности веб-сервера}. E = {(l1, l0 ), (l2, l0 ), (l3, l0 ), (l4, l0 ), (l5, l2), (l6, l2), (l7, l2 ), (l8, l3), (l9, l3), (l10, l4), (l11, l4)} Графическое и текстовое представления дерева сетевой атаки, построенного на основе определенных множеств L и E, показаны на рис. 2.7. Графическое представление дерева G: l0 l1

l2

l3

l4

l5 l6 l7 l8 l9 l10 l11

Текстовое представление дерева G: l0 — нарушение работоспособности вебсервера; «И» l1 — определение IPадреса вебсервера; l2 — определение типа ОС вебсервера; «ИЛИ» l5 — анализ заголовков вебсервера на TCPзапросы; l6 — анализ заголовков вебсервера на UDPзапросы; l7 — анализ ответов вебсервера на ICMPзапросы; l3 — сбор информации о прикладном ПО вебсервера; «И» l8 — анализ заголовков ответов вебсервера на HTTPзапросы; l9 — сбор информации о GGIмодулях вебсервера; l4 —активизация уязвимостей ПО вебсервера; «ИЛИ» l10 — активизация уязвимости, связанной с переполнением буфера; l11 — формирование большог количества запросов на установление TCPсоединения

Рис. 2.7. Пример дерева сетевой атаки на веб-сервер

87

Лекция 2. Модели защиты автоматизированных систем от информационных атак

Рассмотренная выше модель Б. Шнайера имеет несколько важных преимуществ: •• имеется возможность формального описания модели в терминах математического аппарата теории деревьев; •• расширение модели атаки осуществляется путем добавления новых элементов в множества вершин и дуг деревьев, описывающих атаку; •• представление модели в текстовом и графическом видах облегчает ее использование; •• имеется возможность моделирования сложных информационных атак, предусматривающих несколько сценариев реализации. К числу наиболее существенных недостатков модели Б. Шнайе­ ра следует отнести следующее: •• с помощью вершин деревьев атак описывается интегральное понятие «действие нарушителя», что не позволяет четко выделить уязвимость АС, на основе которой реализуется атака, установить методы реализации информационной атаки, а также ее возможные последствия; •• в качестве основополагающей конструкции для моделирования атаки используется дерево, что налагает определенные ограничения на структуру графического представления модели. Так, например, модель не позволяет описывать атаки, приводящие одновременно к нескольким различным последствиям. В качестве еще одного примера формализованной модели информационной атаки можно привести модель, разработанную в Санкт-Петербургском институте информатики и автоматизации РАН (СПИИ РАН). Она включает два уровня концептуального описания информационной атаки — макро- и микроуровень. На макроуровне задается общий сценарий информационной атаки. Сценарий описывается множеством возможных последовательностей действий нарушителя. Каждое действие нарушителя в рамках сценария направлено на достижение частных целей, таких, например, как сбор информации об атакуемой АС, преодоление системы аутентификации, повышение или несанкционированное получение прав доступа к информации, искажение информационных ресурсов, удаление следов присутствия нарушителя в АС. Эти действия могут быть реализованы в различном, хотя и не в произвольном порядке, повторяться и выполняться с различных узлов АС. 88

Лекция 2. Модели защиты автоматизированных систем от информационных атак

Микроуровень определяет более детальную спецификацию сценария проведения атаки. Каждое действие сценария макро­ уровня на микроуровне состоит из последовательности событий. Этими событиями являются конкретные команды операционной системы, запускаемые приложения и программы нарушителя с конкретными параметрами вызова. Пример двухуровневой модели информационной атаки показан на рис. 2.8. Эта модель включает три основных стадии: сбора и анализа информации о предполагаемом объекте атаки, поражения узла АС и распространения атаки. На макроуровне модели в обобщенном виде определяются действия нарушителя, направленные на реализацию различных стадий атаки. На микроуровне с более высокой степенью детализации указаны примеры конкретных атакующих воздействий, при помощи которых можно выполнить ту или иную цель нарушителя. Описанные выше уровни концептуальной модели атак на АС могут быть заданы формально. На макроуровне каждая последовательность действий нарушителя может рассматриваться как слово, принадлежащее языку, специфицируемому посредством некоторой формальной грамматики. Описание обобщенного сценария атаки посредством стохастической грамматики, дерево разбора которой соответствует рис. 2.8, имеет следующий вид: GA=, где VN — множество нетерминальных символов, которые обозначают шаги атаки макроуровня, VN = {I, E, M, I,… ,E2, E21, E22, E23, E24, E25, E26,…}; VT — множество терминальных символов, которые ставятся в соответствие действиям микроуровня атаки; S — начальный символ сценария атаки; P — множество правил вывода, описывающих операции детализации сценария атаки посредством замены символов. Каждая заt  β мена символа осуществляется с заданной вероятностью: α → (α — нетерминальный символ, β — строка из терминальных и нетерминальных символов, t — вероятность замены символа). Значения вероятностей используются для определения вероятности проведения определенного этапа моделируемой атаки. В соответствии со сценарием атаки, изображенным на рис. 2.8, можно привести следующие примеры элементов множе11 12 13 21 ства P: S P → I , S P → I E , S P → I E M, …, E2 P → E21, P22 P23 25 24 E2  →  E22, E2 → E23, E2 P → E24, E2 P → E25, 26 E2 P → E26. 89

Рис. 2.8. Обобщенное представление сценария атаки на двух уровнях

Лекция 2. Модели защиты автоматизированных систем от информационных атак

90

Лекция 2. Модели защиты автоматизированных систем от информационных атак

Характерно, что двухуровневая концептуальная модель информационной атаки СПИИ РАН во многом аналогична рассмотренной выше модели, разработанной Б. Шнайером. Модель СПИИ РАН также представляется в виде древовидной структуры и может быть расширена путем добавления новых элементов в множества терминальных и нетерминальных символов или посредством расширения правил вывода. Кроме того, двухуровневая модель может быть представлена как в текстовом, так и в графическом виде. Основным же недостатком двухуровневой модели СПИИ РАН является отсутствие параметра, характеризующего уязвимость АС, на основе которой выполняется действие нарушителя. Сравнительные характеристики рассмотренных моделей информационных атак приведены в табл. 2.2. Таблица 2.2 Сравнение характеристик моделей информационных атак Характеристика модели Универсальность Расширяемость Формализуемость Простота восприятия Многофакторность Возможность описывать сложные сценарии атак

Дж. Говарда + — —

Г. Амора

Модель Ф. Коена

+ — —

+

+ + —

Б. Шнайера + + +

СПИИ РАН + + +

+

+

+

+

+



+











+

+

Результаты проведенного анализа показывают, что в моделировании информационных атак сложилась тенденция разработки моделей, обладающих такими свойствами, как универсальность, расширяемость, формализуемость и простота. Наиболее перспективными с этой точки зрения представляются модели, разработанные Б. Шнайером и СПИИ РАН, поскольку они обладают наибольшим числом перечисленных свойств. Однако ни одна из этих моделей не позволяет одновременно учесть три основных параме91

Лекция 2. Модели защиты автоматизированных систем от информационных атак

тра атаки — уязвимость, активизируемая атакой, метод ее реализации и возможные последствия. Другими словами, остаются нерешенными вопросы многофакторности модели. Эти недостатки были устранены в модели, описание которой приведено ниже. 2.1.3. Математическая модель информационных атак, построенная на основе теоретико-множественного аппарата Математическая модель информационных атак базируется на следующих трех основных множествах: V — множество уязвимостей АС, A — множество методов реализации атак и C — множество последствий атак. Для описания взаимосвязи между элементами множеств A, V и C определим тернарное отношение W на множестве U = A × V × C. Принадлежность элемента (a, v, c) отношению W, где a ∈ A, v ∈ V, c ∈ C, интерпретируется следующим образом: «Информационная атака, реализуемая нарушителем методом a путем активизации уязвимости v и приводящая к последствию c». С каждой уязвимостью vi ∈ V связано множество Ai, являющееся подмножеством множества A и включающее информационные атаки, направленные на активизацию уязвимости vi. При этом 0