PT-2012-22: Уязвимость форматной строки в 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/