• XSS.stack #1 – первый литературный журнал от юзеров форума

Fuzzing Билдинг WinAFL c DynamoRIO v8.0.0.1

weaver

31 c0 bb ea 1b e6 77 66 b8 88 13 50 ff d3
Забанен
Регистрация
19.12.2018
Сообщения
3 301
Решения
11
Реакции
4 622
Депозит
0.0001
Пожалуйста, обратите внимание, что пользователь заблокирован
И так...

1) Устанавливаем Visual Studio 2019 - https://visualstudio.microsoft.com/ru/vs/
2) Устанавливаем Git - https://gitscm.com/
3) Устанавливаем Cmake - https://cmake.org/download/
4) Качаем DynamoRIO - https://github.com/DynamoRIO/dynamo...release_8.0.0-1/DynamoRIO-Windows-8.0.0-1.zip


Создаем папку «my_winafl_fuzz» на диске С:\ и распаковываем туда DynamoRIO v8.0.0.1.


5) Запускаем Git, переходим в только, что созданную папку «my_winafl_fuzz» и клонируем рекурсивно git winafl

git clone --recursive https://github.com/googleprojectzero/winafl.git

Почему именно так? Потому что, если папка «third_party» будет пуста, то WinAFL не соберется...

6) Теперь запускаем командную строку Cross Tools x86_x64 for VS 2017
7) Переходим в папку склонированного гита winafl

cd C:\my_winafl_fuzz\winafl


8) Создаем папку для билда и переходим в неё

mkdir build64 && cd build64

9) Выполняем сборку в два шага

cmake -G"Visual Studio 15 2017" -A x64 .. -DDynamoRIO_DIR=C:\my_winafl_fuzz\DynamoRIO-Windows-8.0.0-1\cmake -DINTELPT=1

cmake --build . --config Release

В итоге сбилденный WinAFL с новым DynamoRIO v8.0.0.1 будет находиться в папке Release

Вот путь

C:\my_winafl_fuzz\winafl\build64\bin\Release

Теперь сделаем билд для x86, в целом проделываем тоже самое


mkdir build32 && cd build32
cmake -G"Visual Studio 15 2017" -A Win32 .. -DDynamoRIO_DIR=C:\my_winafl_fuzz\DynamoRIO-Windows-8.0.0-1\cmake -DINTELPT=1
cmake --build . --config Release

Путь для x86

C:\my_winafl_fuzz\winafl\build32\bin\Release


Со сборкой у нас всё покончено... Мы имеем на данный момент как 32 битный билд так и 64 битный билд.


C:\my_winafl_fuzz\winafl\build64\bin\Release
C:\my_winafl_fuzz\winafl\build32\bin\Release


Кстати для сборки я использовал Windows SDK version 10.0.18362.0 на Windows 10.0.19041.


Чтобы запустить WinAFL на тест вводим следующие команды
C:\my_winafl_fuzz\DynamoRIO-Windows-8.0.0-1\bin64\drrun.exe -c winafl.dll -debug -target_module test_gdiplus.exe -target_offset 0x10e0 -fuzz_iterations 5 -nargs 2 -- test_gdiplus.exe 1.bmp

Прежде, чем запускать вторую команду, надо создать папку "in" в C:\my_winafl_fuzz\winafl\build64\bin\Release и скопировать в папку "in" bmp файл из папки C:\my_winafl_fuzz\winafl\testcases\images\bmp, переименовав его в 1.bmp

afl-fuzz.exe -i in -o out -D C:\my_winafl_fuzz\DynamoRIO-Windows-8.0.0-1\bin64\ -t 20000+ -- -coverage_module gdiplus.dll -target_module test_gdiplus.exe -target_offset 0x10e0 -fuzz_iterations 20 -nargs 2 -- test_gdiplus.exe @@


winafl.png
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх