В анализе заражений источник заражения — это место в программе или оператор, который может создавать ненадежные или внешние входные данные.
Моя цель. Выявление всех внешних пользовательских входных данных в программу, таких как cmdline-input, чтение файла, переменные среды и сети, с помощью динамического анализа (предпочтительно) и распространения заражения.
Я прочитал это руководство - http://shell-storm.org/blog/Taint-analysis-and-pattern-matching-with-Pin/, который перехватывает системные вызовы чтения с использованием PIN-кода Intel и распространяет taint. Я хочу расширить то же самое, включив в него различные внешние входы, упомянутые выше. (Для начала, для C-scanf, gets, fopen и т. д.)
Есть ли инструмент динамического анализа, который помог бы мне определить общие внешние входные данные? Любые другие подходы с конкретными целями также приветствуются. Спасибо