-
第
18
章
Metasploit Framework
142.
渗透测试者的困扰
.exe
loit
简介、教材和版本对比
p>
.exe
metasploit framework
是一个框架,渗透测试各个阶段的工具基本都具备,同时有灵活扩展
的功
能。
ruby
语言开发最大的软件就是
metasploit
。
HD More
参与了
shodan
项目。
nessus openvas
扫描出来的漏洞不一定真的存在,
使用
msf<
/p>
验证漏洞。
msf
集成到
kali
,
更新
kali
p>
同时会更新
msf
。
已购买中文第二版。
第一个是集成在
kali
中的版本。基于
web
的免费版在大批量工作时会
有限制。
收费版的报告功能很强大。
loit Framework
和
M
SF
架构
.exe
数据库默认端口
5432
,有异常时
msf
启动会提示数据库连接失败。<
/p>
在不启动数据库情况下命令行输入
ms
fconsole
会提示连接数据库失败。
< br>但是在不启动数据库点击桌面
msf
图标的时候会自动启
动数据库。
架构
-
技术功能模块
.exe
ls /usr/share/metasploit-
framework/modules/exploits/windows/smb/
POC/EXP
是漏洞利用方法代码,可以调用
payloa
d
或者
shellcode
,而没有<
/p>
shellcode/payload
功能。
payload
跟漏洞没有关系,漏洞怎么产生的,怎么
利用的都没有关系。
获得
shell
的代码是
shellcode
,也可以
只执行一条命令。
auxilia
ry
里有包含
DoS
的模块,让目标崩
溃的模块。不包含
payload
功能。
还有
post
模块,后攻击阶段的
模块。
基本使用和控制台命令
.exe
在
msf
下
也可以执行部分系统命令。
help vulns
-q
静默方式启动,
-r
资源文件,
-v
当前版本
connect
是
msf
下的类似于
nc
的工具。
支持代理,支持
ssl
加密。
use 08-067
payload
空间,坏字符。
show payloads
#
适用于当前模块的
payload
show
advanced
show
evsion
show
missing
每一个模块实际上
是
ruby
语言,
rb
后缀名的。可以在当前模块下输入
edit
修改模块。
或者
使用系统命令进行修改。
设置好
参数以后,可以先
check
一下再进行
exploit
。不是所有的模块都有
check
功能。
-
控制台命令
.exe
db_rebuild_cache
建立缓存,提高速度。
db_connect
连接数据库,可以连接不同的用户,连
接其他
ip
的数据库,协同工作的时候使
用。
db_nmap msf
下的
nmap
命令,功能一样,不同的是可以把扫描结果保存到数据
库里。
creds
扫出来的密码信息
vulns
扫出来的漏洞信息
loot
查看
hashdump
,获取到的
hash
值。
设置
/
取消
设置变量
设置
/
取消全局变量
save
保存变量值。下次进入仍然生效。
exploit -j
后台执行侦听
load
插件
load openvas
装载插件
loadpath
指定加载模块目录
resource
msf
内调用
rc
,也可以在系统命令
行调用
rc
msfconsol
-r
kill 0
t
模块
.exe
active exploit
主动模块:攻击者主动发起<
/p>
payload
。
这个模块需要知道目标用户名密码。
被动方式,创建一个网站,诱使客户端访问。
https
保证数据传输安全,并不能提高服务器安全,也不能提高客户端安全
149.
生成
payload
< br>可以编译直接拷贝到目标直接运行。
非必选参数,限制来源连接地址。
p
ayload
上下文:执行
generate
生成
ruby
语言
16
进制内容显示出来。
(当前
payload<
/p>
)
-b
过滤坏字符。
x00
过滤坏字符会使用
encoder
,体积也会变大
。
过滤坏字符太多的话,会出现没有能过滤的
encoder
。
可以加密一次也可以多次,也可以绑定其他
exe
,绑定后不影响原程序运行。
-s
NOP sled
length. -t
默认情况下输出
ruby
语言的
payload
,可以指定其他格式。
虽然根据之前
的操作拿到了目标的
shell
,但是所作的事情比较少。
p>
meterpreter
可以实现强
大的攻
击功能。
reter
基
本
命
令
和
Meterpreter
Python
扩
展
.exe
ms08-067
作为演示。
set payload
windows/meterpreter/reverse_tcp
上传文件,路径
用
分割
<
/p>
进入
meterpreter
提示符。<
/p>
run/bgrun
命令和
post
脚本,关闭
av
,等等很多后攻击阶段工具。
263
个命令,
U
盘插入记录,域环境的话会更多的受影响。
execute -f cmd -i -H
#-f
指定程序
-i
交互式
-H
隐藏
getsystem
获取
syste
m
账户权限
getprivs
查看权限
getproxy
获取代理设置
getpid
获取进程
id
ps
查看进程列表
migrate
迁移到别的进程
hashdump
获取
hash
idletime <
/p>
目标操作系统空闲时间。
如果长时间没有操作,
< br>可能没有人在操作。
可以操作桌面。
resource
调用
rc
文件。
-i
每隔一秒钟抓拍
< br>执行自定义的
python
脚本,需要解释环境,
load
python
就不需要客户端有解释环境。
-
信息收集
发现和端口扫描
.exe
auxiliary
模块收集目标的模块,
rh
ost
参数编程了
rhosts
,也就
是可以指定多个目标。
具体模块有什么作用,有什么不同,可
以查看
info
信息。
-
信息收集
IPID Idle
扫描和
UDP
p>
扫描
.exe
僵尸扫描,查找僵尸主机。
-
信息收集
密码嗅探和
SNAP
扫描
.exe
msf
还支持被动扫描,数据流分析。
支持在线的抓包分析,支持文件分析。
matesploitable2 snmp
测试
,修改侦听地址。
snmp_login
可以暴力破解
conmm
snmp_enum
可以读取配置。
下面连个模块式
windows
下的。
模块有高级参数,默认只显示一般。
show
advanced
显示高级参数
set verbose yes
-
信息收集
SMB
服务扫描
.exe
windows/linux
下都有
smb
服务,可以进行版本扫描,得到操作系统信息。
winodws
管理员
rid
是
500
,不是根据用户名
来确定身份。
-
信息收集
SSH
服务扫描
.exe
msf
自带的字典文件。
基于公钥的登陆需要证书。
通过某种
方式窃取到密钥的话,某些硬件设备的登录密钥是相同的。
-
信息收集
系统补丁
.exe
options
里有个参数是
session
,需要指定
session
,基于
session
的模块。
在
meterpreter
输入
p>
background
,使用上面模块查系统补丁。
ms08-067
是漏洞编号,
KB2871997
是补丁编号。
运行时需要迁移到其他进程。
查的补
丁编号也要
set
,默认只有
2
个。
-
信息收集
sql
查询
UDP 1434
端口可以判断<
/p>
mssql
,通过连接
1434
端口可以查出来
tcp
端口是多少。
-
信息收集
FTP
.exe
-
弱点扫描
.exe
某些版本的
vnc
安装完以后默认不设置密码。空密码漏洞
search ms12_020_check
,一个是检查模
块,一个是攻击模块。
如果拿到了
账户信息,可以使用
admin
下的模块针对不同的产品不同的
功能做管理。
dir_listing
用来列出目录,
files_dir
用来爆破目录。
wmap
msf
提供的插件。设计思路、命名模仿
sqlmap--
wmap
这个插件是利用
msf
内的
针对
http
扫描的模块。
load wmap
以后多了针对
w
map
的命令。
help
wmap_run -e
开始执行,凡是适用的模块都将被调用。
-
弱点扫描
和客户端渗透
.exe
nexpose
商业版软件,试用期
14
天。
openvas
nessus
导出使用
nbe
格式,
nexpose
使用
xml
格式。
导入之前
/
p>
之后可以查看
hosts
和
services
和
vulns
进行对比
先要启动
nessus
。
nessu_scan_launch
id
服
务端和客户端使用的
payload
要保持一致。
定制
deb
包
先下载
deb
包,比如
freesweep
,默认下载到
/var/cach
e/apt/archives/partial
目录
dpkg -x
解压
deb
包,到
free
目录。
vi control
#
里面添加相关信息。
vi postinst
#
安装后要执行的脚本。
-
客户端渗透
.exe
第一个模块作用是用来生成
pdf<
/p>
文件。
set payload
windows/meterpreter/reverse_tcp
#
优先使用
meterpreter
的
payload
set lhost
run
p>
#
生成包含
payload
的
pdf
文件。把文件拷贝到目标客户端。
msf
下进行侦听,目标打开文件。
获得
shell
以后可以迁移进程,防
止客户端打开文件异常以后关机程序。
第二个模块,也是利用这个漏洞。在线欺骗
同时也要
set payload
use priv
#
提升权限。
post
键盘记录
payload
,键盘记录只是显示了敲击的记录,系统返回的结果不会显示。
exploit/multi/browser/adobe
_flash_hacking_team_uaf
欺骗用户打开网页,跟
过程一样。
ex
ploit/multi/browser/adobe_flash_opaque_background_
uaf
auxiliary/server/browser_autopwn2
p>
模块
所有
msf
里浏览器漏洞模块集成到一块,自动装载
payload
到
msf
。等待客户端连接。
侦听
80
,不同的客户端跳
转到不同的
payload
端口
使用这类模块,可用
payload
就变成
java
目录
< br>
java
meterpreter
和
windows
meterpreter
有一些差别
exploit/multi/browser/java_jre17_jmxbean
3
个
java
模块使用方法一样。
手机客户端。手机上安装时会提示病毒。
生成
vba
脚本代码。
生成
2
部分内容。
第一部分是
vba
代码,
第二部分十六进制的
payload
。
建立的
word
文件拷贝到目标打
开。
-
-
-
-
-
-
-
-
-
上一篇:H3C交换机基础知识配置命令
下一篇:电信术语词典