Проблемы с созданием Afl-fuzzer с использованием BinUtils 14.04
Цель:
- Я пытаюсь настроить и запустить
Afl Fuzzer
( ссылка), как часть следования онлайн-курса.
Информация:
- я бегу
Ubuntu 14.04
на DVD. - В видео учитель использует
BinUtils
2.25
пакет, и я решил использовать последнюю версию2.26
, - У меня нет большого опыта в компиляции / создании программного обеспечения.
Шаги, за которыми я следовал:
- Скачал последнюю версию
BinUtils
на рабочий стол (/home/ubuntu/Desktop
) - Распакованная папка BinUtils с помощью
tar
через терминал. - Используемый
make
попытаться создать программу в распакованной папке на рабочем столе, что, я думаю, сработало. - Скачал последнюю версию
afl-latest.tgz
отсюда в/home/ubuntu/
, - Распаковал afl-latest.tgz используя
tar
через терминал. - Используемый
make
попытаться создать программу в/home/ubuntu/afl-2.08b
, который я думаю работал.
Проблемы:
- Выход с помощью
ls -a
этой папки значительно отличается от вывода, показанного на видео (т.е. у меня не все файлы, которые показал Учитель) послеmake
был запущен. - Получить ошибку
bash: ./configure: No such file or directory
когда в папке/home/ubuntu/afl-2.08b/
и попробуйте выполнить следующую команду:CC=afl-gcc ./config
,afl-gcc.c
файл существует в папке. Мне нужно попробовать./configure --prefix=/home/ubuntu/afl-2.08b/
? Cannot compile executables
сообщение об ошибке.
Что я пробовал:
- Попытался выяснить, в какой папке для Binutils я должен быть
make
, Это не ясно из онлайн-курса, и есть несколько папок с одинаковыми именами. Поиски пока не были плодотворными. - Опубликованный вопрос о папке BinUtils в области чата курса для рассматриваемого видео.
- Отправил письмо с вопросом, где находится папка BinUtils, поставщику курса.
- Прочитайте
Readme
файл дляBinUtils
, - Прочитайте
Readme
файл дляafl-2.08b
, - Гугле
cannot compile executables
Я не был уверен, является ли это моей неопытностью использования команд терминала Ubuntu или попыткой следовать неясным инструкциям.
Что я еще не пробовал:
- Установлена последняя версия gcc
Обновить:
Я получил это работает в конце. Я думаю, что я должен был работать./configure, когда в папке / binutils.
Я также забыл сделать:
1) chmod 777 -R на каждую из папок 2) sudo make install
1 ответ
Если у вас нет особой причины строить afl
Исходя из источника, я бы порекомендовал использовать Ubuntu Xenial (16.04), который поставляется с afl
в репозиториях. Просто запустите это:
sudo apt-get install afl
и сейчас afl-gcc
будет в вашем $PATH
так что вы не получите No such file or directory
ошибка.
Далее установите зависимости, необходимые для сборки binutils
:
sudo apt-get build-dep binutils
Теперь вы можете скачать и собрать исходный код binutils
в текущий рабочий каталог одной командой, нет sudo
требуется:
apt-get source -b binutils
Это займет некоторое время для загрузки и сборки. Это не будут последние источники, но это не должно быть необходимым для размытия.
Как только они закончат сборку, вы будете в гораздо лучшей форме для перекомпиляции с afl-gcc
и запуск процесса фаззинга.