Троянские программы в ОС Windows
Методики обнаружения и лечения трудноудаляемых программ для сбора конфиденциальной информации. Тестирование популярных AntiSpyware-программ для Windows. Исследования эффективности выявления вредоносного ПО с применением эвристического детектирования.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 21.01.2015 |
Размер файла | 1,1 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Содержание
Введение
1. Программы-шпионы
2. Программные закладки
3. Модели воздействия программных закладок на компьютеры
3.1 Перехват
3.2 Искажение
3.3 Уборка мусора
3.4 Наблюдение и компрометация
4. Защита от программных закладок
4.1 Защита от внедрения программных закладок
4.2 Выявление внедренной программной закладки
4.3 Удаление внедренной программной закладки
5. Троянские программы
5.1 Откуда берутся троянские программы
5.2 Где обитают и как часто встречаются троянские программы
5.3 Как распознать троянскую программу
6. Клавиатурные шпионы
6.1 Имитаторы
6.2 Фильтры
6.3 Заместители
6.4 Как защитить систему от клавиатурных шпионов
7. Методы противодействия программам-шпионам
8. Описание некоторых шпионских программ
9. Описание нРазмещено на http://www.allbest.ru/
екоторых анти-шпионских программ
Заключение
Список литературы
Приложения
Введение
В настоящий момент, достаточно актуальна проблема вредоносного программного кода в компьютерных системах. Еще несколько лет назад ситуация была достаточно простой - существовали прикладные программы (включая операционную систему) и компьютерные вирусы, т.е. программы, способные заражать другие приложения путем внедрения в них своего машинного кода, приводящего к неправильной работе приложений. Однако в последнее время появилось множество вредоносных программ, которые нельзя считать вирусами, т.к. они не обладают способностью к размножению. Шпионские программы могут незаметно работать на компьютере пользователя и наблюдать за ним. Наряду с вирусами, уничтожающими информацию или пользующимися ресурсами чужих компьютеров, существуют и такие программы, которые способны анализировать найденную информацию и отправлять её куда-либо без вашего ведома - это программы-шпионы, известные также как клавиатурные шпионы или кейлоггеры. Они более совершенны, чем обычные вирусы - работая на компьютере, никак не проявляя себя, они собирают все данные, которые пользователь набирает с клавиатуры или, например, ищет в интернете.
Когда-то клавиатурные программы-шпионы ("кейлоггеры") просто сохраняли в текстовый файл списком все нажатые пользователем клавиши и могли передавать этот файл на электронный адрес. Современные версии программ-шпионов намного функциональнее: они без труда расскажут об открытых окнах, используемых программах, посещённых сайтах и формах, в которые вводится какой-либо текст, не говоря уже об истории переписки пользователя по ICQ, почте или в социальных сетях. Новые программы для шпионажа умеют следить за буфером обмена, фотографировать экран, и, разумеется, отправлять все собранные данные по заранее настроенному адресу с заданной периодичностью.
Такие клавиатурные шпионы работают тихо и чисто, не оставляя следов своего присутствия в операционной системе, и без труда могут даже скрыть себя в списке процессов компьютера. Они внедряются в системное ядро и используют специальные библиотеки, которые следят, чтобы пользователь не смог заметить программу - шпион.
После сбора всех интересующих данных, программы-шпионы могут отправить всю информацию на электронный ящик, загрузить на FTP-сервер или использовать любой другой наиболее доступный способ передачи собранной информации.
В дипломной работе рассмотрены механизмы работы программ - шпионов, методы их внедрения, изложены принципы работы некоторых шпионских и анти - шпионских программ. На их основе сделаны соответствующие выводы, общие для всех пользователей ПК.
В приложениях 1, 2 и 3 приведены текстовый и графический материалы по методике лечения трудноудаляемых вредоносных программ, тестированию AntiSpyware-программ, эффективности выявления и обнаружения вредоносного ПО за счет применения эвристического детектирования.
1. Программы-шпионы
SpyWare - программы-шпионы. Программой - шпионом (альтернативные названия - Spy, SpyWare, Spy-Ware, Spy Trojan) принято называть программное обеспечение, собирающее и передающее кому-либо информацию о пользователе без его согласия. Информация о пользователе может включать его персональные данные, данные о его денежных счетах, конфигурацию его компьютера и операционной системы, статистику работы в сети Интернет и другое.
Шпионское ПО применяется для ряда целей, из которых основным являются маркетинговые исследования и целевая реклама. В этом случае информация о конфигурации компьютера пользователя, используемом им программном обеспечении, посещаемых сайтах, статистика запросов к поисковым машинам и статистика вводимых с клавиатуры слов позволяет очень точно определить род деятельности и круг интересов пользователей. Поэтому чаще всего можно наблюдать связку SpyWare - Adware, т.е. "Шпион" - "Модуль показа рекламы". Шпионская часть собирает информацию о пользователе и передает ее на сервер рекламной фирмы. Там информация анализируется и в ответ высылается рекламная информация, наиболее подходящая для данного пользователя. В лучшем случае реклама показывается в отдельных всплывающих окнах, в худшем - внедряется в загружаемые страницы и присылается по электронной почте. Вред, наносимый воровством персональной информации - является уголовно наказуемым деянием в большинстве развитых стран.
Однако собранная информация может использоваться не только для рекламных целей - например, получение информации о ПК пользователя может существенно упростить хакерскую атаку и взлом компьютера пользователя. А если программа периодически обновляет себя через Интернет, то это делает компьютер очень уязвимым - элементарная атака на DNS может подменить адрес источника обновления на адрес сервера хакера - такое "обновление" приведет к внедрению на ПК пользователя любого постороннего программного обеспечения.
Шпионское программное обеспечение может попасть на компьютер пользователя двумя основными путями:
1. В ходе посещения сайтов Интернет. Наиболее часто проникновение шпионского ПО происходит про посещении пользователем хакерских и warez сайтов, сайтов с бесплатной музыкой и порносайтов. Как правило, для установки шпионского ПО применяются ActiveX компоненты или троянские программы категории TrojanDownloader по классификации лаборатории Касперского http://www.kaspersky.ru/. Многие хакерские сайты могут выдать crack Программа для взлома лицензионного ПО (крек), содержащий шпионскую программу или TrojanDownloader для ее загрузки;
2. В результате установки бесплатных или условно-бесплатных программ. Самое неприятное состоит в том, что подобных программ существует великое множество, они распространяются через Интернет или на пиратских компакт-дисках.
Точных критериев для занесения программы в категорию "SpyWare" не существует, и очень часто создатели антивирусных пакетов относят программы категорий "Adware" (приложение, предназначенное для загрузки на ПК пользователя информации рекламного характера для ее последующей демонстрации и "Hijacker" (утилита, которая изменяет настройки браузера без ведома пользователя) к категории "SpyWare" и наоборот.
Для определенности предлагается ряд правил и условий, при соблюдении которых программу можно классифицировать как SpyWare. В основу классификации положены наиболее распространенные SpyWare программы:
1. Программа скрытно устанавливается на компьютер пользователя. Смысл данного пункта состоит в том, что инсталлятор обычной программы должен уведомить пользователя о факте установки программы (с возможностью отказа от установки), предложить выбрать каталог для установки и конфигурацию. Кроме того, после установки инсталлятор должен создать пункт в списке "Установка и удаление программ", вызов которого выполнит процесс деинсталляции и создать соответствующие записи в файле реестра операционной системы. Шпионское программное обеспечение обычно устанавливается экзотическим способом (часто с использованием троянских модулей категории Trojan-Downloader) скрытно от пользователя, при это его деинсталляция в большинстве случаев невозможна. Второй путь инсталляции SpyWare - скрытная установка в комплекте с какой-либо популярной программой;
2. Программа скрытно загружается в память в процессе загрузки компьютера. Стоит отметить, что разработчики современных SpyWare начали применять Rootkit В системах Windows под rootkit принято подразумевать программу, которая внедряется в систему и перехватывает системные функции (Windows API). Перехват и модификация низкоуровневых API-функций, в первую очередь, позволяет такой программе достаточно качественно маскировать свое присутствие в системе. Кроме того, как правило, rootkit может маскировать присутствие в системе любых описанных в его конфигурации процессов, каталогов и файлов на диске, ключей в реестре. технологии для маскировки процесса в памяти и файлов на диске. Кроме того, становится популярным создание "неубиваемых" процессов - т.е. запуск двух процессов, которых перезапускают друг друга в случае остановки. Такая технология в частности применяется в SpyWare.WinAd;
3. Программа выполняет некоторые операции без указания пользователя - например, принимает или передает какую-либо информацию из Интернет;
4. Программа загружает и устанавливает свои обновления, дополнения, модули расширения или иное ПО без ведома и согласия пользователя. Данное свойство присуще многим шпионским программам и чрезвычайно опасно, т.к. загрузка и установка обновлений и дополнительных модулей происходит скрытно и часто ведет к нестабильной работе системы. Более того, механизмы автоматического обновления могут быть использованы злоумышленниками для внедрения на ПК пользователя троянских модулей;
5. Программа модифицирует системные настройки или вмешивается в функционирование других программ без ведома пользователя. Например, шпионский модуль может изменить уровень безопасности в настройках браузера или внести изменения в настройки сети;
6. Программа модифицирует информацию или информационные потоки. Типовым примером являются разные расширения для программы Outlook Express, которые при отправке письма приписывают к нему свою информацию. Второй распространенный пример - модификация загружаемых из Интернет страниц (в страницы включается рекламная информация, некоторые слова или фразы превращаются в гиперссылки)
В данной классификации следует особо отметить тот факт, что программа категории SpyWare не позволяет удаленно управлять компьютером и не передает пароли и аналогичную им информацию своим создателям - подобные действия специфичны другой категории программ - "Trojan" и "BackDoor". Однако по многим параметрам программы категории SpyWare являются родственниками троянских программ.
Группировка файлов, проведенная по классификации "Лаборатории Касперского" и процентный состав программ - шпионов показан на рис. 1.
Как следует из диаграммы, 38% от количества образцов составляют AdWare и SpyWare (нужно отметить, что в классификации ЛК отсутствует SpyWare - в эту категорию внесены наиболее вредоносные из представителей AdWare). Подавляющее количество образцов Trojan-Downloader данной коллекции являются программами для скрытной загрузки и установки представленных в коллекции вредоносных программ. Trojan-Spy - это шпионское программное обеспечение в чистом виде, передающее важные сведения о пользователе: пароли, номера кредитных карт, вводимый с клавиатуры текст. В категории Trojan отобраны программы следующих разновидностей: Trojan-Dialer (программы для скрытной модификации параметров набора телефонного номера или дозвона по платным телефонам), Trojan.StartPage (модифицирующие стартовую страницу и параметры поиска Internet Explorer, эти программы также известны как Hijacker),
Процентный состав программ - шпионов проведена по классификации "Лаборатории Касперского"
Как следует из диаграммы, 38% от количества образцов составляют AdWare и SpyWare Подавляющее количество образцов Trojan-Downloader данной коллекции являются программами для скрытной загрузки и установки представленных в коллекции вредоносных программ. Trojan-Spy - это шпионское программное обеспечение в чистом виде, передающее важные сведения о пользователе: пароли, номера кредитных карт, вводимый с клавиатуры текст. В категории Trojan отобраны программы следующих разновидностей: Trojan-Dialer (программы для скрытной модификации параметров набора телефонного номера или дозвона по платным телефонам), Trojan.StartPage (модифицирующие стартовую страницу и параметры поиска Internet Explorer, эти программы также известны как Hijacker), Trojan.LowZones (модифицирующие параметры безопасности Internet Explorer). В категорию "Прочее" попали вредоносные программы других классов - здесь представлено около 50 сетевых и почтовых червей распространенных типов, 12 эксплоитов для Internet Explorer (применяемых для запуска инсталляторов SpyWare) и 70 специализированных троянских программ (TrojanPSW и Trojan-Proxy). Backdoor -основным назначением является несанкционированное, тайное управление компьютером.
2. Программные закладки
конфиденциальный antispyware windows эвристический
Современная концепция создания компьютерных систем предполагает использование программных средств различного назначения в едином комплексе. К примеру, типовая система автоматизированного документооборота состоит из операционной среды, программных средств управления базами данных, телекоммуникационных программ, текстовых редакторов, антивирусных мониторов, средств для криптографической защиты данных, а также средств аутентификации и идентификации пользователей. Главным условием правильного функционирования такой компьютерной системы является обеспечение защиты от вмешательства в процесс обработки информации тех программ, присутствие которых в компьютерной системе не обязательно. Среди подобных программ, в первую очередь, следует упомянуть компьютерные вирусы. Однако имеются вредоносные программы еще одного класса. От них, как и от вирусов, следует с особой тщательностью очищать свои компьютерные системы. Это так называемые программные закладки, которые могут выполнять хотя бы одно из перечисленных ниже действий:
§ вносить произвольные искажения в коды программ, находящихся в оперативной памяти компьютера (программная закладка первого типа);
§ переносить фрагменты информации из одних областей оперативной или внешней памяти компьютера в другие (программная закладка второго типа);
§ искажать выводимую на внешние компьютерные устройства или в канал связи информацию, полученную в результате работы других программ (программная закладка третьего типа).
Программные закладки можно классифицировать и по методу их внедрения в компьютерную систему:
§ программно-аппаратные закладки, ассоциированные с аппаратными средствами компьютера (их средой обитания, как правило, является BIOS - набор программ, записанных в виде машинного кода в постоянном запоминающем устройстве - ПЗУ);
§ загрузочные закладки, ассоциированные с программами начальной загрузки, которые располагаются в загрузочных секторах (MBR HDD - из этих секторов в процессе выполнения начальной загрузки компьютер считывает программу, берущую на себя управление для последующей загрузки самой операционной системы);
§ драйверные закладки, ассоциированные с драйверами (файлами, и которых содержится информация, необходимая операционной системе для управления подключенными к компьютеру периферийными устройствами);
§ прикладные закладки, ассоциированные с прикладным программным обеспечением общего назначения (текстовые редакторы, утилиты, антивирусные мониторы и программные оболочки);
§ исполняемые закладки, ассоциированные с исполняемыми программными модулями, содержащими код этой закладки (чаше всего эти модули представляют собой пакетные файлы, т. е. файлы, которые состоят из команд операционной системы, выполняемых одна за другой, как если бы их набирали на клавиатуре компьютера);
§ закладки-имитаторы, интерфейс которых совпадает с интерфейсом некоторых служебных программ, требующих ввод конфиденциальной информации (паролей, криптографических ключей, номеров кредитных карточек);
§ замаскированные закладки, которые маскируются под программные средства оптимизации работы компьютера (файловые архиваторы, дисковые дефрагментаторы) или под программы игрового и развлекательного назначения.
Чтобы программная закладка могла произвести какие-либо действия по отношению к другим программам или по отношению к данным, процессор должен приступить к исполнению команд, входящих в состав кода программной закладки. Это возможно только при одновременном соблюдении следующих условий:
§ программная закладка должна попасть в оперативную память компьютера (если закладка относится к первому типу, то она должна быть загружена до начала работы другой программы, которая является целью воздействия закладки, или во время работы этой программы);
§ работа закладки, находящейся в оперативной памяти, начинается при выполнении ряда условий, которые называются активизирующими. Чаще всего - это системный вызов какой-либо процедуры по прерыванию 21h.
Интересно, что иногда сам пользователь провоцируется на запуск исполняемого файла, содержащего код программной закладки. Известен такой случай. Среди пользователей свободно распространялся набор из архивированных файлов. Для извлечения файлов из него требовалось вызвать специальную утилиту, которая, как правило, есть почти у каждого пользователя, и запускается после указания ее имени в командной строке. Однако мало кто из пользователей замечал, что в полученном наборе файлов уже имелась программа с таким же именем и что запускаюсь именно она. Кроме разархивирования файлов, эта программная закладка дополнительно производила ряд действий негативного характера.
С учетом замечания о том, что программная закладка должна быть обязательно загружена в оперативную память компьютера, можно выделить резидентные закладки (они находятся в оперативной памяти постоянно, начиная с некоторого момента и до окончания сеанса работы компьютера, т. с. до его перезагрузки или до выключения питания) и нерезидентные (такие закладки попадают в оперативную память компьютера аналогично резидентным, однако, в отличие от последних, выгружаются по истечении некоторого времени или при выполнении особых условий).
Существуют три основные группы деструктивных действий, которые могут осуществляться программными закладками:
§ копирование информации пользователя компьютерной системы (паролей, криптографических ключей, кодов доступа, конфиденциальных электронных документов), находящейся в оперативной или внешней памяти этой системы либо в памяти другой компьютерной системы, подключенной к ней через локальную или глобальную компьютерную сеть;
§ изменение алгоритмов функционирования системных, прикладных и служебных программ (например, внесение изменений в программу разграничения доступа может привести к тому, что она разрешит вход в систему всем без исключения пользователям вне зависимости от правильности введенного пароля);
§ навязывание определенных режимов работы (например, в блокировании записи на диск при удалении информации, при этом информация, которую требуется удалить, не уничтожается и может быть впоследствии скопирована хакером).
У всех программных закладок (независимо от метода их внедрения в компьютерную систему, срока их пребывания в оперативной памяти и назначения) имеется одна важная общая черта: они обязательно выполняют операцию записи в оперативную или внешнюю память системы. При отсутствии данной операции никакого негативного влияния программная закладка оказать не может. Ясно, что для целенаправленного воздействия она должна выполнять и операцию чтения, иначе в ней может быть реализована только функция разрушения (например, удаление или замена информации в определенных секторах жесткого диска).
3. Модели воздействия программных закладок на компьютеры
3.1 Перехват
В модели перехват программная закладка внедряется на HDD (Hard Disk Drive - накопитель на жестком диске) системное или прикладное программное обеспечение и сохраняет всю или выбранную информацию, вводимую с внешних устройств компьютерной системы или выводимую на эти устройства, в скрытой области памяти локальной или удаленной компьютерной системы. Объектом сохранения, например, могут служить символы, введенные с клавиатуры (все повторяемые два раза последовательности символов), или электронные документы, распечатываемые на принтере.
Данная модель может быть двухступенчатой. На первом этапе сохраняются только, например, имена или начала файлов. На втором накопленные данные анализируются злоумышленником с целью принятия решения о конкретных объектах дальнейшей атаки.
Модель типа "перехват" может быть эффективно использована при атаке на защищенную операционную систему Windows. После старта Windows на экране компьютерной системы появляется приглашение нажать клавиши Ctrl + Alt + Del . После их нажатия загружается динамическая библиотека MSGINA.DLL, осуществляющая прием вводимого пароля и выполнение процедуры его проверки (аутентификации). Описание всех функций этой библиотеки можно найти в файле Winwlx.h Описание и исходный код данной библиотеки и многих других системных библиотек ОС семейства Windows можно найти в открытом виде на сайте http://www.koders.com. Также существует простой механизм замены исходной библиотеки MSGINA.DLL Исходный код библиотеки см. http://www.koders.com/c/fid038EACEE81134070A6F868B5F0 BB6CE76BE79FCF.aspx на пользовательскую (для этого необходимо просто добавить специальную строку в реестр операционной системы Windows и указать местоположение пользовательской библиотеки). В результате злоумышленник может модифицировать процедуру контроля над доступом к компьютерной системе, работающей под управлением ОС семейства Windows.
3.2 Искажение
В модели искажение программная закладка изменяет информацию, которая записывается в память компьютерной системы в результате работы программ, либо подавляет/инициирует возникновение ошибочных ситуаций в компьютерной системе.
Можно выделить статическое и динамическое искажение. Статическое искажение происходит всего один раз. При этом модифицируются параметры программной среды компьютерной системы, чтобы впоследствии в ней выполнялись нужные злоумышленнику действия. К статическому искажению относится, например, внесение изменений в файл AUTOEXEC.BAT ОС Windows или DOS, которые приводят к запуску заданной программы, прежде чем будут запущены все другие, перечисленные в этом файле.
Специалистам российского Федерального агентства правительственной связи и информации (далее ФАПСИ) удалось выявить при анализе одной из российских систем цифровой подписи интересное статистическое искажение Злоумышленник (сотрудник отдела информатизации финансовой организации, в которой была внедрена данная система) исправил в исполняемом ЕХЕ-модуле программы проверки правильности цифровой подписи символьную строку "ПОДПИСЬ НЕКОРРЕКТНА" на символьную строку "ПОДПИСЬ КОРРЕКТНА". В результате вообще перестали фиксироваться документы с неверными цифровыми подписями, и, следовательно, в электронные документы стало можно вносить произвольные изменения уже после их подписания электронной цифровой подписью.
Динамическое искажение заключается в изменении каких-либо параметром системных или прикладных процессов при помощи заранее активизированных закладок. Динамическое искажение можно условно разделить так: искажение на входе (когда на обработку попадает уже искаженный документ) и искажение на выходе (когда искажается информация, отображаемая для восприятия человеком, или предназначенная для работы других программ).
Практика применения цифровой подписи в системах автоматизированного документооборота показала, что именно программная реализация цифровой подписи особенно подвержена влиянию программных закладок типа "динамическое искажение", которые позволяют осуществлять проводки фальшивых финансовых документов и вмешиваться в процесс разрешения споров по фактам неправомерного применения цифровой подписи. Например, в одной из программных реализаций широко известной криптосистемы PGP электронный документ, под которым требовалось поставить цифровую подпись, считывался блоками по 512 байт, причем процесс считывания считался завершенным, если в прочитанном блоке данные занимали меньше 512 байт. Работа одной программной закладки, выявленной специалистами ФАПСИ, основывалась на навязывании длины файла. Эта закладка позволяла считывать только первые 512 байт документа, и в результате цифровая подпись определялась на основе только этих 512 байт. Такая же схема действовала и при проверке поставленной под документом цифровой подписи. Следовательно, оставшаяся часть этого документа могла быть произвольным образом искажена, и цифровая подпись под ним продолжала оставаться "корректной".
Существуют 4 основных способа воздействия программных закладок на цифровую подпись:
§ искажение входной информации (изменяется поступающий на подпись электронный документ);
§ искажение результата проверки истинности цифровой подписи (вне зависимости от результатов работы программы цифровая подпись объявляется подлинной);
§ навязывание длины электронного документа (программе цифровой подписи предъявляется документ меньшей длины, чем на самом деле, и в результате цифровая подпись ставится только под частью исходною документа);
§ искажение программы цифровой подписи (вносятся изменения в исполняемый код программы с целью модификации реализованного алгоритма).
В рамках модели "искажение" также реализуются программные закладки. действие которых основывается на инициировании или подавлении сигнала о возникновении ошибочных ситуаций в компьютерной системе, т. е. тех, которые приводят к отличному от нормального завершению исполняемой программы (предписанного соответствующей документацией).
Для инициирования статической ошибки на устройствах хранения информации создается область, при обращении к которой (чтение, запись, форматирование и т. п.) возникает ошибка, что может затруднить или блокировать некоторые нежелательные для злоумышленника действия системных пли прикладных программ (например, не позволять осуществлять корректное уничтожение конфиденциальной информации на жестком диске).
При инициировании динамической ошибки для некоторой операции генерируется ложная ошибка из числа тех ошибок, которые могут возникать при выполнении данной операции. Например, для блокирования приема или передачи информации в компьютерной системе может постоянно инициироваться ошибочная ситуация "МОДЕМ ЗАНЯТ". Или при прочтении первого блока информации длиной 512 байт может устанавливаться соответствующий флажок для того, чтобы не допустить прочтения второго и последующих блоков и в итоге подделать цифровую подпись под документом.
Чтобы маскировать ошибочные ситуации, злоумышленники обычно используют подавление статической или динамической ошибки. Целью такого подавления часто является стремление блокировать нормальное функционирование компьютерной системы или желание заставить ее неправильно работать. Чрезвычайно важно, чтобы компьютерная система адекватно реагировала на возникновение всех без исключения ошибочных ситуаций, поскольку отсутствие должной реакции на любую ошибку эквивалентно ее подавлению и может быть использовано злоумышленником. Разновидностью искажения является также модель типа троянский конь. В этом случае программная закладка встраивается в постоянно используемое программное обеспечение и по некоторому активизирующему событию вызывает возникновение сбойной ситуации в компьютерной системе. Тем самым достигаются сразу две цели: парализуется ее нормальное функционирование, а злоумышленник, получив доступ к компьютерной системе для устранения неполадок, сможет, например, извлечь из нее информацию, перехваченную другими программными закладками. В качестве активизирующего события обычно используется наступление определенного момент времени, сигнал из канала модемной связи или состояние некоторых счетчиков (например, счетчика количества запусков программы).
3.3 Уборка мусора
Как известно, при хранении компьютерных данных на внешних носителях прямого доступа выделяется несколько уровней иерархии: сектора, кластеры и файлы. Сектора являются единицами хранения информации на аппаратном уровне. Кластеры состоят из одного или нескольких подряд идущих секторов. Файл - это множество кластеров, связанных по определенному закону.
Работа с конфиденциальными электронными документами обычно сводится к последовательности следующих манипуляций с файлами:
§ создание;
§ хранение;
§ коррекция;
§ уничтожение.
Для защиты конфиденциальной информации обычно используется шифрование. Основная угроза исходит отнюдь не от использования нестойких алгоритмов шифрования и "плохих" криптографических ключей (как это может показаться на первый взгляд), а от обыкновенных текстовых редакторов и баз данных, применяемых для создания и коррекции конфиденциальных документов!
Дело в том, что подобные программные средства, как правило, в процессе функционирования создают в оперативной или внешней памяти компьютерной системы временные копии документов, с которыми они работают. Естественно, все эти временные файлы выпадают из поля зрения любых программ шифрования и могут быть использованы злоумышленником для того, чтобы составить представление о содержании хранимых в зашифрованном виде конфиденциальных документов.
Важно помнить и о том, что при записи отредактированной информации меньшего объема в тот же файл, где хранилась исходная информация до начала сеанса ее редактирования, образуются так называемые "хвостовые" кластеры, в которых эта исходная информация полностью сохраняется. И тогда "хвостовые" кластеры не только не подвергаются воздействию программ шифрования, но и остаются незатронутыми даже средствами гарантированного стирания информации. Конечно, рано или поздно информация из "хвостовых" кластеров затирается данными из других файлов, однако по оценкам специалистов ФАПСИ из "хвостовых" кластеров через сутки можно извлечь до 85%, а через десять суток - до 25-40% исходной информации.
Пользователям необходимо иметь в виду и то, что команда удаления файла (DEL) операционных систем DOS (Disk Operation System 2.0 - 6.22) или семейства Windows не изменяет содержания файла, и оно может быть в любой момент восстановлено, если поверх него еще не был записан другой файл. Распространенные средства гарантированного стирания файлов предварительно записывают на его место константы или случайные числа и только после этого удаляют файл стандартными средствами DOS или Windows. Однако даже такие мощные средства оказываются бессильными против программных закладок, которые нацелены на то, чтобы увеличить количество остающихся в виде "мусора" фрагментов конфиденциальной информации. Например, программная закладка может инициировать статическую ошибку, пометив один или несколько кластеров из цепочки, входящей в файл, меткой "СБОЙНЫЙ". В результате при удалении файла средствами операционной системы или средствами гарантированного уничтожения та его часть, которая размещена в сбойных кластерах, останется нетронутой и впоследствии может быть восстановлена с помощью стандартных утилит.
3.4 Наблюдение и компрометация
Помимо перечисленных, существуют и другие модели воздействия программных закладок на компьютеры. В частности, при использовании модели типа наблюдение программная закладка встраивается в сетевое или телекоммуникационное программное обеспечение. Пользуясь тем, что подобное программное обеспечение всегда находится в состоянии активности, внедренная в него программная закладка может следить за всеми процессами обработки информации в компьютерной системе, а также осуществлять установку и удаление других программных закладок. Модель типа компрометация позволяет получать доступ к информации, перехваченной другими программными закладками. Например, инициируется постоянное обращение к такой информации, приводящее к росту соотношения сигнал/шум. А это, в свою очередь, значительно облегчает перехват побочных излучений данной компьютерной системы и позволяет эффективно выделять сигналы, сгенерированные закладкой типа "компрометация", из общего фона излучения, исходящего от оборудования.
4. Защита от программных закладок
Задача защиты от программных закладок может рассматриваться в трех принципиально различных вариантах:
§ не допустить внедрения программной закладки в компьютерную систему;
§ выявить внедренную программную закладку;
§ удалить внедренную программную закладку.
При рассмотрении этих вариантов решение задачи защиты от программных закладок сходно с решением проблемы защиты компьютерных систем от вирусов. Как и в случае борьбы с вирусами, задача решается с помощью средств контроля над целостностью запускаемых системных и прикладных программ, а также за целостностью информации, хранимой в компьютерной системе и за критическими для функционирования системы событиями. Однако данные средства действенны только тогда, когда сами они не подвержены влиянию программных закладок, которые могут:
§ навязывать конечные результаты контрольных проверок;
§ влиять на процесс считывания информации и запуск программ, за которыми осуществляется контроль;
§ изменять алгоритмы функционирования средств контроля.
При этом чрезвычайно важно, чтобы включение средств контроля выполнялось до начала воздействия программной закладки либо когда контроль осуществлялся только с использованием программ управления, находящихся в ПЗУ компьютерной системы.
4.1 Защита от внедрения программных закладок
Универсальным средством защиты от внедрения программных закладок является создание изолированного компьютера. Компьютер называется изолированным, если выполнены следующие условия:
§ в нем установлена система BIOS, не содержащая программных закладок;
§ операционная система проверена на наличие в ней закладок;
§ достоверно установлена неизменность BIOS и операционной системы для данного сеанса;
§ на компьютере не запускалось и не запускается никаких иных программ, кроме уже прошедших проверку на присутствие в них закладок;
§ исключен запуск проверенных программ в каких-либо иных условиях, кроме перечисленных выше, т. е. вне изолированного компьютера.
Для определения степени изолированности компьютера может использоваться модель ступенчатого контроля. Сначала проверяется, нет ли изменений в BIOS. Затем, если все в порядке, считывается загрузочный сектор диска и драйверы операционной системы, которые, в свою очередь, также анализируются на предмет внесения в них несанкционированных изменений. И, наконец, с помощью операционной системы запускается драйвер контроля вызовов программ, который следит за тем, чтобы в компьютере запускались только проверенные программы.
Интересный метод борьбы с внедрением программных закладок может быть использован в информационной банковской системе, в которой циркулируют исключительно файлы-документы. Чтобы не допустить проникновения программной закладки через каналы связи, в этой системе не допускается прием никакого исполняемого кода. Для распознавания событий типа "ПОЛУЧЕН ИСПОЛНЯЕМЫЙ КОД" и "ПОЛУЧЕН ФАЙЛ-ДОКУМЕНТ" применяется контроль над наличием в файле запрещенных символов: файл признается содержащим исполняемый код, если в нем присутствуют символы, которые никогда не встречаются в файлах-документах.
4.2 Выявление внедренной программной закладки
Выявление внедренного кода программной закладки заключается в обнаружении признаков его присутствия в компьютерной системе. Эти признаки можно разделить на следующие два класса:
§ качественные и визуальные;
§ обнаруживаемые средствами тестирования и диагностики.
К качественным и визуальным признакам относятся ощущения и наблюдения пользователя компьютерной системы, который отмечает определенные отклонения в ее работе (изменяется состав и длины файлов, старые файлы куда-то пропадают, а вместо них появляются новые, программы начинают работать медленнее, или заканчивают свою работу слишком быстро, или вообще перестают запускаться). Несмотря на то, что суждение о наличии признаков этого класса кажется слишком субъективным, тем не менее, они часто свидетельствуют о наличии неполадок в компьютерной системе и, в частности, о необходимости проведения дополнительных проверок присутствия программных закладок. Например, пользователи пакета шифрования и цифровой подписи "Криптоцентр" с некоторых пор стали замечать, что цифровая подпись под электронными документами ставится слишком быстро. Исследование, проведенное специалистами ФАПСИ, показало присутствие программной закладки, работа которой основывалась на навязывании длины файла. В другом случае тревогу забили пользователи пакета шифрования и цифровой подписи "Криптон", которые с удивлением отметили, что скорость шифрования по криптографическому алгоритму ГОСТ 28147-89 ГОСТ 28147-89 - советский и российский стандарт симметричного шифрования, введённый в 1990 году, также является стандартом СНГ. Полное название - "ГОСТ 28147-89 Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования". Блочный шифроалгоритм. При использовании метода шифрования с гаммированием, может выполнять функции поточного шифроалгоритма. вдруг возросла более чем в 30 раз. А в третьем случае программная закладка обнаружила свое присутствие в программе клавиатурного ввода тем, что пораженная ею программа перестала нормально работать.
Признаки, выявляемые с помощью средств тестирования и диагностики, характерны как для программных закладок, так и для компьютерных вирусов. Например, загрузочные закладки успешно обнаруживаются антивирусными программами, которые сигнализируют о наличии подозрительного кода в загрузочном секторе диска. С инициированием статической ошибки на дисках хорошо справляется Disk Doctor, входящий в распространенный комплект утилит Norton Utilities. А средства проверки целостности данных на диске типа Adinf позволяют успешно выявлять изменения, вносимые в файлы программными закладками. Кроме того, эффективен поиск фрагментов кода программных закладок по характерным для них последовательностям нулей и единиц (сигнатурам), а также разрешение на выполнение только программ с известными сигнатурами.
4.3 Удаление внедренной программной закладки
Конкретный способ удаления внедренной программной закладки зависит от метода ее внедрения в компьютерную систему. Если это программно-аппаратная закладка, то следует перепрограммировать ПЗУ компьютера. Если это загрузочная, драйверная, прикладная, замаскированная закладка или закладка - имитатор, то можно заменить их соответствующей загрузочной записью, драйвер, утилиту, прикладную или служебную программу, полученную от источника, заслуживающего доверия. Наконец, если это исполняемый программный модуль, то можно попытаться добыть его исходный текст, убрать из него имеющиеся закладки или подозрительные фрагменты, а затем заново откомпилировать.
В любое программное обеспечение на любом этапе его жизненного цикла может быть внедрена программная закладка. Это весьма эффективное и трудно определяемое средство получения несанкционированного доступа, потенциально дающее весьма большие возможности. Но уже разработан ряд мер помогающий обеспечивать защиту от этого типа РПС. Наиболее эффективным средством является контроль санкционированности событий, в сочетании с оптимальным тестированием и регулярными проверками системных журналов. Однако, это трудоёмкий процесс. И более удобный способ - это использование протестированного и сертифицированного программного обеспечения.
5. Троянские программы
Троянской программой (троянцем, или троянским конем) называется:
§ программа, которая, являясь частью другой программы с известными пользователю функциями, способна втайне от него выполнять некоторые дополнительные действия с целью причинения ему определенного ущерба;
§ программа с известными ее пользователю функциями, в которую были внесены изменения, чтобы, помимо этих функций, она могла втайне от него выполнять некоторые другие (разрушительные) действия.
Таким образом, троянская программа - это особая разновидность программной закладки. Она дополнительно наделена функциями, о существовании которых пользователь даже не подозревает. Когда троянская программа выполняет эти функции, компьютерной системе наносится определенный ущерб. Однако то, что при одних обстоятельствах причиняет непоправимый вред, при других - может оказаться вполне полезным. К примеру, программу, которая форматирует жесткий диск, нельзя назвать троянской, если она как раз, и предназначена для его форматирования (как это делает команда format [parameter] операционной системы DOS или Windows). Но если пользователь, выполняя некоторую программу, совершенно не ждет, что она отформатирует его винчестер, - это и есть самый настоящий троянец.
Следовательно, троянской можно считать любую программу, которая втайне от пользователя выполняет какие-то нежелательные для него действия. Эти действия могут быть любыми - от определения регистрационных номеров программного обеспечения, установленного на компьютере, до составления списка каталогов на его жестком диске. А сама троянская программа может маскироваться под текстовый редактор, под сетевую утилиту или любую программу, которую пользователь пожелает установить на свой компьютер.
5.1 Откуда берутся троянские программы
Троянская программа - это плод труда программиста. Никаким другим способом создать ее невозможно. Программист, пишущий троянскую программу, прекрасно осознает, чего он хочет добиться, и в своих намерениях он всегда весьма далек от альтруизма.
Большинство троянских программ предназначено для сбора конфиденциальной информации. Их задача, чаще всего, состоит в выполнении действий, позволяющих получить доступ к данным, которые не подлежат широкой огласке. К таким данным относятся пользовательские пароли, регистрационные номера программ, сведения о банковских счетах и т. д. Остальные троянцы создаются для причинения прямого ущерба компьютерной системе, приводя ее в неработоспособное состояние.
К последним можно отнести, например, троянскую программу PC CYBORG dic.academic.ru/dic.nsf/enwiki/1052888, которая завлекала ничего не подозревающих пользователей обещаниями предоставить им новейшую информацию о борьбе с вирусом, вызывающим синдром приобретенного иммунодефицита (СПИД). Проникнув в компьютерную систему, PC CYBORG отсчитывала 90 перезагрузок этой системы, а затем прятала все каталоги на ее жестком диске и шифровала находящиеся там файлы.
Другая троянская программа называлась AOLGOLD www.pps.ru/bib/p3/p3s/trojan/index.html. Она рассылалась по электронной почте в виде заархивированного файла. В сопроводительном письме, прилагавшемся к этому файлу, говорилось о том, что AOLGOLD предназначена для повышения качества услуг, которые предоставляет своим пользователям крупнейший американский Internet-провайдер America Online (AOL). Архив состоял из двух файлов, один из которых именовался INSTALL.BAT. Пользователь, запустивший INSTALL.BAT, рисковал стереть все файлы из каталогов С:\, C:\DOS, C:\WINDOWS и C:\WINDOWS\SYSTEM на своем жестком диске.
Подобного рода троянские программы, как правило, создаются подростками, которые хотя и одержимы страстью к разрушению, но не имеют глубоких познаний в программировании и поэтому не могут причинить существенный ущерб компьютерным системам, подвергшимся нападению созданных ими троянцев. Например, программа AOLGOLD стирала себя с жесткого диска, будучи запущена из любого другого дискового раздела за исключением С.
Другое дело - троянские программы, авторами которых являются профессиональные программисты, занимающиеся разработкой программного обеспечения в солидных фирмах. Троянцы, входящие в распространенные компьютерные приложения, утилиты и операционные системы, представляют большую угрозу компьютерам, на которых они установлены, поскольку их действия носят не деструктивный характер, а имеют целью сбор конфиденциальной информации о системе. Обнаружить такие троянские программы удается, как правило, чисто случайно. А поскольку программное обеспечение, частью которого они являются, в большинстве случаев используется не только какой-то одной компанией, закупившей это программное обеспечение, но также на крупных Internet-серверах и, кроме того, распространяется через Internet, последствия могут оказаться самыми плачевными.
5.2 Где обитают и как часто встречаются троянские программы
В настоящее время троянские программы можно отыскать практически где угодно. Они написаны для всех без исключения операционных систем и для любых платформ. Не считая случаев, когда троянские программы пишутся самими разработчиками программного обеспечения, троянцы распространяются тем же способом, что и компьютерные вирусы. Поэтому самыми подозрительными на предмет присутствия в них троянцев, в первую очередь, являются бесплатные и условно-бесплатные программы, скачанные из Internet, а также программное обеспечение, распространяемое на пиратских компакт-дисках.
Например, в январе 1999 г. было обнаружено, что популярная утилита TCP Wrapper, предназначенная для администрирования UNIX-систем и бесплатно распространяемая через Internet, на многих ftp-сайтах была заменена внешне похожей на нее программой, которая на самом деле являлась троянцем. После инсталляции он отправлял электронное сообщение по определенным внешним адресам, оповещая своего хозяина об успешном внедрении. Потом он ждал, пока будет установлено удаленное соединение с портом 421 зараженного им компьютера, и предоставлял привилегированные права доступа через этот порт.
Другая троянская программа распространялась среди пользователей AOL в виде вложения в письмо, рассылаемое по электронной почте. Открывшие это вложение заражали свой компьютер троянцем, который пытался найти пароль для подключения к AOL и в случае успеха шифровал его. а потом отсылал электронной почтой куда-то в Китай.
В настоящее время существует целый ряд троянских программ, которые можно совершенно свободно скачать, подключившись к глобальной компьютерной сети Internet. Наибольшую известность среди них получили троянцы Back Orifice, Net Bus и SubSeven. На Web-узле группы разработчиков Back Orifice, которая именует себя Cult of Dead Cow (Культ мертвой коровы), можно даже найти с десяток постеров, которые предназначены для рекламы ее последней разработки - троянца Back Orifice 2000.
Таким образом, троянские программы встречаются довольно часто и, следовательно, представляют серьезную угрозу безопасности компьютерных систем. Даже после того как троянская программа обнаружена, ее вредоносное влияние на компьютерную систему может ощущаться еще в течение очень длительного времени. Ведь зачастую никто не может с уверенностью сказать, насколько сильно пострадала компьютерная система в результате проникновения в нее троянской программы.
Дело в том, что большинство троянцев являются частью других программ, которые хранятся в компьютере в откомпилированном виде. Текст этих программ представляет собой последовательность команд на машинном языке, состоящую из нулей и единиц. Рядовой пользователь, как правило, не имеет ни малейшего понятия о внутренней структуре таких программ. Он просто запускает их на исполнение путем задания имени соответствующей программы в командной строке или двойным щелчком на имени ее файла.
Когда выясняется, что в какую-то откомпилированную программу проник троянец, в сети Internet немедленно начинают распространяться бюллетени с информацией об обнаруженном троянце. Чаще всего в этих бюллетенях кратко сообщается о том, какой вред может причинить данный троянец и где можно найти замену пораженной троянцем программе.
Иногда ущерб, который может нанести троянец, оценить довольно легко. Например, если он предназначен для пересылки по электронной почте содержимого файла /etc/passwd, в котором операционные системы семейства UNIX хранят информацию о пользовательских паролях, достаточно установить "чистую" версию программы взамен той, в которой обосновался этот троянец. Затем пользователи должны будут обновить свои пароли, и на этом борьба с ним успешно завершается.
Однако далеко не всегда степень компрометации компьютерной системы, в которой поселилась троянская программа, бывает так легко определить. Предположим, что цель внедрения троянца состоит в создании дыры в защитных механизмах компьютерной системы, через которую злоумышленник сможет, например, проникать в нее, имея администраторские полномочия. И если взломщик окажется достаточно хитрым и смекалистым, чтобы замести следы своего присутствия в системе путем внесения соответствующих изменений в регистрационные файлы, то определить, насколько глубоко он проник сквозь системные защитные механизмы, будет почти невозможно. Если учесть еще тот факт, что саму троянскую программу, как правило, обнаружат лишь несколько месяцев спустя после ее внедрения в компьютерную систему. В этом случае, может понадобиться, целиком переустановить операционную систему и все приложения, что достаточно долго и трудоемко даже в масштабах небольшого офиса.
5.3 Как распознать троянскую программу
Большинство программных средств, предназначенных для защиты от троянских программ, в той или иной степени использует так называемое согласование объектов. При этом в качестве объектов фигурируют файлы и каталоги, а согласование представляет собой способ ответить на вопрос, изменились ли файлы и каталоги с момента последней проверки. В ходе согласования характеристики объектов сравниваются с характеристиками, которыми они обладали раньше. Берется, к примеру, архивная копия системного файла и ее атрибуты сравниваются с атрибутами этого файла, который в настоящий момент находится на жестком диске. Если атрибуты различаются, и никаких изменений в операционную систему не вносилось, значит в компьютер, скорее всего, проник троянец.
Одним из атрибутов любого файла является отметка о времени его последней модификации: всякий раз, когда файл открывается, изменяется и сохраняется на диске, автоматически вносятся соответствующие поправки. Однако отметка времени не может служить надежным индикатором наличия в системе троянца. Дело в том, что ею очень легко манипулировать. Можно подкрутить назад системные часы, внести изменения в файл, затем снова вернуть часы в исходное состояние, и отметка о времени модификации файла останется неизменной.
Подобные документы
Операционная система MS-DOS: история и характеристика. Обзор стандартных программ операционной системы Windows. Способы запуска программ. Служебные приложения Windows и их назначение: диспетчер задач, проверка, очистка, дефрагментация и архивация диска.
реферат [221,4 K], добавлен 06.01.2015Характеристика и принцип работы подсистемы-инсталлятора Windows Installer, ее структура и назначение. Порядок и варианты установки программ в ОС Linux, их преимущества и недостатки. Методика и основные этапы составления базы данных программ-аналогов.
курсовая работа [369,2 K], добавлен 24.08.2009Задачи подсистемы безопасности операционной системы Microsoft Windows. Предохранение систем ОС Windows от проникновения вредоносных программ, изоляцию этих программ в случае вторжения. Минимизация ущерба при заражении. Центр обеспечения безопасности.
презентация [1,2 M], добавлен 20.12.2013Правовые основы защиты информации на предприятии. Анализ среды пользователей. Автоматизированная система предприятия. Краткие сведения об операционной системе Windows XP. Классификация троянских программ. Способы защиты операционной системы Windows XP.
дипломная работа [187,3 K], добавлен 14.07.2013Применение персональных компьютеров различных классов. Работа со встроенными программами Windows. Характеристика распространенных операционных систем (Windows 3.Х, 9Х, NT, 2000, XP, Windows7, Vista). Виды антивирусных программ и защита данных от вирусов.
контрольная работа [32,3 K], добавлен 23.01.2011Изучение учебника и справочной подсистемы Windows 95/NT, получение навыков работы с "мышью", манипулирование окнами и значками программ и документов, запуска программ в системе Windows 95/NT. Разработка простого приложения для Windows при помощи Delphi.
контрольная работа [1,1 M], добавлен 15.01.2009Использование языка программирования Delphi для записи программ, представляющих собой последовательность инструкций. Классы и директивы в объектно-ориентированном программировании. Разработка демонстрационной программы. Процесс настройки Windows XP.
дипломная работа [917,4 K], добавлен 15.01.2014История Windows. Особенности Windows XP. Файловая система и структура. Основные принципы работы с системой. Начало и завершение работы, главное меню. Запуск и завершение программ. Окна и диалоги, панель задач. Установка Windows XP.
курсовая работа [344,0 K], добавлен 24.04.2007Характеристика операционной системы. История развития Windows. Сравнительная характеристика версий Windows. Элементы и инструменты Windows XP. Прикладные программы в Windows XP. Работа настольных и портативных компьютеров под управлением Windows.
доклад [19,1 K], добавлен 16.10.2011Операционная система Microsoft с настраиваемым интерфейсом - Windows ХР. Работа стандартных прикладных программ: блокнот, графический редактор Paint, текстовой процессор WordPad, калькулятор, сжатие данных, агент сжатия, стандартные средства мультимедиа.
контрольная работа [27,4 K], добавлен 25.01.2011