Security Lab

Обход защиты документов в Lotus Notes

Дата публикации:31.10.2001
Всего просмотров:1743
Опасность:
Наличие исправления:
Количество уязвимостей:1
CVE ID: Нет данных
Вектор эксплуатации:
Воздействие:
CWE ID: Нет данных
Наличие эксплоита: Нет данных
Уязвимые продукты:
Описание:

База данных Lotus Notes содержит документы, которые организованы в представления. Списки управления доступом могут применяться непосредственно к базе данных, представлениям и документам. Если пользователь был лишен доступа к представлениям, то возможно обойти набор разрешений и получить доступ к защищенным документам.

Причина этой уязвимости существует в возможности обращения к документу от любого представления.
В качестве примера уязвимости приведем базу данных статистики, statrep.nsf. Если вы открываете представление:
http://server/statrep.nsf/136/?OpenView – документ существует (( 136 - NoteID представления)

если открываем спрятанное представление $Alarms
http://server/statrep.nsf/$alarms/?OpenView – документ не существует.

Запрашивая один из документов:

http://server/statrep.nsf/136/8F6?OpenDocument
(8F6 – NoteID первого документа)
Note просматривает этот документ и запрашивает следующий URL:
http://server/statrep.nsf/$alarms/8F6?OpenDocument

OpenDocument возвращен, даже при том, что что $alarms не имеет никаких документов.
Теперь, если мы применим средство управления доступа к представлению и запросим:
http://server/statrep.nsf/136/8F6?OpenDocument

сервер выдаст ошибку: Illegal Argument exeception. Однако, если запросим:

http://server/statrep.nsf/$alarms/8F6?OpenDocument

сервер возвратит документ, даже при том, что к нему запрещен доступ.

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

Решение этой проблемы состоит в том, что если вы хотите применять ACL к представлению, документы в этом представлении также должны быть защищены.

В следующей версии Domino 5.0.9 проблема будет устранена.