Введение в исследование программ Автор: Ханов А.Р. СПбГУ, 2012.

Презентация:



Advertisements
Похожие презентации
Сложная модульная структура Технологическое разнообразие Native и Managed модули Mixed code Особенности современного ПО.
Advertisements

Томск Курс «Компьютерные угрозы» Лабораторные работы к курсу Александр Адамов Преподаватель ХНУРЭ (Харьковский национальный университет радиоэлектроники)
Предоставляет доступ к множеству современных технологий, таким как: Многопоточность Микропотоки Встроенный ассемблер UNICODE Обфускация Улучшает продуктивность.
Исследование кодов программ Макаренков Д.Е. Лекция по дисциплине «Компьютерная разведка»
BACK-IN-TIME Debugger (отладчик с возможностью обратного выполнения программ) Введение. Как известно, значительная часть усилий по разработке программного.
Системы программирования Системы программирования обеспечивают создания новых программ для компьютера. Современные системы программирования обычно представляют.
Эффективная сборка: от материалов к образу диска Иванов Евгений.
Этапы решения задач на компьютере 1. Постановка задачи. 2. Построение математической модели. 3. Составление алгоритма. 4. Запись алгоритма на языке программирования(кодирование)
Декомпозиция сложных дискретных систем, формализованных в виде вероятностных МП-автоматов. квалификационная работа Выполнил: Шляпенко Д.А., гр. ИУ7-83.
Файлы Поиск файла Полное имя файла Адрес Диск:\ путь Имя файла имя. расширение Файл – поименованная область памяти на внешнем магнитном носителе информации.
Вирусы для файлов в формате PE А.В. Неверов. Формат PE.
Программная инженерия Андрей Дмитриев ©
Работа с файлами Ускоренный поиск файлов Запуск и автоматическое исполнение файлов программ – (файлы – программы – это файлы, содержимым которых являются.
Примеры обработки информации (Алгоритмы) Примеры обработки информации (Алгоритмы)
РИНЦ. Работа с каталогом журналов Технологическая инструкция «Каталог журналов»
ПРЕЗЕНТАЦИЯ НА ТЕМУ: ПРЕЗЕНТАЦИЯ НА ТЕМУ: ВИДЫ ТРАНСЛЯЦИИ Составил: Ревнивцев М.В Преподаватель: Кленина В.И.
Декомпозиция сложных дискретных систем, формализованных в виде вероятностных МП-автоматов. квалификационная работа Выполнил: Шляпенко Д.А., гр. ИУ7-83.
Подготовил Дубровин Александр Ученик 9 класса Ольховской школы.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – оптимизация скорости работы приложений Из цикла лекций.
Заголовок
Транксрипт:

Введение в исследование программ Автор: Ханов А.Р. СПбГУ, 2012

Что такое программа?

Все что угодно:.exe.dll.pl.py.pyc.hs.pl …. Исследование программ = обратная разработка = reverse engineering Цель: восстановление алгоритма, изменение работы программы Binary exploitation: поиск уязвимостей и исполнение shell-кода

Инструменты анализа 1)Декомпилятор (Assembler: IDA Pro, objdump, hiew; Python: unpyc,…; Java Decompiler; C# JetBrains; VB decompiler…) 2)Отладчик (gdb, OllyDBG, …) 3)Монитор (strace, procmon, filemon,…) 4)Вспомогательные утилиты: strings, dumpbin, PEBrowser, LordPE,…

Исполняемые файлы Файл программы Заголовок Секция 1 Секция 2 Секция 3 Заголовок Секции программы Секции загружаемых библиотек Память программы Секции: -код -инициализированные данные -импорт -экспорт -релокации … Image base

Исполняемые файлы %Показать структуру исполняемого файла%

Задачи 1)Упаковка/распаковка 2)Обфускация/деобфускация 3)Восстановление алгоритма 4)Борьба с антиотладкой

Примеры 1) Упаковка easy (test_easy.exe) 2) Упаковка medium (test_medium) 3) Восстановление исходного файла 4) Раскрытие алгоритма 5) Борьба с отладкой, патчинг, самомодификация, динамическая распаковка. (crypto, 29)

Ресурсы wasm.ru – куча статей по Assembler cracklab.ru – статьи, программы crackmes.de – множество тренировочных примеров google.com – множество полезной информации по теме