ИБ-эксперт обнаружил 22 уязвимости в SQLite за полчаса

ИБ-эксперт обнаружил 22 уязвимости в SQLite за полчаса

Залевски решил использовать свою технологию поиска ошибок afl-fuzz для тестирования SQLite.

Один из самых известных ИБ-специалистов в мире Михал Залевски (Michał Zalewski) в течение 30 минут обнаружил 22 ошибки в популярной встраиваемой системе управления базами данных SQLite. Стоит отметить, что архитектура SQLite считается относительно простой и при этом достаточно безопасной.

Иногда SQLite применяется в качестве механизма обработки запросов в Web. Например, некоторые браузеры используют механизм WebDB / WebSQL, в данном случае любая уязвимость в анализаторе SQLite может позволить злоумышленникам совершить кибератаку на всю систему.

Залевски решил использовать свою технологию поиска ошибок afl-fuzz (American Fuzzy Lop) для тестирования SQLite. В случае с разными SQL-системами подобные технологии приходится настраивать под грамматику конкретной системы, однако ИБ-эксперту потребовалось 5 минут для автоматического извлечения и сортировки ключевых слов из документации SQLite. Следующим шагом стал запуск теста: create table t1(one smallint); insert into t1 values(1); select * from t1.

Залевски взял большой набор вручную написанных тестов SQLite, отсортировал их по файлам, 550 штук по 220 байт, и снова запустил программу. Данная конфигурация позволила обнаружить различные виды ошибок: неинициализированные указатели, разыменование нулевого указателя и пр.

В общей сложности поиск 22 ошибок занял у эксперта полчаса. Исправления были включены в версию SQLite 3.8.9. Залевски рекомендует обновить все версии системы.

Теория струн? У нас целый оркестр научных фактов!

От классики до авангарда — наука во всех жанрах

Настройтесь на нашу волну — подпишитесь