
Обнаружение веб-шеллов, внедренных на серверы Microsoft Exchange, эксплуатируемые через группу уязвимостей 'proxylogon' (CVE-2021-26855, CVE-2021-26857, CVE-2021-26858, CVE-2021-27065)
Пожалуйста, используйте вместо этого инструменты Microsoft:
При оценке воздействия мы настоятельно рекомендуем исходить из предположения о компрометации и превентивно проверить все серверы MS Exchange, которые были публично доступны с января, даже если отсутствуют признаки активного взлома.
Обратите внимание, что утечка данных и изменение конфигурации были возможны (и происходили) только через часть SSRF в цепочке эксплойта (т.е. без выполнения кода, сброса каких-либо файлов или запуска новых процессов на хосте Exchange).
Это ложное срабатывание. Антивирусные продукты реагируют на ключевые слова, перечисленные в скрипте. detect_webshells.ps1 намеренно написан как отдельный файл с использованием очень простого PowerShell, чтобы вы могли самостоятельно его проверить. Ключевые слова, которые (справедливо) вызывают срабатывание антивируса, перечислены на строке 94. Если вы не уверены, что понимаете, что делает скрипт, не запускайте его!
Надеемся, что тот факт, что антивирусное ПО начало обнаруживать этот скрипт, означает, что оно способно обнаруживать и настоящие веб-шеллы, что делает detect_webshells.ps1 ненужным. Однако проверьте, не добавлены ли каталоги Exchange и inetpub в список исключений, и помните, что веб-шеллы использовались только для первоначального доступа. После получения возможности выполнения кода злоумышленники обычно развертывают дополнительные механизмы сохранения — иногда даже удаляя сам первоначальный веб-шелл, чтобы скрыть свои следы.
Поэтому не ошибайтесь, думая, что отсутствие веб-шеллов означает отсутствие компрометации — к сожалению, ваш сервер всё ещё мог быть взломан, и либо злоумышленники сами удалили веб-шелл, либо это сделал антивирус (не выгнав злоумышленников с вашего сервера полностью).
Этот скрипт ищет веб-шеллы, которые были установлены на серверах Microsoft Exchange в период их уязвимости к следующим CVE:
Первоначальная активность в январе 2021 года была приписана группе HAFNIUM, однако с тех пор другие злоумышленники получили доступ к этим эксплойтам и начали их использовать. До публичного раскрытия и выпуска исправлений Microsoft (примерно с 27 февраля) публично доступные серверы Exchange начали эксплуатироваться без разбора. Таким образом, установка последних обновлений Exchange вскоре после их публикации Microsoft не полностью устраняла риск предыдущей компрометации, поэтому все серверы Exchange следует проверять на наличие признаков несанкционированного доступа.
detect_webshells.ps1 проверит наличие известных веб-шеллов в типичных расположениях:
inetpub/wwwroot/aspnet_client/: общесистемное расположение, наиболее частое место размещения веб-шеллов в текущих атаках; обычно не содержит никаких файлов, поэтому наличие чего-либо там подозрительно$($env:exchangeinstallpath)/Frontend/: используется более опытными злоумышленниками для маскировки под легитимные файлы Exchange (веб-шеллы могут быть добавлены как новые файлы или путем изменения существующих, включая web.config); наиболее частые расположения — /owa/ и /ecp/, но веб-шеллы могут быть установлены в любом месте в пределах каталога Frontenddetect_webshells.ps1 ищет только веб-шеллы и не пытается обнаружить прошлые события эксплуатации напрямую (для этого используйте https://github.com/microsoft/CSS-Exchange/tree/main/Security и другие скрипты, упомянутые ниже), а также не предназначен для поиска особо скрытных злоумышленников (которые могут удалять веб-шеллы после использования или вообще избегать их установки). Таким образом, отрицательный результат может означать только отсутствие доказательств компрометации на данном конкретном хосте. Он не гарантирует, что хост не был скомпрометирован каким-либо другим способом.
Описания/раскрытия (включая IoC):
Известные скрипты обнаружения: