Skip to content

Latest commit

 

History

History

arm_rootfs_gzip

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Фаззинг gzip из Ubuntu20 (ARM).

1. Подготовка таргета

  1. Скачать rootfs с Ubuntu20 (ARM):
wget https://cdimage.ubuntu.com/ubuntu-base/releases/focal/release/ubuntu-base-20.04.5-base-armhf.tar.gz
mkdir rootfs
tar xvf ubuntu-base-20.04.5-base-armhf.tar.gz -C rootfs/
  1. Подготовить rootfs (необходимо указать актуальные пути):
cp -r crusher/bin_x86-64/qemu-user-mode-arm-64bit rootfs/qemu
./mount.sh ./rootfs/

См. также раздел "Запуск в chroot-режиме" в документации фаззера.

  1. Сформировать нач. корпус вх. данных (сделано):
mkdir in
echo 0 > seed
zip -r in/seed.zip seed
  1. Проверить gzip:
sudo -E chroot rootfs/ /qemu/qemu-static /usr/bin/gzip -d -c < in/seed.zip

Необходимо убедиться, что распакованные данные соответствуют ранее запакованным.

2. Фаззинг.

Перед запуском необходимо удалить rootfs/dev/* и rootfs/proc.

  1. Запуск фаззинга:
sudo -E crusher/bin_x86-64/fuzz_manager --start 8 --eat-cores 2 --config-file config.json \
-i in/ -o out -- /usr/sbin/chroot ./rootfs/ /qemu/qemu-static /usr/bin/gzip -d -c
  1. Мониторинг:
sudo -E crusher/bin_x86-64/ui -o out