Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
защита билеты.docx
Скачиваний:
89
Добавлен:
21.09.2019
Размер:
346.96 Кб
Скачать

Троянский конь

Существуют программы, реализующие, помимо функций, описанных в документации, и некоторые другие функции, в документации не описанные. Такие программы называются "троянскими конями".

Логическая бомба

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

Мировая компьютерная общественность достаточно хорошо знакома с логическими бомбами. Логическая бомба является одним из излюбленных способов мести программистов компаниям, которые их уволили или чем-либо обидели. При этом чаще всего срабатывание бомбы ставится в зависимость от установки в системе даты - так называемые "часовые" бомбы. Это очень удобно: допустим, программист знает, что его уволят 1 марта; в таком случае он может установить "часовую" бомбу на взрыв, допустим, 6 июля или даже на Рождество, когда сам он будет уже вне пределов досягаемости для пострадавшей компании.

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

Атака салями

А теперь поговорим о биче банковских компьютерных систем - атаке "салями".

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

При разработке банковских систем устанавливается правило округления (или усечения), используемое при выполнении всех операций. Вся хитрость состоит в том, как запрограммировать обработку округлений. Можно, конечно, просто удалять несуществующие величины. Но можно и не удалять, а накапливать на некоем специальном счете. Там пол цента, тут пол цента... - а в сумме? Как свидетельствует практика, сумма, составленная буквально из ничего, за пару лет эксплуатации "хитрой" программы в среднем по размеру банке, может исчисляться тысячами долларов.

Можно сказать, что атака салями - компьютерная реализация известной поговорки "С миру по нитке - голому рубаха".

Программные закладки при хаотичной "информатизации" финансовой сферы становятся мощным деструктивным фактором в ее развитии. Трудность обнаружения закладок и борьбы с их воздействием без преувеличения позволяет назвать их информационным оружием.

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

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

28. Программные закладки. Условия срабатывания. Основные группы деструктивных функций закладок.

Программные закладки

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

Это возможно только при одновременном выполнении двух условий:

  • закладка должна находиться в оперативной памяти до начала работы программы, на которую направлено ее воздействие;

  • закладка должна активизироваться по некоторому общему для закладки и для прикладной программы событию.

Это достигается путем анализа и обработки закладкой общих относительно нее и прикладной программы событий, например, прерываний. Причем данные события должны сопровождать работу прикладной программы или работу всей ПЭВМ.

Исполнение кода закладки может быть сопровождено операциями несанкционированной записи (НСЗ), например, для сохранения некоторых фрагментов информации, и несанкционированного считывания (НСЧ), которое может происходить отдельно от операций чтения прикладной программы или совместно с ними. При этом операции считывания и записи, возможно, не связаны с получением конфиденциальной информации, например, считывание параметров устройства или его инициализация (закладка может использовать для своей работы и такие операции, в частности, для инициирования сбойных ситуаций или переназначения ввода-вывода).

Несанкционированная запись закладкой может происходить:

  • в массив данных, не совпадающий с пользовательской информацией - сохранение информации;

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

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

  • сохранение фрагментов информации, возникающей при работе пользователей, прикладных программ, вводе-выводе данных, во внешней памяти сети (локальной или удаленной) или выделенной ПЭВМ, в том числе различных паролей, ключей и кодов доступа, собственно конфиденциальных документов в электронном виде;

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

  • навязывание некоторого режима работы (например, при уничтожении информации - блокирование записи на диск, при этом информация, естественно, не уничтожается), либо замена записываемой информации информацией, навязанной закладкой (например, при выводе на экран слово "неверно" заменяется словом "верно", а "рубль" - "доллар" и т.д.).

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

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

Рассмотренные действия особенно опасны для программ подтверждения подлинности электронных документов ("электронная цифровая подпись" - ЭЦП). При считывании приготовленного для подписи файла-документа может произойти изменение имени автора, даты, времени, цифровых данных, заголовка документа (например, изменение суммы платежа в платежных поручениях и др.)

Закладки такого типа могут, например, навязывать истинность электронной подписи, даже если файл был изменен.

Широко известна и использовалась во многих банках система ЭЦП Pretty Good Privace (PGP). Многие стали жертвой простейшей программной закладки против этой системы.

Рассмотрим процесс "электронного подписывания", реализованный в программе PGP. Программа считывает файл для вычисления хеш-функции блоками по 512 байт, причем завершением процесса чтения является считывание блока меньшей длины.

Работа закладки была основана на навязывании длины файла. Закладка позволяет программе ЭЦП считать только первый 512-байтный блок и вычислять подпись только на его основе.

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