Недостаток обнаружен в SMB протоколе для Windows систем. Злонамеренный SMB сервер может подтвердить подлинность на системе клиента и получить получить полный контроль над разделенными объектами, типа C$ и т.п.
Windows по умолчанию посылает NT/LM-Response зарегистрированных пользователей к SMB серверу перед тем, как спросить любое имя пользователя/пароль. Злонамеренный SMB сервер может использовать эту информацию, чтобы подтвердить подлинность на машине клиента.
Следующая процедура иллюстрирует способ, который может использовать нападающий, чтобы получить доступ к любому клиенту. Хотя в этой процедуре требуется, чтобы клиент запросил сетевой ресурс, можно заставить клиента установить это подключение. Например послать HTML email сообщение, которое содержит атрибут SRC ссылающийся на сетевой ресурс. Вот эта процедура:
- Клиент пытается подключится к серверу. Он посылает запрос к SMB серверу атакующего.
- SMB сервер атакующего получает этот запрос, но не посылает произведенный вызов клиенту, вместо этого он посылает запрос для атакующего клиента.
- Атакующий SMB клиент посылает запрос к SMB серверу жертвы.
- SMB сервер жертвы посылает вызов к атакующему SMB клиенту.
- Атакующий SMB клиент посылает этот вызов к атакующему SMB серверу, и он посылает обратно к клиенту жертвы.
- Клиент жертвы получает вызов. Он шифрует пароль, используя полученный вызов и посылает его обратно атакующему серверу.
- Атакующий сервер посылает этот ответ атакующему клиенту.
- Атакующий клиент посылает полученный ответ назад серверу жертвы.
- Сервер жертвы получает ответ.
- Успешное установление подлинности происходит на жертве. В этот момент, клиент атакующего получает полный контроль над машиной жертвы.
Осуществление этой процедуры нетривиально и требует тонкого знания работы NTLM и SMB протоколов. Как сообщается, существует рабочий эксплоит, который будет опубликован публично послу выхода соответствующей заплаты от Microsoft (некоторые считают, что об этой проблеме Microsoft знает уже 3 года и не в состоянии решить ее!).
Уязвимость обнаружена в Windows XP, Windows 2000 server/professional, Windows .NET server, Windows
9x/Me.