Security Lab

PT-2012-22: Уязвимость форматной строки в SQLite

(PT-2012-22) Positive Technologies Security Advisory
Уязвимость форматной строки в SQLite

Уязвимое ПО

SQLite
Версия: 3.7.13 и более ранняя
Операционная система: OS/2 (eComStation)

Ссылка:
http://sqlite.org/

Рейтинг опасности

Уровень опасности: Средний
Воздействие: Отказ в обслуживании
Вектор атаки: Локальный

CVSS v2:
Base Score: 5.5
Vector: (AV:L/AC:M/Au:S/C:C/I:P/A:P)

CVE: отсутствует

Описание программы

SQLite — легковесная встраиваемая реляционная база данных.

Описание уязвимости

Специалисты Исследовательского центра Positive Research компании Positive Technologies обнаружили уязвимость форматной строки в SQLite

При открытии файлов через SQLite на операционной системе OS/2 (eComStation) путь к файлу для преобразования из относительного в абсолютный проходит через функцию os2FullPathname. В процессе исполнения этой функции путь к файлу попадает в функцию sqlite3_snprintf в качестве строки форматирования, а не как аргумент для нее. Таким образом, у злоумышленников появляется возможность использовать управляющие последовательности в строке форматирования.

Уязвимость содержится в файле /sqlite3.c.
Уязвимый фрагмент кода:

static int os2FullPathname(
...
const char *zRelative,      /* Possibly relative input path */
...
char *zFull                 /* Output buffer */
){
char *zRelativeCp = convertUtf8PathToCp( zRelative );
...
APIRET rc = DosQueryPathInfo( (PSZ)zRelativeCp, FIL_QUERYFULLNAME,
zFullCp, CCHMAXPATH );
free( zRelativeCp );
zFullUTF = convertCpPathToUtf8( zFullCp );
sqlite3_snprintf( nFull, zFull, zFullUTF );
...

Пример эксплуатации

При открытии базы данных с названием "%s%s%s%s%s%s%s" произойдет отказ приложения SQLite.

Решение

С 21.06.2012 производитель прекратил поддержку SQLite для OS/2. Версия 3.7.13 и более ранние подвержены этой уязвимости. Рекомендуется не использовать SQLite на OS/2.

Статус уведомления

10.07.2012 - Производитель уведомлен
06.09.2012 - Публикация уязвимости

Благодарности

Уязвимость обнаружил Сергей Бобров (Исследовательcкий центр Positive Research компании Positive Technologies)


Ссылки

http://www.securitylab.ru/lab/PT-2012-22

Список отчетов о ранее обнаруженных уязвимостях Positive Research:

http://www.ptsecurity.ru/lab/advisory/
http://www.securitylab.ru/lab/

О Positive Technologies

Positive Technologies www.ptsecurity.ru - одна из ведущих российских компаний в области информационной безопасности. 
Основные направления деятельности компании - разработка систем комплексного мониторинга информационной безопасности (XSpider, MaxPatrol); предоставление консалтинговых и сервисных услуг в области информационной безопасности; развитие специализированного портала Securitylab.ru.

Заказчиками Positive Technologies являются более 40 государственных учреждений, более 50 банков и финансовых структур, 20 телекоммуникационных компаний, более 40 промышленных предприятий, компании ИТ-индустрии, сервисные и ритейловые компании России, стран СНГ, Балтии, а также Великобритании, Германии, Голландии, Израиля, Ирана, Китая, Мексики, США, Таиланда, Турции, Эквадора, ЮАР, Японии.

Positive Technologies - это команда высококвалифицированных разработчиков, консультантов и экспертов, которые обладают большим практическим опытом, имеют профессиональные звания и сертификаты, являются членами международных организаций и активно участвуют в развитии отрасли.