Контроль программных процессов с использованием профилирования
Диссертация
Задачи исследования. анализ существующих методов профилирования и обоснование технической возможности использования профилей для контроля программных процессов. Объектом исследования являются программные процессы, использующие WIN32 API. Предметом исследования являются профили таких программных процессов- — разработка методов профилирования, позволяющих выделить характерные особенности выполнения… Читать ещё >
Содержание
- 1. Использование профилирования для решения задач контроля ПО
- 1. 1. Постановка задачи
- 1. 2. Выбор метода построения системы
- 1. 3. Основные понятия профилирования
- 1. 4. Метод контроля программных процессов
- 1. 5. Задачи и методы профилирования
- 1. 6. Анализ возможности разработки метода динамического профилирования для программного интерфейса Vin
- 1. 7. Динамическое профилирование
- 1. 8. Выводы по главе
- 2. Теоретические основы получения и анализа профилей
- 2. 1. Постановка задачи
- 2. 2. Идеальный профиль программы.'.!'
- 2. 3. Составляющие профиля
- 2. 4. Реальный профиль программы
- 2. 5. Погрешность при получении функциональной составляющей профиля
- 2. 6. Разбиение программы на временные интервалы
- 2. 7. Получение эталонного профиля программы
- 2. 8. Результаты аутентификации программных процессов
- 2. 9. Уровни глубины анализа исследуемых действий
- 2.
- Выводы по главе
- 3. Построение модели для обнаружения разрушающего программного воздействия
- 3. 1. Постановка задачи
- 3. 2. Причины временной нестабильности вычислительных процессов
- 3. 3. Исключение влияния аппаратных прерываний
- 3. 4. Исключение влияния регенерации динамической памяти
- 3. 5. Исключение влияния прямого доступа к памяти
- 3. 6. Критерии принятия решения при выявлении закладок
- 3. 7. Программы для практического определения погрешности и диапазона вариации
- 3. 8. Выводы по главе
- 4. Методы реализации системы контроля
- 4. 1. Построение автомата временных интервалов
- 4. 2. Разложение действий по составляющим
- 4. 3. Обнаружение изменения профиля
- 4. 4. Укрупненный алгоритм работы программы-агента
- 4. 5. Укрупненный алгоритм работы программы-анализатор а
- 4. 6. Получение гистограммы распределения отсчетов по адресной области программного процесса
- 4. 7. Количественные оценки
- 4. 8. Выводы по главе
Список литературы
- Аврамчук Е.Ф., Вавилов A.A., Емельянов C.B. и др. Технология системного моделирования: под общей редакцией Емельянова C.B. — М.: Машиностроение: Берлин: Техник, 1988. 520 с.
- Александров П.С. Введение в теорию множеств и общую топологию. М.: Наука, 1977, — 368 с.
- Андрианов В.В. Технология защиты в принципах организации информационных систем // Защита информации. Конфидент — 1998 № 3.
- Ахо А. и др. Построение и анализ вычислительных алгоритмов. М.: -Мир, 1979. -536 с.
- Варфоломеев A.A., Пеленицин М. Б. Методы криптографии и их применение в банковских технологиях. Учебное пособие. М.: ЦБ РФ, МИФИ, 1998. 116 с.
- Вархаген К., Дёйн Р., Грун Ф., Йостен И., Вербек П. Распознавание образов: состояние и перспективы. М.: Радио и связь, 1985. 104 с.
- Вашкевич Н.П., Вашкевич С. Н. Недетерминированные автоматы и их использование для синтеза систем управления: Учебное пособие, Пенза, ПГУ, 1990 г.
- Вашкевич Н.П. Синтез микропрограммных управляющих автоматов. Учебное пособие. — Пенза, Пензенский политехнический институт, 1990. — 115 с.
- Вентцель Е.С. Теория вероятностей. М.: Наука, 1969. — 576 с.
- Герасименко В. А. Защита информации в автоматизированных системах обработки данных. Кн. 1. — М.: Энергоатомиздат, 1994. 400 с.
- Герасименко В.А., Малюк A.A. Основы защиты информации. М.: МИФИ, 1998. 538 с.
- Глушков В.М., Уейтлин Г. Е., Ющенко ЕЛ. Методы символьной мультиобработки. Клев: Наук, думка, 1980. — 252 с.
- Григорьев B. J1. Микропроцессор i486. Архитектура и программирование (в 4-х книгах). Книга 1. Программная архитектура. М., Гранал, 1993. — с. 346.
- Григорьев В Л. Микропроцессор i486. Архитектура и программирование (в 4-х книгах). Книга 4. Справочник по системе команд. М., Гранал, 1993. — 382 с.
- Грушо A.A., Тимонина Е. Е. Теоретические основы защиты информации. М.: Изд-во агентства «Яхтсмен», 1996. — 192 с.
- Гудман С., Хиденткеми С. Введение в разработку и анализ алгоритмов. — М.: Мир, 1979. — 535 с.
- Гук М. Процессоры Intel: от 8086 до Pentium II — СПб: Питер, 1997. 224 с.
- Домарев В.В. Защита информации и безопасность компьютерных систем. М.: Диа Софт, 1999. — 480 с.
- Дубравин A.B., Егоров В. Ю., Иткин P.B, Пучков H.B. Система разграничения доступа для сети INTRANET Новые информационные технологии и системы: материалы докладов III международной научно-технической конференции. — Пенза: ПТУ, 1998. — стр. 30−31.
- Дэниеле Т. 1001 секрет реестра Windows NT4/nep. с англ. — М.: Издательский отдел «Русская редакция» ТОО «Channel Trading Ltd.» 1998. -320 с.
- Егоров В. Ю. Выявление программных закладок методом профилирования. Сборник «Специальная техника средств связи» Пенза: Изд-во ПНИЭИ, 1997. — стр. 9−14.
- Егоров В.Ю. Использование интерфейса Win32 API при формировании образов программ. Сборник материалов 4-ой международной конференции «Распознавание 99″. — Курск, Курский государственный технический университет, 1999 г. — стр. 120−122.
- Егоров В.Ю. Профилирование программ как способ защиты информации. Новые информационные технологии и системы:
- Материалы III Международной научно-технической конференции. Пенза, ПГУ, 1998 г. — стр. 86−87.
- Захаров А.П. Анализ аудита банковских технологий. Сборник „Специальная техника средств связи“ — Пенза: Изд-во ПНИЭИ, 1997. стр. 23−25.
- Защита информации в персональных ЭВМ. М.: „Радио и связь“, МП „Веста“, 1993. -192 с.
- Защита программного обеспечения / Под ред. Д.Гроувера. / -М.: Мир, 1992. 288 с.
- ЗегждаД. П., Семьянов П. В., под редакцией Зегжда П. Д. Проблемы безопасности программного обеспечения. — СПб.: СПбГТУ, 1995.
- Зегжда Д.П. и др. Как противостоять вирусной атаке. СПб.: — BHV Санкт-Петербург, 1995. — 320 с.
- Касперский Е. Компьютерные вирусы: что это такое и как с ними бороться. CK Пресс, 1998. — 288 с.
- Коберниченко A.B. Недокументированные возможности Windows NT. M.: „Нолидж“, 1998. — 288 с.
- Козаченко В.Ф. Микроконтроллеры: руководство по применению 16-разрядных микроконтроллеров Intel MCS-196/296 во встроенных системах управления. М.: Издательство ЭКОМ, 1997. 688 с.
- Корнеев В.В., Киселев A.B. Современные микропроцессоры.— М.: НОЛИДЖ, 1998. 240 с.
- Кузин В.В., Шумкин С. Н., Стешкин А. И. Система защиты информации и разграничения доступа к ПЭВМ. Сборник „Специальная техника средств связи“ — Пенза: Изд-во ПНИЭИ, 1997- стр. 15−19.
- Кузин JI.T. Основы кибернетики: в 2-х томах. Т2. Основы кибернетических моделей. М.: Энергия, 1979. — 584 с.
- Куратовский К., Мостовский А. Теория множеств. М.: Мир, 1970. -416 с.
- Липаев В.В. Программно-технологическая безопасность информационных систем. М.: ЦБ РФ, МИФИ, 1996. 144 с.
- Мельников В. Защита информации в компьютерных системах. М.: Финансы и образование, 1998. — 368 с.
- Михайлов С.Ф., Петров В. А., Тимофеев Ю. А. Информационная безопасность. Защита информации в автоматизированных системах. Основные концепции. М.: ЦБ РФ, МИФИ, 1996. — 112 с.
- Мюллер Дж. Visual С++ 5: пер. с англ. — СПб.: BHV—Санкт-Петербург, 1998. 720 с.
- Непомнящий В.А., Рякин О. М. Прикладные методы верификации программ. — М.: Радио и связь, 1988, — 256 с.
- Орлов Е. В., Трошин А. М. Текущий аудит вычислительных процессов рабочих станций, его использование в качестве контролируемого параметра системы безопасности. — Пенза: Изд-во ПНИЭИ, 1997. стр. 61−66.
- Орлов Е. В. Трошин А. М. Программные средства системы статистического контроля целостности информационных процессов. — Там же стр. 46−51.
- Питрек М. Секреты системного программирования в Windows 95 К.: Диалектика, 1996. — 448 с.
- Проверка и утверждение программ реального времени. Под ред. Уи. Дж. Квирка. — Киев: Наук, думка, 1990. — стр. 121.
- Расторгуев С.П. Абсолютная система защиты. „Системы безопасности связи и телекоммуникаций“, 1996 г. № 3, стр. 8688.
- Расторгуев С.П. Программные методы защиты информации в компьютерах и сетях. М.: Изд-во агентства „Яхтсмен“, 1993.
- Рихтер Джеффри Windows для профессионалов (программирование в Win32 API для Windows NT 3.5 и Windows 95)/Пер. с англ. — М.: Издательский отдел „Русская Редакция“ ТОО „Channel Trading Ltd.“, 1995. 720 с.
- Романец. Защита информации в компьютерных системах и сетях. М.: Радио и связь, 1999. — 328 с.
- Скородумов Б.И. Информационная безопасность. Обеспечение безопасности информации электронных банков. М.: ЦБ РФ, МИФИ, 1998. 104 с.
- Скородумов Б.И. Программно-аппаратные комплексы защиты от несанкционированного доступа к информации. Учебное пособие. М.: ЦБ РФ, МИФИ, 1996. 108 с.
- Смит Б., Шаад Г. Power Builder 5.0. Библиотека разработчика. Киев, Москва: 1997. 544 с.
- Сяо Д. и др. Защита ЭВМ: Пер. с англ. М.: Мир, 1982, 264 с.
- Тайли Э. Безопасность компьютера. М.: Попурри, 1997. — 480 с.
- Теория и практика обеспечения информационной безопасности. Под. ред. П. Д. Зегжды. М.: Издательство Агентства „Яхтсмен“, 1996. — 192 с.
- Ухлинов JI.M. Управление безопасностью информации в автоматизированных системах. М.: ЦБ РФ, МИФИ, 1998. — 112 с.
- Феденко. Безопасность сетевых ОС. М.: Эко—Трендз, 1998. — 150 с.
- Щербаков А.Ю. Информационное оружие новая угроза компьютерным системам. //"Банк», № 1, 1995. с. 23−29.
- Щербаков А.Ю. Нетрадиционные методы проникновения к информации в компьютерных системах. // «Безопасность, достоверность, информация», 1995. № 1-е. 24−27, № 2- с. 27−30.
- Щербаков А.Ю. Разрушающие программные воздействия. — М., «Эдэль» Киев. «Век», 1993. — 64 с.
- Щербаков А.Ю. Проблема защиты от программных закладок в банковских информационных системах. //Материалы семинара «Банковская безопасность и компьютерные мошенничества». М., АРБ, 1996. с. 9−11.
- Щербаков А.Ю. Тенденции применения средств защиты информации в сфере информационного обеспечения банковской деятельности. //Сб. материалов конференции «Информационная безопасность». СПб., 1994. — с. 25−26.
- Хоффман Л.Дж. Современные методы защиты информации: Пер. с англ. М.: Сов. Радио, 1980. — 264 с. 72. 82371FB (PIIX) AND 82 371 SB (PIIIX) PCI ISA IDE XCELERATOR. Intel Corporation, May 1996
- INTEL 430VX PCISET 82437VX SYSTEM CONTROLLER (TVX) AND 82438VX DATA PATH UNIT (TDX). Intel Corporation, July 1996
- Pentium Processor Family Developers Manual. Volume 1: Pentium Processors. Intel Corporation, 1996
- Pentium Processor Family Developers Manual. Volume 3: Architecture and Programming Manual. Intel Corporation, 1996
- Тексты программных модулей
- Программный модуль измерения погрешности таймерафайл cOmsure1. asm перехват векторов, их обработка измерение производительности процессора команд out нет1. INCLsCONDSiiMACS
- SEGMENT PARA PUBLIC 'CODE' ENDS
- SEGMENT PARA STACK 'STACK'dw 50 0 dup (?)1. ENDS1. Программа Стек
- Основной модуль программ тестирования процессора и выявления закладокфайл c0mp2. asmперехват векторов, их обработка измерение производительности процессоракоманд out 1синхронизация с регенерацией1. NCL 9о CONDS %MACS1. Определения сегментов
- TEXT SEGMENT DWORD PUBLIC 'CODE'1. ENDS
- FARDATA SEGMENT PARA PUBLIC 'FAR DATA1. ENDS
- FARBSS SEGMENT PARA PUBLIC 'FAR BSS'1. ENDS
- OVERLAY SEGMENT PARA PUBLIC 'OVRINFO'1. ENDS
- TUB SEGMENT PARA PUBLIC 'STUBSEG'1. ENDS
- DATA SEGMENT PARA PUBLIC ' DATA'1. ENDS
- CONST SEGMENT WORD PUBLIC 'CONST'1. ENDS
- CYTSEG SEGMENT WORD PUBLIC 'DATA'1. ENDS
- SCNSEG SEGMENT WORD PUBLIC 'DATA'1. ENDS
- IT SEGMENT WORD PUBLIC 'INITDATA1. ENDS
- ITEND SEGMENT BYTE PUBLIC 'INITDATA1. ENDS
- EXIT SEGMENT WORD PUBLIC 'EXITDATA1. ENDS
- EXITEND SEGMENT BYTE PUBLIC ' EXITDATA1. ENDS
- BSS SEGMENT WORD PUBLIC 'BSS'1. ENDS
- BSSEND SEGMENT BYTE PUBLIC 'BSSEND'1. ENDS
- STACK SEGMENT STACK 'STACK1. ENDS 1. DGROUP GROUP
- JDATA, J30NST, J^VTSEG, J3CNSEG, INIT, INITEND, EXIT, EX I TEND, BS1. S, BSSEND
- Определения инструкций процессора
- Подготовка CESR хог еах, еах mov edx, еах mov есх, llh wrmsr
- Обнуление CTR0, CTR1 хог еах, еах mov edx, еах mov есх, 12h wrmsrхог еах, еах mov edx, еах mov есх, 13h wrmsrпишем в CESRзапрет возможного счета1. CTR01. CTR11. Перехват векторовс2 0с 7: call movmov mov climi dis, 1ebx, 0 dx, PORT
- Перепрограммирование 0 0-го канала таймераmov out out mov out out1. Синхронизацияrefresh: incmpjneal, 11 1000b -Режим 4 работы канала 0 43h, al dx, alax, time -4 Oh, al dx, al01. го ж 00-го канала таймераal, 41h al, 10 refresh
- Взводим счетчики CTR0, CTR1mov eax, 0 0 0 110 110 000 0 0000 0 1 101 0110bthis bus utilization) --xor edx, edxmov ecx, llh — пишем в CESRwrmsr
- Обработчик прерывания от таймераtacts myint1. Proc push pushrdtscsubsubpushpushmovneareaxedxeax, 78 eax, edi esi ecxesi, eax
- Запрет счета CTRO, CTR1 xor eax, eaxxor edx, edxmov ecx, llhwrms rmin/maxint 25+48 11 + 3
- Итого: 78 для rdtsc 51 — для CTR1 фиксируем количество тактов коррекция на первоначальный участок получаем младшие 4 байта ! ! ! Е to М1. М to cashe miss 3 тактапишем в CESR
- Proc near /восстановление начального состоpush eax push ebx mov numv, 1 Oh fmov numfol, 00h /call setoldv /восстановление векторов с 8-го mov numv, 7 8h — с 70-гоcall setoldv fpop ebx pop eax ret f1. EndP f
- Пропущено определение процессора i4 8 6 за ненадобностью Процессор поддерживает cpuid? pushfd pop eaxor eax, 100 000 000 000 000 000 000 0bpush eaxpopf d pushfd pop test j eeaxeax, 100 000 000 000 000 000 0000b old cpu1. Результаты тестирования
- Результат работы программы измерения погрешности таймера
- Тестирование проводилось на компьютере с процессором Pentium100.
- Результаты выявления закладки
- Тестирование проводились на компьютере Celeron 333.
- Результат тестирования без нивелирования вариации
- Результат выявления закладки по результатам тестирования без нивелирования вариации
- Ыем ВаЬа"">>>>>>>> ускорение таймера: 16 порог срабатывания: 2304 048 тактов количество тактов закладки:48 6 сделано 10 попытокматематическое ожидание выявления закладки: 1 выполнений минимум: 1 максимум: 2
- Результат тестирования с нивелированием вариации от регенерации
- Результат выявления закладки по результатам тестирования с нивелированием вариации от регенерации
- Директор НПФ «Кристалл» VШевченко В.И.апре/ь1 2000 г. 1. Заключениео внедрении результатов диссертационной работы Егорова В. Ю. «Контроль программных процессов с использованием профилирования».
- Главный инженер НПФ «Кристалл»
- Научный руководитель НПФ «Кристалл"1. Кузин В.В.1. Андрианов В.В.