Подмена записи в журнале регистрации IIS

Подмена записи в журнале регистрации IIS

Уязвимость существует в пути, которым Microsoft IIS регистрирует входящий трафик, позволяя нападающим фальсифицировать регистрационные записи в журнале событий. Уязвимость вызвана преобразованием входящих шестнадцатеричных замен (%xx, где xx - HEX code) в их первоначальную форму, и сохранение первоначальной формы в журнале регистрации (например %0A будет оттранслирован в новую строку).
 

Регистрационные записи в журнале IIS, имеющие шестнадцатеричные коды в запросе, преобразуются к соответствующему символу.
 

Например /index%2easp становится /index.asp и сохраняется преобразованным в журнале регистрации.
 

Проблема связанна с тем, что %0A преобразуется в новую строку и %FF преобразуется во что-то, похожее на пробел. Используя эти два кодирования, вы можете успешно создавать два регистрационных входа, которые ничем не отличаются от настоящих.
 

Пример:
/index.asp%FF200%FFHTTP/1.1%0A00:52:11%FF198.116.142.34%FFGET%FF/evilplaces
 

Здесь запрос о /index.asp закончен 200 ответом и HTTP/1.1, показывающим, какая версия HTTP протокола используется. Затем преобразуется новая строка (%0A). Так как вся регистрация использует время по Гринвичу, все, что должен сделать нападающий – это выяснить текущее время в Лондоне. Далее вы вводите IP, который вы хотите создать, и соответствующий запрос.
 

Файлы регистрации используются очень часто для доказательства нелегальной деятельности. Когда файлам регистрации нельзя доверять, возникает серьезная проблема: как еще можно доказать нелегальную деятельность?
 

В приведенном выше примере, использовался следующий формат Log файлов:
- Time (time)
- Client IP Address (c-ip)
- Method (cs-method)
- URI Stem (cs-uri-stem)
- Protocol Status (cs-status)
- Protocol Version (cs-version)
Если используется другой, то вы должны добавить/удалить соответствующую запись.

 

Ваша цифровая безопасность — это пазл, и у нас есть недостающие детали

Подпишитесь, чтобы собрать полную картину