Особенности использования санитайзеров для разработки встраиваемых систем

Sergej Samborskij
20m
Существует настоятельная потребность в средствах динамического анализа, которые бы позволяли эффективно выявлять уязвимости программ на языках С и С++. В компиляторах gcc и clang реализованы средства динамического анализа, получившие название санитайзеры. Первый вид санитайзеров используется на стадии тестирования и предназначен для обнаружения ошибок работы с памятью, ошибок несоответствия типов и других уязвимостей. Второй вид санитайзеров предназначен для противодействия угрозам безопасности программ, выполняющихся в производственном режиме. Эти средства имеют низкие накладные расходы и ориентированы на поддержание целостности потока управления программы. К сожалению, применение санитайзеров при разработке встраиваемых систем затрудняется ограничениями по ресурсам, особенностями функционирования ОС, и спецификой разработки встраиваемого ПО.