Автоматические анализаторы кода находят только 2% имеющихся в нем ошибок



Источник: MIT


09:34 11.07.2016 |   2551



Созданный в МТИ инструментарий LAVA редактирует код, добавляя реалистичные уязвимости, остающиеся на протяжении всего периода выполнения программы, но проявляющиеся лишь на небольшом диапазоне входных данных, чтобы по большей части работоспособность кода сохранялась.

Чтобы выяснить, сколько ошибок пропускают автоматизированные средства поиска уязвимостей, ученые Нью-Йоркского университета, МТИ и Северо-Восточного университета разработали систему Large-Scale Automated Vulnerability Addition, которая искусственно вносит бреши безопасности в код программы.

По словам исследователей, LAVA редактирует код, добавляя реалистичные уязвимости, остающиеся на протяжении всего периода выполнения программы, но проявляющиеся лишь на небольшом диапазоне входных данных, чтобы по большей части работоспособность кода сохранялась.

Программы, модифицированные с помощью LAVA, проверялись с помощью распространенных видов систем поиска ошибок — основанных на методах символьного выполнения и анализа предельных значений. Анализаторы обоих типов находили всего 2% брешей, добавленных LAVA.

До конца лета создатели системы собираются организовать открытый конкурс, в рамках которого разработчикам и исследователям будут предоставляться исходный код программ, «испорченных» с помощью LAVA, и участники должны будут находить как можно больше внесенных системой ошибок. По мнению авторов LAVA, соревнуясь друг с другом таким образом, программисты смогут научиться писать код, менее подверженный уязвимостям.


Теги: Самое интересное Разработка ПО МТИ
На ту же тему: