Исследователи Specter Ops выявили интересную особенность работы платформы CLR с COM-объектами, что позволяет атакующему устроить боковое перемещение. Эксплуатируется механизм включения профилировщика CLR (.NET Profiler), а также механизмы колбеков, которые используются этим профилировщиком.
При чём здесь COM-объекты? А просто профилировщик реализован как com-сервер, который принимает колбеки от исполняющейся в рантайме программы. И оказывается, что при установке переменной COR_PROFILER_PATH в качестве значения можно указать путь на WebDAV-шару. Тогда в процесс будет подгружена библиотека с удалённого сервера.
Как детектировать такую атаку? Давайте посмотрим, что происходит после выполнения эксплоита (скриншот выше). Видим, что CLR заботливо загружает библиотеку с WebDAV-шары. Такая загрузка библиотеки нетипична, и можно сделать хант на это. Подобная активность размечается также хантами на необычный профилировщик (если ваш EDR детектирует T1574.012).
Вообще, среда CLR забавно работает с COM-объектами. О том, как загружаются сборки, которые реализуют COM-сервер, читайте в более подробной статье Александра Родченко. Среда исполнения и тут проявляет заботу, позволяя загрузить такие сборки с WebDAV-шары.
Есть и другие исследования (1, 2, 3, 4) на тему того, что делает среда исполнения перед исполнением кода. Это многогранный процесс со множеством шагов – и некоторые из них можно «донастроить» так, чтобы загрузился и исполнился код, который вы не ждёте.
Post #41
2K


- 🔥 14
- 👍 5
- 👾 3