Сборка загружаемого модуля
Для сборки модуля ядра необходимо скачать его исходный код с удаленного репозитория Github. Скачивание данных осуществляется с помощью утилиты git
. Пакет для её установки имеет одноименное название.
Настройка рабочего окружения
В первую очередь необходимо перейти в домашнюю директорию /home/vagrant/
, иначе необходимые зависимости для сборки модуля не установятся.
Чтобы скачать файлы из репозитория достаточно выполнить следующую команду:
После её выполнения в текущей директории появиться папка "linux-hevd" . Далее чтобы установить все программные пакеты необходимо выполнить данную команду:
В случае её успешного выполнения виртуальная машина перезагрузится.
Сборка загружаемого модуля
Собрать можно два варианта модуля. Один будет содержать уязвимости, а другой их исправление. На данном этапе будет демонстрироваться сборка уязвимой версии модуля.
Для начала необходимо перейти в директорию /home/vagrant/linux-hevd/builder
и запустить скрипт сборки уязвимой версии модуля:
В случае успешной сборки модуля ядра бинарный файл hevd.ko
модуля появиться в директории /home/vagrant/linux-hevd/output/vulnerable/x64/
.
Установка модуля
Установка модуля осуществляется с помощью команды insmod
. Установить модуль можно только с правами администратора. В данном случае полная команда будет выглядеть следующим образом:
В случае успешной установки программа ничего не выведет. А для того чтобы проверить статус инициализации модуля в ядре достаточно выполнить команду dmesg
.
Для того чтобы не возникало проблем при взаимодействии с модулей необходимо установить соответствующие права:
На данном этапе рекомендуется сделать снимок виртуальной машины, поскольку далее будет осуществляется прямое взаимодействие с модулем.
Автоматическая настройка виртуального окружения
Осуществлять каждый раз настройку не имеет никакого смысла в случае использования Vagrant. Для выполнения всех вышеописанных действий, за исключением сборки модуля, достаточно скачать последнюю версию Vagrantfile по ссылке: https://github.com/kolyandaemon/linux-hevd/releases . После переместить скачанный файл в пустую директорию и выполнить команду vagrant up
.
Last updated