3 ПРОГРАММНЫЕ ЗАКЛАДКИ
Программные закладки класс программ с потенциально опасными последствиями, обязательно выполняющие следующие функции:
разрушают код программы в памяти;
сохраняют фрагменты информации из оперативной памяти в некоторой области внешней памяти прямого доступа;
искажает произвольным образом, блокирует или подменяет выводимые во внешнюю память или в канал связи массив информации, образовавшийся в результате работы прикладных программ.
Программная реализация несанкционированного доступа к информации на основе использование программных закладок. Под несанкционированным доступом (НСД) к ресурсам компьютерной системы понимаются по использованию, изменению и уничтожению используемых данных указанной системы, производимые субъектом, не имеющие права на такие действия. Если компьютерная система содержит механизмы защиты от несанкционированного доступа, то несанкционированные действия могут быть вызваны:
отключением или видоизменением защитных механизмов нелегальным пользователям;
входом в систему под именем и с полномочиями реального пользователя.
В первом случае злоумышленник должен видоизменить программу, защитные механизмы в системе (например, отключить программу запросов пользователей), во втором – каким-либо образом выяснить или подделать идентификатор реального пользователя (например, подсмотреть или вычислить пароль, вводимый с клавиатуры).
В обоих случаях несанкционированный доступ можно представить моделью опосредованного доступа, когда проникновение в систему осуществляется на основе некоторого воздействия, произведенного предварительно внедренной в систему программой или несколькими программами.
Особый интерес представляют уязвимые места компьютерных систем, используемые для внедрения программных закладок. Основные известные способы внедрения программных закладок приведены в таблице 1.
Таблица 1 Способы внедрения программных закладок
Способы внедрения Характеристика
Внесение программных дефектов вирусного типа Внедрение возможно на всех участках жизненного цикла программного обеспечения:
эскизного и технического проектирования;
рабочего проектирования;
внедрения;
эксплуатации, включая сопровождение и модернизацию.
Несанкционированный доступ к ресурсам компьютерной системы Несанкционированный доступ к ресурсам компьютерной системы – действия по использованию, изменению и уничтожению используемых модулей и массивов данных, производимые субъектом, не имеющим права на такие действия
Несанкционированное вмешательство в процесс обмена сообщениями между узлами связи локально вычислительных сетей. Осуществляется путем передачи следующих сообщений:
разрушающих;
искажающих;
имитирующих;
хаотических.
Под уязвимостью компьютерной системы понимается некоторая слабость системы безопасности, которая может послужить причиной нанесения компьютерной системе ущерба. Обычно слабые (уязвимые) места в компьютерной системе называются дырами, люками, брешами.
Люк механизм внутри операционной системы (программное обеспечение), позволяющий программе злоумышленника получить привилегированную функцию. Умышленный люк может присутствовать в программе из-за того, что программист умышленно оставил его в программе, например:
для обеспечения тестирования или выполнения оставшейся части отладки;
в интересах облегчения окончательной сборки конечного программного продукта;
с тем, чтобы иметь скрытое средство доступа к программе уже после того, как она вошла в состав конечного продукта.
В найденной бреши программа «разрывается, и туда дополнительно вставляют одну или несколько команд. Этот люк «открывается» по мере необходимости, а встроенные команды автоматически осуществляют свою задачу. Люк это возможность получить управление системой в обход защиты.
Изо всех известных угроз наиболее часто встречаются программные закладки типа «троянского коня» и «компьютерного червя».
«Троянский конь» программа, имеющая законный доступ к системе. Но выполняющая и скрытые функции. Закладки типа «троянский конь» проявляют себя в различных в определенных условиях (по времени, ключевым сообщениям) и могут разрушать (искажать) информацию, копировать фрагменты конфиденциальной информации или пароли (ключи), засылать сообщения не по адресу или блокировать прием (отправку) сообщений.
В последние годы наиболее распространенным способом получения приватной информации стало использование программ – троянов – программ, выполняющих помимо заявленных некоторые дополнительные не афишируемых функции, направленные, например, на получение личной информации пользователя. Конечный пользователь получает их, как правило, по системе электронной почты под видом важного документа или давно разыскиваемой программы. После запуска программа прописывается в системном реестре для запуска при загрузке операционной системы и начинает собирать информацию. Ее целью могут быть файлы учетной записи пользователя, содержащие его пароль, скрипты удаленного доступа к Интернет или пароли электронной почты.
Возможна также ее работа в режиме подслушивания – в этом случае, например, все вводимые с клавиатуры символы записываются в отдельный файл, кроме того, «прослушиваться» может и передаваемая по сети информация. Далее вся собранная информация отправляется атакующему для дальнейшего анализа на предмет содержания ценной информации, такой как пароли или личная пользовательская информация.
Возможен также и самый простой способ: при работе пользователя на компьютере программа выводит на экран системное окно с предложением ввести имя пользователя и пароль, маскируясь под работу операционной системы. В результате пользователь «добровольно» сообщает злоумышленнику свой пароль, даже не подозревая о происшедшем. А если этим пользователем окажется ответственный сотрудник, то перед атакующим откроются огромные возможности.
«Программный червь» программа, маскирующаяся под системные средства поиска свободных вычислительных ресурсов в сети. Закладки типа компьютерного червя нацелены на проникновение в системы разграниченного доступа пользователей к ресурсам сети, к наущению работы всей сети в целом и системы разграничения доступа в частности.
Для того чтобы закладка смогла выполнить какие – либо функции по отношению к прикладной программе, она должна, получить управление на себя, т.е. процессор должен начать выполнять инструкции (команды), относящиеся к коду закладки. Это возможно только при одновременном выполнении двух условий:
закладка должна находиться в оперативной памяти до начала работы программы, которая является целью воздействия закладки; следовательно, она должна быть загружена раньше или одновременно с этой программой;
закладка должна активизироваться по некоторому общему как для закладки, так и доя программы событию, т.е. при выполнении ряда условий в программно-аппаратной среде управление должно быть, передано на программу – закладку.
К способам задействования программных закладок можно отнести:
1. запуск программы;
2. прерывания;
3. определенное сочетание входных данных;
4. определенное сочетание условий применения системы.
По времени пребывания программной закладки в оперативной памяти можно выделить следующие типы закладок:
резидентного вида – находятся постоянно с некоторого момента до окончания сеанса работы персонального компьютера (включения питание или перезагрузке). Закладка может быть загружена в память при начальной загрузке ПЭВМ, загрузке операционной среды или запуске некоторой программы (которая по традиции называется вирусоносителем), а также запущена отдельно;
нерезидентного вида – начинают работу по аналогичному событию, но заканчивают ее самостоятельно по истечении некоторого промежутка времени или некоторому событию, при этом выгружая себя из памяти целиком.
Помимо классификации программных закладок по времени пребывания в оперативной памяти их можно классифицировать еще по методу их внедрения и по типам вредоносного воздействия. Представленная на рисунке 2 классификация выполнена достаточно наглядно и дополнительного пояснения не требует.
Таким образом, программные закладки в настоящее время являются наиболее мощным и эффективным инструментом в реализации компьютерных угроз, защита от которых должна быть динамичной и постоянно совершенствования. Одним из наиболее эффективных способов борьбы с сетевыми угрозами, в том числе с программными закладками, является совершенствования методов и средств контроля доступа к сети.
4 ВИРУСЫ
Компьютерный вирус это программа, обладающая способностью к скрытому размножению в среде используемой операционной системы путем включения в исполняемые или хранящиеся программы своей, возможно модифицированной копии, которая сохраняет способность к дальнейшему размножению.
Компьютерные вирусы способны размножаться, внедряться в программы, передаваться по линиям связи, сетям обмена информации, выводить из строя системы управления.
В принципе, не все вредоносные программы являются вирусами. Строго определения компьютерного вируса не существует. Разнообразие вирусов столь велико, что дать достаточное условие(перечислить набор признаков, при выполнении которых программу можно однозначно отнести к вирусам) просто невозможно – всегда найдется класс программ с данными признаками, не являющихся при этом вирусом.
При этом большинство определений необходимого условия сходятся на том, что компьютерные вирусы – это программы, которые умеют размножаться и внедрять свои копии в другие программы. То есть заражают уже существующие файлы.
Необходимо отметить, что компьютерные вирусы, или, как более правильно, программные вирусы, являются в настоящее время наиболее эффективным средством доставки внедрения различных разведывательных программ. Под программные вирусом понимается автономно функционирующая программа, обладающая способностью к самовключению в тела других программ и последующему самовоспроизведению и самораспространению в информационно – вычислительных сетях и отдельных ЭВМ. Программные вирусы представляют собой весьма эффективное средство реализации практически всех угроз безопасности информационно-вычислительных сетях. Поэтому вопросы анализа возможностей программных вирусов и разработки способов противодействия вирусам в настоящее время приобрели значительную актуальность и образовали одно из наиболее приоритетных направлений работ по обеспечению безопасности информационно вычислительных сетях.