Изучение DMA через шину PCI для форенсик-анализа памяти (командный проект)
Компания | АО “Лаборатория Касперского” |
Учебный семестр | Осень 2017 |
Учебный курс | 3-й курс |
Максимальное количество студентов, выбравших проект: 3 | |
Содержание
|
Что это за проект?
Изучение DMA-возможностей шины PCI для криминалистического анализа памяти популярных операционных систем
Дано: Переходник USB <-> PCI с возможностью использования DMA и документация к нему.
Цель: Написать программное обеспечение, которое будет позволять получить доступ к физической памяти компьютера и подгрузить сторонние модули в ядра популярных операционных систем.
Программное обеспечение может быть использовано в рамках проведения компьютерных криминалистических экспертиз. Дамп оперативной памяти позволяет увеличить число собираемых цифровых доказательств.
Чему научатся студенты? Что самое интересное в проекте?
1. Студенты изучат протокол DMA и особенности его реализаций. 2. Напишут низкоуровневые приложения уровня ядра.
Организация работы (Как студенты будут работать в команде?)
В команде будут 3 студента, каждый из которых будет выполнять определенные задачи: изучить принцип работы ядра операционной системы, реализовать нужную функциональность клиента или исправить неработающую функциональность, ...
Компоненеты (Из каких частей состоит проект?)
1. Знакомство с протоколом PCI и принципами DMA 2. Создание прототипа для чтения памяти через DMA 3. Разработка модулей для чтения и записи всего диапазона памяти 4. Разработка дополнительных модулей
Какие будут использоваться технологии?
DMA, Язык ассемблера, USB 3.0, PCI
Какие начальные требования?
Знание языков C и ассемблера, общее представление о работе менеджера памяти ядра
Темы вводных занятий
1. Знакомство с командой, разработка плана действий. 2. Обзор существующих решений. 3. Детали имплементации протоколов DMA, PCI, USB. 4. Устройство ядер операционных систем Windows, Linux, macOS.
Критерии оценки
4 - 5 баллов: реализована функциональность, позволяющая читать весь диапазон оперативной памяти какой-нибудь операционной системы. 6 - 7 баллов: реализована функциональность, позволяющая читать и писать весь диапазон оперативной памяти на нескольких ОС, а также обращаться к произвольным файлам на целевом компьютере. 8 - 10 баллов: реализовано чтение и запись всего диапазона RAM на трёх ОС, а также возможность интерактивного взаимодействия с консолью целевого компьютера.
Похожие проекты
https://github.com/ufrisk/pcileech/ http://www.nsaplayset.org/slotscreamer
Контактная информация
Влад Росков Telegram: @vos_desktop Почта: vos@vos.uz