Сборка загружаемого модуля
Для сборки модуля ядра необходимо скачать его исходный код с удаленного репозитория Github. Скачивание данных осуществляется с помощью утилиты git . Пакет для её установки имеет одноименное название. 
Настройка рабочего окружения
В первую очередь необходимо перейти в домашнюю директорию /home/vagrant/, иначе необходимые зависимости для сборки модуля не установятся.
Чтобы скачать файлы из репозитория достаточно выполнить следующую команду:
$ git clone --depht=1 https://github.com/kolyandaemon/linux-hevd.gitПосле её выполнения в текущей директории появиться папка "linux-hevd" . Далее чтобы установить все программные пакеты необходимо выполнить данную команду:
$ sh /home/vagrant/linux-hevd/scripts/install_package.shВ случае её успешного выполнения виртуальная машина перезагрузится.
Сборка загружаемого модуля
Собрать можно два варианта модуля. Один будет содержать уязвимости, а другой их исправление. На данном этапе будет демонстрироваться сборка уязвимой версии модуля.
Для начала необходимо перейти в директорию /home/vagrant/linux-hevd/builder и запустить скрипт сборки уязвимой версии модуля: 
$ sh ./Build_HEVD_Vulnerable_x64.shВ случае успешной сборки модуля ядра бинарный файл hevd.ko модуля появиться в директории /home/vagrant/linux-hevd/output/vulnerable/x64/. 
Установка модуля
Установка модуля осуществляется с помощью команды insmod. Установить модуль можно только с правами администратора.  В данном случае полная команда будет выглядеть следующим образом: 
$ sudo insmod /home/vagrant/linux-hevd/output/vulnerable/x64/hevd.koВ случае успешной установки программа ничего не выведет. А для того чтобы проверить статус инициализации модуля в ядре достаточно выполнить команду dmesg .
Для того чтобы не возникало проблем при взаимодействии с модулей необходимо установить соответствующие права:
$ sudo chmod 777 /dev/hevd
$ sudo chown vagrant:vagrant /dev/hevdНа данном этапе рекомендуется сделать снимок виртуальной машины, поскольку далее будет осуществляется прямое взаимодействие с модулем.
Автоматическая настройка виртуального окружения 
Осуществлять каждый раз настройку не имеет никакого смысла в случае использования Vagrant. Для выполнения всех вышеописанных действий, за исключением сборки модуля, достаточно скачать последнюю версию Vagrantfile по ссылке: https://github.com/kolyandaemon/linux-hevd/releases . После переместить скачанный файл в пустую директорию и выполнить команду vagrant up. 
Last updated
Was this helpful?