Инструмент для тестирования на проникновения Metasploit даже спустя 15 используется для обхода современных механизмов защиты. Как сообщают исследователи из компании FireEye, киберпреступники все еще используют инструмент вместе с высокоэффективной техникой под названием Shikata Ga Nai (в переводе с японского «ничего не может быть сделано», — прим. ред.) для обхода современных механизмов защиты конечных точек.
Metasploit Framework — наиболее известный инструмент для создания, тестирования и использования эксплоитов. Позволяет производить эксплуатацию и постэксплуатацию уязвимостей, доставку «полезной нагрузки» (payloads) на атакуемую цель. Изначально инструмент разрабатывался как способ облегчить работу тестировщиков эксплоитов, однако злоумышленники взяли на вооружение Metasploit и начали использовать инструмент для атак на компьютерные системы.
Техника Shikata Ga Nai (SGN) использовалась в рамках недавних атак ряда киберпреступных группировок, в частности APT20, UNC902, TA505 и APT41 (группировка, предположительно взломавшая производителя утилиты TeamViewer).
«Несмотря на то, что Metasploit существует более 15 лет, все еще существуют ключевые техники, которые остаются незамеченными и позволяют злоумышленникам избежать обнаружения. Одной из основных техник Metasploit является схема кодирования полезной нагрузки Shikata Ga Nai. Современные системы обнаружения значительно улучшились за последние несколько лет и часто могут устаревшие вредоносные техники. Тем не менее, во многих случаях, если преступник уверен в своих действиях, он может немного изменить существующий код и обойти системы обнаружения», — пишут исследователи.
Изменения кода с помощью метода Metasploit SGN по-прежнему очень опасны. Данный эффект обеспечивает уникальный «полиморфный аддитивный энкодер XOR» кодера SGN. Каждое создание закодированного shell-кода будет отличаться от предыдущего. SGN делает полезную нагрузку безопасной на вид, кодируя вредоносное ПО с помощью «динамической замены команд, динамического упорядочения блоков, случайного обмена регистрами, рандомизации порядка команд, вставки ненужного кода, использования случайного ключа и рандомизации расстояния между командами».
XOR представляет собой алгоритм шифрования, который работает на основе ряда известных принципов. Шифрование и дешифрование могут быть выполнены путем применения и повторного использования функции XOR.
По словам исследователей, SGN удалось обойти защиту конечных точек, которая слишком сильно полагается на методы статического и динамического обнаружения. Расшифровка полезной нагрузки в памяти для определения вредоносного кода слишком нагружает систему, делая такой подход непрактичным. Методы обнаружения с помощью поведенческих индикаторов и «песочниц» также могут быть неточными, отмечают в FireEye.