1、渗透测试信息PostgreSQL数据库
service postgresql start
启动msfconsole后,可以输入db_status命令,查看数据库的连接状态。
msf > db_status
[*] postgresql connected to msf
连接到数据库后,可以使用hosts命令检查数据库是否可以正常使用
msf > hosts
Hosts
=====
address mac name os_name os_flavor os_sp purpose info comments
2、Nmap与渗透测试数据库
Metasploit中的大量模块都使用了数据库接口,结果能够自动存入数据库中。Metasploit提供了db_nmap命令,它能够将Nmap扫描结果直接存入数据库中,此外还提供db_import命令,支持多达近20种扫描器扫描结果的导入。
db_nmap:将 namp 扫描结果直接存入数据库
db_import:将扫描器的扫描结果进行导入
msf > db_status
[*] postgresql selected, no connection
连接数据库:
root@attacker:~# systemctl start postgresql.service
msf > db_status
[*] postgresql connected to msf
- db_nmap:是 nmap 的一个封装,不同的是其将结果自动输入到数据库中
msf > db_nmap -Pn -sV 10.10.10.0/24
[*] Nmap: Nmap done: 256 IP addresses (6 hosts up) scanned in 411.47 seconds - 也可以将数据库的结果导出为一个文件,并导入到渗透测试数据库中
msf > nmap -Pn -sV -oX dmz 10.10.10.0/24
root@attacker:~# ll dmz
-rw-r–r– 1 root root 18799 Sep 1 10:32 dmz
msf > db_import /root/dmz
[*] Importing ‘Nmap XML’ data
[*] Import: Parsing with ‘Nokogiri v1.8.0’
[*] Importing host 10.10.10.1
[*] Importing host 10.10.10.2
[*] Importing host 10.10.10.129
[*] Importing host 10.10.10.130
[*] Importing host 10.10.10.128
[*] Successfully imported /root/dmz
3、OpenVAS与渗透测试数据库
- 连接 openvas
root@attacker:~# openvas-start
Starting OpenVas Services
msf > openvas_connect admin toor 127.0.0.1 9390 ok
[*] Connecting to OpenVAS instance at 127.0.0.1:9390 with username admin…
/usr/share/metasploit-framework/vendor/bundle/ruby/2.3.0/gems/openvas-omp-0.0.4/lib/openvas-omp.rb:201:in `sendrecv’: Object#timeout is deprecated, use Timeout.timeout instead.
[+] OpenVAS connection successful - 找到想要导入的数据库
msf > openvas_report_list
[+] OpenVAS list of reports
ID Task Name Start Time Stop Time
– ——— ———- ———
07b3eba7-a110-4117-b603-7e50de27759f Oswapbwa 2017-08-30T14:41:15Z 2017-08-31T03:02:28Z
6a0bbe85-3eeb-49e1-8440-32988f6079c8 WIndows 2K3 2017-08-31T01:07:01Z 2017-08-31T01:47:53Z
d7d88501-fe7d-44d3-8b70-566d49758e3a Ubuntu-scan 2017-08-30T14:41:20Z
eac5169e-290e-4be1-9adf-8a401d806fb2 Ubuntu-Scan 2017-08-31T01:12:44Z 2017-08-31T03:30:24Z - 列出报告支持的格式
msf > openvas_format_list
[+] OpenVAS list of report formats
ID Name Extension Summary
– —- ——— ——-
5057e5cc-b825-11e4-9d0e-28d24461215b Anonymous XML xml Anonymous version of the raw XML report
50c9950a-f326-11e4-800c-28d24461215b Verinice ITG vna Greenbone Verinice ITG Report, v1.0.1.
5ceff8ba-1f62-11e1-ab9f-406186ea4fc5 CPE csv Common Product Enumeration CSV table.
6c248850-1f62-11e1-b082-406186ea4fc5 HTML html Single page HTML report.
77bd6c4a-1f62-11e1-abf0-406186ea4fc5 ITG csv German “IT-Grundschutz-Kataloge” report.
9087b18c-626c-11e3-8892-406186ea4fc5 CSV Hosts csv CSV host summary.
910200ca-dc05-11e1-954f-406186ea4fc5 ARF xml Asset Reporting Format v1.0.0.
9ca6fe72-1f62-11e1-9e7c-406186ea4fc5 NBE nbe Legacy OpenVAS report.
9e5e5deb-879e-4ecc-8be6-a71cd0875cdd Topology SVG svg Network topology SVG image.
a3810a62-1f62-11e1-9219-406186ea4fc5 TXT txt Plain text report.
a684c02c-b531-11e1-bdc2-406186ea4fc5 LaTeX tex LaTeX source file.
a994b278-1f62-11e1-96ac-406186ea4fc5 XML xml Raw XML report.
c15ad349-bd8d-457a-880a-c7056532ee15 Verinice ISM vna Greenbone Verinice ISM Report, v3.0.0.
c1645568-627a-11e3-a660-406186ea4fc5 CSV Results csv CSV result list.
c402cc3e-b531-11e1-9163-406186ea4fc5 PDF pdf Portable Document Format report. - 导入数据库(将 opwaspbwa 扫描报告的 nbe 格式导入)
msf > openvas_report_import 07b3eba7-a110-4117-b603-7e50de27759f 9ca6fe72-1f62-11e1-9e7c-406186ea4fc5
[*] Importing report to database. - 导入成功后,使用 vulns 查看导入的漏洞信息
msf > vulns
[*] Time: 2017-09-01 14:51:32 UTC Vuln: host=10.10.10.129 name=ICMP Timestamp Detection refs=CVE-1999-0524
4、共享渗透测试信息数据库
其次是支持网络共享。Metasploit v4支持通过MSF RPC服务共享数据,也支持通过网络数据库共享数据。使用共享的数据库可以保证在渗透测试过程中每个小组成员使用的Metasploit数据是实时同步的。
在Metasploit中,可以使用两种方法共享渗透测试数据库
-让多台运行 Metasploit 的计算机连接到同一个网络数据库
-使用 MSF RPC服务
-让多台运行 Metasploit 的计算机连接到同一个网络数据库
1. 查看 postgres 进程的运行情况
root@gate:~# netstat -tulnp | grep “postgres”
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 4907/postgres
tcp6 0 0 :::5432 :::* LISTEN 4907/postgres
2. 修改数据库监听地址
root@attacker:~# vim /etc/postgresql/9.6/main/postgresql.conf
listen_addresses = ‘0.0.0.0’ #59行
password_encryption = on #88行
3. pg_hba.conf是客户端认证配置文件,定义如何认证客户端
root@attacker:~# vim /etc/postgresql/9.6/main/pg_hba.conf
host all all 0.0.0.0/24 md5 #93行
4. 重启 postgres 数据库服务
root@attacker:~# systemctl restart postgresql.service
5. 再次查看 postgresql 服务运行是否正常
root@attacker:~# netstat -tulnp |grep “postgres”
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 7564/postgres
6. 查看 msf 中 postgres 数据库的信息
root@attacker:~# vim /usr/share/metasploit-framework/config/database.yml
development: &pgsql
adapter: postgresql
database: msf
username: msf
password: admin
host: localhost
port: 5432
pool: 200
timeout: 5
7. 关于数据库的信息如下:
postgres 地址:10.10.10.128
postgres 端口:5432
postgres 用户:msf
postgres 口令:admin
postgresql 数据库:msf
8. 在另一台计算机启动 msf 终端
msf > db_disconnect
msf > db_status
[*] postgresql selected, no connection
msf > db_connect msf:admin@10.10.10.128:5432/msf
[*] Rebuilding the module cache in the background…
msf > db_status
[*] postgresql connected to msf
9. 测试连接是否正常
msf > hosts
Hosts
=====
address mac name os_name os_flavor os_sp purpose info comments
------- --- ---- ------- --------- ----- ------- ---- --------
10.10.10.1 00:50:56:c0:00:08 Windows Vista client
10.10.10.2 00:50:56:f0:84:fe Unknown device
10.10.10.128 attacker.dvssc.com Unknown device
10.10.10.129 00:0c:29:19:70:bf www.dvssc.com Unknown device
10.10.10.130 00:0c:29:db:51:d2 service.dvssc.com Windows XP client
10.10.10.133 Linux 3.X server
10.10.10.254 00:0c:29:19:70:bf gate.dvssc.com Linux 2.6.X server
-使用 MSF RPC服务
1. 首先启动新的 msf rpc 服务,-P指定连接所需要的口令,-U指定连接所需要的用户名,-a绑定网络地址,默认127.0.0.1
root@attacker:~# msfrpcd -P admin -U msf -a 0.0.0.0
[[*] MSGRPC starting on 0.0.0.0:55553 (SSL):Msg…
[*] MSGRPC backgrounding at 2017-09-06 21:38:09 -0400…
root@attacker:~# netstat -tulnp| grep msfrpcd
tcp 0 0 0.0.0.0:55553 0.0.0.0:* LISTEN 1794/msfrpcd
2. 在另一台安装 msf4(版本匹配)的计算机上启动 MSF GUI(最新版是armitage)
root@attacker:~# armitage #会显示登录框
Host 10.10.10.128
Port 55553
User msf
Pass admin
3. 这个登录框会连接到之前新建的 msfprcd 服务上,单击 Server,之前 10.10.10.128 主机上的渗透测试数据都在这里显示出来。
msfprcd 不仅可以共享渗透测试数据库,还可以共享所有的 msf 模块和攻击载荷