
Some checks failed
Build YACBA ISO / build-iso (push) Failing after 1m10s
YACBA
Полностью автономная система для cold-boot атак с собственным загрузчиком.
Что это?
Самостоятельная микро-ОС на флешке, которая загружается с нуля и дампит оперативную память. Не зависит от установленной системы на компьютере.
Архитектура
Система:
bootloader.asm
- Загрузчик в стиле OpenBSDkernel.c
- Минимальное ядро без зависимостейgdt.asm
,print32.asm
,switch_pm.asm
- Системные компонентыlinker.ld
- Скрипт компоновки
Сборка:
Makefile
- Сборка всей системыbuild.sh
- Нативная сборка Linuxdocker-build.sh
- Кроссплатформенная сборкаbuild-iso.sh
- Создание ISO образа
Утилиты:
create_boot_usb.sh
- Прямое создание загрузочной флешкиextract_dump.sh
- Извлечение дампа с носителя
CI/CD:
.gitea/workflows/build.yml
- Автоматическая сборка и релизы
Принцип работы
- Загрузчик стартует с MBR (раздел 1 - 10MB)
- Загружает ядро в память
- Переключается в защищенный режим
- Ядро сканирует и дампит память
- Сохраняет дамп на раздел 2 (RAW, без ФС)
Сборка
На Linux:
chmod +x build.sh
./build.sh
На macOS/Windows (через Docker):
chmod +x docker-build.sh
./docker-build.sh
Создание носителя
ISO образ (рекомендуется):
chmod +x build-iso.sh
./build-iso.sh
# или
make iso
Прямая запись на флешку:
sudo ./create_boot_usb.sh /dev/sdX
Через Docker + ISO:
make docker-iso
Вставить флешку в целевую систему и перезагрузиться. Система загрузится автоматически и начнет дамп.
Извлечение дампа
После использования:
sudo ./extract_dump.sh /dev/sdX
Скрипт автоматически извлечет дамп и выполнит базовый анализ.
Использование ISO
Запись ISO на флешку:
sudo dd if=yacba-coldboot-20241222.iso of=/dev/sdX bs=1M status=progress
Тестирование в VM:
qemu-system-i386 -cdrom yacba-coldboot-20241222.iso
Запись на CD/DVD:
cdrecord -v dev=/dev/sr0 yacba-coldboot-20241222.iso
Автоматическая сборка
Проект поддерживает автоматическую сборку через Gitea Actions:
- При каждом push в main создается артефакт с ISO
- При создании тега автоматически создается релиз
- Артефакты доступны в разделе Actions
Быстрый старт
См. QUICK_START.md для краткой инструкции.
Description
Languages
Shell
47.4%
C
36.2%
Assembly
12.1%
Makefile
4.3%