Описание тега dynamic-analysis
Динамический анализ извлекает информацию о программах, выполняя их на реальном или виртуальном процессоре.
Динамический анализ - это метод извлечения информации о программах или данных, которые они обрабатывают, путем сбора критических данных во время выполнения программы. Это может преодолеть проблему статического анализа, который часто бывает слишком консервативным (" может произойти какое-то событие E "), предоставляя доказательства того, что некоторые конкретные события (например, E) действительно произошли.
Первый вопрос - решить, какую информацию собирать.
Сложная проблема заключается в том, как вставить зонды для сбора данных в исполняемый код:
- скрыть инструментарий в библиотеках времени выполнения или ОС, используемой программой
- исправить объектный код
- перехватить интересующие кодовые страницы и смоделировать критическую часть
- моделировать выполнение всей программы и собирать данные по мере необходимости
- изменить исходный код, чтобы вставить инструментарий
Другой вопрос, мешает ли процесс сбора данных выполнению программы; это особенно важно для программ с ограничениями в реальном времени.