Информационная безопасность_7л_ВИР.ppt
- Количество слайдов: 75
Информационная безопасность Лебедева Т. Ф.
Защита программного обеспечения 1 Любая информационная система предполагает использование программных средств разного назначения в едином комплексе. Например, система автоматизированного документооборота включает: ОС, СУБД, телекоммуникационные программы, текстовые редакторы, антивирусы, криптографические средства, средства аутентификации и идентификации пользователей. Главным условием правильно функционирования такой ИС является обеспечение защиты от вмешательства в процесс обработки информации тех программ, присутствие которых в ИС нежелательно. q Среди подобных программ – вирусы и программные закладки.
Защита программного обеспечения 2 Вирусы Появились ~ в середине 60 -х годов Широкое распространение ~ середина 70 -х Термин “компьютерный вирус” появился в 1984 г. на территории США Первые компьютерные вирусы не представляли опасности (программы-шутки) Компьютерные вирусы имеют все признаки вируса биологического: способность к размножению (в рамках компьютеров и компьютерных сетей) приспособляемость и развитие
Защита программного обеспечения 3 Статистика Известно ~ 100. 000 вирусов Ежедневно появляется ~ 50 новых Ежегодный ущерб ~ 100 млрд. долл. Свойства вирусов Существуют физически на ПК и носителях информации Возможность создания дубликатов, не обязательно совпадающих с оригиналом (мутация) Скрытное действие
Защита программного обеспечения 4 Основные угрозы вирусов и программных закладок q Нарушение стабильной работы / функционирования ПО, ОС, оборудования q Генерация входящего/исходящего internet-трафика q Похищение персональных данных (fishing-атака) q Удаленный контроль над информационной системой злоумышленником в своих целях q Повреждение / модификация (искажение) / уничтожение данных
Защита программного обеспечения 5 В результате действия компьютерных вирусов и программных закладок возможны следующие издержки: q Моральные q Временные (время на восстановление работоспособности ОС или серверов / данных) q Материальные (похищение персональных данных / приостановка работы компании / оплата услуг по восстановлению / …)
Защита программного обеспечения 6 Классификация вирусов ВИРУСЫ Среда обитания Деструктивные возможности Операционная система Особенности работы алгоритма
Защита программного обеспечения 7 Классификация вирусов По среде обитания: Файловые Загрузочные Макро Сетевые Загрузочные вирусы Поражают загрузочный сектор Floppy/Flash/CD/DVD -диска Поражают MBR винчестера (HDD). В результате загрузки/перезагрузки системы вирус активируется n Меры предосторожности: Включить в BIOS защиту загрузочного сектора от изменений (Anti-Virus Protection)
Защита программного обеспечения 8 Классификация вирусов Файловые вирусы Файловые черви Parasitic - вирусы Overwriting - вирусы Компаньон - вирусы Link - вирусы Obj / Lib – вирусы Меры предосторожности: Не запускать подозрительные исполняемые файлы (. exe , . com)
Защита программного обеспечения 9 Классификация вирусов Макро – вирусы Заражают файлы: Документы MS Word Электронные таблицы MS Excel Презентации MS Power. Point Базы данных MS Access n Некоторые другие документы (например, Ami. Pro) Меры предосторожности: Не запускать подозрительные макросы при открытии офисных приложений
Защита программного обеспечения 10 Классификация вирусов Сетевые вирусы Распространяются через локальные и глобальные сети Наиболее популярны “сетевые черви” Могут существовать в виде файловых и макро-вирусов или троянских программ Меры предосторожности: Внимательность при использовании локальных (LAN) и глобальных (Internet) сетей
Защита программного обеспечения 11 Сетевые вирусы Компьютер пользователя Internet Mail, FTP, P 2 P, IRC/ICQ Источник вирусов Локальная сеть
Защита программного обеспечения 12 Классификация вирусов По типу операционной системы: Каждый файловый, загрузочный, сетевой вирус заражает файлы какой-либо одной ОС: MS-DOS Windows NT/2000/XP и выше Другие ОС (Linux, Mac OS, Solaris и др. )
Защита программного обеспечения 13 Классификация вирусов По особенностям работы алгоритма: Резидентные Основанные на алгоритмах шифрования и стелс-алгоритмах Полиморфные (самоизменяющиеся) Использующие нестандартные приемы и методы
Защита программного обеспечения 14 Классификация вирусов По деструктивным возможностям: q Безвредные q Неопасные q Очень опасные (потеря информации / перезапись BIOS-кода / вывод из строя HDD / …)
Защита программного обеспечения 15 Поражение вирусом ПК Попадание вируса на ПК Фаза заражения Выполнение пользователем некоторых действий Заражение удаленных ПК Активизация вируса на ПК LAN, Web, Mail, FTP, P 2 P, ICQ Фаза распространения Заражение ПК
Защита программного обеспечения 16 Каналы распространения q Электронная почта (вложения) q Сервисы обмена сообщениями (ICQ, Jabber, . . ) q Загрузка файлов из Internet (Архивы, ПО, …) q Посещение Web-страниц (Active. X, Jscript, …) q Файл-серверы, локальные сети, пиратское ПО, сервисное обслуживание и т. д.
Защита программного обеспечения 17 Признаки проявления вируса Нестабильность работы ОС (замедление работы / зависания / перезагрузки / BSOD) Нарушение стабильной работы ПО Самопроизвольное исчезновение / появление файлов и каталогов Прочие проявления (снижение скорости работы LAN и Internet, звуковые сигналы, вывод сообщений и т. д. )
Защита программного обеспечения 18 Антивирусные средства защиты Известно, что нельзя добиться 100 %-й защиты ПК от компьютерных вирусов отдельными программными средствами. Поэтому для уменьшения потенциальной опасности внедрения компьютерных вирусов и их распространения по корпоративной сети необходим комплексный подход, сочетающий различные административные меры, программно-технические средства антивирусной защиты, а также средства резервирования и восстановления. Делая акцент на программно-технических средствах, можно выделить три основных уровня антивирусной защиты: поиск и уничтожение известных вирусов; поиск и уничтожение неизвестных вирусов; блокировка проявления вирусов. Уровни и средства антивирусной защиты схематично представлены на рисунке.
Рис. Уровни и средства антивирусной защиты
Защита программного обеспечения 20 Антивирусные средства защиты Основным средством борьбы с вирусом были и остаются антивирусные программы, использующие несколько основополагающих методик обнаружения и защиты от вирусов: Сканирование — последовательный просмотр проверяемых файлов и поиск сигнатур известных вирусов. Используется только для поиска уже известных и изученных вирусов. Неэффективно для обнаружения шифрующихся и полиморфных вирусов, способных полностью изменять свой код при заражении новой программы или загрузочного сектора; Эвристический анализ — обнаружение ранее неизвестных вирусов;
Защита программного обеспечения 21 Антивирусные средства защиты Использование антивирусных мониторов — автоматическая проверка всех запускаемых программ, создаваемых, открываемых и сохраняемых документов, файлов программ и документов, полученных через Интернет или скопированных на жесткий диск с носителей; Обнаружение изменений — обнаружение изменений, внесенных в предварительно запомненные программой -ревизором характеристики всех областей диска; Использование антивирусов, встроенных в BIOS компьютера — контроль обращений к главной загрузочной записи жестких дисков и к загрузочным секторам дисков и дискет.
Защита программного обеспечения 22 Антивирусные средства защиты Для защиты корпоративной интрасети используют специальные антивирусные прокси-серверы и брандмауэры, сканирующие проходящий через них трафик и удаляющие из него вредоносные программные компоненты. Защита файловых серверов осуществляется с использованием антивирусных мониторов, проверяющих автоматически все файлы сервера, к которым идет обращение по сети; Защита почтовых серверов осуществляется с использованием антивирусов, специально предназначенных для проверки почтового трафика; Защита серверов систем документооборота осуществляется путем сканирования в режиме реального времени почты и файлов вложения с удалением вредоносных программ, обнаружения макрокомандных вирусов и троянских программ в
Защита программного обеспечения 23 Антивирусные средства защиты Правила использования средств антивирусной защиты Абсолютной защиты от вредоносных программ не существует, но с помощью некоторых мер можно существенно снизить риск заражения компьютера. Ниже перечислены основные меры для надёжной безопасности: 1) Только лицензионные антивирусные средства гарантируют заявленную защиту. 2) Необходимо детально настроить свой антивирус. 3) Обновление антивирусных средств должно происходить в автоматическом режиме. Допускается работа антивируса с обновлениями не старше 72 часов. 4) Антивирусный контроль всех дисков и файлов рабочих станций должен проводиться еженедельно.
Защита программного обеспечения 24 Антивирусные средства защиты 6) Обязательному антивирусному контролю подлежит любая информация, получаемая по телекоммуникационным каналам связи и на съемных носителях. 7) Устанавливаемое программное обеспечение должно быть предварительно проверено на наличие вирусов. 8) Вы должны уметь работать и настраивать свое антивирусное ПО. 9) Использовать современные операционные системы, не дающие изменять важные файлы без ведома пользователя; 10) Своевременно устанавливать обновления; 11) Если существует режим автоматического обновления, то включить его; 12) Использовать программное обеспечение, обеспечивающее проактивную защиту от угроз (необходимость использования проактивной защиты обуславливается тем, что сигнатурный антивирус не замечает новые угрозы, еще не внесенные в антивирусные базы);
Защита программного обеспечения 25 Антивирусные средства защиты 13) Постоянно работать на персональном компьютере исключительно под правами пользователя, а не администратора, что не позволит большинству вредоносных программ инсталлироваться на персональном компьютере; 14) Ограничить физический доступ к компьютеру посторонних лиц; 15) Использовать внешние носители информации только от проверенных источников; 16) Не открывать компьютерные файлы, полученные из ненадёжных источников; 17) Использовать персональный Firewall (аппаратный или программный), контролирующий выход в сеть Интернет с персонального компьютера на основании политик, которые устанавливает сам пользователь.
Защита программного обеспечения 26 Антивирусные средства защиты Технологии обнаружения вирусов. Технологии, применяемые в антивирусах, можно разбить на две группы: 1) Сигнатурный анализ - метод обнаружения вирусов, заключающийся в проверке наличия в файлах сигнатур вирусов. Для проведения проверки антивирусу необходим набор вирусных сигнатур, который хранится в антивирусной базе, нуждающейся в периодическом обновлении для поддержания актуальности антивируса. Сам принцип работы сигнатурного анализа также определяет границы его функциональности - возможность обнаруживать лишь уже известные вирусы (против новых вирусов сигнатурный сканер бессилен). С другой стороны, наличие сигнатур вирусов предполагает возможность лечения инфицированных файлов, обнаруженных при помощи сигнатурного анализа. Однако, лечение допустимо не для всех вирусов - трояны и большинство червей не поддаются лечению по своим конструктивным особенностям, поскольку являются цельными модулями, созданными для нанесения ущерба.
Защита программного обеспечения 27 Антивирусные средства защиты 2) Технологии вероятностного анализа в свою очередь подразделяются на три категории: а) Эвристический анализ - технология, основанная на вероятностных алгоритмах, результатом работы которых является выявление подозрительных объектов. Технология проверяет структуру файла, его соответствие вирусным шаблонам, проверяет содержимого файла на предмет наличия модификаций. Это помогает определять гибриды и новые версии ранее известных вирусов без дополнительного обновления антивирусной базы. Эвристический анализ применяется для обнаружения неизвестных вирусов, и не предполагает лечения. Данная технология не способна на 100% определить вирус перед ней или нет, и как любой вероятностный алгоритм грешит ложными срабатываниями.
Защита программного обеспечения 28 Антивирусные средства защиты б)Поведенческий анализ – технология, в которой решение о характере проверяемого объекта принимается на основе анализа выполняемых им операций. Узко применима на практике, так как большинство действий, характерных для вирусов, могут выполняться и обычными приложениями. Наибольшую известность получили поведенческие анализаторы скриптов и макросов, поскольку соответствующие вирусы практически всегда выполняют ряд однотипных действий. Средства защиты, вшиваемые в BIOS, также можно отнести к поведенческим анализаторам. Помимо этого поведенческие анализаторы могут отслеживать попытки прямого доступа к файлам, внесение изменений в загрузочную запись дисков, форматирование жестких дисков и т. д. Поведенческие анализаторы не используют для работы дополнительных объектов, подобных вирусным базам и, как следствие, неспособны различать известные и неизвестные, не предполагают лечения.
Защита программного обеспечения 29 Антивирусные средства защиты в) Анализ контрольных сумм - это способ отслеживания изменений в объектах компьютерной системы. На основании анализа характера изменений - одновременность, массовость, идентичные изменения длин файлов - можно делать вывод о заражении системы. Анализаторы контрольных сумм ("ревизоры изменений") как и поведенческие анализаторы не используют в работе дополнительные объекты и выдают вердикт исключительно методом экспертной оценки. Чаще подобные технологии применяются в сканерах при доступе - при первой проверке с файла снимается контрольная сумма и помещается в кэше, перед следующей проверкой того же файла сумма снимается еще раз, сравнивается, и в случае отсутствия изменений файл считается незараженным.
Защита программного обеспечения 30 Антивирусные средства защиты Антивирусы, исходя из реализованного в них подхода к выявлению и нейтрализации вирусов, принято делить на следующие группы: детекторы - обеспечивают выявление вирусов посредством просмотра исполняемых файлов и поиска так называемых сигнатур - устойчивых последовательностей байтов, имеющихся в телах известных вирусов. Наличие сигнатуры в каком-либо файле свидетельствует о его заражении соответствующим вирусом. Антивирус, обеспечивающий возможность поиска различных сигнатур, называют полидетектором. фаги выполняют функции, свойственные детекторам, но, кроме того, "излечивают" инфицированные программы посредством "выкусывания" вирусов из их тел. По аналогии с
Защита программного обеспечения 31 Антивирусные средства защиты вакцины по своему принципу действия подобны вирусам. Вакцина имплантируется в защищаемую программу и запоминает ряд количественных и структурных характеристик последней. Характеристиками, используемыми вакцинами, могут быть длина программы, ее контрольная сумма и т. д. ; прививки. Принцип действия прививок основан на учете того обстоятельства, что любой вирус, как правило, помечает инфицируемые программы какимлибо признаком с тем, чтобы не выполнять их повторное заражение; Прививка, не внося никаких других изменений в текст защищаемой программы, помечает ее тем же признаком, что и вирус, который, таким образом, после активизации и проверки наличия указанного признака, считает ее инфицированной и "оставляет в покое".
Защита программного обеспечения 32 Антивирусные средства защиты ревизоры обеспечивают слежение за состоянием файловой системы, используя для этого подход, аналогичный реализованному в вакцинах. Программаревизор в процессе своего функционирования выполняет применительно к каждому исполняемому файлу сравнение его текущих характеристик с аналогичными характеристиками, полученными в ходе предшествующего просмотра файлов. Характеристики исполняемых файлов, получаемые в ходе очередного просмотра, запоминаются в отдельном файле (файлах), в связи с чем увеличения длин исполняемых файлов, имеющего место при вакцинации, в данном случае не происходит. Другое отличие ревизоров от вакцин состоит в том, что каждый просмотр исполняемых файлов ревизором требует его повторного запуска; мониторы представляют собой резидентную программу, обеспечивающую перехват потенциально опасных прерываний, характерных для вирусов, и запрашивающую у пользователей подтверждение на выполнение операций, следующих за прерыванием. В случае запрета или
Защита программного обеспечения 33 Программные закладки Закладка не размножается, имеет цель. Программная закладка (ПЗ) – вредоносная программа может выполнять хотя бы одно из перечисленных действий: 1. Вносить произвольное искажение в коды программы (закладка первого типа). 2. Переносить фрагменты информации из одних областей памяти в другие, ОЗУ (закладка второго типа). 3. Искажать выводимую на внешние устройства или в каналы связи информацию, полученную в результате работы других программ (закладка третьего типа).
Защита программного обеспечения 34 Программные закладки можно классифицировать по методу внедрения в ИС: 1 2 3 4 5 6 7 Программно – аппаратные закладки, ассоциированные со средствами компьютера (среда обитания BIOS) Загрузочные закладки, связанные с программой начальной загрузки, которая располагается в загрузочных секторах Драйверные закладки Прикладные закладки, связанные с прикладным ПО общего назначения (текстовые редакторы, утилиты, антивирусные мониторы). Исполняемые закладки, связанные с исполняемыми программами, пакетными файлами, файлами ОС. Закладки-имитаторы интерфейс которых совпадает с интерфейсом известных служебных программ, требующих ввода конфиденциальной информации (ключи, пароли, кодов кредитных карточек). Замаскированные закладки, которые маскируются под программные средства оптимизации ПК (архиваторы, дисковые дефрагментаторы), под игровые и другие развлекательные программы
Защита программного обеспечения 35 Чтобы программная закладка нанесла вред процессор должен приступать к исполнению команд, входящих в состав кода ПЗ. Это возможно при соблюдении следующих условий: Закладка должна попасть в оперативную память компьютера до той программы, которая является целью воздействия закладки. Работа программной закладки, находящейся в оперативной памяти, начинается при выполнении некоторых условий, которые называются активизирующими
Защита программного обеспечения 36 Существуют 3 основных группы деструктивных действий, которые могут осуществляться ПЗ: 1. Копирование информации пользователя ИС (паролей, кодов, доступа ключей, конфиденциальных электронных документов), находящихся в оперативной или внешней памяти системы. 2. Изменение алгоритмов функционирования системы прикладных и служебных программ. Например, внесение изменений в программу разграничения доступа может привести к тому, что она разрешит вход в систему всем без исключения 3. Навязывание определенных видов работ 1. Например, блокирование записи на диск при удалении информации, при этом информация, которую требуется удалить, не уничтожается и может быть впоследствии скопирована злоумышленником.
Защита программного обеспечения 37 Модели воздействия программных закладок на компьютеры 1. Модель «перехват» : Внедряется в ПЗУ, системное или прикладное программное обеспечение и сохраняет всю или выбранную информацию, вводимую с внешних устройств в систему или выводимую на эти устройства в скрытую области памяти локальной или удаленной информационной системы. Данная модель может быть двухступенчатой: q на первом этапе сохраняются только имена и начало файла; q на втором этапе накопленные данные анализируются злоумышленником, и выбирается нужная информация для принятия решения о конкретных объектах
Защита программного обеспечения 38 2. Модель «искажение» . Программные закладки изменяют информацию, которая записывается в память системы, либо подавляет (инициирует) возникновение ошибочных ситуаций в ИС. Можно выделить статическое и динамическое искажение Статическое искажение происходит один раз, при этом параметры программной среды модифицируются, чтобы впоследствии в ней выполнялись нужные злоумышленнику действия. Например, вносятся изменения в файл AUTOEXEC. BAT, которые приводят к запуску заданной программы прежде, чем будут запущены другие программы. Специалисты ФАПСИ выявили ПЗ: злоумышленник изменил в исполняемом . exe модуле проверки ЭП. строку «Подпись не корректна» на строку «Подпись корректна» . В результате перестали фиксироваться документы с неверной ЭП, а, следовательно, стало возможно вносить любые изменения в электронные документы уже после подписания ЭП.
Защита программного обеспечения 39 Динамическое искажение заключается в изменении каких-либо параметров системы или прикладных процессов при помощи заранее активированных закладок. Динамическое искажение можно условно разделить на: • искажение на входе, когда на обработку попадает уже искаженная информация; • искажение на выходе, когда искажается информация, отображаемая для восприятия человеком, или предназначенная для работы других программ. • Практика показала, что именно программы реализации ЭП особенно подвержены влиянию ПЗ типа «динамическое искажение» . Существует 4 способа воздействия ПЗ на ЭП: 1) Искажение входной информации – ПЗ изменяет поступивший на подпись документ. 2) Искажение результата проверки истинности ЭП (вне зависимости от результатов проверки цифровую подпись объявляют истинной). 3) Навязывание длины электронного документа – программе ЭП предъявляется документ меньшей длины, чем на самом деле, и в результате подпись ставится только под частью исходного документа.
Защита программного обеспечения 40 В рамках модели «искажение» реализуются такие ПЗ, действия которых основано на инициировании или подавлении сигнала о возникновении ошибочных ситуаций в ИС, тех которые приводят к отличному от нормального завершению исполняемой программы. Например, для инициирования статической ошибки на устройствах хранения информации создается область, при обращении к которой (запись, чтение, форматирование) возникает ошибка, что может затруднить или блокировать некоторые нежелательные для злоумышленника действия системы или прикладных программ (например, не позволяет осуществить корректно уничтожение конфиденциальной информации на жестком диске. При инициировании динамической ошибки для некоторой операции генерируется сообщение о ложной ошибке, например «Модем занят» . Или прочтении одного блока длиной 512 байт может установиться соответствующий флажок для того, чтобы не допустить прочтения второго и последующего блоков и в итоге подделать подпись под документом.
Защита программного обеспечения 41 3. Модель «уборка мусора» . Работа с конфиденциальными электронными документами обычно сводится к последовательности следующих манипуляций с файлами: создание, хранение, коррекция, уничтожение. Для защиты конфиденциальной информации обычно применяется шифрование. Основная угроза исходит не от использования нестойких алгоритмов шифрования и плохих криптографических ключей, а от обыкновенных текстовых редакторов и БД, применяемых для коррекции конфиденциальных документов. Важно помнить, что при записи отредактированной информации меньшего размера в тот же файл, где хранилась исходная информация, образуются так называемые «хвостовые» кластеры, которые не подвергаются воздействию программ шифрования, но и остаются незатронутыми даже средствами гарантированного стирания и удаления. Распространенные средства гарантированного стирания файла предварительно записывают на его место константы или случайные числа и только после этого удаляют файл стандартными методами. Однако даже такие средства оказываются бессильными против программных закладок, которые нацелены на то, чтобы увеличить количество остающихся в виде «мусора» фрагментов конфиденциальной информации. Из хвостовых кластеров можно извлечь до 80%
Защита программного обеспечения 42 4. Модель «наблюдение» . ПЗ встраивается в сетевое или телекоммуникационное программное обеспечение. Такое программное обеспечение всегда находится в постоянной активности, внедренная в него ПЗ можно следить за всеми процессами обработки информации и осуществлять установку или удаление других программных закладок. 5. Модель «компрометация» . Модель типа «компрометация» позволяет получать доступ к информации, перехваченной другими ПЗ. Например, инициируется постоянное обращение к такой информации, приводящее к росту соотношения сигнал/шум . А это облегчает перехват побочных излучений данной компьютерной системы и позволяет эффективно выделять сигналы, сгенерированные закладкой из общего фона излучений, исходящих от оборудования.
Защита программного обеспечения 43 Программные закладки в бизнес-приложениях В большинстве компаний используются модифицированные или разработанные самостоятельно бизнес-приложения. При этом чистота исходного кода никак не контролируется. В таких условиях ничто не мешает программистуинсайдеру незаметно установить скрытую программную закладку, которая будет активирована в нужный момент. Отсюда возникает существенные риски, о которых говорить пока как-то не принято. Если за качество стандартных программ и бизнесприложений своим именем отвечает производитель и при массовом использовании есть некий общественный контроль. Кроме того, многие популярные программы проходят сертификацию ФСТЭК и ФСБ РФ на отсутствие незадекларированных возможностей, что, хочется верить, также является дополнительным контролем их чистоты. В этом смысле заказные или доработанные своими силами программы никак не контролируются. Для тех, кто их использует, они становятся чем-то вроде черного ящика, а что в нем происходит, знает только автор.
Защита программного обеспечения 44 Удобным для нарушителя способом осуществления несанкционированного доступа к информации в компьютерных системах является метод алгоритмических и программных закладок. Алгоритмическая закладка – это преднамеренное скрытое искажение части алгоритма программы, в результате чего возможно появление у программного компонента функций, не предусмотренных спецификацией и выполняющихся при определенных условиях протекания вычислительного процесса. Программная закладка – это внесенные в программное обеспечение функциональные объекты, которые при определенных условиях (входных данных) инициируют выполнение не описанных в документации функций, позволяющих осуществлять
Защита программного обеспечения 45 Таким образом, можно выделить следующие модели действий программных закладок: 1. перехват данных: a. перехват вывода информации на экран; b. перехват ввода с клавиатуры; c. перехват и обработка файловых операций; d. копирование и пересылка конфиденциальной пользовательской информации. 2. искажение данных: a. неадекватная реакция на команды пользователя; b. искажение передаваемой по сети информации; c. блокирование принимаемой или передаваемой по сети информации;
Защита программного обеспечения 46 3. уничтожение данных: a. уничтожение конфиденциальной пользовательской информации; b. инициирование программных и аппаратных сбоев. 4. получение несанкционированного доступа к данным: a. получение управления некоторой функцией в обход системы авторизации; b. получение доступа к данным и функциям извне разрешенного периметра.
Защита программного обеспечения 47 Расширения базового функционала Во многих случаях функционал стандартных бизнес-приложений может быть расширен с помощью встроенных языков программирования или макросов. Такие доработки функционала обычно ведутся сотрудниками компании, индивидуальными разработчиками или компаниями, специализирующимися на дополнительных разработках. Хорошим примером здесь является российская программная платформа « 1 С Предприятие» , которая в подавляющем большинстве случаев дорабатывается под конкретное предприятие и его бизнес-процессы. Существует множество типизированных отраслевых версий этого ПО, разрабатываемых партнерами 1 С, а также
Защита программного обеспечения 48 Наряду с гибкостью и удобством такой подход к улучшению функциональности привносит в информационную систему дополнительный риск. Принимая доработку, заказчик концентрируется на функционале, а не на безопасности, считая разработчиков заведомо честными и профессиональными. Как правило, код таких разработок никем не проверяется на наличие программных ошибок и незадекларированных возможностей (НДВ). Однако сами бизнес-приложения, работающие с персональными данными, в большинстве случаев проходят обязательную сертификацию во ФСТЭК и ФСБ. Зачастую это связано с тем, что заказной аудит кода проходит долго и стоит дорого, а расширения бизнесприложений запускаются в работу сразу после отладки. Поскольку большинство расширений бизнес-приложений реализуются на базе интерпретируемых языков, то становится возможным запускать на исполнение не только готовые программы с собственной логикой, но даже небольшие куски кода, вплоть до одной строчки. Это приводит к тому, что программисты расширений для бизнес-приложений получают практически
Защита программного обеспечения 49 Заказная разработка ПО Стоит отдельно рассмотреть случай, когда бизнесприложения разрабатывают специально для конкретной компании, т. е. речь идет о заказной разработке. В этом случае клиент прибегает к услугам компаний, занимающихся заказными разработками, или же самостоятельно нанимает проектную команду разработчиков. В любом случае заказчик, которым является лицо от бизнеса, не сможет толком даже проконтролировать качество разработанного ПО, не говоря уже про чистоту исходного кода. Дополнительный же наём экспертов на эту работу существенно увеличит бюджет проекта. В итоге получается то же самое. Клиент получает в свое распоряжение некий черный ящик с отсутствием всяческих гарантий чистоты исходного кода от недокументированных возможностей.
Защита программного обеспечения 50 Если разработанное на заказ ПО будет использоваться в качестве информационных систем для обработки персональных данных (ИСПДн), то в соответствие с ФЗ № 152 потребуется ее сертификация с обязательным предоставлением на экспертизу исходных кодов. Но даже в этом случае отсутствие НДВ вам будет гарантироваться лишь номинально. Не говоря уже про установленные в будущем всевозможные заплатки и обновления, частота которых никем точно не будет контролироваться. Ну и последнее, на чем стоит остановиться в качестве примеров, иллюстрирующих масштаб и проникновение угрозы программных закладок – это просто огромное количество самых различных бизнес-приложений, написанных полностью или имеющих компоненты на языках Java и С# (основной язык разработки приложений для платформы Microsoft. NET). Особенность этих языков состоит в том, что исходный код программы транслируется в байт-код на стороне пользователя при помощи JVM или . NET Framework. Таким образом, в код программы может
Защита программного обеспечения 51 Примеры использования программных закладок Следует заметить, что большинство закладок изначально устанавливается программистами не для противоправных действий, а для возможности быстро и без долгих бюрократических процедур внести изменения в уже работающую программу. Однако, если имеется возможность безнаказанно и неконтролируемо поставить закладку, некоторые программисты не в состоянии избежать искушения и использовать эту возможность для собственной выгоды и во вред компании. В России наиболее известным случаем использования программных закладок является афера программиста ОАО "Акционерный капитал", реестродержателя акций ОАО «Татнефть» , похитившего в 2005 году с помощью специально разработанного программного модуля 110 тысяч акций ОАО «Татнефть» на 5, 7 млн руб и осужденного за это на пять с половиной лет. Служба безопасности одной из фирм, занимающихся посреднической деятельностью, обнаружила, что конфиденциальная информация, передаваемая партнерам по электронной почте, становится известной третьей стороне, несмотря на то, что в системе использовались платы “Криптон” (продукция фирмы Анкад), реализующие обеспечивающий
Защита программного обеспечения 52 Спустя некоторое время во всех компьютерах фирмы, на которых стояла указанная плата, была выявлена одна и та же программная закладка. Она попросту отключала плату “Криптон-3” и брала ее функции на себя, причем для шифрования данных вместо алгоритма по указанному ГОСТ использовался другой, совершенно нестойкий алгоритм. Проведенное расследование показало, что за несколько недель до описываемых событий во все отделения фирмы от лица якобы производителя платы “Криптон-3” пришли письма, к которым была приложена программа, о которой в письме говорилось, что это бесплатно распространяемый драйвер “Турбо Криптон”, повышающий быстродействие платы в несколько десятков раз. Не заметив подвоха, сетевые администраторы немедленно установили присланный драйвер на все соответствующие компьютеры, в результате чего скорость шифрования действительно возросла, но защита электронной почты фактически отключилась.
Защита программного обеспечения 53 Самым ярким примером действия программной закладки является военный конфликт в Персидском заливе. Тогда при проведении операции «Буря в пустыне» система ПВО Ирака оказалась заблокированной по неизвестной причине. Несмотря на отсутствие исчерпывающей информации, высказывалось предположение, что ЭВМ, входящие в состав комплекса технических средств системы ПВО, закупленные Ираком у Франции, содержали специальные управляемые «электронные закладки» , блокировавшие работу вычислительной системы. Периодически эксперты обнаруживают недокументированные возможности в ПО для аппаратных комплексов. Например, в информационном бюллетене CERT CA-2002 -32 объявлено о существовании программной закладки (backdoor) в операционной системе AOS (Alcatel Operating System) версии 5. 1. 1, применяемой для управления коммутаторами Alcatel Omni. Switch 7700/7800. Эта закладка запускает telnet-сервис на порту 6778/TCP, что может позволить удаленному злоумышленнику неавторизованно управлять коммутатором.
Защита программного обеспечения 54 Троянские программы В данную категорию входят программы, осуществляющие различные несанкционированные пользователем действия: q сбор информации и ее передачу злоумышленнику, q ее разрушение или злонамеренную модификацию, q нарушение работоспособности компьютера, q использование ресурсов компьютера в неблаговидных целях. Отдельные категории троянских программ наносят ущерб удаленным компьютерам и сетям, не нарушая работоспособность зараженного компьютера (например, троянские программы, разработанные для массированных Do. S-атак на удалённые ресурсы сети). Классификация: Троянские программы различаются между собой по тем действиям, которые они производят на зараженном компьютере. • Backdoor — троянские утилиты удаленного администрирования Троянские программы этого класса являются утилитами удаленного администрирования компьютеров в сети. По своей функциональности они во многом напоминают различные системы администрирования, разрабатываемые и
Защита программного обеспечения 55 Единственная особенность этих программ заставляет классифицировать их как вредные троянские программы: отсутствие предупреждения об инсталляции и запуске. При запуске «троянец» устанавливает себя в системе и затем следит за ней, при этом пользователю не выдается никаких сообщений о действиях троянца в системе. Более того, ссылка на «троянца» может отсутствовать в списке активных приложений. В результате «пользователь» этой троянской программы может и не знать о ее присутствии в системе, в то время как его компьютер открыт для удаленного управления. Утилиты скрытого управления позволяют делать с компьютером все, что в них заложил автор: принимать или отсылать файлы, запускать и уничтожать их, выводить сообщения, стирать информацию, перезагружать компьютер и т. д. В результате эти троянцы могут быть использованы для обнаружения и передачи конфиденциальной информации, для запуска вирусов, уничтожения данных и т. п. — пораженные компьютеры оказываются открытыми для злоумышленных действий хакеров. Таким образом, троянские программы данного типа являются одним из самых опасных видов вредоносного программного обеспечения, поскольку в них заложена возможность самых разнообразных злоумышленных действий, присущих другим видам троянских программ. Отдельно следует отметить группу бэкдоров, способных распространяться по сети и внедряться в другие компьютеры, как это делают компьютерные черви. Отличает такие «троянцы» от червей тот
Защита программного обеспечения 56 • Trojan-PSW — воровство паролей • Данное семейство объединяет троянские программы, «ворующие» различную информацию с зараженного компьютера, обычно — системные пароли (PSW — Password-Stealing-Ware). При запуске PSW-троянцы ищут сиcтемные файлы, хранящие различную конфиденциальную информацию (обычно номера телефонов и пароли доступа к интернету), и отсылают ее по указанному в коде «троянца» электронному адресу или адресам. • Существуют PSW-троянцы, которые сообщают и другую информацию о зараженном компьютере, например, информацию о системе (размер памяти и дискового пространства, версия операционной системы), тип используемого почтового клиента, IP-адрес и т. п. Некоторые троянцы данного типа «воруют» регистрационную информацию к различному программному обеспечению, коды доступа к сетевым играм и прочее. • Trojan-AOL —- семейство троянских программ,
Защита программного обеспечения 57 Trojan-Clicker — интернет-кликеры Семейство троянских программ, основная функция которых — организация несанкционированных обращений к интернет-ресурсам (обычно к вебстраницам). Достигается это либо посылкой соответствующих команд браузеру, либо заменой системных файлов, в которых указаны «стандартные» адреса интернет-ресурсов (например, файл hosts в MS Windows). У злоумышленника могут быть следующие цели для подобных действий: q увеличение посещаемости каких-либо сайтов с целью увеличения показов рекламы; q организация Do. S-атаки (Denial of Service) на какой-либо сервер; q привлечение потенциальных жертв для заражения вирусами или троянскими программами. Trojan-Downloader — доставка прочих вредоносных программ Троянские программы этого класса предназначены для загрузки и установки на компьютер-жертву новых версий вредоносных программ, установки «троянцев» или рекламных систем. Загруженные из интернета программы затем либо запускаются на выполнение, либо регистрируются «троянцем» на автозагрузку в соответствии с возможностями операционной системы. Данные действия при этом происходят без ведома пользователя. Информация об именах и расположении загружаемых программ содержится в коде и данных троянца или скачивается троянцем с «управляющего» интернет-ресурса (обычно с веб-страницы).
Защита программного обеспечения 58 Trojan-Dropper — инсталляторы вредоносных программ прочих Троянские программы этого класса написаны в целях скрытной инсталляции других программ и практически всегда используются для «подсовывания» на компьютер-жертву вирусов или других троянских программ. Данные троянцы обычно без каких-либо сообщений (либо с ложными сообщениями об ошибке в архиве или неверной версии операционной системы) сбрасывают на диск в какой-либо каталог (в корень диска C: , во временный каталог, в каталоги Windows) другие файлы и запускают их на выполнение. Структура таких программ следующая: Основной код Файл 1 Файл 2. . . «Основной код» выделяет из своего файла остальные компоненты (файл 1, файл 2, . . . ), записывает их на диск и открывает их (запускает на выполнение) Обычно один (или более) компонентов являются троянскими программами, и как минимум один компонент является «обманкой» : программой-шуткой, игрой, картинкой или чем-то подобным. «Обманка» должна отвлечь внимание пользователя и/или продемонстрировать то, что запускаемый файл действительно делает что-то «полезное» , в то время как троянская компонента инсталлируется в систему. В результате использования программ данного класса хакеры достигают двух целей: Ø скрытная инсталляция троянских программ и/или вирусов;
Защита программного обеспечения 59 Trojan-Proxy — троянские прокси-сервера Семейство троянских программ, скрытно осуществляющих анонимный доступ к различным интернет-ресурсам. Обычно используются для рассылки спама. Trojan-Spy — шпионские программы Данные троянцы осуществляют электронный шпионаж за пользователем зараженного компьютера: вводимая с клавиатуры информация, снимки экрана, список активных приложений и действия пользователя с ними сохраняются в какой-либо файл на диске и периодически отправляются злоумышленнику. Троянские программы этого типа часто используются для кражи информации пользователей различных систем онлайновых платежей и банковских систем. Rootkit — сокрытие присутствия в операционной системе Понятие rootkit пришло к нам из UNIX. Первоначально это понятие использовалось для обозначения набора инструментов, применяемых для получения прав root. Таким образом, rootkit — программный код или техника, направленная на сокрытие присутствия в системе заданных объектов (процессов, файлов, ключей реестра и т. д. ). Для поведения Rootkit в классификации «Лаборатории Касперского» действуют правила поглощения: Rootkit — самое младшее поведение среди вредоносных программ. То есть, если
Защита программного обеспечения 60 Хакерские утилиты и прочие вредоносные программы К данной категории относятся: q утилиты автоматизации создания вирусов, червей и троянских программ (конструкторы); q программные библиотеки, разработанные для создания вредоносного ПО; q хакерские утилиты скрытия кода зараженных файлов от антивирусной проверки (шифровальщики файлов); q «злые шутки» , затрудняющие работу с компьютером; q программы, сообщающие пользователю заведомо ложную информацию о своих действиях в системе; q прочие программы, тем или иным способом намеренно наносящие прямой или косвенный ущерб данному или удалённым компьютерам
Защита программного обеспечения 61 Trojan-Notifier — оповещение об успешной атаке предназначены для сообщения своему «хозяину» о зараженном компьютере. При этом на адрес «хозяина» отправляется информация о компьютере, например, IP-адрес компьютера, номер открытого порта, адрес электронной почты и т. п. Отсылка осуществляется различными способами: электронным письмом, специально оформленным обращением к веб-странице «хозяина» , ICQ-сообщением. Данные троянские программы используются в многокомпонентных троянских наборах для извещения своего «хозяина» об успешной инсталляции троянских компонент в атакуемую систему. Arc. Bomb — «бомбы» в архивах представляют собой архивы, специально оформленные таким образом, чтобы вызывать нештатное поведение архиваторов при попытке разархивировать данные — зависание или существенное замедление работы компьютера или заполнение диска большим количеством «пустых» данных. Особенно опасны «архивные бомбы» для файловых и почтовых серверов, если на сервере используется какая-либо система автоматической обработки входящей информации — «архивная бомба» может просто остановить работу сервера. Встречаются три типа подобных «бомб» : q некорректный заголовок архива,
Защита программного обеспечения 62 Клавиатурные шпионы Виды: 1. Имитаторы. 2. Фильтры. 3. Заместители. 1 Имитаторы Злоумышленник внедряет в ОС модуль, который предлагает пользователю зарегистрироваться для входа в систему. Имитатор сохраняет введенные данные в определенной области памяти. Инициируется выход из системы и появляется уже настоящее приглашение. Для надежной защиты от имитаторов необходимо: q Чтобы системный процесс, который получает от пользователя идентификатор и пароль, имел свой рабочий стол. q Переключение на регистрационное окно рабочего стола аутентификации должно происходить абсолютно незаметно для прикладных программ.
Защита программного обеспечения 63 2. Фильтры – охотятся за всеми данными, которые вводятся с клавиатуры. Самые элементарные фильтры сбрасывают перехваченный ввод на жесткий диск или в другое нужное место. Фильтры являются резидентными программами, перехватывающими одно или несколько прерываний, связанных с обработкой клавиатурных сигналов. Эти прерывания возвращают информацию о нажатой клавише, которая анализируется фильтрами на предмет выявления данных, имеющих отношение к паролю пользователя. Любой клавиатурный русификатор – это самый простой фильтр. Его не трудно доработать, чтобы он еще выполнял действия по перехвату пароля. Для защиты от фильтров необходимо выполнение 3 условий: q Во время ввода пароля не разрешать переключения раскладки клавиатуры (срабатывает фильтр). q Конфигурировать цепочку программных модулей, участвующих в работе с паролем пользователя может только системный администратор.
Защита программного обеспечения 64 3. Заместители полностью подменяют собой программные модули, отвечающие за аутентификацию пользователей. Такие закладки могут быть созданы для работы в многопользовательских системах. Заместители полностью берут на себя функции подсистемы аутентификации, поэтому они должны выполнять следующие действия: q подобно вирусу внедриться в один / несколько файлов системы; q использовать интерфейсные связи между программными модулями подсистемы аутентификации для встраивания себя в цепочку обработки введенного пользователем пароля.
Защита программного обеспечения 65 • Защита от программных закладок Задача защиты от ПЗ включает три подзадачи q не допустить внедрение ПЗ в компьютерную систему; q выявить внедренную программную закладку; q удаление внедренной программной закладки. • Как видно, эти задачи сходны с задачами защиты от компьютерных вирусов. Задача решается с помощью средств контроля за целостностью запускаемых системных и прикладных программ, а также за целостностью хранимой в ИС информации и за критическими для функционирования системы событиями. Однако эти средства действенны, если сами не подвержены ПЗ, которые могут выполнять следующие действия: q навязывать конечные результаты контрольных проверок; q влиять на процесс считывания информации и запуск программ, за которыми осуществляется контроль.
Защита программного обеспечения 66 Защита от внедрения программных закладок Универсальными средствами защиты от внедрения ПЗ является создание изолированного компьютера. Компьютер называется изолированным, если выполняется следующие условия: q на нем установлена система BIOS, не имеющая закладок; q ОС проверена на наличие ПЗ; q достоверно установлена неизменность BIOS и ОС для данного сеанса; q на компьютере не запускались другие программы, кроме уже прошедших проверку на наличие ПЗ; q исключен запуск проверенных программ в каких-либо иных условиях кроме изолированного ПК. Для определения степени изолированности компьютера используется модель ступенчатого контроля. Сначала проверяется: q нет ли изменений в BIOS; затем считываются загрузочный сектор диска и драйверы ОС, которые также анализируются на предмет внесений в них несанкционированных изменений; q запускается с помощью ОС монитор контроля вызовов программы, который следит, за тем, чтобы в компьютере запускались только проверенные программы.
Защита программного обеспечения 67 Выявление внедренной программной закладки Необходимо выявить признаки присутствия кода ПЗ в компьютерной системе. Признаки могут быть качественными и визуальными; обнаруживаемые средствами тестирования и диагностики. Качественные и визуальные признаки: отклонение в работе программы; изменяется состав и длины файлов. Программа работает слишком медленно или слишком быстро заканчивает свою работу или совсем перестает запускаться. Например, пользователи пакета шифрования и ЭЦП «Криптоцентр» заметили, что подпись ставится слишком быстро. Исследования экспертов ФАПСИ показали, что внедрена ПЗ, которая основывалась на навязывании длины файла. Пользователи пакета «Криптон» забили тревогу, что скорость шифрования по криптографическому алгоритму ГОСТ 28147 -89 возросла в 30 раз. Признаки, выявляемые с помощью средств тестирования и диагностики, характерны как для ПЗ, так и для компьютерных вирусов. С инициированием статической ошибки на дисках хорошо справляется Disk Doctor из Norton Utilities. А средства
Защита программного обеспечения 68 Как выявить троянца: Программные средства, предназначенные для защиты от троянцев, используют согласование объектов. В качестве объектов – файлы, каталоги. Согласование позволяет ответить на вопрос, изменились ли файлы и каталоги с момента последней проверки. Берется резервная копия файла и его атрибуты сравниваются с атрибутами файла на диске: q время; q размер; q контрольная сумма; q получение хэш-функции файла. Для вычисления контрольной суммы есть специальные утилиты sum, но и контрольную сумму можно подделать. Более надежным является одностороннее хэширование файлов. Алгоритмы: MD 4, MD 5, SНA. Вычисленные ХЭШ–значения файлов хранятся в специальной БД, которая является самым уязвимым местом {в ОС Unix - TRIPWIRE}. Пользователю предлагается хранить эту БД на съемном носителе и запирать в сейф.
Защита программного обеспечения 69 Защита бизнес-приложений от программных закладок Организационный способ защиты Организационный подход к защите чаще всего применяется в крупных компаниях, ведущих собственные дополнительные разработки к крупным приложениям, чаще всего это ERP или АБС. Ключевым моментом этого подхода является разделение жизненного цикла продукта на три этапа: разработка, тестирование и непосредственное использование. На первом этапе пишется код, на втором тестируется корректность реализации функционала и наличие ошибок, в том числе и с точки зрения безопасности (всевозможные тесты на проникновение). На обоих этапах хорошей практикой является привлечение в проектную команду консультантов по безопасности. После положительного заключения тестировщиков программное обеспечение передается во внедрение. Таким образом, достигается разделение разработки, контроля качества и пользователей программного обеспечения. В результате вероятность успешной незаметной установки и последующего использования
Защита программного обеспечения 70 Технический способ защиты При техническом подходе разработанное самостоятельно или на заказ программное обеспечение отдается на аудит кода внешним экспертам, которые специализируется на подобных услугах. В качестве технических средств для поиска программных закладок могут использоваться сканеры кода, которые способны по определенным алгоритмам обнаруживать подозрительные куски кода. С приходом в аудит кода технологий, прежде принятых в DLPпродуктах (Data Leak Prevention или Data Loss Prevention) таких как лингвистический анализ и «цифровые отпечатки» , стал возможен статический анализ кода на совпадение с шаблонами известных уязвимостей и закладок «на лету» . Плюс этого метода в оперативности (код анализируется практически мгновенно и вне зависимости от логики программы) и отсутствии необходимости запуска программы на исполнение. Анализировать можно как готовые программы, так и произвольные куски кода, вплоть до одной строчки. Минусом является необходимость постоянного пополнения базы известных уязвимостей (с каждой уязвимости снимается уникальный отпечаток, который затем сравнивается с отпечатками нормализованного текста программы). Пока что большинство продуктов по аудиту кода
Защита программного обеспечения 71 Парольные взломщики Это специальные программы, которые служат для взлома ОС. Атаке подвергается системный файл ОС, содержащий информацию о ее легальных пользователях и их паролях: Взломщику желательно перекачать этот файл себе. Берутся далее слова из словаря и шифруются с помощью того же известного алгоритма и сравниваются с зашифрованным паролем в системном файле. Парольные взломщики используют символьные последовательности автоматически генерируемые из определенного набора символов. Словарь: чередование строчных и прописных букв. Содержит несколько тысяч символьных слов: T = 1/S * ∑Ni (i=1, L) где N – число символов в наборе; L – предельная длина пароля; S – количество проверок в секунду (зависит от быстродействия ПК); T – максимальное время для
Защита программного обеспечения 72 Парольная защита системы UNIX etc/passwd bill: 5 -d 35 – зашифрованный пароль (шифруется процедурой Cript, ключ к которой – пароль пользователя). Если злоумышленник имеет доступ к парольному файлу, он может скопировать его на свой ПК и воспользоваться взломщиком. Защита: Пользователям предлагается применять сильные пароли, а в качестве критерия стойкости – проверить, есть ли этот пароль в парольном словаре, а также рекомендуется использовать затенение (***) при записи в файл passwd, а парольный файл прятать в другом месте.
Защита программного обеспечения 73 • Парольная защита Windows • • Все учетные записи хранятся в БД SAM (Security Account Manager). Эта база представляет один из кустов системного реестра. Доступ к SAM запрещен для всех пользователей. • Информация в SAM хранится в зашифрованном виде в виде двух 16 -тибайтных строк. Используются различные методы для шифрования. Из символьного пароля получается 16 -тибайтная последовательность. Данная последовательность шифруется по алгоритму DES. Результат шифрования хранится в SAM. Ключ – относительный идентификатор пользователя (RID).
Защита программного обеспечения 74 • Система безопасности в Windows Vista • Она содержит множество новых средств обеспечения безопасности, которые призваны повысить защищенность ПК: q Предупреждение о появлении новых обновлений систем безопасности и установка их на компьютер. q Собственный брандмауэр Vista обеспечивает защиту от хакеров, вирусов и компьютерных червей. q Windows Defender защищает систему от шпионских программ. q Средство удаления вредоносных программ MSRT периодически выполняет распространенных вирусов на ПК. поиск
Информационная безопасность_7л_ВИР.ppt