渗透测试基础 - - - Metasploit基础
一,什么是MSF
The Metasploit Framework 的简称。 MSF 高度模块化,即框架由多个 module 组 成,是全球最受欢迎的渗透测试工具之一 是一款开源安全漏洞利用和测试工具,集成了各种平台上常见的溢出漏洞和流行的 shellcode ,并持续保持更新。 metasploit 涵盖了渗透测试全过程,可以在这个框架下利用现有的 Payload 进行一系列的渗透测试
二,MSF框架机构
Kali-metasploit目录路径
/usr/share/metasploit-framework
三,MSF配置数据库
1.开启数据库
service postgresql start
2.初始化数据库
msfdb init
数据库配置:
用户名:msf
创建数据库:msf
创建数据库: msf_test
创建配置文件: /usr/share/metasploit-framework/config/database.yml
msfconsole
Msfconsole 是 Metasploit 框架用户接口,我们能通过 Msfconsole 接口使用
Metasploit 中所有模块
启动 msfconsole 时,MSF会使用创建的 msf 用户自动登录到 msf 数据库
输入banner例如
4.查看数据库
msf6 > db_status
连接到其他数据库
msf5 > db_connect 用户名:口令@服务器地址:端口/数据库名称
四,内网主机发现
dp-name该命令是 Nmap 的一个封装,与 Nmap 使用方法一样,其执行结果会自动输入到数据库当中
mdf5 > db_nmap -Pn -sV 10.10.10.0/24
以将Nmap扫描结果导出为一个输出文件,而且要导入渗透测试数据库中,只要在Nmap命令中加入-oX参数
nmap -Pn -sV -oX dmz 10.10.10.0/24
生成文件命令
msf5 > db_import /root/dmz
五,MSF模块
auxiliary
1.模块搜索
search aux /scanner/discovery
2.模块使用
use auxiliary/scanner/discovery/arp_sweep 使用模块
set RHOSTS 10.10.10.0/24 选择目标主机
set THREADS 50 开启线程
run 开启扫描
六,MSF服务扫描
1.什么是msf服务扫描
确定开放端口后,对相应端口上所运行的服务信息进行挖掘
在辅助模块中
[service_name]_version 和 [service_name]_login 命名
[service_name]_version :可用于遍历网络中包含了某种服务的主机,并进
一步确定服务的版本
[service_name]_login :可对某种服务进行口令探测攻击
查探search _version //所有可用的服务探测模块
search _login //查看所有服务登录口令探测模块
2.Telnet服务扫描
search scanner/telnet
auxiliary/scanner/telnet/telnet_login //telent登录
use auxiliary/scanner/telnet/telnet_version
set RHOSTS xxxx/24
set THREADS 100
run/exploit
3. SSH服务扫描
ssh登录auxiliary/scanner/ssh/ssh_login
ssh公共密钥认证登录auxiliary/scanner/ssh/ssh_login_pubkey
auxiliary/scanner/ssh/ssh_version
扫描ssh版本
模块使用
use auxiliary/scanner/ssh/ssh_version
set RHOSTS 10.10.10.1/24
set THREADS 100
run
4.Oracle数据库扫描
模块利用 方法同上
msf6 > search scanner/oracle
use auxiliary/scanner/oracle/tnslsnr_version
set RHOSTS xx.xx.xx.xx/24
set THREADS 50
run
5.SMB服务扫描
SMB枚举
auxiliary/scanner/smb/smb_enumusers
返回DCERPC信息
auxiliary/scanner/smb/pipe_dcerpc_auditor
扫描SMB2协议
auxiliary/scanner/smb/smb2
扫描smb共享文件
auxiliary/scanner/smb/smb_enumshares
枚举系统上的用户
auxiliary/scanner/smb/smb_enumusers
SMB登录
auxiliary/scanner/smb/smb_login
扫描组的用户
auxiliary/scanner/smb/smb_lookupsid
扫描系统版本
auxiliary/scanner/smb/smb_version
模块利用
use auxiliary/scanner/smb/smb_version
show options
set RHOSTS 192.168.1.111
run
db_hosts –c address,os_flavor
6.MSSQL服务扫描
MSSQL登陆工具
scanner/mssql/mssql_login
测试MSSQL的存在和信息
scanner/mssql/mssql_ping
模块利用
msf> use auxiliary/scanner/mssql/mssql_ping
show options
set RHOSTS 192.168.1.0/24
set THREADS 255
run
7.FTP扫描
ftp版本扫描
scanner/ftp/ftp_version
ftp匿名登录扫描
scanner/ftp/anonymous
模块利用
use auxiliary/scanner/ftp/ftp_version
show options
set RHOSTS 192.168.1.0/24
set THREADS 255
run
8.SMTP扫描
smtp 枚举
auxiliary/scanner/smtp/smtp_enum
扫描 smtp 版本
auxiliary/scanner/smtp/smtp_version
9.SNMP扫描
模块利用
msf> use auxiliary/scanner/snmp/snmp_login
set RHOSTS 192.168.1.0/24
set THREADS 50
run
10.MSF端口扫描
模块搜索
auxiliary/scanner/protscan/ack
// 通过 ACK 扫描的方式对防火墙上未被屏蔽的端口进行探测
auxiliary/scanner/protscan/ftpbounce
// 通过 FTP bounce 攻击的原理对 TCP 服务进行枚举,一些新的 FTP 服务器软件能很好的防范此攻击,但在旧的系统上仍可以被利用
auxiliary/scanner/protscan/syn
//使用发送 TCP SYN 标志的方式探测开放端口
auxiliary/scanner/protscan/tcp
// 通过一次完整的 TCP 连接来判断端口是否开放 最准确但是最慢
auxiliary/scanner/protscan/xmas
// 一种更为隐秘的扫描方式,通过发送 FIN , PSH , URG 标志,能够躲避一些高级的TCP标记检测器的过滤
模块利用
use auxiliary/scanner/protscan/syn
set RHOSTS 10.10.10.10
set THREADS 20
run
11.wmap
Web应用辅助扫描,漏洞查找等模块基本都在 modules/auxiliary/ 下, Metasploit内置了wmap WEB扫描器 要先创建一个数据库用来存放扫描数据,初始化wmap
msf > wmap_sites -a http://202.112.50.74 // 添加要扫描的网站
msf > wmap_sites -l
msf > wmap_targets -t http://202.112.20.74 // 把添加的网站作为扫描
目标
msf > wmap_run -t // 查看那些模块将在扫描中使用
msf > wmap_run -e // 开始扫描
msf > vulns // 查看漏洞信息
- 点赞
- 收藏
- 关注作者
评论(0)