Уязвимости MagicDot в Windows открывают дорогу руткитам

Уязвимости MagicDot в Windows открывают дорогу руткитам

Уязвимости MagicDot в Windows открывают дорогу руткитам

Некорректные DOS-пути в номенклатуре имен файлов в Windows могут быть использованы для сокрытия вредоносного содержимого, файлов и процессов. Исследователь из SafeBreach Ор Яир обозначил проблему, связанную с процессом преобразование DOS-пути в NT-формат в Windows.

Злоумышленники получают руткит-возможности для скрытия своих вредоносных действий, что представляет огромный риск для предприятий.

Ор Яир сделал акцент на четырёх уязвимостях, связанных с проблемой, которую исследователь назвал "MagicDot". Группа проблем MagicDot существует из-за того, что Windows заменяет пути DOS на пути NT.

Для того чтобы пользователь смог открыть файл или папку на своём компьютере, Windows использует путь, по которому существует файл. Таким путём обычно является путь DOS, который представлен в формате "C:\Users\User\Documents\example.txt". Однако для выполнения операции открытия файла используется другая базовая функция под названием NtCreateFile. Именно она запрашивает путь NT, а не DOS. Поэтому Windows преобразует привычный путь DOS, видимый пользователям, в путь NT, прежде чем вызвать NtCreateFile для выполнения операции.

В процессе преобразования путей, Windows автоматически удаляет все точки и лишние пробелы в DOS-пути, из-за чего и возникает проблема.

DOS-пути выглядят следующим образом:

  • C:\example\example.
  • C:\example\example…
  • C:\example\example<пробел>    

Все они преобразуются в "\??\C:\example\example" в качестве NT-пути.

Ор Яир указал, что автоматическое удаление символов даёт возможность киберпреступникам создавать специально разработанные пути DOS, которые будут преобразованы в NT-пути по их выбору для сокрытия вредоносного содержимого или действий либо для приведения файлов в негодность. 

Ряд техник постэксплуатации могут быть применены злоумышленниками из-за проблем “MagicDot”, которые позволят хакерам сохранить скрытность.

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

В ходе сессии Ор Яир добавил, что техника может быть использована для сокрытия файлов или каталогов внутри архивов. Достаточно лишь завершить имя файла в архиве точкой, чтобы Explorer не смог его просмотреть или извлечь.

Третий метод атаки предполагает маскировку вредоносного содержимого под законные пути к файлам.

Специалист пояснил, что при существовании безобидного файла под названием "benign" в каталоге, хакер, используя преобразование путей из DOS в NT, может там же создать вредоносный файл под таким же названием.

Этот подход может использоваться для имитации папок и даже более широких процессов Windows. В результате, когда пользователь читает вредоносный файл, вместо него возвращается содержимое исходного безвредного файла, и жертва даже не подозревает, что на самом деле открывает вредоносный контент.

Исследователь сообщил, что данные манипуляции с путями MagicDot могут предоставить злоумышленникам руткит-способности без прав администратора и без вмешательства в цепочку вызовов API.

Киберпреступники получают возможность скрывать файлы и процессы, прятать файлы в архивах, влиять на анализ файлов с предварительной выборкой, заставлять пользователей диспетчера задач и Process Explorer думать, что файл зловреда является проверенным исполняемым файлом, опубликованным Microsoft, выводить из строя Process Explorer с помощью уязвимости отказа в обслуживании (DoS) и многое другое.

Ор Яир предупредил о значимости угрозы в мире кибербезопасности и напомнил о важности разработки методов и правил обнаружения непривилегированных руткитов.

Исследователь в области безопасности Ор Яир обнаружил в ходе своего исследования путей  "MagicDot" четыре различные уязвимости, связанные с основной проблемой. Три из них уже исправлены Microsoft.

С помощью уязвимости удаленного выполнения кода (RCE) (CVE-2023-36396, CVSS 7,8) в новой логике извлечения архивов Windows для всех новых поддерживаемых типов архивов злоумышленники создают вредоносный архив, который после извлечения записывается в любое место на удаленном компьютере, что приводит к выполнению кода.

В интервью Dark Reading Ор Яир рассказывает, что, например, пользователь скачивает архив с GitHub, который не является исполняемым файлом, и извлекает его, что считается совершенно безопасным действием. Но теперь само извлечение может запустить код на компьютере.

Следующий баг — это уязвимость повышения привилегий (EoP) (CVE-2023-32054, CVSS 7,3), которая позволяет злоумышленникам записывать в файлы без привилегий, манипулируя процессом восстановления предыдущей версии из теневой копии.

Третья уязвимость — это непривилегированный DOS для антианализа Process Explorer, для которого зарезервирован CVE-2023-42757.

Последний баг, относящийся к EoP, позволяет непривилегированным злоумышленникам удалять файлы. Компания Microsoft подтвердила, что такая уязвимость существует, но пока не исправила её.

Представленные исследователем уязвимости компания Microsoft устранила, но всё же автоматическое удаление точек и пробелов при преобразовании путей из DOS в NT сохраняется. А именно это и является первопричиной уязвимости.

Ор Яир объяснил, что это создает потенциал для обнаружения новых уязвимостей и техник постэксплуатации, которые могут быть гораздо опаснее нынешних.

Проблема актуальна не только для Microsoft, но и для всех производителей программного обеспечения.

Специалист порекомендовал разработчикам программного обеспечения использовать NT-пути вместо DOS, так как они позволяют избежать процесса преобразования и гарантируют, что предоставленный путь — это тот же путь, который используется на самом деле.

На предприятиях же отделам по безопасности следует разработать средства обнаружения неправомерных точек и пробелов в путях к файлам.

Linux 7.1 может наконец сделать NTFS по-настоящему родной файловой системой

В Linux 7.1 намечается заметное обновление, которое особенно оценят те, кто живёт на два мира — Linux и Windows. В ядро уже влит новый драйвер NTFS, и это одна из самых важных, хотя и не самых громких, перемен в файловой подсистеме за последние годы. Сам Линус Торвальдс назвал это воскрешением NTFS.

Вся соль в том, что Linux наконец получает более современную встроенную поддержку NTFS — файловой системы, на которой по умолчанию живёт Windows.

До сих пор с ней всё было либо терпимо, либо просто неудобно: старый драйвер в ядре долгое время умел в основном читать NTFS-разделы, NTFS-3G работал через FUSE и проигрывал по скорости, а более новый NTFS3, хотя и был быстрее, за последние годы успел заработать репутацию решения без слишком активного развития.

Новый драйвер делает ставку не просто на поддержку NTFS, а на более нативную работу внутри самого ядра Linux. В документации ядра прямо сказано, что он обеспечивает полноценную поддержку чтения и записи, рассчитан на высокую производительность и использует современные механизмы вроде iomap и folio.

За разработкой стоит Намджэ Чон — тот же девелопер, который раньше занимался драйвером exFAT для Linux. По данным LKML, он работал над этим направлением около четырёх лет.

На бумаге всё выглядит очень бодро. В обсуждении патчей и публикациях о слиянии упоминается, что однопоточная запись стала быстрее примерно на 3–5%, многопоточная — на 35–110%, а монтирование 4-терабайтного диска ускорилось примерно в четыре раза по сравнению с NTFS3. Кроме того, новый драйвер уже проходит больше тестов xfstests, чем NTFS3: 326 против 273.

Правда, без оговорок тут не обошлось. Это всё-таки новый код, так что в первых релизах вполне возможны шероховатости, особенно в каких-то менее популярных особенностях NTFS. Да и сама NTFS остаётся файловой системой из мира Windows, так что полностью вести себя как ext4 или XFS под Linux она всё равно не начнёт. Но сам вектор выглядит приятным: в ядре Linux эту тему наконец решили делать всерьёз, а не по остаточному принципу.

RSS: Новости на портале Anti-Malware.ru