Security Lab

Удаленное выполнение произвольного кода в опознавательном модуле для Squid

Дата публикации:05.06.2002
Дата изменения:17.10.2006
Всего просмотров:1217
Опасность:
Наличие исправления:
Количество уязвимостей:1
CVE ID: Нет данных
Вектор эксплуатации:
Воздействие:
CWE ID: Нет данных
Наличие эксплоита: Нет данных
Уязвимые продукты:
Описание: Msntauth(MSNT squid auth for NtDomains, http://stellarx.tripod.com) - опознавательный модуль для прокси сервера Squid, позволяющий подтверждать подлинность пользователей NT домена.

Переполнение буфера обнаружено в коде allowuser, который содержит годный для удаленного использования syslog () запрос, позволяя удаленному атакующему выполнять произвольный код, с привилегиями процесса Squid.

Уязвимый код:

sscanf(ConnectingUser, " %s ", CUBuf); <-- i wont ask..
sprintf(CUBuf, " %s ", CUBuf); <-- again i wont...

for (x = 0; x <= strlen(CUBuf); x++)
CUBuf[x] = toupper(CUBuf[x]); <-- again....

if (strstr(AllowedUsers, CUBuf) != NULL)
return 1;
else /* If NULL, they are not allowed to use the proxy
*/
{
sprintf(AllowMsg, "Denied access to user '%s'.", CUBuf); <-- my god...
syslog(LOG_USER | LOG_ERR, AllowMsg); <-- HERE WE ARE!!!!!
return 0;
}
 

Как видно проблема обнаружена в функции ConnectingUser, в которой не проверяется спецификации формата.
Ссылки: Remotey exploitable fmt string bug in squid