數據庫在metaspoit中是相當重要的,當做一個大型滲透測試項目的時候,收集到的信息是相當大的,當和你的同伴一起協同作戰的時候,你們可能 在不同的地方,所以數據共享很重要了!而且Metasploit還可以兼容一些掃描軟件,例如NMAP、Nusess、Nexpose等掃描軟件,我們可 以將掃描結果保存為XML文件,然后交給Metasploit做漏洞利用….
因此在metasploit中使用數據庫來完成以上的工作!
如何安裝數據庫並且和Metasploit兼容
首先metasploit,默認使用的是postgresql數據庫.在BT5或是Kali等專業的滲透系統中,postgresql已經被默認安裝。如 果使用的不是bt5,而是像ubuntu12.04等Liunx發行版,metasploit也是自己安裝的,所以就需要自己安裝postgresql數 據庫啦
首先我們安裝數據庫:
sudo apt-get install postgresql-8.4 postgresql-client-8.4
安裝好了過后就創建用戶密碼和數據庫:
1. su postgres #進入數據庫
2. createdb nmap #創建數據庫
3 createuser nmap #創建用戶
這兒要求你輸入密碼,我設置的是namp。輸入后確定就ok,然后輸入exit退出
接着就是進入msfconsole設置MSF與postgresql數據庫相關聯
進入了msf shell之后,利用以下命令連接數據庫:
db_connect nmap:nmap@127.0.0.1/nmap
然后會看見msf的一些輸出,這些是初始數據,第一次關聯數據庫會有,第二次就沒了。
等待輸出完成之后,我們再輸入命令db_status測試下是否鏈接好了
如果看到以下的回顯,證明數據庫已經成功和MSF相關聯:
postgresql conneted to nmap
postgres數據庫的開啟與查看端口
首先查看數據庫服務是否開啟,在shell輸入以下命令:
netstat -tnpl | grep postgres
如果開啟,記下端口
如果沒有,我們進入/etc/init.d/目錄,shell命令:ls | grep postgres,找到metasploit-postgres,shell命令:./metasploit-postgres start,即可開啟postgres服務,如果要關閉用stop即可。開啟后,記下端口。
查看postgres數據庫的默認密碼並連接數據庫
用戶名和密碼放在/opt/metasploit/config/database.yml這個配置文件中,vim打開查看即可。文件的格式如下文所示:
development:
adapter: "postgresql"
database: "msf3dev"
username: "msf3"
password: "4bfedfc2"
port: 7337
host: "localhost"
pool: 256
timeout: 5
進入metasploit命令行界面:使用命令db_connect 連接數據庫,具體命令:
db_connect username:password@localhost:端口號/數據庫名
針對上文的配置,我們的連接命令就是:
db_connect msf3: 4bfedfc2@127.0.0.1:7337
提示端口錯誤,需要修改postgres默認端口
BT5R3上默認安裝的postgresql監聽端口是7337。如果想改變監聽的端口,解決方法如下:
修改/opt/metasploit/postgresql/data/postgres.conf中port = 5432
然后再根據問題二開啟postgres數據庫即可。
提示ENCODING錯誤
首先我們進入數據庫:
su –postgres
然后再使用UTF8編碼新建數據庫:
createdb msfbook -E UTF8 -T templat0
最后,敲入db_connect postgres@127.0.0.1/msfbook
會有一堆創建數據表的語句輸出,表明執行無問題。
使用db_status檢查,提示正常。
覺得postgres數據庫不爽,想換Mysql數據庫
先啟動msfconsole,首先看看有什么可用的數據庫:
Msf >db_driver [*]Active Driver:postgresql [*]Available:postgresql,mysql
Active Driver: postgresql說明現在默認的數據庫是postgresql
Available:postgresql,mysql說明MSF支持的數據庫有postgresql和mysql
我們可以使用以下的命令切換默認數據庫:
Msf >db_driver mysql
[*]Active Driver:mysql
此時已經成功切換到mysql數據庫啦
參考資料
《Backtrack中metasploit連接postgres數據庫》
《metasploit使用postgresql數據庫》
《Metasploit控制台連接postgresql數據庫問題》
《MSF滲透測試指南》
《MSF滲透測試手冊》
轉載自:http://www.91ri.org/7262.html