| Дата публикации: | 29.12.2003 |
| Всего просмотров: | 1256 |
| Опасность: | Средняя |
| Наличие исправления: | Да |
| Количество уязвимостей: | 1 |
| CVE ID: | Нет данных |
| Вектор эксплуатации: | Удаленная |
| Воздействие: |
Раскрытие важных данных Раскрытие системных данных |
| CWE ID: | Нет данных |
| Наличие эксплоита: | Нет данных |
| Уязвимые продукты: | Pico Server (pServ) 3.x |
| Уязвимые версии: pServ 3.0 beta 2
Описание: Уязвимость обнаружена в pico Server (pServ). Злонамеренный пользователь может получить доступ к произвольным файлам на уязвимой системе. Удаленный пользователь может запросить URL, содержащий '//', чтобы получить доступ к произвольным файлам вне wwwroot каталога. Пример/Эксплоит: GET //../ HTTP/1.0\r\n\r\n URL производителя:http://sourceforge.net/projects/pserv Решение: Установите следующее исправление:
--- main.c 2003-09-22 10:39:24.000000000 +0200
+++ patch.c 2003-12-19 12:40:47.000000000 +0100
@@ -455,6 +455,11 @@
dirName[1] = req.documentAddress[2];
dirName[2] = req.documentAddress[3];
dirName[3] ='\0';
+ if (dirName[0] == '/')
+ {
+ sayError(sock, FORBIDDEN, req.documentAddress, req);
+ return -1;
+ }
if (!strcmp(dirName, "../"))
{
sayError(sock, FORBIDDEN, req.documentAddress, req);
@@ -462,6 +467,15 @@
}
}
j = 0;
+ for(i = 1; i < sL; i++) {
+ if(req.documentAddress[i] == '/')
+ if(req.documentAddress[i+1] == '/')
+ {
+ sayError(sock, FORBIDDEN, req.documentAddress, req);
+ return -1;
+ }
+ }
for (i = 1; i < sL; i++) {
if (req.documentAddress[i] == '/')
{
|
|
| Ссылки: | directory traversal bug in Pserv 3.0b2 |