Московский государственный технологический университет
«СТАНКИН»
Факультет информационных технологий
Кафедра «Информационные системы»
Учебный курс «Информационная безопасность и защита информации»
Отчет по Курсовой работе
на тему:
Программные закладки: типы, способы внедрения и защиты
Выполнила
: студентка гр. И-7-2 Пряжникова Е.
Принял
: Хорев П.Б.
Москва, 2010г.
Оглавление
Введение. 3
1. Программные закладки: определение, опасность, классификация. 5
1.1. Программные закладки – определение 5
1.2. Опасность программных закладок 5
1.3. Классификации программных закладок 6
2. Разновидности программных закладок. 8
2.1. Клавиатурные шпионы_ 8
2.1.1. Имитаторы.. 8
2.1.2. Фильтры.. 10
2.1.3. Заместители. 11
2.2. Трояны_ 13
2.2.1. Back Orifice. 13
2.2.2. NetBus. 16
2.2.3. D.I.R.T. 18
2.2.4. Paparazzi 21
2.2.5. Распознавание троянских программ. 21
2.3. Логические бомбы_ 23
2.4. Мониторы_ 24
2.5. Компьютерные черви_ 24
2.6. Перехватчики паролей_ 24
2.7. Программы-шутки_ 25
3. Программные закладки: модели воздействия на компьютеры, способы внедрения и их взаимодействие с нарушителем.. 27
3.1. Модели воздействия программных закладок на компьютеры_ 27
3.2. Способы внедрения программных закладок и компьютерных вирусов 28
3.3. Сценарии внедрения программных закладок на различных этапах жизненного цикла программного обеспечения 30
3.4. Способы взаимодействия между программной закладкой и нарушителем 31
3.4.1. Определение понятия нарушителя. 31
3.4.2. Интернет. 32
3.4.3. Интранет. 33
3.4.4. Электронная почта. 33
4. Защита от программных закладок. 34
4.1. Защита от внедрения программных закладок 34
4.2. Выявление внедренной программной закладки_ 35
4.3. Удаление внедренной программной закладки_ 36
Заключение. 37
Литература. 38
Введение
На современном этапе развития нашего общества многие традиционные ресурсы человеческого прогресса постепенно утрачивают свое первоначальное значение. На смену им приходит новый ресурс, единственный продукт не убывающий, а растущий со временем, называемый информацией. Информация становится сегодня главным ресурсом научно-технического и социально-экономического развития мирового сообщества. Чем больше и быстрее внедряется качественной информации в народное хозяйство и специальные приложения, тем выше жизненный уровень народа, экономический, оборонный и политический потенциал страны.
В настоящее время хорошо налаженная распределенная сеть информационно-вычислительных комплексов способна сыграть такую же роль в общественной жизни, какую в свое время сыграли электрификация, телефонизация, радио и телевидение вместе взятые. Ярким примером этому стало развитие глобальной сети Internet. Уже принято говорить о новом витке в развитии общественной формации — информационном обществе.
Любая предпринимательская деятельность тесно связана с получением, накоплением, хранением, обработкой и использованием разнообразных информационных потоков. Целостность современного мира как сообщества обеспечивается, в основном, за счет интенсивного информационного обмена. Приостановка глобальных информационных потоков даже на короткое время способно привести к не меньшему кризису, чем разрыв межгосударственных экономических отношений. Поэтому в новых рыночно-конкурентных условиях возникает масса проблем, связанных не только с обеспечением сохранности коммерческой (предпринимательской) информации как вида интеллектуальной собственности, но и физических и юридических лиц, их имущественной собственности и личной безопасности.
Информация представляет определенную цену. И поэтому сам факт получения информации злоумышленником приносит ему определенный доход, ослабляя тем самым возможности конкурента. Отсюда главная цель злоумышленника — получение информации о составе, состоянии и деятельности объекта конфиденциальных интересов (фирмы, изделия, проекта, рецепта, технологии и т. д.) в целях удовлетворения своих информационных потребностей. Возможно в корыстных целях и внесение определенных изменений в состав информации, циркулирующей на объекте конфиденциальных интересов. Такое действие может привести к дезинформации по определенным сферам деятельности, учетным данным, результатам решения некоторых задач. Более опасной целью является уничтожение накопленных информационных массивов в документальной или магнитной форме и программных продуктов. Полный объем сведений о деятельности конкурента не может быть получен только каким-нибудь одним из возможных способов доступа к информации. Чем большими информационными возможностями обладает злоумышленник, тем больших успехов он может добиться в конкурентной борьбе. На успех может рассчитывать тот, кто быстрее и полнее соберет необходимую информацию, переработает ее и примет правильное решение. От целей зависит как выбор способов действий, так и количественный и качественный состав привлекаемых сил и средств посягательства.
Одним из самых распространенных на сегодня источником получения информации являются компьютерные сети. Они постепенно превратились в такую же повседневность, как и телевидение или телефон. Множество компаний имеют свои собственные официальные страницы в Internet, подразделения компаний используют компьютерные сети для оперативного обмена коммерческой информацией, тысячи рядовых граждан используют сеть для получения важных для них данных.
Задача защиты информации, хранимой в компьютерных системах, от несанкционированного доступа (НСД), является весьма актуальной. Для решения этой задачи используется целый комплекс средств, включающий в себя технические, программно-аппаратные средства и административные меры защиты информации.
По мере развития средств защиты компьютерных систем развиваются и средства нападения. Злоумышленники-хакеры изобретают все новые и новые атаки на различные элементы подсистем защиты компьютерных систем. Одной из наиболее опасных является атака защищенной системы посредством программных закладок.
В предлагаемой работе рассматриваются наиболее распространенные разновидности программных закладок, их способы внедрения, взаимодействия с нарушителем и методы защиты от программных закладок.
1. Программные закладки: определение, опасность, классификация
1.1. Программные закладки
– определение
Программная закладка
согласно нормативным документам Федеральной службы по техническому и экспортному контролю России – скрытно внесенный в программное обеспечение функциональный объект, который при определенных условиях способен обеспечить несанкционированное программное воздействие. Программная закладка может быть реализована в виде вредоносной программы или программного кода.
Вредоносная программа – программа, предназначенная для осуществления несанкционированного доступа и (или) воздействия на персональные данные или ресурсы информационной системы персональных данных.
Итак, программные закладки
– это скрытные (недокументированные) возможности в программном и аппаратном обеспечении персональных компьютеров и периферийного оборудования, позволяющие осуществлять скрытый несанкционированный доступ к ресурсам системы (как правило, посредством локальной или глобальной сети). То есть основное предназначение закладок – обеспечить несанкционированный доступ к конфиденциальной информации.
1.2. Опасность программных закладок
Основная опасность программных закладок заключается в том, что, программная закладка, являясь частью защищенной системы, способна принимать активные меры по маскировке своего присутствия в системе. При внедрении в систему закладки в защищенной системе создается скрытый канал информационного обмена, который, как правило, остается незамеченным для администраторов системы в течение длительного времени. Практически все известные программные закладки, применявшиеся в разное время различными злоумышленниками, были выявлены либо из-за ошибок, допущенных при программировании закладки, либо чисто случайно.
Если программная закладка написана грамотно, то после того, как она внедрена в систему, обнаружить ее стандартными средствами администрирования очень трудно, поэтому она может функционировать неограниченно долгое время, – и на протяжении всего этого времени внедривший ее злоумышленник имеет практически неограниченный доступ к системным ресурсам.
Закладки могут наносить ущерб как отдельным пользователям и компаниям, так и целым государствам, например, ставя под угрозу обороноспособность страны.
Приведем простой пример – военный конфликт в Персидском заливе. При проведении многонациональными силами операции «Буря в пустыне»
система ПВО Ирака оказалась заблокированной по неизвестной причине. В результате иракская сторона была вынуждена оставить без ответа бомбовые удары по своей территории. Специалисты уверены, что ЭВМ, входящие в состав комплекса технических средств системы ПВО, закупленные Ираком у Франции, содержали специальные управляемые закладки, блокировавшие работу вычислительной системы.
Существуют три основные группы деструктивных действий, которые могут осуществляться программными закладками:
· копирование информации пользователя компьютерной системы (паролей, криптографических ключей, кодов доступа, конфиденциальных электронных документов), находящейся в оперативной или внешней памяти этой системы либо в памяти другой компьютерной системы, подключенной к ней через локальную или глобальную компьютерную сеть;
· изменение алгоритмов функционирования системных, прикладных и служебных программ (например, внесение изменений в программу разграничения доступа может привести к тому, что она разрешит вход в систему всем без исключения пользователям вне зависимости от правильности введенного пароля);
· навязывание определенных режимов работы (например, блокирование записи на диск при удалении информации, при этом информация, которую требуется удалить, не уничтожается и может быть впоследствии скопирована хакером).
1.3. Классификации программных закладок
Существуют различные классификации программных закладок. Рассмотрим наиболее распространенные из них.
Программные закладки можно классифицировать по методу их внедрения в компьютерную систему
:
· программно-аппаратные закладки, ассоциированные с аппаратными средствами компьютера (их средой обитания, как правило, является BIOS — набор программ, записанных в виде машинного кода в постоянном запоминающем устройстве — ПЗУ);
· загрузочные закладки, ассоциированные с программами начальной загрузки, которые располагаются в загрузочных секторах (из этих секторов в процессе выполнения начальной загрузки компьютер считывает программу, берущую на себя управление для последующей загрузки самой операционной системы);
· драйверные закладки, ассоциированные с драйверами (файлами, в которых содержится информация, необходимая операционной системе для управления подключенными к компьютеру периферийными устройствами);
· прикладные закладки, ассоциированные с прикладным программным обеспечением общего назначения (текстовые редакторы, утилиты, антивирусные мониторы и программные оболочки);
· исполняемые закладки, ассоциированные с исполняемыми программными модулями, содержащими код этой закладки (чаще всего эти модули представляют собой пакетные файлы, т. е. файлы, которые состоят из команд операционной системы, выполняемых одна за одной, как если бы их набирали на клавиатуре компьютера);
· закладки-имитаторы, интерфейс которых совпадает с интерфейсом некоторых служебных программ, требующих ввод конфиденциальной информации (паролей, криптографических ключей, номеров кредитных карточек);
· замаскированные закладки, которые маскируются под программные средства оптимизации работы компьютера (файловые архиваторы, дисковые дефрагментаторы) или под программы игрового и развлекательного назначения.
Можно выделить закладки в зависимости от времени пребывания в оперативной памяти
:1. Резидентного типа - они находятся в памяти постоянно с некоторого момента времени до окончания сеанса работы персонального компьютера (выключения питания или перезагрузки). 2. Нерезидентного типа - они начинают работу по аналогичному событию, но заканчивают ее самостоятельно по истечении некоторого промежутка времени или некоторому событию, при этом выгружая себя из памяти целиком.
Программные закладки можно разделить также и по типу их воздействия на систему
:
· Закладки, вносящие произвольные искажения в коды программ, которые находятся в оперативной памяти компьютера (программная закладка первого типа);
· Закладки, переносящие фрагменты информации из одних областей оперативной или внешней памяти компьютера в другие (программная закладка второго типа);
· Закладки, искажающие выводимую на внешние компьютерные устройства или в канал связи информацию, полученную в результате работы других программ (программная закладка третьего типа).
2. Разновидности
программных закладок
2.1. Клавиатурные шпионы
Одна из наиболее распространенных, разновидностей программных закладок — клавиатурные шпионы.
Такие программные закладки нацелены на перехват паролей пользователей операционной системы, а также на определение их легальных полномочий и прав доступа к компьютерным ресурсам.
Клавиатурные шпионы — явление отнюдь не новое в мире компьютеров. В свое время они разрабатывались и для OS/370, и для UNIX, и для DOS. Их поведение в общем случае является довольно традиционным: типовой клавиатурный шпион обманным путем завладевает пользовательскими паролями, а затем переписывает эти пароли туда, откуда их может без особого труда извлечь злоумышленник. Различия между клавиатурными шпионами касаются только способа, который применяется ими для перехвата пользовательских паролей. Соответственно все клавиатурные шпионы делятся на три типа — имитаторы, фильтры и заместители.
2.1.1. Имитаторы
Клавиатурные шпионы этого типа работают по следующему алгоритму. Злоумышленник внедряет в операционную систему программный модуль, который имитирует приглашение пользователю зарегистрироваться для того, чтобы войти в систему. Затем внедренный модуль (в принятой терминологии — имитатор) переходит в режим ожидания ввода пользовательского идентификатора и пароля. После того как пользователь идентифицирует себя и введет свой пароль, имитатор сохраняет эти данные там, где они доступны злоумышленнику. Далее имитатор инициирует выход из системы (что в большинстве случаев можно сделать программным путем), и в результате перед глазами у ничего не подозревающего пользователя появляется еще одно, но на этот раз уже настоящее приглашение для входа в систему.
Обманутый пользователь, видя, что ему предлагается еще раз ввести пароль, приходит к выводу о том, что он допустил какую-то ошибку во время предыдущего ввода пароля, и послушно повторяет всю процедуру входа в систему заново. Некоторые имитаторы для убедительности выдают на экран монитора правдоподобное сообщение о якобы совершенной пользователем ошибке. Например, такое: “НЕВЕРНЫЙ ПАРОЛЬ. ПОПРОБУЙТЕ ЕЩЕ РАЗ”.
Написание имитатора не требует от его создателя каких-либо особых навыков. Злоумышленнику, умеющему программировать на одном из универсальных языков программирования (к примеру, на языке BASIC), понадобятся на это считанные часы. Единственная трудность, с которой он может столкнуться, состоит в том, чтобы отыскать в документации соответствующую программную функцию, реализующую выход пользователя из системы.
Перехват пароля зачастую облегчают сами разработчики операционных систем, которые не затрудняют себя созданием усложненных по форме приглашений пользователю зарегистрироваться для входа в систему. Подобное пренебрежительное отношение характерно для большинства версий операционной системы UNIX, в которых регистрационное приглашение состоит из двух текстовых строк, выдаваемых поочередно на экран терминала:
login:
password:
Чтобы подделать такое приглашение, не нужно быть семи пядей во лбу. Однако само по себе усложнение внешнего вида приглашения не создает для хакера, задумавшего внедрить в операционную систему имитатор, каких-либо непреодолимых препятствий. Для этого требуется прибегнуть к более сложным и изощренным мерам защиты. В качестве примера операционной системы, в которой такие меры в достаточно полном объеме реализованы на практике, можно привести Windows NT.
Системный процесс WinLogon, отвечающий в операционной системе Windows NT за аутентификацию пользователей, имеет свой собственный рабочий стол — совокупность окон, одновременно видимых на экране дисплея. Этот рабочий стол называется столом аутентификации.
Никакой другой процесс, в том числе и имитатор, не имеет доступа к рабочему столу аутентификации и не может расположить на нем свое окно.
После запуска Windows NT на экране компьютера возникает так называемое начальное окно рабочего стола аутентификации, содержащее указание нажать на клавиатуре клавиши <Ctrl>+<Alt>+<Del>. Сообщение о нажатии этих клавиш передается только системному процессу WinLogon, а для остальных процессов, в частности, для всех прикладных программ, их нажатие происходит совершенно незаметно. Далее производится переключение на другое, так называемое регистрационное
окно рабочего стола аутентификации. В нем-то как раз и размещается приглашение пользователю ввести свое идентификационное имя и пароль, которые будут восприняты и проверены процессом WinLogon.
Для перехвата пользовательского пароля внедренный в Windows NT имитатор обязательно должен уметь обрабатывать нажатие пользователем клавиш <Ctrl>+<Alt>+<Del>. В противном случае произойдет переключение на регистрационное окно рабочего стола аутентификации, имитатор станет неактивным и не сможет ничего перехватить, поскольку все символы пароля, введенные пользователем, минуют имитатор и станут достоянием исключительно системного процесса WinLogon. Как уже говорилось, процедура регистрации в Windows NT устроена таким образом, что нажатие клавиш <Ctrl>+<Alt>+<Del> проходит бесследно для всех процессов, кроме WinLogon, и поэтому пользовательский пароль поступит именно ему.
Конечно, имитатор может попытаться воспроизвести не начальное окно рабочего стола аутентификации (в котором высвечивается указание пользователю одновременно нажать клавиши <Ctrl>+<Alt>+<Del>), а регистрационное (где содержится приглашение ввести идентификационное имя и пароль пользователя). Однако при отсутствии имитаторов в системе регистрационное окно автоматически заменяется на начальное по прошествии короткого промежутка времени (в зависимости от версии Window NT он может продолжаться от 30 с до 1 мин), если в течение этого промежутка пользователь не предпринимает никаких попыток зарегистрироваться в системе. Таким образом, сам факт слишком долгого присутствия на экране регистрационного окна должен насторожить пользователя Windows NT и заставить его тщательно проверить свою компьютерную систему на предмет наличия в ней программных закладок.
Подводя итог сказанному, можно отметить, что степень защищенности Windows NT от имитаторов достаточно высока. Рассмотрение защитных механизмов, реализованных в этой операционной системе, позволяет сформулировать два необходимых условия, соблюдение которых является обязательным для обеспечения надежной защиты от имитаторов:
· системный процесс, который при входе пользователя в систему получает от него соответствующие регистрационное имя и пароль, должен иметь свой собственный рабочий стол, недоступный другим процессам;
· переключение на регистрационное окно рабочего стола аутентификации должно происходить абсолютно незаметно для прикладных программ, которые к тому же никак не могут повлиять на это переключение (например, запретить его).
К сожалению, эти два условия ни в одной из операционных систем, за исключением Windows NT, не соблюдаются. Поэтому для повышения их защищенности от имитаторов можно порекомендовать воспользоваться административными мерами. Например, обязать каждого пользователя немедленно сообщать системному администратору, когда вход в систему оказывается невозможен с первого раза, несмотря на корректно заданное идентификационное имя и правильно набранный пароль.
2.1.2. Фильтры
Фильтры
“охотятся” за всеми данными, которые пользователь операционной системы вводит с клавиатуры компьютера. Самые элементарные фильтры просто сбрасывают перехваченный клавиатурный ввод на жесткий диск или в какое-то другое место, к которому имеет доступ злоумышленник. Более изощренные программные закладки этого типа подвергают перехваченные данные анализу и отфильтровывают информацию, имеющую отношение к пользовательским паролям.
Фильтры являются резидентными программами, перехватывающими одно или несколько прерываний, которые связаны с обработкой сигналов от клавиатуры. Эти прерывания возвращают информацию о нажатой клавише и введенном символе, которая анализируется фильтрами на предмет выявления данных, имеющих отношение к паролю пользователя.
Известны несколько фильтров, созданных специально для различных версий операционной системы DOS. В 1997 г. отмечено появление фильтров для операционных систем Windows 3.11 и Windows 95.
Надо сказать, что изготовить подобного рода программную закладку не составляет большого труда. В операционных системах Windows 3.11 и Windows 95/98 предусмотрен специальный программный механизм, с помощью которого в них решается ряд задач, связанных с получением доступа к вводу с клавиатуры, в том числе и проблема поддержки национальных раскладок клавиатур. К примеру, любой клавиатурный русификатор для Windows представляет собой самый что ни на есть настоящий фильтр, поскольку призван перехватывать все данные, вводимые пользователем с клавиатуры компьютера. Нетрудно “доработать” его таким образом, чтобы вместе со своей основной функцией (поддержка национальной раскладки клавиатуры) он заодно выполнял бы и действия по перехвату паролей. Тем более, что во многих учебных пособиях и руководствах пользователя операционных систем Windows имеются исходные тексты программных русификаторов клавиатуры. “Перепрофилировав” этот русификатор так, чтобы он взял на себя выполнение функций клавиатурного шпиона, его можно встроить перед настоящим русификатором или после него, и в результате вся информация, вводимая пользователем с клавиатуры, пойдет и через клавиатурного шпиона. Таким образом задача создания фильтра становится такой простой, что не требует наличия каких-либо специальных знаний у злоумышленника. Ему остается только незаметно внедрить изготовленную им программную закладку в операционную систему и умело замаскировать ее присутствие.
В общем случае можно утверждать, что если в операционной системе разрешается переключать клавиатурную раскладку во время ввода пароля, то для этой операционной системы возможно создание фильтра. Поэтому, чтобы обезопасить ее от фильтров, необходимо обеспечить выполнение следующих трех условий:
· во время ввода пароля переключение раскладок клавиатуры не разрешается;
· конфигурировать цепочку программных модулей, участвующих в работе с паролем пользователя, может только системный администратор;
· доступ к файлам этих модулей имеет исключительно системный администратор.
Соблюсти первое из этих условий
в локализованных для России версиях операционных систем принципиально невозможно. Дело в том, что средства создания учетных пользовательских записей на русском языке являются неотъемлемой частью таких систем. Только в англоязычных версиях систем Windows NT и UNIX предусмотрены возможности, позволяющие поддерживать уровень безопасности, при котором соблюдаются все 3 перечисленные условия.
2.1.3. Заместители
Заместители
полностью или частично подменяют собой программные модули операционной системы, отвечающие за аутентификацию пользователей. Подобного рода клавиатурные шпионы могут быть созданы для работы в среде практически любой многопользовательской операционной системы. Трудоемкость написания заместителя определяется сложностью алгоритмов, реализуемых подсистемой аутентификации, и интерфейсов между ее отдельными модулями. Также при оценке трудоемкости следует принимать во внимание степень документированности этой подсистемы. В целом можно сказать, что задача создания заместителя значительно сложнее задачи написания имитатора или фильтра. Поэтому фактов использования подобного рода программных закладок злоумышленниками пока отмечено не было. Однако в связи с тем, что в настоящее время все большее распространение получает операционная система Windows NT, имеющая мощные средства защиты от имитаторов и фильтров, в самом скором будущем от хакеров следует ожидать более активного использования заместителей в целях получения несанкционированного доступа к компьютерным системам.
Поскольку заместители берут на себя выполнение функций подсистемы аутентификации, перед тем как приступить к перехвату пользовательских паролей они должны выполнить следующие действия:
· подобно компьютерному вирусу внедриться в один или несколько системных файлов;
· использовать интерфейсные связи между программными модулями подсистемы аутентификации для встраивания себя в цепочку обработки введенного пользователем пароля.
Для того чтобы защитить систему от внедрения заместителя, ее администраторы должны строго соблюдать адекватную политику безопасности. И что особенно важно, подсистема аутентификации должна быть одним из самых защищенных элементов операционной системы. Однако, как показывает практика, администраторы, подобно всем людям, склонны к совершению ошибок. А, следовательно, соблюдение адекватной политики безопасности в течение неограниченного периода времени является невыполнимой задачей. Кроме того, как только заместитель попал в компьютерную систему, любые меры защиты от внедрения программных закладок перестают быть адекватными, и поэтому необходимо предусмотреть возможность использования эффективных средств обнаружения и удаления внедренных клавиатурных шпионов. Это значит, что администратор должен вести самый тщательный контроль целостности исполняемых системных файлов и интерфейсных функций, используемых подсистемой аутентификации для решения своих задач.
Но и эти меры могут оказаться недостаточно эффективными. Ведь машинный код заместителя выполняется в контексте операционной системы, и поэтому заместитель может предпринимать особые меры, чтобы максимально затруднить собственное обнаружение. Например, он может перехватывать системные вызовы, используемые администратором для выявления программных закладок, с целью подмены возвращаемой ими информации. Или фильтровать сообщения, регистрируемые подсистемой аудита, чтобы отсеивать те, которые свидетельствуют о его присутствии в компьютере.
2.2. Трояны
Троянской программой
(троянцем, или троянским конем) называется:
· программа, которая, являясь частью другой программы с известными пользователю функциями, способна втайне от него выполнять некоторые дополнительные действия с целью причинения ему определенного ущерба;
· программа с известными ее пользователю функциями, в которую были внесены изменения, чтобы, помимо этих функций, она могла втайне от него выполнять некоторые другие (разрушительные) действия.
Таким образом, троянская программа — это особая разновидность программной закладки. Она дополнительно наделена функциями, о существовании которых пользователь даже не подозревает. Когда троянская программа выполняет эти функции, компьютерной системе наносится определенный ущерб. Однако то, что при одних обстоятельствах причиняет непоправимый вред, при других — может оказаться вполне полезным. К примеру, программу, которая форматирует жесткий диск, нельзя назвать троянской, если она как раз и предназначена для его форматирования (как это делает команда format операционной системы DOS). Но если пользователь, выполняя некоторую программу, совершенно не ждет, что она отформатирует его винчестер, — это и есть самый настоящий троянец.
Короче говоря, троянской можно считать любую программу, которая втайне от пользователя выполняет какие-то нежелательные для него действия. Эти действия могут быть любыми — от определения регистрационных номеров программного обеспечения, установленного на компьютере, до составления списка каталогов на его жестком диске. А сама троянская программа может маскироваться под текстовый редактор, под сетевую утилиту или любую программу, которую пользователь пожелает установить на свой компьютер.
Рассмотрим наиболее известные примеры троянских программ.
2.2.1. Back
Orifice
Троянский конь Back Orifice (BO) по своей сути является достаточно мощной утилитой удаленного администрирования компьютеров в сети. Back Orifice является системой удаленного администрирования, позволяющей пользователю контролировать компьютеры при помощи обычной консоли или графической оболочки. В локальной сети или через Internet, BO “предоставляет пользователю больше возможностей на удаленном Windows-компьютере, чем имеет сам пользователь этого компьютера” - сказано в рекламном объявлении на одной из хакерских Web-страниц.
Единственная особенность этой программы заставляет классифицировать ее как вредную троянскую программу: отсутствие предупреждения об инсталляции и запуске. При запуске троянец устанавливает себя в системе и затем следит за ней, при этом пользователю не выдается никаких сообщений о действиях троянца в системе. Более того, ссылка на троянца отсутствует в списке активных приложений. В результате "пользователь" этой троянской программы может и не знать о ее присутствии в системе, в то время как его компьютер открыт для удаленного управления.
Троянец распространяется как пакет из нескольких программ и документации. Все программы написаны на C++ и компилированы Microsoft Visual C++. Все программы имеют формат Portable Executable и могут выполняться только в среде Win32.
Основной программой в пакете является BOSERVE.EXE (затем этот файл может быть обнаружен под различными именами) - это основная "серверная" компонента троянца, которая ждет вызовов от удаленных "клиентов".
Вторым файлом является BOCONFIG.EXE, конфигурирующая "сервер" и позволяющая "прикрепить" BOSERVE.EXE к каким-либо другим файлам (как это делают вирусы). При запуске таких приложений вирус "выкусывает" их из зараженного файла и запускает на выполнение без каких-либо побочных эффектов.
В пакете также присутствуют две "клиентские" утилиты (консоль и графический интерфейс), они позволяют "клиенту" управлять удаленным "сервером". Еще две программы являются утилитами компрессии/декомпрессии файлов - они используются для копирования файлов с/на удаленный "сервер".
Рис. 1. Рабочее окно программы Back Orifice 2000
При запуске троянец инициализирует сокеты Windows, создает файл WINDLL.DLL в системном каталоге Windows, определяет адреса нескольких Windiows API, ищет свою копию в памяти и выгружает ее из памяти, если таковая обнаружена (т.е. обновляет свою версию). Затем троянец копирует себя в системный каталог Windows и регистрирует в реестре как автоматически запускаемый процесс:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServices.
Затем троянец перехватывает один из сокетов Windows (по умолчанию - сокет 31337) и остается в памяти Windows как скрытое приложение (т.е. без активного окна и ссылки в списке приложений). Основная процедура перехвата сообщений затем ждет команд от удаленного клиента. Сокеты команды передаются в зашифрованном виде. В зависимости от команды троянец выполняет следующие действия:
· высылает имена компьютера, пользователя и информацию о системе: тип процессора, размер памяти, версия системы, установленные устройства и т.п.;
· разрешает удаленный доступ к дискам (share);
· ищет файл на дисках;
· посылает/принимает файл, уничтожает, копирует, переименовывает, исполняет любой файл;
· создает/уничтожает каталог;
· упаковывает/распаковывает файл;
· отключает текущего пользователя от сети;
· завешивает компьютер;
· высылает список активных процессов;
· выгружает указанный процесс;
· подключается к сетевым ресурсам;
· получает и отправляет кешированные пароли (которые использовались пользователем в течение текущего сеанса), ищет пароль для ScreenSaver (расшифровывает и отправляет);
· выводит MessageBox;
· читает/модифицирует системный реестр;
· открывает/перенаправляет другие сокеты TCP/IP;
· поддерживает протокол HTTP и эмулирует Web-сервер (т.е. троянцем можно управлять при помощи браузера);
· проигрывает звуковые файлы;
· перехватывает, запоминает и затем высылает строки, вводимые с клавиатуры в момент подсоединения компьютера к сети;
и т.д.
Троянец также позволяет расширить список своих функций при помощи подключаемых ресурсов (plug-in). Они могут быть переданы на "сервер" и инсталлированы там как часть троянца и в дальнейшем могут выполнять практически любые действия на пораженном компьютере.
2.2.2. NetBus
NetBus - это вирус из серии backdoor
. Вирусы этого типа, попав на компьютер (та часть, которая попадает на компьютер жертвы называется сервером
) и заразив его, резервируют под себя порт и добавляют себя в автозагрузку, если это указано в их программе. После этих действий злоумышленник (владеющий клиентом
или центром управления
) может подключиться к этому компьютеру (если знает его IP-адрес, а в некоторых случаях требуется и пароль к серверу) и делать с компьютером, что душе угодно (это ограничивается лишь фантазией и возможностями вируса). Таким образом, сервер становится "глазами" и "руками" на компьютере жертвы.
NetBus более прост в обращении по сравнению с Back Orifice.
Оригинальный пакет NetBus`а содержит в себе следующие файлы:
· NetBus.exe - клиент (центр управления)
· Patch.exe - сервер. Он написан на Inprise Delphi.
· NetBus.rtf - описание NetBus`а автором.
Чтобы заразить компьютер, требуется запустить на компьютере жертвы сервер NetBus`а (Patch.exe). Запустить его можно, как обычную консольную программу или как CGI-приложение (из web-браузера). Сервер можно запускать со следующими ключами:
· /
noadd
- для одноразового использования NetBus`а. Сервер только загружает себя только в оперативную память, не копирует себя в папку с Windows и не добавляет свой ключ в реестр
· /
port:х
– указывает, на какой надо сесть порт (по умолчанию 12345), где х
- номер порта. Этот ключ появился в версии 1.7.
· /
pass:х
- назначает пароль для доступа к серверу, где х
- пароль
· /
remove
- удаляет сервер из оперативной памяти и ключ в реестре для автозагрузки (сам сервер не удаляется из папки с Windows)
После запуска Patch.exe
сервер копирует себя в папку с Windows (NetBus написан под Windows NT/9x), создает там файл своей конфигурации Patch.ini
и файл KeyHook.dll
. Далее сервер добавляет ключ в реестр для своей автозагрузки при каждом запуском Windows.
Ключ: [HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun] Параметр: Patch Значение параметра: C:WindowsPatch.exe /nomsg
Стоит заметить, что если имя сервера имело другое название (например, cool.exe), то соответственно и файлы в папке с Windows будут иметь название cool
, а значение в ключе реестра имя параметра изменится тоже на cool!!!
Достойно внимания еще то, что если запустить сервер без ключей (/port или /pass), то в реестре создается ключ, соответствующий имени сервера, (например, HKEY_CURRENT_USERPATCH), а если с ключами то создается файл конфигурации Patch.ini
(где хранится пароль, порт и т.д.).
Далее cервер открывает socket в режиме ожидания на указанном порту и ждет подключения клиента. Когда происходит попытка подключиться к этому порту, то NetBus сообщает, что это собственно он и выдает свою версию. И если пароль не назначен, то происходит соединение. Доступ к серверу разрешается по 4444
порту.
NetBus использует для связи двух компьютеров протокол TCP и не шифрует пакеты данных, как Back Orifice.
Рис. 2. Рабочее окно программы NetBus 1.7.
Опишем вкратце функциональные возможности программы:
· Host name/IP
- задание имени хоста или IP-адреса жертвы.
· Port
– порт, на котором висит сервер.
· Connect!/Cancel
- присоединиться/отсоединиться от компьютера
· Scan!
- просканировать диапазон адресов на наличие на них сервера NetBus.
· About
– раздел «О программе».
· Memo
– раздел «Записная книжка».
· Add IP
- запомнить введенный IP-адрес.
· Del IP
- удалить введенный IP-адрес.
· Server admin
- администрирование сервером NetBus`а. Можно добавить/удалить IP-адреса, с которых можно подсоединиться к серверу, выгрузить сервер из оперативной памяти или удалить его.
· Open CD-ROM/Close CD-ROM
- выдвинуть/задвинуть каретку CD-ROM’a. Можно задать интервал выезжания (поставив галочку возле in interval) и количество выездов (Function delay).
· Show images
- показать изображение (в BMP/JPG-формате). Требуется ввести его адрес.
· Swap mouse/Restore mouse
- поменять/вернуть клавиши мыши местами.
· Start program
- запускает программу по указанному адресу.
· Msg manager
- позволяет отсылать на зараженный компьютер сообщения и присылать ответы на них.
· Screendump
- делает снимок экрана и отсылает на компьютер с клиентом.
· Get info
- информация о компьютере жертвы.
· Port redirect
- перенаправление на произвольном компьютере произвольного порта.
· Play sound
- проиграть WAV-файл.
· Exit Windows
- позволяет отлогинить пользователя, перезагрузить или выключить компьютер.
· Send text
- если в это время находятся активные поля для ввода текста, то туда вставится набранный текст.
· Active wnds
- список активных окон. Можно удалить или сделать активными приведенные в списке окна.
· App redirect
- перенаправление ввода-вывода консольного приложения на заданный порт.
· Mouse pos
- установка мыши на координаты заданные в верхних полях.
· Listen
- в появившемся окне выводятся все нажатия клавиш и возможно нажатие некоторых функциональных клавиш.
· Sound system
- позволяет изменить звуковые настройки и прослушать музыку, которая воспроизводится на компьютере.
· Server setup
- позволяет настроить сервер (например, поставить пароль).
· Control mouse/Stop control
- включить/выключить слежку за координатами мышки на компьютере жертвы.
· Go to URL
- открыть назначенный URL в браузере, назначенном по умолчанию.
· Key manager
- назначает воспроизведение звуков при нажатии клавиш, заблокировать/разблокировать выбранные клавиши или всю клавиатуру в целом.
· File manager
- управление файловой системой компьютера с сервером (чтение/запись/удаление файлов).
2.2.3. D.
I.R.T.
Система D.I.R.T., согласно официальной политике компании Codex Data Systems Inc., разработавшей ее, предназначается для использования исключительно правоохранительными органами и имеет стоимость, в зависимости от конфигурации, от 2 до 200 тысяч долларов. Независимые же эксперты утверждают, что по функциональности система D.I.R.T. ненамного превосходит широко известные бесплатные хакерские программы такие как Back Orifice.
По утверждению разработчиков, D.I.R.T. используется для борьбы с терроризмом, детской порнографией и распространением наркотиков. Однако специалисты видят серьезную опасность в применении столь мощной системы мониторинга и удаленного администрирования для промышленного шпионажа и ведения информационной войны.
Вопреки маркетинговой политике компании Codex Data Systems, многие называют D.I.R.T. не иначе, как троянской программой. Антивирусные компании с самого момента появления D.I.R.T. в 1998 году находятся в замешательстве и не знают, как реагировать на данный факт. Некоторые из них все же пошли на решительный шаг и включили D.I.R.T. в свои вирусные базы. Так, например, антивирусные программы производства "Лаборатории Касперского" и Trend Micro определяют файл coredll.dat, являющийся компонентом D.I.R.T., как троянскую программу под названием Trojan.PSW.Johar, или просто JOHAR. Кроме того, клиентская часть D.I.R.T., устанавливаемая на компьютер, являющийся объектом контроля, имеет по умолчанию такие же файлы, что и JOHAR - desktop.exe, desktop.log and desktop.dll.
Принципы работы D.I.R.T.
Система состоит из клиентской и серверной частей. Основные функции программы - это перехват всех нажатий клавиш и невидимая отсылка информации на заданный адрес электронной почты, который контролируется командным центром D.I.R.T. При этом отсутствует необходимость в физическом доступе к клиентскому компьютеру. Дополнительные возможности D.I.R.T. включают удаленный доступ к файлам через Интернет или локальную сеть, удаленное управление системой (запуск программ, редактирование реестра и др.), возможность перехвата информации в режиме реального времени, удаленный захват экрана и звука (если к клиентскому компьютеру подключен микрофон).
Основой клиентской части является "жучок", встроенный для маскировки в какой-либо обычный исполнимый файл или документ Microsoft Office. При запуске или открытии "зараженного" файла, жучок активизируется и невидимо устанавливается в системе. В его задачи входит перехват нажатий клавиш, выполнение команд, поступающих от серверной части, отправка зашифрованных файлов отчета на заданный адрес электронной почты.
Главные компоненты серверной части
· D.I.R.T. Control Center Configuration
- предоставляет удобный доступ к двум наиболее важным конфигурационным файлам системы D.I.R.T. - "Import Files", где содержится перечень файлов с журналами регистрации, полученными от клиентских компьютеров, и "D.I.R.T. Generator", где настраиваются параметры конфигурации для генерирования новых "жучков". После импортирования в базу новых клиентов можно просматривать их журналы регистрации в html формате с настраиваемыми шаблонами.
· Target Manager
- менеджер "целей". Содержит перечень всех клиентских компьютеров, находящихся под наблюдением и позволяет добавлять, удалять, редактировать, активировать/деактивировать "цели", а также генерировать "жучки" для новых "целей". Внешний вид окна менеджера "целей" показан на рисунке 3.
· D.I.R.T. Remote Access
- терминал для связи с клиентской частью. Позволяет записывать файлы на клиентский компьютер или с него, запускать программы на клиентском компьютере, давать различные команды и управлять "жучком", устанавливать/обновлять дополнительные компоненты и многое другое.
Таким образом, видно, что даже минимальные возможности D.I.R.T. дают серьезный повод задуматься специалистам по сетевой безопаснос
Дополнением к D.I.R.T. является технология с романтическим названием H.O.P.E. (Harnessing the Omnipotent Power of the Electron - "управление всемогущей силой электрона"), имеющая отнюдь не столь романтическое предназначение - автоматизация процесса генерирования "жучков" и их массового внедрения на клиентские компьютеры через сеть Интернет. В числе вышеупомянутых 140 файлов, добытых хакерами, самой программы H.O.P.E. не оказалось, зато была получена презентация в формате PowerPoint, описывающая возможности и функции этой технологии.
Рис. 3. Внешний вид окна менеджера "целей"
Программно-аппаратный продукт H.O.P.E. поставляется тем агентствам, которые обладают сайтовой лицензией на D.I.R.T. Принцип его работы состоит в том, что, при посещении сервера H.O.P.E. пользователем, автоматически генерируется "жучок" системы D.I.R.T., который снабжается уникальным кодом для идентификации и определения местоположения клиента. Все перемещения "жучка" фиксируются в журнале регистрации сервера. Таким образом, сложно предположить масштабы распространения системы D.I.R.T.
Даже межсетевые экраны не являются помехой на пути D.I.R.T. Обход защиты достигается за счет использования технологии AntiSec. Предназначается AntiSec для поиска всех известных межсетевых экранов и их незаметной нейтрализации.
2.2.4. Paparazzi
Небольшая программа под говорящим названием PAPARAZZI, созданная Industar Cybernetics Corp., призвана осуществлять контроль за происходящим на офисных компьютерах, и делает это довольно-таки оригинальным способом.
Программа состоит из двух независимо работающих модулей - "агента", который тайком устанавливается на компьютере "подопытного" и делает с заданной регулярностью скриншоты, и "монитора", доступ к которому имеет администратор. "Монитор" позволяет просмотреть накопившиеся данные или изменить настройки PAPARAZZI - варьировать частоту кадров, удалить или сортировать их, приостановить наблюдение на любое время.
Рис. 4. Рабочее окно программы Paparazzi. Version 0.2
Файлы данных тщательно защищены от обнаружения и просмотра. Для пользования PAPARAZZI нужно помнить (и сохранять в тайне) пароль и код доступа. Не зная их, воспользоваться программой или просмотреть снимки просто невозможно. При деинсталляции все следы работы PAPARAZZI полностью уничтожаются.
2.2.5. Распознавание троянских программ
Большинство программных средств, предназначенных для защиты от троянских программ, в той или иной степени использует так называемое согласование объектов.
При этом в качестве объектов фигурируют файлы и каталоги, а согласование представляет собой способ ответить на вопрос, изменились ли файлы и каталоги с момента последней проверки. В ходе согласования характеристики объектов сравниваются с характеристиками, которыми они обладали раньше. Берется, к примеру, архивная копия системного файла и ее атрибуты сравниваются с атрибутами этого файла, который в настоящий момент находится на жестком диске. Если атрибуты различаются и никаких изменений в операционную систему не вносилось, значит в компьютер, скорее всего, проник троянец.
Одним из атрибутов любого файла является отметка о времени его последней модификации: всякий раз, когда файл открывается, изменяется и сохраняется на диске, автоматически вносятся соответствующие поправки. Однако отметка времени не может служить надежным индикатором наличия в системе троянца. Дело в том, что ею очень легко манипулировать. Можно подкрутить назад системные часы, внести изменения в файл, затем снова вернуть часы в исходное состояние, и отметка о времени модификации файла останется неизменной.
То же самое происходит и с размером файла. Нередко текстовый файл, который изначально занимал 8 Кбайт дискового пространства, после редактирования и сохранения имеет тот же самый размер. Несколько иначе ведут себя двоичные файлы. Вставить в чужую программу фрагмент собственного кода так, чтобы она не утратила работоспособности и в откомпилированном виде сохранила свой размер, достаточно непросто. Поэтому размер файла является более надежным показателем, чем отметка о времени внесения в него последних изменений.
Злоумышленник, решивший запустить в компьютер троянца, обычно пытается сделать его частью системного файла. Такие файлы входят в дистрибутив операционной системы и их присутствие на любом компьютере, где эта операционная система установлена, не вызывает никаких подозрений. Однако любой системный файл имеет вполне определенную длину. Если данный атрибут будет каким-либо образом изменен, это встревожит пользователя.
Зная это, злоумышленник постарается достать исходный текст соответствующей программы и внимательно проанализирует его на предмет присутствия в нем избыточных элементов, которые могут быть удалены безо всякого ощутимого ущерба. Тогда вместо найденных избыточных элементов он вставит в программу своего троянца и перекомпилирует ее заново. Если размер полученного двоичного файла окажется меньше или больше размера исходного, процедура повторяется. И так до тех пор, пока не будет получен файл, размер которого в наибольшей степени близок к оригиналу (если исходный файл достаточно большой, этот процесс может растянуться на несколько дней).
Итак, в борьбе с троянцами положиться на отметку о времени последней модификации файла и его размер нельзя, поскольку злоумышленник может их довольно легко подделать. Более надежной в этом отношении является так называемая контрольная сумма
файла. Для ее подсчета элементы файла суммируются, и получившееся в результате число объявляется его контрольной суммой. Например, в операционной системе SunOS существует специальная утилита sum, которая выводит на устройство стандартного вывода STDOUT контрольную сумму файлов, перечисленных в строке аргументов этой утилиты.
Однако и контрольную сумму в общем случае оказывается не так уж трудно подделать. Поэтому для проверки целостности файловой системы компьютера используется особая разновидность алгоритма вычисления контрольной суммы, называемая односторонним хэшированием.
Функция хэширования называется односторонней, если задача отыскания двух аргументов, для которых ее значения совпадают, является труднорешаемой. Отсюда следует, что функция одностороннего хэширования может быть применена для того, чтобы отслеживать изменения, вносимые злоумышленником в файловую систему компьютера, поскольку попытка злоумышленника изменить какой-либо файл так, чтобы значение, полученное путем одностороннего хэширования этого файла, осталось неизменным, обречена на неудачу.
Исторически сложилось так, что большинство утилит, позволяющих бороться с проникновением в компьютерную систему троянских программ путем однонаправленного хэширования файлов, было создано для операционных систем семейства UNIX. Одной из наиболее удобных в эксплуатации и эффективных является утилита TripWire.
Она позволяет производить однонаправленное хэширование файлов при помощи нескольких алгоритмов. Вычисленные хэш-значения файлов хранятся в специальной базе данных, которая, в принципе, является самым уязвимым звеном утилиты TripWire. Поэтому пользователям TripWire предлагается в обязательном порядке принимать дополнительные меры защиты, чтобы исключить доступ к этой базе данных со стороны злоумышленника (например, помещать ее на съемном носителе, предназначенном только для чтения).
Средства борьбы с троянцами в операционных системах семейства Windows (95/98/NT) традиционно являются частью их антивирусного программного обеспечения.
2.3. Логические бомбы
Логическая бомба (logic bomb)
— скрытый код в системе, который активизируется по возникновению определенного события (чаще всего в определенное время).
Например, уволенный работник может оставить логическую бомбу на компьютере, которая спустя месяц после его ухода сотрет все содержимое диска.
Эти программные закладки оказывают, как правило, разрушающие воздействия на атакованную систему и обычно нацелены на полное выведение системы из строя. В отличие от вирусов логические бомбы не размножаются или размножаются ограниченно.
Логические бомбы всегда предназначены для атаки на конкретную компьютерную систему. После того как разрушающее воздействие завершено, то, как правило, логическая бомба уничтожается.
Иногда выделяют особый класс логических бомб - временные бомбы, для которых условием срабатывания является достижение определенного момента времени.
Характерным свойством логических бомб является то, что реализуемые ими негативные воздействия на атакованную систему носят исключительно разрушающий характер. Логические бомбы, как правило, не используются для организации НСД к ресурсам системы, их единственной задачей является полное или частичное разрушение системы.
2.4. Мониторы
Мониторы
- это программные закладки, перехватывающие те или иные потоки данных, протекающие в атакованной системе. В частности, к мониторам относятся перехватчики паролей второго рода.
Целевое назначение мониторов может быть самым разным:
• полностью или частично сохранять перехваченную информацию в доступном злоумышленнику месте;
• искажать потоки данных;
• помещать в потоки данных навязанную информацию;
• полностью или частично блокировать потоки данных;
• использовать мониторинг потоков данных для сбора информации об атакованной системе.
Мониторы позволяют перехватывать самые различные информационные потоки атакуемой системы. Наиболее часто перехватываются следующие потоки:
• потоки данных, связанные с чтение, записью и другими операциями над файлами;
• сетевой трафик;
• потоки данных, связанные с удалением информации с дисков или из оперативной памяти компьютера (так называемая «сборка мусора»).
2.5. Компьютерные черви
Вирус
- одна из разновидностей злоумышленного кода, который распространяется, прикрепляясь к исполняемому файлу или документу (заражая его). Вирусы могут содержать деструктивные функции, например стирание случайных файлов на диске, форматирование диска или даже стирание Flash-BIOS компьютера.
Червь
— это злоумышленная программа, распространяющая свои копии. В отличие от вируса, червь не прикрепляется к другим файлам, а распространяется в виде копии сам. Чаще всего встречаются почтовые черви (e-mail worms), распространяющиеся по электронной почте. При открытии сообщения, зараженного червем, червь активизируется и рассылает сообщения, содержащие свои копии, по адресам из адресной книги получателя. Эпидемия почтового червя может вызвать перегрузку каналов связи и «крах» системы электронной почты.
Пример почтового червя — червь Love Letter, представляющий собой вложение с расширением .VBS.
2.6. Перехватчики паролей
Перехватчики паролей перехватывают имена и пароли, вводимые пользователями защищенной системы в процессе идентификации и аутентификации. В простейшем случае перехваченные имена и пароли сохраняются в текстовом файле, более сложные программные закладки пересылают эту информацию по сети на компьютер злоумышленника.
Существуют три основные архитектуры построения перехватчиков паролей.
Перехватчики паролей первого рода
действуют по следующему сценарию. Злоумышленник запускает программу, содержащую программную закладку - перехватчик паролей. Она имитирует приглашение пользователю для входа в систему, и ждет ввода. Когда пользователь вводит имя и пароль, закладка сохраняет их в доступном злоумышленнику месте, после чего завершает работу и осуществляет выход из системы пользователя-злоумышленника. По окончании работы закладки на экране появляется настоящее приглашение для входа пользователя в систему. Пользователь, ставший жертвой закладки, видит, что он не вошел в систему и что ему снова предлагается ввести имя и пароль. Пользователь предполагает, что при вводе пароля произошла ошибка, и вводит имя и пароль повторно. После этого пользователь входит в систему, и дальнейшая его работа протекает нормально. Некоторые закладки, функционирующие по данной схеме, перед завершением работы выдают на экран правдоподобное сообщение об ошибке, например:
«Пароль введен неправильно. Попробуйте еще раз».
2. Перехватчики паролей второго рода
перехватывают все данные, вводимые пользователем с клавиатуры. Простейшие программные закладки данного типа просто сбрасывают все эти данные на жесткий диск компьютера или в любое другое место, доступное злоумышленнику. Более совершенные закладки анализируют перехваченные данные и отсеивают информацию, заведомо не имеющую отношения к паролям. Эти закладки представляют собой резидентные программы, перехватывающие одно или несколько прерываний, используемых при работе с клавиатурой. Информация о нажатой клавише и введенном символе, возвращаемая этими прерываниями, используется закладками для своих целей.
3. К перехватчикам паролей третьего рода
относятся программные закладки, полностью или частично подменяющие собой подсистему аутентификации защищенной системы. Поскольку задача создания такой программной закладки гораздо сложнее, чем задача создания перехватчика паролей первого или второго рода, этот класс программных закладок появился совсем недавно и будем считать возможность злонамеренно воздействовать на подсистемы идентификации и аутентификации пользователей при их входе в систему пока гипотетической.
2.7. Программы-шутки
К ним относятся программы, которые не причиняют компьютеру какого-либо прямого вреда, однако выводят сообщения о том, что такой вред уже причинен, либо будет причинен при каких-либо условиях, либо предупреждают пользователя о несуществующей опасности. К «злым шуткам» относятся, например, программы, которые «пугают» пользователя сообщениями о форматировании диска (хотя никакого форматирования на самом деле не происходит), детектируют вирусы в незараженных файлах (как это делает широко известная программа ANTITIME), выводят странные вирусоподобные сообщения (драйвер диска CMD640X от какого-то коммерческого пакета) и т.д. — в зависимости от чувства юмора автора такой программы. Видимо, к «злым шуткам» относится также строка «CHOLEEPA» во втором секторе винчестеров фирмы Seagate.
К такой же категории «злых шуток» можно отнести также заведомо ложные сообщения о новых супер-вирусах. Такие сообщения периодически появляются в электронных конференциях и обычно вызывают панику среди пользователей.
3. Программные закладки: модели воздействия на компьютеры, способы внедрения и их взаимодействие с нарушителем
3.1. Модели воздействия программных закладок на компьютеры
Рассмотрим 6 наиболее известных моделей воздействия программных закладок на компьютеры:
· Перехват
· Троянский конь
· Наблюдатель
· Компрометация
· Искажение или инициатор ошибок
· Уборка мусора
1. Модель «перехват»
Программная закладка встраивается (внедряется) в ПЗУ, оперативную систему или прикладное программное обеспечение и сохраняет все или избранные фрагменты вводимой или выводимой информации в скрытой области локальной или удаленной внешней памяти прямого доступа. Объектом сохранения может быть клавиатурный ввод, документы, выводимые на принтер, или уничтожаемые файлы-документы. Для данной модели существенно наличие во внешней памяти места хранения информации, которое должно быть организовано таким образом, чтобы обеспечить ее сохранность на протяжении заданного промежутка времени и возможность последующего съема. Важно также, чтобы сохраняемая информация была каким-либо образом замаскирована от просмотра легальными пользователями.
2. Модель «троянский конь»
Закладка встраивается в постоянно используемое программное обеспечение и по некоторому активизирующему событию моделирует сбойную ситуацию на средствах хранения информации или в оборудовании компьютера (сети). Тем самым могут быть достигнуты две различные цели: во-первых, парализована нормальная работа компьютерной системы и, во-вторых, злоумышленник (например, под видом обслуживания или ремонта) может ознакомиться с имеющейся в системе или накопленной посредством использования модели «перехват» информацией. Событием, активизирующим закладку, может быть некоторый момент времени, либо сигнал из канала модемной связи (явный или замаскированный), либо состояние некоторых счетчиков (например, число запусков программ).
3. Модель «наблюдатель»
Закладка встраивается в сетевое или телекоммуникационное программное обеспечение. Пользуясь тем, что данное программное обеспечение, как правило, всегда активно, программная закладка осуществляет контроль за процессами обработки информации на данном компьютере, установку и удаление закладок, а также съем накопленной информации. Закладка может инициировать события для ранее внедренных закладок, действующих по модели «троянский конь».
4. Модель «компрометация»
Закладка либо передает заданную злоумышленником информацию (например, клавиатурный ввод) в канал связи, либо сохраняет ее, не полагаясь на гарантированную возможность последующего приема или снятия. Более экзотический случай – закладка инициирует постоянное обращение к информации, приводящее к росту отношения сигнал/шум при перехвате побочных излучений.
5. Модель «искажение или инициатор ошибок»
Программная закладка искажает потоки данных, возникающие при работе прикладных программ (выходные потоки), либо искажает входные потоки информации, либо инициирует (или подавляет) возникающие при работе прикладных программ ошибки.
6. Модель «сборка мусора»
В данном случае прямого воздействия разрушающего программного средства может и не быть; изучаются «остатки» информации. В случае применения программной закладки навязывается такой порядок работы, чтобы максимизировать количество остающихся фрагментов ценной информации. Злоумышленник получает либо данные фрагменты, используя закладки моделей 2 и 3, либо непосредственный доступ к компьютеру под видом ремонта или профилактики.
3.2. Способы внедрения программных закладок и компьютерных вирусов
Созданием программной закладки или вируса еще не решается задача, поставленная при их написании. Вторая, не менее сложная, заключается во внедрении программного продукта. О важности и сложности этой последней задачи говорит тот факт, что ее решением в рамках информационной борьбы занимаются даже государственные структуры ряда стран. Такой «государственный» подход не оставляет сомнений в том, что самые новейшие достижения в области «имплантации» уже в скором времени станут достоянием промышленного шпионажа.
На сегодняшний день можно выделить три основные группы способов внедрения программных закладок и компьютерных вирусов:
· на этапе создания аппаратуры и программного обеспечения;
· через системы информационного обмена;
· силовым или высокочастотным навязыванием.
Наиболее просто ввести вирус на этапе создания
элементов компьютерных систем. Ведь ни для кого не секрет, что современные программные продукты содержат примерно до полумиллиона строк, и никто лучше авторов-программистов их не знает, и поэтому эффективно проверить не может. В связи с этим создатели программного обеспечения являются потенциальными объектами для определенных служб и компаний. Однако более перспективным направлением, по сравнению с вербовкой программистов, эксперты считают инфицирование (модификацию) систем искусственного интеллекта, помогающих создавать это программное обеспечение.
Другим направлением внедрения является использование систем информационного обмена.
Здесь существует два способа — непосредственное и косвенное подключение.
Непосредственное подключение (front-door coupling) бывает прямое и непрямое.
Прямое заключается в повторяющейся трансляции вирусного сигнала или программной закладки в период получения приемником конкурента предназначенной ему полезной информации. При этом можно рассчитывать, что в какой-то момент времени, смешанный с основной информацией указанный программный продукт попадет в систему. Недостаток такого способа — необходимость знания используемых алгоритмов шифрования и ключей при передаче в канале закрытой информации.
В связи с последним обстоятельством более предпочтительным считается использование непрямого подключения. Проникновение в информационную систему в этом случае происходит в самом незащищенном месте, откуда вирус или программная закладка могут добраться до назначенного узла. Благодаря широкому внедрению глобальных сетей такие места всегда могут быть найдены.
Косвенное подключение (back-door) представляет из себя целый спектр способов: от воздействия на систему через элементы, непосредственно не служащие основному назначению (например, через цепи электропитания), до умышленной передачи конкуренту инфицированной техники или программных продуктов.
Перспективным направлением внедрения программных закладок или вирусов в информационные системы представляется и использованием методов силового
или высокочастотного навязывания.
Разработкой соответствующих средств, по сообщениям зарубежной печати, занимается целый ряд компаний, например. Defense Advanced Research Projects Agency (США), Toshiba (Япония) и др. Ожидается, что благодаря их усилиям уже через пять лет окажется возможным внедрять программные продукты именно таким способом.
В наиболее простом виде процесс ВЧ-навязывания закладок и вирусов выглядит примерно следующим образом. Мощное высокочастотное излучение, промодулированное информационным сигналом, облучает объект электронно-вычислительной техники. В цепях компьютера или линии связи наводятся соответствующие напряжения и токи, которые определенным образом детектируются на полупроводниковых элементах схемы вычислительного средства. В результате вирус или закладка оказываются внедренными в компьютер.
Далее, по заранее намеченной программе они осуществляют сбор, первичную обработку данных и передачу их в заданный адрес по сети, либо уничтожение или модификацию определенной информации.
Наиболее узким местом такого способа внедрения является подбор мощности, частоты, вида модуляции и других параметров зондирующего сигнала в каждом конкретном случае.
3.3. Сценарии внедрения программных закладок на различных этапах жизненного цикла программного обеспечения
Программные закладки имеют широкий спектр воздействий на данные, обрабатываемые информационной системой. Следовательно, при контроле за технологической безопасностью программного обеспечения необходимо учитывать его назначение и состав программно-аппаратной среды информационной системы.
В табл. 1 расположены некоторые сценарии, которые могут приводить к реализации злоумышленных угроз и, соответственно, к нарушениям технологической безопасности информации на различных этапах жизненного цикла программного обеспечения.
Типичным для всех этапов сценарием является поставка и внедрение информационных технологий или их элементов, содержащих программные, аппаратные или программно-аппаратные закладки.
Табл.1. Сценарии внедрения программных закладок на этапах жизненного цикла программного обеспечения
Этапы
|
Сценарии
|
Этап проектирования |
· Внедрение злоумышленников в коллективы разработчиков программных и аппаратных средств и наиболее ответственных частей ПО. · Внедрение злоумышленников, в совершенстве знающих «слабые» места и особенности используемых технологий. |
Этап кодирования |
· Организация динамически формируемых команд или параллельных вычислительных процессов. · Организация переадресации команд, запись злоумышленной информации в используемые информационной системой или другими программами ячейки памяти. · Формирование программной закладки, воздействующей на другие части программной среды или изменяющей ее структуру. · Организация замаскированного пускового механизма программной закладки. |
Этап испытания и отладки |
· Встраивание программной закладки как в отдельные подпрограммы, так и в управляющую программу. · Формирование программной закладки с динамически формируемыми командами. · Формирование набора тестовых данных, не позволяющих выявить программную закладку. · Формирование программной закладки, не обнаруживаемой с помощью используемой модели объекта в силу ее неадекватности описываемому объекту. |
Контроль |
· Формирование пускового механизма программной закладки, не включающего ее при контроле на безопасность. · Маскировка программной закладки путем внесения в программную среду ложных «непреднамеренных» дефектов. · Формирование программной закладки в ветвях программной среды, не проверяемых при контроле. · Формирование «вирусных» программ, не позволяющих выявить их внедрение в программную среду путем контрольного суммирования. |
Эксплуатация |
· Внедрение злоумышленников в контролирующее подразделение. · Вербовка сотрудников контролирующего подразделения. · Сбор информации об испытываемой программной системе. · Разработка новых программных закладок при доработке программной среды. |
3.4. Способы взаимодействия между программной закладкой и нарушителем
3.4.1. Определение понятия нарушителя
Нарушитель - это лицо, предпринявшее попытку выполнения запрещенных операций (действий) по ошибке, незнанию или осознанно со злым умыслом (из корыстных интересов) или без такового (ради игры или удовольствия, с целью самоутверждения и т.п.) и использующее для этого различные возможности, методы и средства
Злоумышленником называют нарушителя, намеренно идущего на нарушение из корыстных побуждений.
При разработке модели нарушителя определяются:
• предположения о категориях лиц, к которым может принадлежать нарушитель;
• предположения о мотивах действий нарушителя (преследуемых нарушителем целях);
• предположения о квалификации нарушителя и его технической оснащенности (об используемых для совершения нарушения методах и средствах);
• ограничения и предположения о характере возможных действий нарушителей.
Нарушители могут быть внутренними (из числа персонала и пользователей системы) или внешними (посторонними лицами).
Внутренним нарушителем
может быть лицо из следующих категорий сотрудников:
• конечные пользователи (операторы) системы;
• персонал, обслуживающий технические средства (инженеры, техники);
• сотрудники отделов разработки и сопровождения программного обеспечения (прикладные и системные программисты);
• сотрудники службы безопасности автоматизированной системы;
• руководители различных уровней.
Посторонние лица
, которые могут быть нарушителями:
• технический персонал, обслуживающий здания (уборщики, электрики, сантехники и другие сотрудники, имеющие доступ в здания и помещения, где расположены компоненты автоматизированной системы);
• клиенты (представители организаций, граждане);
• посетители (приглашенные по какому-либо поводу);
• представители организаций, взаимодействующих по вопросам обеспечения жизнедеятельности организации (энерго-, водо-, теплоснабжения и т.п.);
• представители конкурирующих организаций (иностранных спецслужб) или лица, действующие по их заданию;
• лица, случайно или умышленно нарушившие пропускной режим (без цели нарушить безопасность автоматизированной системы);
• любые лица за пределами контролируемой территории
Развитие современных компьютерных технологий и средств связи дает возможность злоумышленникам использовать различные источники распространения угроз и получения информации.
Рассмотрим их подробнее:
3.4.2. Интернет
Глобальная сеть Интернет уникальна тем, что не является чьей-то собственностью и не имеет территориальных границ. Это во многом способствует развитию многочисленных веб-ресурсов и обмену информацией. Сейчас любой человек может получить доступ к данным, хранящимся в интернете, или создать свой собственный веб-ресурс.
Однако эти же особенности глобальной сети предоставляют злоумышленникам возможность совершения преступлений в интернете, при этом затрудняя их обнаружение и наказание.
Злоумышленники размещают вирусы и другие вредоносные программы на веб-ресурсах, «маскируют» их под полезное и бесплатное программное обеспечение. Кроме того, скрипты, автоматически запускаемые при открытии веб-страницы, могут выполнять вредоносные действия на вашем компьютере, включая изменение системного реестра, кражу личных данных и установку вредоносного программного обеспечения.
Используя сетевые технологии, злоумышленники реализуют атаки на удаленные частные компьютеры и серверы компаний. Результатом таких атак может являться выведение ресурса из строя, получение полного доступа к ресурсу, а, следовательно, к информации, хранящемся на нем, которая передается также в Интернет, где ее и найдет нарушитель.
В связи с появлением кредитных карт, электронных денег и возможностью их использования через интернет (интернет-магазины, аукционы, персональные страницы банков и т.д.) интернет-мошенничество стало одним из наиболее распространенных преступлений.
3.4.3. Интранет
Интранет - это внутренняя сеть, специально разработанная для управления информацией внутри компании или, например, частной домашней сети. Интранет является единым пространством для хранения, обмена и доступа к информации для всех компьютеров сети. Поэтому, если какой-либо из компьютеров сети заражен, остальные компьютеры подвергаются огромному риску заражения. Во избежание возникновения таких ситуаций необходимо защищать не только периметр сети, но и каждый отдельный компьютер.
Нарушитель может получить информацию, только если он имеет доступ к этой локальной сети, так как введенная закладка выкачивает информацию именно в локальную сеть.
3.4.4. Электронная почта
Наличие почтовых приложений практически на каждом компьютере, а также то, что вредоносные программы полностью используют содержимое электронных адресных книг для выявления новых жертв, обеспечивает благоприятные условия для распространения вредоносных программ. Пользователь зараженного компьютера, сам того не подозревая, рассылает зараженные письма адресатам, которые в свою очередь отправляют новые зараженные письма и т.д. Нередки случаи, когда зараженный файл-документ по причине недосмотра попадает в списки рассылки коммерческой информации какой-либо крупной компании. В этом случае страдают не пять, а сотни или даже тысячи абонентов таких рассылок, которые затем разошлют зараженные файлы десяткам тысяч своих абонентов.
Электронная почта - один из самых распространенных видов взаимодействия нарушителя и программных закладок, т.к. информация, полученная в результате работы закладки, передается в электронном письме нарушителю без участия жертвы.
4.
Защита от программных закладок
Задача защиты от программных закладок может рассматриваться в трех принципиально различных вариантах:
· не допустить внедрения программной закладки в компьютерную систему;
· выявить внедренную программную закладку;
· удалить внедренную программную закладку.
При рассмотрении этих вариантов решение задачи защиты от программных закладок сходно с решением проблемы защиты компьютерных систем от вирусов. Как и в случае борьбы с вирусами, задача решается с помощью средств контроля за целостностью запускаемых системных и прикладных программ, а также за целостностью информации, хранимой в компьютерной системе и за критическими для функционирования системы событиями. Например, чтобы обеспечить защиту от клавиатурных шпионов необходимо ввести контроль целостности системных файлов и интерфейсных связей подсистемы аутентификации. Кроме того, для надежной защиты от них администратор операционной системы должен соблюдать политику безопасности, при которой только администратор может конфигурировать цепочки программных модулей, участвующих в процессе аутентификации пользователей, осуществлять доступ к файлам этих программных модулей и конфигурировать саму подсистему аутентификации. Все эти меры должны осуществляться в комплексе.
Однако данные средства действенны только тогда, когда сами они не подвержены влиянию программных закладок которые могут:
· навязывать конечные результаты контрольных проверок;
· влиять на процесс считывания информации и запуск программ, за которыми осуществляется контроль;
· изменять алгоритмы функционирования средств контроля.
При этом чрезвычайно важно, чтобы включение средств контроля выполнялось до начала воздействия программной закладки либо когда контроль осуществлялся только с использованием программ управления, находящихся в ПЗУ компьютерной системы.
4.1. Защита от внедрения программных закладок
Универсальным средством защиты от внедрения программных закладок является создание изолированного
компьютера. Компьютер называется изолированным, если выполнены следующие условия:
· в нем установлена система BIOS, не содержащая программных закладок;
· операционная система проверена на наличие в ней закладок;
· достоверно установлена неизменность BIOS и операционной системы для данного сеанса;
· на компьютере не запускалось и не запускается никаких иных программ, кроме уже прошедших проверку на присутствие в них закладок;
· исключен запуск проверенных программ в каких-либо иных условиях, кроме перечисленных выше, т. е. вне изолированного компьютера.
Для определения степени изолированности компьютера может использоваться модель ступенчатого контроля. Сначала проверяется, нет ли изменений в BIOS. Затем, если все в порядке, считывается загрузочный сектор диска и драйверы операционной системы, которые, в свою очередь, также анализируются на предмет внесения в них несанкционированных изменений. И наконец, с помощью операционной системы запускается драйвер контроля вызовов программ, который следит за тем, чтобы в компьютере запускались только проверенные программы.
Интересный метод борьбы с внедрением программных закладок может быть использован в информационной банковской системе, в которой циркулируют исключительно файлы-документы. Чтобы не допустить проникновения программной закладки через каналы связи, в этой системе не допускается прием никакого исполняемого кода. Для распознавания событий типа “ПОЛУЧЕН ИСПОЛНЯЕМЫЙ КОД” и “ПОЛУЧЕН ФАЙЛ-ДОКУМЕНТ” применяется контроль за наличием в файле запрещенных символов: файл признается содержащим исполняемый код, если в нем присутствуют символы, которые никогда не встречаются в файлах-документах.
4.2. Выявление внедренной программной закладки
Выявление внедренного кода программной закладки заключается в обнаружении признаков его присутствия в компьютерной системе. Эти признаки можно разделить на следующие два класса:
· качественные и визуальные;
· обнаруживаемые средствами тестирования и диагностики.
К качественным и визуальным признакам относятся ощущения и наблюдения пользователя компьютерной системы, который отмечает определенные отклонения в ее работе (изменяется состав и длины файлов, старые файлы куда-то пропадают, а вместо них появляются новые, программы начинают работать медленнее, или заканчивают свою работу слишком быстро, или вообще перестают запускаться). Несмотря на то что суждение о наличии признаков этого класса кажется слишком субъективным, тем не менее, они часто свидетельствуют о наличии неполадок в компьютерной системе и, в частности, о необходимости проведения дополнительных проверок присутствия программных закладок. Например, пользователи пакета шифрования и цифровой подписи “Криптоцентр” с некоторых пор стали замечать, что цифровая подпись под электронными документами ставится слишком быстро. Исследование, проведенное специалистами Федерального агентства правительственной связи и информации, показало присутствие программной закладки, работа которой основывалась на навязывании длины файла. В другом случае тревогу забили пользователи пакета шифрования и цифровой подписи “Криптон”, которые с удивлением отметили, что скорость шифрования по криптографическому алгоритму ГОСТ 28147-89 вдруг возросла в 30 раз. А в третьем случае программная закладка обнаружила свое присутствие в программе клавиатурного ввода тем, что пораженная ею программа перестала нормально работать.
Признаки, выявляемые с помощью средств тестирования и диагностики, характерны как для программных закладок, так и для компьютерных вирусов. Например, загрузочные закладки успешно обнаруживаются антивирусными программами, которые сигнализируют о наличии подозрительного кода в загрузочном секторе диска. С инициированием статической ошибки на дисках хорошо справляется Disk Doctor, входящий в распространенный комплект утилит Norton Utilities. А средства проверки целостности данных на диске типа Adinf позволяют успешно выявлять изменения, вносимые в файлы программными закладками. Кроме того, эффективен поиск фрагментов кода программных закладок по характерным для них последовательностям нулей и единиц (сигнатурам), а также разрешение выполнения только программ с известными сигнатурами.
4.3. Удаление внедренной программной закладки
Конкретный способ удаления внедренной программной закладки зависит от метода ее внедрения в компьютерную систему. Если это программно-аппаратная закладка, то следует перепрограммировать ПЗУ компьютера. Если это загрузочная, драйверная, прикладная, замаскированная закладка или закладка-имитатор, то можно заменить их на соответствующую загрузочную запись, драйвер, утилиту, прикладную или служебную программу, полученную от источника, заслуживающего доверия. Наконец, если это исполняемый программный модуль, то можно попытаться добыть его исходный текст, убрать из него имеющиеся закладки или подозрительные фрагменты, а затем заново откомпилировать.
З
аключение
Проблема защиты от несанкционированного доступа к информации посвящено огромное количество методических, академических и правовых исследований. Отличительной особенностью хищения информации стала скрытность этого процесса, в результате чего жертва может не догадываться о происшедшем.
Для обеспечения безопасности своих документов и предохранения самого компьютера от закладки достаточно соблюдать ряд правил и мер предосторожности, однако много компьютеров оказываются зараженными из-за элементарной неосведомленности пользователя.
Программные закладки способны уничтожать или искажать информацию, нарушать сеансы работы. Пользователь получает их, как правило, по системе электронной почты под видом важного документа или давно разыскиваемой программы. Закладки могут нанести немалый ущерб компании. Они собирают информацию, которая отправляется злоумышленнику по системе электронной почты для анализа на предмет содержания ценной информации, такой как пароли или пользовательская информация. Таким образом, злоумышленник, может получать важную или, даже конфиденциальную информацию, не выходя из дома, а компания или фирма будет нести немалые убытки, необходимо понимать и то, что злоумышленником может быть и конкурирующая фирма, которая может преднамеренно отправить вам по электронной почте закладку с целью завладеть информацией.
Также закладки могут распространяться по сети Интернет, по локальной сети. Они нацелены на проникновение в системы разграничения доступа пользователей к ресурсам сети, могут приводить к утере полномочий пользователей, к нарушению работы сети в целом и системы разграничения доступа в частности. Самым распространенным способом внедрения закладки является внедрение с помощью сети Интернет. И даже если на предприятии есть только один компьютер, подключенный к сети, но при этом существует локально – вычислительная сеть, возможна вероятность проникновения программной закладки на компьютер, содержащий ценную информацию.
Защитить информацию может только сам пользователь или владелец. Для этого нужно правильно организовать работу и ограничить доступ к ценной информации. И принять все меры для предотвращения ее утечки.
Число уязвимостей и использующих их атак растет с каждым годом. Злоумышленники постоянно ищут новые способы проникновения в информационные системы, и пользователи должны понимать, что недооценка способностей злоумышленников может привести к очень печальным последствиям.
Литература
1. Папарацци смотрит за тобой
http://www.i2r.ru/news.shtml?count=30&id=7888&begin=8490
2. Разpушающие пpогpаммные воздействия
http://sp.sz.ru/rps_.html
3. В.Сидоров «Какими закладками пугает нас Алкснис, или Правда ли, что все «виндовозы» под колпаком не только Microsoft, но и ЦРУ, и Пентагона?»
http://netler.ru/pc/bookmark.htm
4. А. Марков, С. Миронов, В. Цирлов «Выявление уязвимостей в программном коде»
http://www.osp.ru/text/print/302/380655.html
5. Каторин Ю. Ф., Куренков Е. В., Лысов А. В., Остапенко А. Н. «Большая энциклопедия промышленного шпионажа». — СПб.: 000 «Издательство Полигон», 2000. — 896 с.
6. В. Проскурин «Программные закладки в защищенных системах»
http://www.crime-research.ru/library/progwir98.htm
7. Анин Б. Ю. «Защита компьютерной информации». - СПб.: БХВ-Петербург, 2000. - 384 с.
8. День рождения BackOrifice
http://www.securitylab.ru/informer/240719.php
9. А. Захарченко «Из грязи - в штази», журнал "Компьютерра" №36 от 25 сентября 2001 г.
http://www.computerra.ru/offline/2001/413/12815/
10. Д.В. Кудин «Осторожно: D.I.R.T. на свободе!»
http://www.bezpeka.com/ru/lib/sec/art368
11. Поярков И. «Что такое NetBus и как им пользоваться»
http://security.h12.ru/docs/sec-soft/chto_takoe_netbus_i_kak_im_polzovatsya.htm
12. Казарин О.В. «Безопасность программного обеспечения компьютерных систем». – М.: МГУЛ, 2003. - 212 с.
13. Проскурин В.Г. «Перехватчики паролей пользователей операционных систем»
http://www.warning.dp.ua/comp5.htm
14. Угрозы информационной безопасности в автоматизированных системах
http://asher.ru/security/book/its/05
15. «Троянские программы», программные закладки и сетевые черви
http://www.volandpc.ru/istoriya/istoriya-vozniknoveniya-komp-uternyh-virusov/troyanskie-programmy-programmnye-zakladki-i-setevye-chervi.html
16. Cредства нарушения безопасности компьютерных сетей
http://info-safety.ru/category/programmno-texnicheskie-mery/
17. Казарин О.В. «Теория и практика защиты программ». – М.: МГУЛ, 2004. – 450 с.
18. Романец Ю., Тимофеев П., Шаньгин В. «Защита информации в компьютерных системах и сетях». – М.: Радио и связь, 2001 – 376 с.
19. Соколов А., Степанюк О. «Защита от компьютерного терроризма». – СПб.: БХВ-Петербург, Арлит, 2002. – 496с.
20. Антивирус Касперского 6.0. Руководство пользователя
http://docs.kaspersky-labs.com/russian/kav6.0ru.pdf
21. Модель действий вероятного нарушителя и модель построения защиты
http://www.m-g.ru/about/articles/106.html
22. Атаки с использованием злонамеренного кода (malicious code)
http://big-bro.info/ataki-s-ispolzovaniem-zlonamerennogo-koda-malisious-code/
23. Вирусы и борьба с ними
http://ait.ustu.ru/disciplines/SysSoft/EduCompl/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D0%B8/10.%D0%92%D0%B8%D1%80%D1%83%D1%81%D1%8B%20%D0%B8%20%D0%B1%D0%BE%D1%80%D1%8C%D0%B1%D0%B0%20%D1%81%20%D0%BD%D0%B8%D0%BC%D0%B8.htm
24. Угрозы и риски информационной безопасности
http://www.it-world.ru/upload/iblock/8d1/67518.pdf