автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Исследование существующих и разработка новых программных средств защиты информации от динамического и статического анализа
Автореферат диссертации по теме "Исследование существующих и разработка новых программных средств защиты информации от динамического и статического анализа"
На правах рукописи
Машевский Юрий Вячеславович
ИССЛЕДОВАНИЕ СУЩЕСТВУЮЩИХ И РАЗРАБОТКА НОВЫХ ПРОГРАММНЫХ СРЕДСТВ ЗАЩИТЫ ИНФОРМАЦИИ ОТ ДИНАМИЧЕСКОГО И СТАТИЧЕСКОГО АНАЛИЗА
Специальность 05.13.11. - Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей.
АВТОРЕФЕРАТ
диссертации на соискание ученой степени кандидата технических наук
Москва - 2004
Работа выполнена на кафедре Вычислительной техники филиала "Московский энергетический институт (технический университет)" в г. Смоленске
Научный руководитель: кандидат технических наук, доцент
Федулов Александр Сергеевич
Официальные оппоненты: доктор физико-математических наук, профессор
Гордеев Эдуард Николаевич
кандидат технических наук, доцент Хорев Павел Борисович
Ведущая организация: Научно-исследовательский электро-
механический институт (г. Москва)
Защита диссертации состоится "21" мая 2004 г. в 16 час. на заседании диссертационного совета Д 212.157.01 при Московском энергетическом институте (техническом университете) по адресу: 111250, Москва, ул. Красноказарменная, д. 14.
Отзывы в двух экземплярах, заверенные печатью учреждения, просим направлять по адресу: 111250, Москва, ул. Красноказарменная, д. 14, Ученый совет МЭИ (ТУ).
С диссертацией можно ознакомиться в библиотеке Московского энергетического института (технического университета).
Автореферат разослан апреля 2004 г.
Ученый секретарь диссертационного совета Д 212.157.01 к.т.н., профессор
■ [ С
И.И. Ладыгин
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Актуальность темы исследования. Необходимость использования средств защиты программ обусловлена рядом факторов, среди которых следует выделить: несанкционированный доступ, использование и модификация программного обеспечения (ПО).
В связи с этим задача разработки эффективных средств защиты программ от исследования, особенно при недостаточном правовом регулировании, приобретает все большую значимость.
Существует достаточное количество средств защиты' программ для операционных систем (ОС) класса DOS. В работе выполнен анализ применимости DOS-совместимых средств защиты для платформы Win32, а также обзор существующих для ОС Windows средств защиты. Из проведенного анализа видно, что показатели применимости существующих DOS-средств защиты программ не позволяют полностью использовать для ОС Windows накопленный опыт разработки эффективных способов противодействия средствам исследования. Данная проблема связана с тем, что DOS-совместимые средства защиты не учитывают архитектуру ОС Windows, возможность работы в защищенном режиме.
В связи с этим в настоящее время в большей части пользовательских систем защиты программ используются криптографические методы защиты, а также методы, направленные на усложнение кода программ (разработка собственных виртуальных машин и др.), что не обеспечивают противодействия ряду средств исследования программ.
В результате проведенного анализа средств защиты и средств исследования программ для ОС Windows, в работе выделены средства исследования, которым не может быть оказано эффективного противодействия со стороны применяемых средств защиты, что определяет практическое направление диссертационной работы.
Рассмотрены недостатки существующих средств исследования программ, что позволит разрабатывать новые способы защиты. Решение данной задачи повысит эффективность противодействия разрабатываемых средств защиты программ.
Решение задачи разработки способов количественной оценки средств защиты программ наталкивается на серьезные трудности. Во-первых, необходимо отметить, что отсутствуют строго адекватные модели и методы оценки таких средств. Практика показывает, что модели оценки создаются для каждой системы защиты программ (СЗП) индивидуально. Подобный подход позволяет учитывать различные аспекты использования конкретной СЗП. Во-вторых, часть информации, необходимой для разработки эффективных средств защиты, недоступна из-за отсутствия исходных кодов операционной системы. Все это заставляет проводить дополнительные исследования принципов функционирования ОС Windows.
] РОС НАЦИОНАЛЬНА!
I БНКЛМГЕКА
I СП«пКйгй,^
• о»
Разработка способа количественной оценки СЗП осложняется неочевидными зависимостями между используемыми в моделях параметрами, а также неизвестными закономерностями влияния этих параметров на целевые характеристики.
Актуальность диссертационной работы заключается в разработке новых эффективных средств защиты программ, а также в разработке способа получения теоретической оценки СЗП, функционирующих в пользовательском режиме ОС Windows.
Целью работы является исследование существующих и разработка новых средств защиты программ от динамического и статического анализа для повышения эффективности противодействия средствам анализа потенциального злоумышленника путем повышения степени контроля за информационными потоками в операционной среде Win32.
Для достижения указанной цели в работе необходимо решить следующие научные задачи:
1) исследование и классификация существующих средств динамического и статического анализа программ. Исследование и классификация существующих средств защиты программ. Анализ степени защищенности информационных потоков;
2) разработка структурной модели информационных потоков в операционной среде с точки зрения возможного использования их средствами динамического и статического анализа;
3) разработка способа количественной оценки эффективности средств защиты от динамического и статического исследования программ;
4) разработка алгоритмов средств защиты программ от динамического и статического анализа.
Методы исследований. В работе используются' методы теории марковских процессов, методы теории вычислительных систем, методы обработки экспериментальных данных.
Достоверность научных положений и результатов диссертационной работы подтверждается:
1) совпадением полученных теоретических результатов с экспериментальными результатами;
2) апробацией основных результатов;
3) практическим внедрением разработанных средств защиты программ от исследования, что подтверждено двумя актами о внедрении и актом о тестировании разработанных алгоритмов.
Обоснованность научных результатов, выводов и рекомендаций, сформулированных в диссертации, определяется корректным применением используемых методов исследования.
Научная новизна.
1. Разработаны структурные модели информационных потоков при выполнении программы в среде Win32, которые могут использоваться средствами анализа программ.
2. Разработана модель систем защиты программ от статического и динамического анализа, которая может быть использована для получения количественной оценки эффективности средств противодействия исследованию программ.
3. Разработаны новые алгоритмы противодействия средствам динамического и статического анализа программ.
Практическая значимость работы.
Основные результаты диссертационной работы могут быть использованы
для:
1) разработки программных средств защиты прикладных приложений операционной системы Windows от их динамического и статического анализа;
2) получения количественных оценок эффективности способов противодействия средствам динамического и статического анализа программ;
3) увеличения стойкости программных средств защиты информации к их анализу.
Практическая значимость работы подтверждена также тремя актами о внедрении.
Реализация результатов исследования.
Теоретические и практические результаты диссертационной работы используются в следующих организациях:
1) ООО "Руссобит-Трейд", г.Москва - завод по производству CD-дисков и игрового ПО;
2) 0 0 0 "Протекшей Технолоджи", г. Москва - компания-разработчик систем защиты информации от копирования, лицензионных систем, электронных ключей и других продуктов в области защиты информации.
Методические и теоретические результаты работы используются в учебном процессе ГОУВПО СФ МЭИ (ТУ).
Использование результатов диссертационной работы в специализированных организациях подтверждается соответствующими актами, приведенными в приложениях.
Авторские права на практическую реализацию результатов исследований, проведенных в работе, защищены свидетельством РОСПАТЕНТ.
Основные положения, выносимые на защиту.
1. Классификация и структурные модели информационных потоков пользовательской среды Win32.
2. Модель систем защиты программ от статического и динамического анализа.
3. Алгоритмы противодействия средствам динамического и статического анализа программ.
Аппробация.
Основные результаты диссертации докладывались на следующих конференциях: шестая военно-научная конференция "Проблемы теории и практики войсковой ПВО ВС РФ в современных условиях" (Военный университет войсковой ПВО ВС РФ, Смоленск, 1999 год), шестая международная научно-техническая конференция студентов и аспирантов "Радиоэлектроника, электротехника и энергетика" (МЭИ, Москва, 2000 год), межвузовская научно-техническая конференция "Управляющие и вычислительные системы. Новые технологии" (ВоГТУ, Вологда, 2000 год), пятая международная научная конференция "Современные проблемы информатизации в технике и технологиях" (ЦЧКИ, Воронеж, 2000 год), восьмая военно-научная конференция "Уроки и выводы из опыта локальных войн и их влияние на развитие теории и практики войсковой ПВО" (Военный университет войсковой ПВО ВС РФ, Смоленск, 2000 год).
Результаты работы отражены в 11 научных публикациях, разработанные методы и программные средства успешно применены для решения реальных задач при разработке средств защиты информации. Права на разработанные программные средства защищены свидетельством Российского агентства по патентам и товарным знакам (Роспатент).
Структура и объем работы.
Диссертация состоит из введения, четырех глав, заключения, списка использованной литературы (всего 101 наименование) и 17 приложений. Диссертация содержит 207 страниц машинописного текста, 27 рисунков и 6 таблиц.
СОДЕРЖАНИЕ РАБОТЫ
Во введении обоснована актуальность темы диссертации, научная новизна и практическая значимость диссертационной работы. Сформулированы основные направления исследований, цели и задачи.
В первой главе проведен анализ существующих для операционных систем класса DOS средств защиты от динамического и статического изучения программ. Из проведенного анализа видно, что рассмотренные для данного класса ОС средства защиты позволяют осуществлять эффективное противодействие средствам исследования.
Получены показатели применимости существующих для ОС DOS средств защиты при условии их реализации в среде Win32. Проведен обзор существующих для Win32 средств защиты, приведена классификация рассмотренных средств защиты.
В главе выполнен анализ средств исследования программ и их классификация.
Объектом защиты (объектом доступа со стороны средств исследования) является программа, в которой реализованы средства защиты от статического и динамического исследования.
Субъектом доступа являются средства исследования программ.
Из результатов проведенных в главе анализов и обзоров следует вывод о недостаточном количестве существующих для Win32 средств защиты от динамического и статического анализа, выделены недостатки существующих средств защиты.
Обоснована необходимость разработки новых средств противодействия исследованию.
Проведенный анализ существующих оценочных моделей, позволяющих рассчитывать количественные характеристики средств защиты, показал, что отсутствуют адекватные модели для различных средств защиты. Существующие модели создаются индивидуально, что позволяет учитывать различные аспекты использования целевых средств защиты. Более того, существующие модели используют многочисленные параметры, которые хотя и носят количественный характер, но трудно поддаются количественной оценке. Из вышесказанного следует необходимость разработки дополнительных способов количественной оценки средств защиты.
В главе определен класс программного обеспечения, для которого целесообразно применение результатов диссертации. Следует выделить следующие классы программного обеспечения: ПО с низкой стоимостью копии и большим тиражом (компьютерные игры, электронные энциклопедии); ПО, предусматривающее частое обновление, что позволяет постоянно вносить изменения в реализованные средства защиты.
Сформулированы задачи и цели диссертационного исследования.
Во второй главе диссертации предложена классификация
информационных потоков пользовательской среды Win32.
Под информационным потоком будем понимать информационное
взаимодействие между двумя объектами системы.
Разбиение информационных потоков на данные категории произведено по следующим причинам:
• предложенные категории информационных потоков позволяют учитывать места внедрения средств исследования программ;
• предложенные категории информационных потоков учитывают сложность анализа каждой категории со стороны средств исследования программ, что позволяет ввести ранжирование категорий.
Рассмотрим предложенные категории информационных потоков:
1) информационные потоки, присутствующие внутри загруженного образа РЕ-файла. Характерной особенностью данной категории информационных потоков является их сложный анализ со стороны средств исследования программ. Высокая сложность анализа обусловлена тем, что данная категория информационных потоков не использует обращений за пределы данного программного модуля, что значительно затрудняет осуществление попыток НСД;
2) информационные потоки взаимодействия исполняемого файла с динамически загружаемыми библиотеками, расположенными в пределах одного адресного пространства. Подобное взаимодействие осуществляется через таблицы импорта и/или экспорта РЕ-файла или путем использования API-функций LoadLibrary и GetProcAddress. Характерной особенностью данной категории информационных потоков является их возможный анализ со стороны средств исследования программ. Данный анализ может быть осуществлен путем модификации таблиц импорта и/или экспорта целевой динамически загружаемой библиотеки или путем внедрения библиотеки, являющейся программной закладкой. Сложность анализа данной категории ниже, чем определенной ранее. Это связано с обращениями данной категории информационных потоков к внешним API и/или структурам, которые могут контролироваться средствами исследования программ. Эти API и/или структуры доступны напрямую средствам защиты;
3) информационные потоки взаимодействия пользовательского режима и режима ядра. Могут присутствовать как в образе исполняемого файла, так и в образе динамически загружаемых библиотек. Характерной особенностью данной категории информационных потоков является возможность их полного контроля со стороны средств исследования программ и сложный контроль со стороны средств защиты. Сложность
анализа данной категории самая низкая из всех рассмотренных. Такие сложности возникают по причине отсутствия прямого доступа к режиму ядра со стороны средств защиты пользовательского режима, что затрудняет обнаружение средств исследования программ, расположенных в режиме ядра.
Обозначим сложность анализа соответствующей категории информационных потоков через М„ где i - соответствующая категория информационного потока. Тогда сложность анализа реализованных средств защиты для каждой категории информационных потоков может быть выражено следующим отношением: M1 > М2 > Мз.
Сложность анализа может быть выражением времени, затраченного средствами исследования на анализ средств защиты.
С учетом предложенной классификации информационных потоков разработаны структурные модели информационных потоков при выполнении программы в среде Win32, которые могут использоваться средствами исследования программ.
Структурная модель, приведенная на рисунке 1, отображает результаты проведенного анализа, который позволяет выявить те средства исследования программ, которым не может быть оказано эффективного противодействия со стороны средств защиты.
Структурная модель показывает наличие отдельного адресного пространства для защищаемого приложения, показано взаимодействие исполняемого приложения с ядром, присутствующими в адресном пространстве динамически загружаемыми библиотеками.
Серыми стрелками схематично показаны воздействия средств исследования программ с целью получения НСД.
В данной главе предложен способ количественной оценки эффективности противодействия средств защиты средствам статического и динамического исследования.
Будем считать, что средства защиты полностью контролируются со стороны средств исследования, если блокированы средства защиты всех категорий информационных потоков.
В адресном пространстве пользовательского режима присутствуют все определенные категории информационных потоков. Средства анализа будут полностью контролируемыми со стороны средств исследования, если средства исследования в состоянии осуществлять контроль над всеми категориями информационных потоков, присутствующих в адресном пространстве. Осуществление полного контроля возможно в двух случаях: информационные потоки соответствующей категории не были защищены или для соответствующей категории информационных потоков осуществлена успешная нейтрализация средств защиты.
Рисунок 1. Структурная модель программной среды Win32.
Для блокирования средств защиты в системе действуют три потока событий. Событие заключается в успешном блокировании средств защиты соответствующей категории информационных потоков. Потоки событий являются ординарными, без последействия (пуассоновские).
Процесс блокирования средств защиты может быть представлен в виде графа G, приведенного на рисунке 2.
Под воздействием потоков событий Х| - Хэ средства защиты могут находиться в восьми состояниях где
1= 1..8, П..О - определенные ранее категории информационных потоков, средства защиты которых в процессе исследования могут находиться в двух состояниях {блокированы - (0), противодействуют исследованию - (1)}.
Рисунок 2. Граф в.
Отсутствие последействия в пуассоновских потоках событий, под воздействием которых система переходит из состояния позволяет при
фиксированном настоящем не заботиться о том, когда и как система попала в текущее состояние.
Тот факт, что средства анализа могут быть блокированы за конечное время, определяет наличие поглощающего состояния.
В зависимости от наличия у определенной категории информационных потоков средств защиты начальными состояниями могут являться
Таким образом, процесс блокирования средств защиты со стороны средств исследования, протекающий в системе, является марковским, т.е. может быть описан с помощью уравнений Колмогорова.
^ = А(ОЧ + А(')Ч "
Данная система уравнений позволяет оценивать рассматриваемые СЗИ.
Полученную количественную оценку (вероятность нахождения системы в состоянии Sg) можно рассматривать как вероятность того, что средства защиты не будут блокированы в определенный момент времени t.
Предложенный способ может применяться для оценки средств защиты, предназначенных для работы в пользовательском режиме.
В третьей главе выполнен анализ средств исследования программ, которым не может быть оказано эффективного противодействия существующими средствами защиты. На основании проведенного анализа выделены слабые места средств исследования программ. Выявленные в процессе анализа слабые места средств исследования позволяют разработать эффективные средства защиты.
Следует заметить, что в данной главе разрабатывались средства защиты тем средствам анализа, которым не оказывается эффективного противодействия. По этой причине их использование обязательно в совокупности с существующими средствами защиты.
Проведено исследование структур и компонентов операционной системы с целью поиска особенностей ОС, которые позволят использовать найденные структуры и компоненты для разработки эффективных средств защиты. В результате проведенного исследования выделены следующие структуры и компоненты ОС, а также аппаратные особенности процессора:
1) структурная обработка исключений;
2) таблицы импорта РЕ-файлов ОС Windows;
3) использование атрибутов и физических адресов страниц оперативной памяти;
4) структуры ОС пользовательской части адресного пространства приложения, используемые для доступа к списку загруженных модулей.
Структурная обработка исключений при разработке средств защиты используется для блокирования динамических и статических средств исследования программ. Для противодействия используется тот факт, что
структурная обработка исключений поддерживается со стороны ОС, обработчики структурной обработки исключений вызываются самой ОС, что затрудняет контроль кода обработчиков со стороны средств исследования. В результате проведенных машинных экспериментов получены отношения, которые значительно изменяют свое значение при наличии отладчиков в системе, что позволяет осуществлять им противодействие. Следует отметить тот факт, что благодаря использованию структурной обработки исключений из пользовательского режима могут быть обнаружены отладчики режима ядры.
При вызове обработчика ему передается контекст потока выполнения, в котором возникло исключение, что может быть использовано средствами защиты для смены контекста выполняемых потоков. Подобная смена потоков приводит к блокированию существующих отладчиков. Изменение контекста потока выполнения может быть дополнительно использовано для осуществления динамических переходов из обработчиков исключений по постоянно изменяющимся адресам, что приводит к значительному затруднению анализа защищенных программ.
Использование таблиц импорта РЕ-файлов при разработке способов защиты позволяет реализовать противодействие средствам динамического и статического исследования: средства защиты могут осуществлять вызов API-функций в обход установленных программных точек останова, противодействовать анализу таблиц импорта средствами исследования, противодействовать внедрению в адресное пространство защищенного приложения динамически загружаемых библиотек, которые являются программными закладками. Проведенное исследование структур ОС позволяет создавать исполняемые файлы без таблиц импорта, что значительно затрудняет работу целого ряда средств исследования программ.
Анализ механизмов страничной организации памяти, поддерживаемых со стороны процессора, и проведенное исследование механизмов управления памятью, поддерживаемых со стороны операционной системы, позволили разработать способ противодействия процессу снятия программы из оперативной памяти (получению дампа памяти). Данный способ заключается в пометке страницы физической памяти как недоступной, при этом физический адрес восстанавливается только перед обеспечением доступа со стороны средств защиты (рисунок 3).
Исследование системного кода пользовательского режима операционных систем Windows позволило выделить API-функции, синтаксический анализ которых не представляет трудностей в момент выполнения кода, и которые обращаются к системным структурам ОС. Использование результатов синтаксического анализа найденных API-функций дает возможность разрабатывать средства защиты от программных эмуляторов кода.
Выполнена разработка блок-схем алгоритмов для всех предложенных способов противодействия средствам исследования программ.
При, программной реализации разработанных способов противодействия средствам анализа использованы следующие программные пакеты: Microsoft Macro assembler v6.14.8444, Microsoft Visual C++ v6.0.
Рисунок З. Противодействие процессу получения дампа памяти.
В четвертой главе приведены результаты экспериментальной проверки разработанных средств защиты.
На тестирование вынесены следующие разработанные средства защиты:
1) противодействие отладчикам режима ядра и режима пользователя;
2) самомодифицирующийся код;
3) изменение контекста потоков;
4) противодействие анализу таблиц импорта РЕ-файла; -
5) противодействие внедрению в адресное пространство библиотек динамической загрузки, являющихся программными закладками;
6) противодействие установке контрольных точек на вход API-функций;
7) противодействие получению дизассемблерами листинга анализируемой программы;
8) противодействие снятию образа программы из памяти;
9) противодействие программным эмуляторам кода.
Обоснован выбор объекта тестирования - система защиты от копирования Star-Force CPS v2.0, которая использует разработанные в данной работе средства защиты, что подтверждается актами о внедрении и свидетельством защиты авторских прав РОСПАТЕНТ. Обоснован выбор стратегии тестирования, приведены результаты тестирования.
При тестировании разработанных способов противодействия были решены две основные задачи: проверка выполнения функций защиты практической реализации алгоритмов; оценка снижения производительности, которое неизбежно появляется при внедрении разработанных средств защиты. Проведенный анализ влияния разработанных средств защиты на быстродействие приложения показал, что падение составляет 3.1%.
В качестве инструментов тестирования использовались:
1) отладчики Soft-Ice фирмы Numega Technologies для Windows NT v2.6, Soft-Ice фирмы Numega Technologies для Windows 9X v3.25, TRW для Windows 9X, отладчик Microsoft VC.net, отладчик WinDbg для Windows 2000;
2) эмулятор VM-Ware v3.2.0;
3) программы мониторинга Spy, NTSpy vl.Ob, API Monitor v5.0;
4) дизассемблер IDA v4.20;
5) программы анализа РЕ-формата TDump v5.0.16.4 фирмы Borland, ShowDep vl.5, PEBrowse Pro v3.12.2.0;
6) программы получения дампа памяти: MemoryDump, ProcDump v 1.6.2 FINAL for NT/W2k (c) 2000 G-Rora, PDump32 v 1.2, IceDump v6.026.
Рассмотрены вопросы независимости программной реализации способов противодействия средствам анализа от различных версий операционных систем.
С помощью разработанного способа количественной оценки выполнена оценка тестируемой СЗИ. Для оценки эффективности разработанных средств защиты выполнена оценка для двух СЗИ Star-Force CPS v2.0 - для СЗИ без внедренных разработанных в работе средств защиты (обозначена как S1) и для СЗИ с внедренными средствами защиты (обозначена как S2). Сравнение двух полученных количественных характеристик позволяет судить об эффективности разработанных средств защиты.
Количественные результаты оценок и их графическое представление получены с помощью системы MathCAD 2001 Professional.
На рисунке 4 выполнено сравнение вероятностей нахождения СЗИ 81 и 82 в состоянии Б8, т.е. сравнение вероятностей того (РвСО), что средства защиты соответствующей СЗИ будут блокированы за время 1.
Из приведенного графического сравнения вероятностей видно, что на установление полного контроля средствами исследования над СЗИ 82 (с внедренными, результатами данной с практической работы), будет затрачено больше времени, чем на установление полного контроля над СЗИ 5|.
- р^СО ДЛЯ Б! * .....Р8(1)для3!
..... РвСОдляБз ----- р8(0для Бг
Рисунок 4. Сравнение вероятностей блокирования средств защиты СЗИ 81 и 82
Выполнена оценка достоверности разработанного в данной работе способа количественной оценки и полученных количественных характеристик. Для оценки достоверности использовалась существующая математическая модель, с использованием которой получены количественные значения вероятностей нахождения СЗИ 81 и 82 в состоянии $8, т.е. вероятностей того, что соответствующая СЗИ будет взломана за время 1. Графическое сравнение вероятностей, рассчитанных с помощью существующей модели, приведено на
рисунке 4 (рв(0), что позволяет сопоставить результаты расчетов, выполненных с помощью существующей модели и разработанного способа количественной оценки.
Выполнено отображение результатов работы на. разработанную структурную модель программной среды Win32 (рисунок 5). Из выполненного отображения видно, что с помощью разработанных средств защиты
Рисунок 5. Структурная модель программной среды Win32.
осуществляется эффективное противодействие следующим средствам исследования программ, которым не оказывалось противодействия с помощью существующих средств защиты: средствам динамического анализа (как пользовательского режима, так и режима ядра), средствам статического анализа, программам получения дампа памяти. Исключение составляют программы мониторинга режима ядра, которым не разработано эффективных способов противодействия.
Проведен сравнительный анализ СЗИ Star-Force v2.0 с внедренными разработанными средствами защиты с существующими аналогами: СЗИ VBOX v4.3 и СЗИ ASProtect vl .2.
Приведены технические показатели применимости результатов выполненной работы, определены направления дальнейших исследований.
Приведены акты о внедрении выполненных разработок, акты о проведении тестирования разработанных способов противодействия сторонней организацией, свидетельства о регистрации разработок в РОСПАТЕНТ.
ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ
1. Сформулированы показатели применимости существующих средств защиты программ для среды Win32.
2. Предложена классификация информационных потоков пользовательского приложения ОС Windows.
3. Разработаны структурные модели информационных потоков в операционной среде с точки зрения возможного использования их средствами динамического и статического анализа.
4. Предложен способ количественной оценки эффективности систем защиты от динамического и статического анализа программ;
5. Разработаны алгоритмы способов противодействия средствам исследования программ.
6. Выполнена практическая реализация, тестирование и оценка разработанных средств защиты.
Результаты работы отражены в следующих публикациях:
1. Машевский Ю.В. Методы защиты от программных эмуляторов кода// Современные проблемы информатизации в технике и технологиях: Сб. тр. V Междунар. науч. конф. Воронеж: ЦЧКИ. 2000. - С.91.
2. Машевский Ю.В. Сложности построения систем защиты в современных операционных системах// Современные проблемы информатизации в технике и технологиях: Сб. тр. V Междунар. науч. конф. Воронеж: ЦЧКИ. 2000.-С. 127.
3. Федулов А.С., Машевский Ю.В. Общие принципы построения систем защиты// Сб. тр. VI Воен.-техн. конф. ВУ ВПВО ВС РФ. - Смоленск, 1999. -С. 31-32.
4. Федулов А.С., Машевский Ю.В. Сетевые атаки и способы защиты от них// Сб. тр. VI Воен.-техн. конф. ВУ ВПВО РФ. - Смоленск, 1999. - С. 32-33.
5. Федулов А.С., Машевский Ю.В. Проблемы использования отладочных прерываний под Windows NT// Сб. тр. VIII Науч.-техн. конф. ВУ ВПВО ВС РФ. - Смоленск, 2000. - С. 41-42.
6. Машевский Ю.В. Защита от дизассемблеров с помощью структурной обработки исключений// Управляющие и вычислительные системы. Новые технологии/ Тезисы докладов межвузовской научно-технической конференции. Вологда: ВоГТУ. 2000. С. 9-10.
7. Машевский Ю.В. Защита от отладчиков с помощью структурной обработки исключений// Тезисы докладов межвузовской научно-технической конференции. Вологда: ВоГТУ. 2000. С. 10-11.
8. Машевский Ю.В. Использование структурной обработки исключений (SEH) в современных системах защиты информации// Радиоэлектроника, электротехника и энергетика/ Шестая Междунар. науч.-техн. конф. студентов и аспирантов: Тез. докл. В 3-х т.- М.: Издательство МЭИ, 2000. Т.1.-С. 274-275.
9. Машевский Ю.В. Принципы построения систем защиты в современных операционных системах// Радиоэлектроника, электротехника и энергетика/ Шестая Междунар. науч.-техн. конф. студентов и аспирантов: Тез. докл. В 3-х т.- М: Издательство МЭИ, 2000. Т.1. - С. 275-276.
Ю.Машевский Ю.В. Методы защиты от отладчиков// Математическая морфология. - 1999. - №2. - С. 139-142.
11.Машевский Ю.В. Методы защиты от дизассемблеров// Математическая морфология. - 1999. - №2. - С. 143-147
Подписано в печатьЯ.^'^ Зак. f'№ Тир. iCC Полиграфический центр МЭИ (ТУ) Красноказарменная ул., д. 13
- 6 4 5 J
Оглавление автор диссертации — кандидата технических наук Машевский, Юрий Вячеславович
ВВЕДЕНИЕ.
1. АНАЛИЗ ПРОБЛЕМ ПОСТРОЕНИЯ ПРОГРАММНЫХ СИСТЕМ ЗАЩИТЫ ИНФОРМАЦИИ ОТ СРЕДСТВ ДИНАМИЧЕСКОГО И СТАТИЧЕСКОГО ИЗУЧЕНИЯ ПРОГРАММ.
1.1. Анализ проблем построения программных систем защиты информации от средств динамического и статического изучения программ для дисковых операционных систем.
1.1.1. Структура программной системы защиты информации для дисковых операционных систем.
1.1.2. Классификация средств анализа программного кода.
1.1.3. Структурная модель программной среды дисковой операционной системы в аспекте применяемых средств анализа.
1.1.4. Классификация способов противодействия средствам анализа программного кода для дисковой операционной системы.
1.1.5. Программная среда дисковой операционной системы в аспекте системы защиты информации от средств динамического и статического анализа.
1.2. Анализ проблем построения программных систем защиты информации от средств динамического и статического изучения программ для операционных систем windows.
1.2.1. Структура операционной системы Windows.
1.2.2. Классификация средств анализа и способов исследования механизмов работы программного кода для операционной системы Windows.
1.2.3. Классификация способов противодействия средствам анализа программного кода для операционной системы Windows.
1.2.4. Анализ проблем практической реализации программных систем защиты для операционной системы Windows.
1.3. Существующая оценочная модель программных систем защиты информации.
1.3.1. Модель оценки надежности программных систем защиты информации.
1.3.2. Недостатки модели оценки надежности программных систем защиты информации.
1.4. Классы программного обеспечения, для которых целесообразно применение результатов работы.
1.5. Постановка задач исследований.
1.6. Выводы по первой главе.
2. РАЗРАБОТКА МОДЕЛЕЙ ПРОГРАММНЫХ СИСТЕМ ЗАЩИТЫ ИНФОРМАЦИИ ОТ СРЕДСТВ ДИНАМИЧЕСКОГО И СТАТИЧЕСКОГО АНАЛИЗА.
2.1. Разработка структурных моделей программной среды операционной системы Windows в аспекте защиты информации от средств динамического и статического анализа.
2.1.1. Понятие информационного потока в среде функционирования программной системы защиты информации.
2.1.2. Классификация информационных потоков в среде функционирования программной системы защиты информации.
2.1.3. Структурная модель среды функционирования пользовательского приложения.
2.1.4. Структурная модель среды функционирования пользовательского приложения в аспекте используемых средств анализа.
2.1.5. Структурная модель среды функционирования пользовательского приложения в аспекте программных систем защиты информации.
2.2. Разработка математической модели программной системы защиты информации на основе марковских процессов с дискретными состояниями и непрерывным временем.
2.2.1. Недостатки существующих моделей.
2.2.2. Принятые при разработке модели допущения.
2.2.3. Определение состояний для программных систем защиты информации, функционирующих в пользовательском режиме.
2.2.4. Определение переходов между состояниями для программных систем защиты информации, функционирующих в пользовательском режиме.
2.2.5. Математическое описание модели.
2.3. Показатели применимости разработанной модели.
2.4. Выводы по второй главе.
3. РАЗРАБОТКА СПОСОБОВ ПРОТИВОДЕЙСТВИЯ СРЕДСТВАМ ДИНАМИЧЕСКОГО И СТАТИЧЕСКОГО АНАЛИЗА.
3.1. Выявление слабых мест средств анализа.
3.2. Анализ структур и компонентов операционной системы в аспекте их использования при разработке способов противодействия
3.2.1. Использование структурной обработки исключений для разработки способов противодействия средствам анализа.
3.2.2. Использование таблиц импорта загружаемых файлов для разработки способов противодействия средствам анализа.
3.2.3. Использование атрибутов страниц памяти для противодействия получению образов программ.
3.2.4. Использование недокументированных возможностей операционных систем для противодействия эмуляторам:.
3.3. Практическая разработка способов противодействия средствам динамического и статического анализа.
3.3.1. Разработка программной подсистемы защиты логики работы.
3.3.2. Разработка способов противодействия средствам анализа.
3.3.3. Противодействие исследованию таблиц импорта средствами анализа.
3.3.4. Противодействие получению дампа памяти.
3.3.5. Противодействие программным эмуляторам кода.
3.4. Разработка блок-схем алгоритмов разработанных способов противодействия.
3.4.1. Использование структурной обработки исключений для противодействия отладчикам.
3.4.2. Использование структурной обработки исключений при переключении контекста потоков.
3.4.3. Противодействие получению информации через таблицу импорта статическими средствами анализа.
3.4.4. Противодействие установке контрольных точек на вход API-функций.
3.4.5. Противодействие получению дампа памяти.
3.4.6. Противодействие программным эмуляторам кода.
3.5. Выводы по третьей главе.
4. РЕЗУЛЬТАТЫ ЭКСПЕРИМЕНТАЛЬНОЙ ПРОВЕРКИ РАЗРАБОТАННЫХ СПОСОБОВ ПРОТИВОДЕЙСТВИЯ СРЕДСТВАМ АНАЛИЗА.
4.1. Тестирование.
4.1.1. Выбор объекта тестирования.
4.1.2. Выбор стратегии тестирования.
4.1.3. Описание процесса тестирования.
4.1.4. Влияние разработанных способов противодействия на быстродействие.
4.2. Независимость реализации способов противодействия от различных версий операционных систем.
4.3. Оценка достоверности результатов выполненной работы.
4.3.1. Расчет количественных характеристик программной системы защиты информации на основе разработанной математической модели
4.3.2. Оценка адекватности теоретических результатов диссертации с помощью существующей оценочной модели.
4.3.3. Оценка практических результатов работы с использованием разработанной структурной модели.
4.4. Сравнительный анализ существующих систем защиты.
4.5. Показатели применимости разработанных способов противодействия
4.5.1. Технические показатели.
4.5.2. Экономические показатели.
4.5.3. Положительные аспекты использования результатов диссертации.
4.5.4. Отрицательные аспекты использования результатов диссертации
4.6. Направление дальнейших исследований.
4.7. Патентная защита и внедрение.
4.8. Выводы по четвертой главе.
Введение 2004 год, диссертация по информатике, вычислительной технике и управлению, Машевский, Юрий Вячеславович
Необходимость использования систем защиты программного обеспечения (ПО) обусловлена рядом факторов, среди которых следует выделить: незаконное использование алгоритмов, являющихся интеллектуальной собственностью автора, несанкционированный доступ [34], использование и модификация ПО, незаконное распространение и сбыт ПО.
Имеется тенденция роста уровня пиратства [32, 58, 79], которая сохраняется и в настоящее время, что увеличивает финансовые потери производителей ПО.
В связи с этим задача разработки надежных программных систем защиты информации (ПСЗИ) приобретает все большую значимость.
Согласно [75, 76, 83], стойкость к взлому ПСЗИ во многом определяется стойкостью к взлому программной подсистемы защиты логики работы (ППЗЛР), которая является составной частью любой ПСЗИ.
В настоящее время можно говорить о нехватке новых способов противодействия средствам изучения программ для операционных систем (ОС) Windows, которые могут быть использованы при разработке ППЗЛР, что влечет снижение стойкости к взлому ПСЗИ, которые функционируют в пользовательском режиме ОС Windows.
В первой главе диссертации рассмотрены программные продукты, для которых применяются ПСЗИ, проведен анализ применяемых при построении ППЗЛР способов защиты и средств их исследования, что позволяет определить причины снижения стойкости ПСЗИ к взлому и определить направление для дальнейших исследований. Из первой главы диссертации следуют выводы о необходимости разработки методов и средств, которые могут быть использованы для построения ППЗЛР.
Внедрение разработанных в данной работе способов противодействия средствам анализа позволяет увеличить стойкость к взлому ПСЗИ, разрабатываемых для ОС семейства Windows, позволяет осуществлять успешное противодействие средствам анализа потенциального злоумышленника, которые применяются при изучении защищенного ПО.
Решение задачи разработки математических моделей для оценки стойкости к взлому ГОТЗЛР наталкивается на серьезные трудности. Во-первых, необходимо отметить, что, как правило, отсутствуют строго адекватные модели и методы оценки таких систем. Практика показывает, что методы оценки в подавляющем большинстве случаев создаются для каждой ППЗЛР индивидуально [76], что позволяет учитывать для них различные аспекты использования. Во-вторых, часть информации, необходимая для разработки способов противодействия средствам анализа, недоступна из-за недокументированности кода операционной системы, что заставляет проводить дополнительные исследования принципов функционирования ОС Windows.
Разработка математических и структурных моделей осложняется неочевидными зависимостями между параметрами, а также неизвестными закономерностями их влияния на целевые характеристики; выборки данных зачастую непредставительны.
Целью диссертационной работы является исследование существующих и разработка новых средств защиты программ от динамического и статического анализа для повышения эффективности противодействия средствам анализа потенциального злоумышленника путем повышения степени контроля за информационными потоками в операционной среде, практическая реализация и внедрение разработанных программных средств, оценка их эффективности.
Для достижения указанной цели в работе необходимо решить следующие научные задачи:
1) исследование и классификация существующих средств динамического и статического анализа программ. Исследование и классификация существующих средств защиты программ. Анализ степени защищенности информационных потоков;
2) разработка структурной модели информационных потоков в операционной среде с точки зрения возможного использования их средствами динамического и статического анализа;
3) разработка метода количественной оценки эффективности системы защиты от динамического и статического анализа программ;
4) разработка алгоритмов способов противодействия средствам исследования программ.
В ходе работы над диссертацией были использованы следующие методы исследований:
1) методы теории Марковских процессов;
2) методы теории вычислительных систем;
3) экспериментальные методы.
Обоснование научных результатов, выводов и рекомендаций, сформулированных в диссертации, определяется корректным применением использованных методов исследования и экспериментальной проверкой полученных результатов. А также подтверждается приведенной оценкой адекватности разработанной модели.
Достоверность научных положений и результатов диссертационной работы подтверждается:
1) совпадением полученных теоретических результатов с экспериментальными результатами;
2) апробацией основных результатов;
3) практическим внедрением разработанных средств защиты программ от исследования, что подтверждено двумя актами о внедрении и актом о тестировании разработанных алгоритмов.
Научный вклад и научная новизна работы заключается в следующем:
1) Разработаны структурные модели информационных потоков при выполнении программы в среде Win32, которые могут использоваться средствами анализа программ.
2) Разработана модель систем защиты программ от статического и динамического анализа, которая может быть использована для получения количественной оценки эффективности средств противодействия исследованию программ.
3) Разработаны алгоритмы противодействия средствам динамического и статического анализа программ.
Основные положение, выносимые на защиту.
1. Классификация и структурные модели информационных потоков пользовательской среды Win32.
2. Модель систем защиты программ от статического и динамического анализа.
3. Алгоритмы противодействия средствам динамического и статического анализа программ.
Практическая значимость работы:
1) разработки программных средств защиты прикладных приложений операционной системы Windows от их динамического и статического анализа;
2) получения количественных оценок эффективности способов противодействия средствам динамического и статического анализа программ;
3) увеличения стойкости программных средств защиты информации к их анализу и последующему преодолению.
Практическая значимость работы подтверждена также тремя актами о внедрении.
Реализация результатов исследований.
Результаты диссертационной работы используются в следующих организациях:
1) ООО "Руссобит-Трейд", г.Москва - завод по производству СО-дисков и игрового программного обеспечения;
2) ООО "Протекшей Технолоджи", г. Москва - фирма-разработчик новых систем защиты информации.
3) филиал государственного образовательного учреждения высшего профессионального образования "Московский энергетический институт (технический университет)" в г. Смоленске.
Факт использования результатов работы подтверждается соответствующими актами, приведенными в приложениях.
Апробация работы.
Основные результаты диссертации докладывались на следующих конференциях:
1) шестая военно-научная конференция "Проблемы теории и практики войсковой ПВО ВС РФ в современных условиях". Военный университет войсковой ПВО ВС РФ, Смоленск, 1999 год;
2) шестая международная научно-техническая конференция студентов и аспирантов "Радиоэлектроника, электротехника и энергетика". МЭИ, Москва, 2000 год;
3) межвузовская научно-техническая конференция "Управляющие и вычислительные системы. Новые технологии". ВоГТУ, Вологда, 2000 год;
4) пятая международная научная конференция "Современные проблемы информатизации в технике и технологиях". ЦЧКИ, Воронеж, 2000 год;
5) восьмая военно-научная конференция "Уроки и выводы из опыта локальных войн и их влияние на развитие теории и практики войсковой ПВО". Военный университет войсковой ПВО ВС РФ, Смоленск, 2000 год.
Публикации.
По результатам исследований автором опубликовано 11 работ.
Структура и объем работы.
Диссертация состоит из введения, четырех глав, заключения, списка литературы (всего 101 наименование) и 17 приложений. Диссертация содержит 207 страниц машинописного текста,рисунков итаблиц.
Заключение диссертация на тему "Исследование существующих и разработка новых программных средств защиты информации от динамического и статического анализа"
4.8. Выводы по четвертой главе
В главе определен объект тестирования, выбрана стратегия тестирования и определены программные платформы, на которых проводилось тестирование результатов работы.
Проведенное тестирование показало высокую эффективность разработанных способов противодействия. Получена оценка влияния разработанных способов противодействия на быстродействие защищенного приложения. Падение быстродействия после внедрения разработанных способов противодействия составляет 3.1%. Рассмотрена независимость разработанных способов противодействия от различных версий операционных систем.
Выполнена оценка достоверности результатов проделанной работы. Проведенный на основе разработанной математической модели расчет показал, что эффективность противодействия средствам анализа при использовании разработанных способов противодействия увеличивается на 20%.
Для оценки адекватности разработанной математической модели был проведен расчет эффективности разработанных способов противодействия с использованием существующей модели (приведена в разделе 1.3). Выполненный расчет показал, что эффективность противодействия при внедрении разработанных способов увеличивается на 21%, что согласуется с результатами, полученными с использованием разработанной модели. Сравнение полученных на основе двух моделей результатов позволяет судить об адекватности разработанной в данной работе модели.
Выполнена оценка результатов диссертации с использованием разработанной во второй главе структурной моделью.
Проведен сравнительный анализ с существующими аналогами, из которого видна эффективность противодействия средствам анализа по сравнению с аналогами.
Рассмотрены технические и экономические показатели применимости результатов диссертации.
Указаны положительные и отрицательные аспекты использования выполненных разработок.
Определены возможные направления дальнейших исследований.
Приведены организации, в которых выполнено внедрение теоретических и практических результатов диссертации. Акты об использовании результатов диссертации, тестировании разработанных способов противодействия сторонними организациями, свидетельства о регистрации разработок в РОСПАТЕНТ приведены в приложениях.
Заключение
В данной работе проведено исследование существующих принципов построения программных систем защиты информации, являющихся целью для средств анализа программного кода. Приведена классификация существующих способов противодействия средствам исследования программного кода, используемых в программных подсистемах защиты логики работы ПСЗИ. Проведен анализ существующих способов противодействия средствам анализа.
Проведенный анализ позволил выявить недостатки, которые имеют существующие способы противодействия при их практической реализации в пользовательских приложениях ОС Windows.
Выполнен анализ существующих для ОС DOS и ОС Windows средств исследования программного кода, рассмотрены структуры и компоненты операционных систем, которые используются средствами исследования при их работе, что позволило выявить средства исследования программного кода, которым не может быть оказано эффективного противодействия существующими способами защиты со стороны ПСЗИ.
Рассмотрены проблемы, возникающие при практической реализации ПСЗИ для ОС Windows.
Рассмотрены недостатки существующей оценочной для ПСЗИ модели.
На основании проведенных анализов поставлены задачи диссертационного исследования.
Разработана классификация информационных потоков программной среды в аспекте защиты от средств анализа. Представленная классификация позволяет провести систематизацию мест внедрения в программную среду средств анализа.
Разработаны структурные модели программной среды в аспекте защиты от средств анализа.
Впервые определены состояния ПСЗИ пользовательского режима, в которых она может находиться в процессе исследования ее средствами анализа, заданы условия перехода между состояниями.
Разработана математическая модель, применение которой позволяет рассчитывать вероятности нахождения произвольной ПСЗИ пользовательского режима в каждом из определенных состояний, позволяет провести качественный и количественный анализ рассматриваемых ПСЗИ.
На основании рассмотренных слабых мест существующих способов противодействия и проведенных исследований средств анализа, были предложены способы противодействия тем средствам анализа, которым до настоящего момента не могло быть оказано эффективного противодействия со стороны ПСЗИ пользовательского режима, а именно:
1) средствам противодействия динамического анализа;
2) средствам противодействия статического анализа;
3) средствам получения дампа памяти.
Из проведенных машинных экспериментов получены зависимости, на основании которых можно определять "возмущения", вносимые средствами анализа в программную среду выполнения.
Разработанные способы противодействия согласуются с методикой создания систем защиты и дальнейшего их совершенствования.
Разработаны схемы алгоритмов предложенных способов противодействия.
Проведено тестирование, которое показало высокую эффективность разработанных способов противодействия. Результаты проведенного тестирования согласуются с тестированием разработанных способов противодействия, проведенных сторонней организацией (приложение 10). Получена оценка влияния разработанных способов противодействия на быстродействие защищенного приложения - падение быстродействия составляет 3.1%, рассмотрены вопросы независимость реализации способов противодействия от различных версий ОС.
Выполнена оценка достоверности результатов проделанной работы. Проведенный на основе разработанной математической модели расчет показал, что эффективность противодействия средствам анализа при использовании разработанных способов противодействия увеличивается на 20%.
Для оценки адекватности разработанной математической модели был проведен расчет эффективности разработанных способов противодействия с использованием существующей модели, который показал, что эффективность противодействия при внедрении разработанных способов увеличивается на 21%.
Выполнена оценка результатов диссертации с использованием разработанной во второй главе структурной моделью.
Проведен сравнительный анализ с существующими аналогами, рассмотрены технические и экономические показатели применимости, определены направления для дальнейших исследований.
Разработка теоретических положений и создание на их основе практических способов противодействия средствам анализа стало возможным благодаря комплексному использованию теоретических и экспериментальных методов исследования.
Результаты диссертации используются в следующих организациях:
1) Смоленский филиала МЭИ (технический университет);
2) ООО "Руссобит-Трейд", г.Москва - завод по производству СБ-дисков и игрового программного обеспечения;
3) ООО "Протекшей Технолоджи", г. Москва - фирма-разработчик систем защиты информации.
Разработанные в данной диссертационной работе способы противодействия защищены свидетельством о регистрации в РОСПАТЕНТе.
Основные положения и результаты работы докладывались и обсуждались следующих конференциях:
1) шестая военно-научная конференция "Проблемы теории и практики войсковой ПВО ВС РФ в современных условиях". Военный университет войсковой ПВО ВС РФ, Смоленск, 1999 год;
2) шестая международная научно-техническая конференция студентов и аспирантов "Радиоэлектроника, электротехника и энергетика". МЭИ, Москва, 2000 год;
3) межвузовская научно-техническая конференция "Управляющие и вычислительные системы. Новые технологии". ВоГТУ, Вологда, 2000 год;
4) пятая международная научная конференция "Современные проблемы информатизации в технике и технологиях". ЦЧКИ, Воронеж, 2000 год;
5) восьмая военно-научная конференция "Уроки и выводы из опыта локальных войн и их влияние на развитие теории и практики войсковой ПВО". Военный университет войсковой ПВО ВС РФ, Смоленск, 2000 год.
Применение практических результатов диссертации возможно в любых ПСЗИ с целью противодействия анализу логики работы, при сокрытии принципов функционирования алгоритмов, являющихся коммерческой тайной или авторской собственностью.
Как следует из четвертой главы данной работы, внедрение разработанных способов противодействия позволяет увеличивать эффективность противодействия средствам анализа.
Применение теоретических результатов возможно для получения количественных оценок ПСЗИ, функционирующих в пользовательском режиме, а также в использовании учебных процессов.
Библиография Машевский, Юрий Вячеславович, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
1. Beckett В. Introduction to Cryptology and PC Security. The McGraw-Hill Companies, 1997. 356 p.
2. Beizer, "Black Box Testing", p.8.
3. Beizer, "Software Testing Techniques", pp. 10, 11.
4. Braun R. Interrupt List, 1991.
5. Brumm P., Brumm D. 80386 Assembly Language. USA: Tab. books, 1988. -626p.
6. Compuware NuMega. Accelerating Device Driver Development. Using SoftlCE. April 1999.
7. Infected Voice. Magazine of "Stealth" group, The Computer VIRUS Club. Issue 1-12. Электронный журнал.
8. Intel Architecture Software Developer's Manual. Volume 3: System Programming Guide, Order Number 243192, 1997.
9. Meyer С. H., Matyas S. M. Cryptography: A New Dimension in Computer Data Security. John Wiley & Sons, 1982. - 755 p.
10. O.Microsoft Windows 2000 Driver Development Kit, June, 2000.1 l.MSDN, April, 2000. Exception Handling: Overview.12.MSDN.net, October, 2001.13,Odlyzko A.M. Public Key Cryptography // AT&T Techical Journal. -Sept./Oct. 1994.-P. 17-23.
11. Pietrek M. January, 1997. Microsoft Systems Journal. A Crash Course on the Depths of Win32 Structured Exception Handling.
12. Pietrek M. Windows 95 system programming secrets. IDG Books World Wide, 1995. 756p.
13. Robbins J. Debugging Applications. Microsoft Press, 2000.
14. Schmidt Robert. Handling Exception in С and С++. June 17, 1999.
15. Schneier B. Applied Cryptography. John Wiley & Sons, Inc., 1996. - 758 p.
16. Seberry J., Pieprzyk J. Cryptography. An Introduction to Computer Security. Advances in Computer Science Series. Prentice Hall of Australia Pty Ltd., 1989. - 375 p.
17. Айвенс К. Эксплуатация Windows NT. Проблемы и решения: пер. с англ. -СПб.: BHV Санкт-Петербург, 1998. - 592 е., ил.
18. Алексеенко В. Современная концепция комплексной защиты. Технические средства защиты, АО "Ноулидж Экспресс" и МИФИ, 1994, 38с.
19. Анин Б. О шифровании и дешифровании // Конфидент. 1997. - №1. -С. 71-79.
20. Анин Б.Ю., Защита компьютерной информации. СПб.: БХВ-Петербург, 2000. - 384 е.: ил.
21. Аснис И. JI. Федоренко С. В., Шабунов К. Б. Краткий обзор криптосистем с открытым ключом // Защита информации. 1994 - №2. - С. 35-43.
22. Бабенко JI. К., Ищуков С. С., Макаревич О. Б. Защита информации с использованием смарт-карт и электронных брелоков. 352 стр., 2003 г. Издательство: Гелиос.
23. Безруков Н. Н. Компьютерная вирусология. Киев: "УРЕ", 1991.
24. Бурдаев О. В., Иванов М. А., Тетерин И. И. 320 стр., 2002 г. Издательство: КУДИЦ.
25. Вентцель Е.С. Теория вероятностей: Учеб. для вузов. 6-е изд. стер. - М.: Высш. шк., 1999. - 576 е.: ил.
26. Вентцель Е.С., Овчаров JT.A. Теория случайных процессов и ее инженерные приложения. Учеб. пособие для втузов. - 2-е изд., стер. -М.: Высш. шк., 2000. - 383 е.: ил.
27. Вильямс А. Системное программирование в Windows 2000 для профессионалов СПб: Питер, 2001. - 624 е.: ил.
28. Водолазский В. Коммерческие системы шифрования: основные алгоритмы и их реализация // Монитор. 1992. - № 6-7. - С. 14-19.
29. Гаврилин Ю.В. Преступления в сфере компьютерной информации: квалификация и доказывание. Учебное пособие. Под редакцией Ю. В. Гаврилина. 240 стр., 2003 г. Издательство: ЮИ МВД РФ; Серия: Высшая школа.
30. ГОСТ Р 50922-96. Защита информации. Основные термины и определения.
31. Гостехкомиссия России. Руководящий документ: Защита от несанкционированного доступа к информации. Термины и определения. -М.: Военное издательство, 2002.
32. Григорьев В. JL Микропроцессор i486. Архитектура и программирование (в 4-х книгах). Книга 1. Программная архитектура. М., ГРАНАЛ, 1993. -с.346, ил.87.
33. Григорьев В. JI. Микропроцессор i486. Архитектура и программирование (в 4-х книгах). Книги 2-4. М., ГРАНАЛ, 1993. с.382, ил.
34. Гроувер Д. и др. Защита программного обеспечения: Пер. с англ. Под ред. Д.Гроувера. М.: Мир, 1992. - 286с.
35. Гук М. Процессоры Intel: от 8086 до Pentium II СПб.: Питер, 1998. - 224 е.: ил.
36. Девянин П. Н. и др. Теоретические основы компьютерной безопасности: Учеб. пособие для вузов. М.: Радио и связь, 2000. - 192 е.: ил.
37. Джеффри P. Windows для профессионалов: Программирование в Win32 API для Windows NT 3.5 и Windows 95. М: Русская Редакция "Channel Trad, 1995.
38. Джон Д. Рули и др. Windows NT 4.0: Пер. с англ. К.: Издательская группа BHV, 1998. - 800 с.
39. Джордейн Р. Справочник программиста персональных компьютеров типа IBM XT и AT. Перевод с английского Н.В. Гайского. М.: "Финансы и статистика", 1992. 495 с.
40. Долгин А. Защита программного обечпечения от исследования // Электронный журнал "НСК", 1992г. №1.
41. Долгин А., Расторгуев С. Защита программ от дизассемблеров и отладчиков // КомпьютерПресс. 1992. - №4.
42. Долгин А., Расторгуев С. Самомодифицирующиеся программные модули. //КомпьютерПресс, №4, 1992.
43. Дымов В. Хакинг и фрикинг. Хитрости, трюки, секреты. Издательство: Майор. Серия: Мой компьютер. 2002г., 176с.
44. Карлин С. Основы теории случайных процессов: Пер. с англ. М.: Мир, 1971.-536 с.
45. Касперски К. Образ мышления дизассемблер IDA. "Солон" - 2001, 478 стр.
46. Касперски К. Фундаментальные основы хакерства. Издательство Солон-Р, 2002г., 448с.
47. Касперский Е. Компьютерные вирусы в MS DOS. М.: Издательство "ЭДЭЛЬ", 1992.- 176 с.
48. Кастер X. Основы Windows NT и NTFS/Пер. с англ. М.: Издательский отдел "Русская редакция" ТОО "Channel Trading Ltd.", 1996. - 440 е.: ил.
49. Кемени Дж., Снелл Дж. Конечные цепи Маркова. М.: Наука, 1970.
50. Коберниченко А. Недокументированные возможности Windows NT. М.: "Нолидж", 1998. - 288 е., ил.
51. Коваль И. Как написать компьютерный вирус: практика программирования на ассемблере /СПб: Символ Плюс, 2000.-189 с.
52. Круглински Д., Уингоу С., Шеферд Дж. Программирование на Microsoft Visual С++ 6.0 для профессионалов / Пер. с англ. СПб: Питер; М.: Издательско-торговый дом "Русская редакция", 2000. - 864 е.: ил.
53. Кэйт, Грегори. Использование Visual С++ 6. Специальное издание.: Пер. с англ. М.; СПб.; К: Издательский дом "Вильяме", 1999. - 864 е.: ил. -Парал. тит. англ., уч. пос.
54. Ликарев С. Б. Базовые средства криптографической защиты информации в ПЭВМ. Защита информации, 1992, №3. [26
55. Мазуров В.А. Компьютерные преступления: классификация и способы противодействия, 148 стр., 2002 г. Издательство: Логос.
56. Машевский Ю.В. Защита от дизассемблеров с помощью структурной обработки исключений. Межвузовская научно-техническая конференция "Управляющие и вычислительные системы. Новые технологии". ВоГТУ, Вологда, 2000 год.
57. Машевский Ю.В. Защита от отладчиков с помощью структурной обработки исключений. Межвузовская научно-техническая конференция "Управляющие и вычислительные системы. Новые технологии". ВоГТУ, Вологда, 2000 год.
58. Машевский Ю.В. Использование структурной обработки исключений в современных системах защиты информации. Шестая международная научно-техническая конференция студентов и аспирантов "Радиоэлектроника, электротехника и энергетика". МЭИ, Москва, 2000 год.
59. Машевский Ю.В. Методы защиты от дизассемблеров. Математическая морфология. Издательство СГМА. Том 3, Выпуск 2, 1999г, Смоленск.
60. Машевский Ю.В. Методы защиты от отладчиков. Математическая морфология. Издательство СГМА. Том 3, Выпуск 2, 1999г, Смоленск.
61. Машевский Ю.В. Методы защиты от программных эмуляторов кода. Пятая международная научная конференция "Современные проблемы информатизации в технике и технологиях". ЦЧКИ, Воронеж, 2000 год.
62. Машевский Ю.В. Принципы построения систем защиты в современных операционных системах. Шестая международная научно-техническая конференция студентов и аспирантов "Радиоэлектроника, электротехника и энергетика". МЭИ, Москва, 2000 год.
63. Машевский Ю.В. Сложности построения систем защиты в современных операционных системах. Пятая международная научная конференция "Современные проблемы информатизации в технике и технологиях". ЦЧКИ, Воронеж, 2000 год.
64. Молдовян А. А. Организация комплексной защиты ПЭВМ от несанкционированного доступа. // "Информатика" сер. Проблемы ВТ и информатизации, №2 1991г.
65. Николаев Ю.И. Проектирование защищенных информационных технологий. СПб.: Изд-во СПбГТУ, 1997.
66. Основные направления развития и совершенствования криптографического закрытия информации // Зарубежная радиоэлектроника. 1989. - №12. - С. 76-91.
67. Петров А. А. Компьютерная безопасность. Криптографические методы защиты. 448 стр., 2000 г. Издательство: ДМК; Серия: Компьютерная безопасность.
68. Правиков Д. И. Ключевые дискеты. Разработка элементов систем защиты от несанкционированного копирования. М.: Радио и связь, 1995. - 128 е.: ил.
69. Правиков Д. Регистрация работы отладчика // КомпьютерПресс. 1993. -№4.
70. Правиков Д., Фролов К. Реализация пристыковочного модуля //Монитор. 1994.-№5.
71. Расторгуев С. П. Исследование систем защиты информации // НТИ. Сер. 2 .— 1993 .—№ 12.—С. 10-15.
72. Расторгуев С. П., Дмитриевский H. Н. Искусство защиты и "раздевания программ". М., 1991.
73. Расторгуев С.П. "Программные методы защиты информации в компьютерах и сетях", М.: Издательство Агентства "Яхтсмен", 1993 г. -188 стр.
74. Рихтер Дж. Windows для профессионалов: создание эффективных Win32-приложений с учетом специфики 64-разрядной Windows / Пер. с англ. 4-е изд. - СПб: Питер; М.: Издательско-торговый дом "Русская Редакция", 2001.-752 е.: ил.
75. Романец Ю. В., Тимофеев П. А., Шаньгин В. Ф. Защита информации в компьютерных системах и сетях / Под ред. В.Ф. Шаньгина. М.: Радио и связь, 1999.-328 с.
76. Румянцев А. Уголовная ответственность за компьютерные преступления в России // Компьютер и право. 1995.
77. Скляров В.А. Программное и лингвистическое обеспечение персональных ЭВМ. Системы общего назначения: Справ, пособие. Мн. Выш. шк., 1992. - 462 е.: ил.
78. Скляров В.А. Программное и лингвистическое обеспечение персональных ЭВМ: Новые системы: Справ, пособие. Мн. Выш. шк., 1992. - 334 е.: ил.
79. Соломон Д., Русинович М. Внутреннее устройство Microsoft Windows 2000. Мастер-класс. / Пер. с англ. СПб,: Питер; М.: Издательско-торговый дом "Русская Редакция", 2001. - 752 стр.: ил.
80. Спесивцев А. В., Вегнер В. А., Крутяков А. Ю. и др. Защита информации в персональных ЭВМ. М.: "Радио и связь", 1992. 190 с.
81. Тихонов В.И., Миронов М.А. Марковские процессы. М.: Сов. радио, 1977.
82. Федулов A.C., Машевский Ю.В. Общие принципы построения систем защиты. Сборник научных материалов шестой военно-научной конференции "Проблемы теории и практики войсковой ПВО ВС РФ в современных условиях", часть 2. Смоленск, изд-во ВУ ВПВО ВС РФ, 1999.
83. Федулов A.C., Машевский Ю.В. Сетевые атаки и способы защиты от них. Сборник научных материалов шестой военно-научной конференции "Проблемы теории и практики войсковой ПВО ВС РФ в современных условиях", часть 2. Смоленск, изд-во ВУ ВПВО ВС РФ, 1999.
84. Финогенов К. Г. Самоучитель по системным функциям MS-DOS. Изд. 2, перераб. и дополн. - М.: Радио и связь, Энтроп, 1995. - 382 е., ил.
85. Фролов А. В., Фролов Г. В. Защищенный режим процессоров Intel 80286, 80386, 80486. Практическое руководство по использованию защищенного режима. М.: "Диалог - МИФИ", 1993. - 240 с. - (Библиотека системного программиста; Т. 6).
86. Фролов А. В., Фролов Г. В. Операционная система MS-DOS. Том 1, книга 3, М.: Диалог-МИФИ, 1992, 222 стр.
87. Фролов А. В., Фролов Г. В. Осторожно: компьютерные вирусы. М.: ДИАЛОГ-МИФИ, 1996. - 256 с.
88. Фролов A.B., Фролов Г.В. Программирование для Windows NT. М.: "Диалог - МИФИ", 1996. - 272 с. - (Библиотека системного программиста; Т.26, 27).
89. Хижняк П. JI. Пишем вирус. и антивирус: для IBM-совместимых компьютеров / М.: INTO, 1991. 89с.
90. Хоган Т. Аппаратные и программные средства персональных компьютеров: Справочник. В 2-х кн. Кн.1. М.: Радио и связь, 1995. -384 с.
91. Хоган Т. Аппаратные и программные средства персональных компьютеров: Справочник. В 2-х кн. Кн.2. М.: Радио и связь, 1995. - 376 е.: ил.
92. Холзнер С. Visual С++ 6: учебный курс СПб: ЗАО "Издательство "Питер", 1999. - 576 е.: ил.
93. Хоффман JI. Современные методы защиты информации: Пер. с англ. /Под ред. В.А. Герасименко. М.: Сов. радио, 1980, 264 с.
94. Шульман Э. Неофициальная Windows 95. К.: "Диалектика", 1995. - 464 е., ил.
95. Щербаков А. Защита от копирования. М.: Издательство "Эдель", 1992. -80 с.
96. Щербаков А. Ю. Нетрадиционные методы проникновения к информации в компьютерных системах // Информатика и вычислительная техника.— 1994 .— № 2-3 .— С. 49-56.
97. Эдингтон Б. (и группа разработчиков Microsoft Windows 95). Знакомство с Microsoft Windows 95. M.: ТОО "Chanel Trading Ltd." -1995г.
98. Филиал Государственного образовательного учреждения высшего профессионального образования Московского энергетического института (технического университета) в г. Смоленске
99. На правах рукописи Машевский Юрий Вячеславович
100. РАЗРАБОТКА ПРОГРАММНЫХ СРЕДСТВ ЗАЩИТЫ ИНФОРМАЦИИ ОТ ДИНАМИЧЕСКОГО И СТАТИЧЕСКОГО АНАЛИЗА
-
Похожие работы
- Метод обнаружения ошибок при работе с памятью на статическом этапе отладки программного обеспечения
- Разработка алгоритмов и моделирование динамической типизации в программах для технических систем
- Модели и алгоритмы оценки эффективности программных систем защиты информации
- Автоматизация статических и динамических испытаний технологических систем обработки резанием в процессе эксплуатации
- Методики выявления потенциально вредоносных файловых объектов на основе интеллектуального анализа данных
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность