вторник, 26 февраля 2013 г.
Неплохой фаззер
Что такое фаззинг , для чего он нужен и как его применять повторять не буду - в интернете уже тонны информации по этому поводу.
В этом же посте хочу поделиться неплохим фаззером, который не так давно попал мне в руки.
Фаззер: uniofuzz
Написан на python. Довольно прост и в то же время универсален - умеет генерировать рандомные файлы, фаззить tcp-соединения, пайпы и т.д.(см -help)
Назвал утилиту "неплохой", потому что она избавила меня от написания аналога и почти сходу помогла выявить существенную проблему в тестируемом udp-демоне - отказ в обслуживании практически сразу после начала фаззинга.
"Почти" - потому что пришлось научить ее фаззить udp вместо tcp и немного "поиграться" с длиной содержимого пакета.
Патч прост:
235c235
< sock=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
---
> sock=socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
Пример фаззинга (2 пакета в секунду) в сетевом соединении:
./uniofuzz.py -n -i 0.5 -ip 127.0.0.1 -port 12345 -s 9999
Утилита проста и эффективна, код открыт и прямолинеен - допилить под свои нужды - не проблема.
Подписаться на:
Комментарии к сообщению (Atom)
Комментариев нет:
Отправить комментарий