Этот проект является способом быстро и легко подготовить среду разработки ядра Linux, не используя такие инструменты, как QEMU, или создавать инструмент и кросс-компилирование. Это делается путем создания ядра из пакета, поставленного с Debian, и использования его с Debian Distribution.
Проект также включает в себя Хак , утилиту для того, чтобы вывести некоторые догадки из процесса взлома на ядре, а также служить руководством для новичков, в качестве альтернативы для чтения большого количества материалов в Интернете и попыток учиться с помощью проб и ошибок.
vagrant plugin install vagrant-vbguest ). vagrant up , где вы клонировали репо (где находится Vagrantfile ), чтобы создать блестящую новую виртуальную машину со всем необходимым.
Это займет некоторое время.
Как только это будет сделано, запустите vagrant ssh , чтобы войти в машину и оттуда, в зависимости от вашего уровня знакомства с разработкой ядра, либо:
khack за объяснение того, что вы можете сделать здесь (WIP),khack --help для списка полезных сценариев,Или просто игнорируйте Хак и делайте свое дело.
Внутри виртуальной машины будет:
linux-source : источники ядра Linux готовы к составлению с минимальной конфигурацией от linux-config .khack : Утилита Хак.module : код каркаса для модуля ядра.linux-config : Premade Configs.system-config : файлы конфигурации для различных системных программ, обычно нет необходимости касаться этого.boot-backup : резервная копия /boot , на всякий случай. khack , module и linux-config созданы для обмена с операционной системой хоста, поэтому вы можете использовать свой любимый редактор для редактирования в них файлов.
Чтобы отредактировать источник ядра, см. Ниже. Все остальное можно сделать традиционным способом (компиляция и установить ядро и т. Д.) или использование Khack для удобства.
Мы раскрываем источник через SMB/CIFS, чтобы избежать проблем с построением ядра в общем каталоге VirtualBox. Чтобы установить:
Через терминал:
sudo apt install cifs-utils
sudo mount -t cifs //localhost/kernel-source WHERE_TO_MOUNT -o port=10139,username=vagrant,password=vagrant,uid=$USER,gid=$USER
Через Nautilus:
smb://vagrant:vagrant@localhost:10139/kernel-source/
Через терминал:
sudo mount -t smbfs '//vagrant:vagrant@localhost:10139/kernel-source' WHERE_TO_MOUNT
Через Finder:
Используйте подключение к серверу (cmd+k) с URL smb://vagrant:vagrant@localhost:10139/ .
Хак предназначен для упрощения хакерства на ядре и обучить новичков, которые на самом деле работают, вы знаете, показывая, что они действительно работают, спасая учащихся от разочарования от попыток корректировать заклинания из онлайн -учебника, написанного десять лет назад.
Его источник доступен под khack , и его можно использовать как просто khack в виртуальной машине, поскольку он сочетается в нужном месте (см. setup_vm.sh ).
Например:
khack kernel make ядро в ~linux-source .khack kernel install установит встроенное ядро, чтобы оно будет работать при перезапущении виртуальной машины.khack kernel running сообщит, если на самом деле будет запущено последнее скомпилированное ядро.Эксперимент и повеселиться,
Кернельтл. Команда