使用
输入help 查看
show options 显示他有哪些选项
show payloads 查看库
show exploits 就看以看到不同已知漏洞的利用程序
会显示 exploit 名称 等级(rank) 描述
exploit 命名规则:
操作系统/服务/模块名称
例如:windows/vnc/realvnc_client
等级(rank)代表好用的程度
描述就是对漏洞的简单介绍
查看exploit详细:info 模块名
info exploit/windows/wins/ms04_045_wins
选择使用一个模块
use exploit/windows/vnc/realvnc_client
然后列出模块设置
show options
options中required的是必须设定的选项
列出exploit 的可攻击目标类型:show targets
设置选项:set 选项名 值 (如 set RHOST 192.168.0.1)
设置攻击目标:set TARGET 编号(如set TARGET2)
然后直接回车
会发现current Setting 地址已经更改
设定指定攻击目标
payload 就是shellcode 就是在漏洞利用成
功后所要做的事情
可以使用show payload 来看一下当前的exploit 可以用哪些payload
payloads 命名规则
操作系统/类型/名称 如:windows/shell/bind_tcp
类型主要有:
shell:得到一个shell
DIIinject: 上传DLL并注入到进程
Patchup***:修补漏洞
Upexec:上传并执行一个文件
Meterpreter:高级payload
Vncinject:高级payload vnc 注入
PassiveX:高级payload
Payloadm名称命名规则:
shell_find_tag:在一个已建立的连接上创建一个shell
shell_reverse_tcp:反向连接到攻击者主机并创建一个shell
bind_tcp:监听一个tcp连接
reverse_tcp:反向建立tcp连接
reverse_http:通过HTTP隧道通信并创建一个新用户添加到管理组
add_user:创建一个新用户并添加到管理组
xxx_ipv6_tcp:基于IPv6
xxx_nonx_tcp:非No execute或win7(NX是应用在CPU的一种可以防止缓冲区溢出的技术)
xxx_ord_tcp:有序payLoad
xxx_tcp_allportsL在所有可能的端口
设计payload:set PAYLOAD payload_name
列出选项还是:show options
之后设置选项:set RHOST 192.168.0.1
这样exploit和payload 就设置完毕了,我们就可以对目标主机进行利用了
set PAYLOAD windows/shell/bind_tcp 进行选择漏洞
然后在set RHOST 192.168.0.6进行设置
由于payloads 只不过是汇编指令序列,通常nop在它前面 这可能作为特征用来开发检测这些攻击,因此,payloads 需要被编码并且变化nop用于躲避IDS或IPS检测。MSF提供了一些编码器以及若干NOP生成器来使检测过程变得机器困难