MSF漏洞
准备
介绍
Metasploit是一款开源安全漏洞检测工具,附带数百个已知的软件漏洞,并保持频繁更新。
Metasploit就是一个漏洞框架。它的全称叫做The Metasploit Framework,简称叫做MSF。Metasploit作为全球最受欢迎的工具,不仅仅是因为它的方便性和强大性,更重要的是它的框架。它允许使用者开发自己的漏洞脚本,从而进行测试。
模块
渗透攻击(Exploit)
攻击载荷(payload)
Shellcode
模块(Module)
监听器(Listener)
启动MSF
进入kali找到metasploit framework
- 输入msfconsole
启动成功
输入help获取帮助
更新
先获取root权限
输入命令sudo su,随后输入kali密码即可
添加更新源
进入etc/apt/目录
打开sources.list需要使用root权限执行
cd /etc/apt
ls
之后看到有一个source.list文件
vim命令编辑这个文件
添加镜像源
- 这里的镜像源可以上网查询,我就不复制啦。
安装升级msf
apt-get install matasploit-framework
目录结构解读MSF基本命令
进入 msf目录。我的在/usr/share/metasploit-framework/
查看全部文件
modules
先查看modules目录下有什么
auxiliary是辅助模块,辅助做渗透
encoders编码器模块,对payloads进行编码
evasion创建反杀毒软件的木马
exploits漏洞利用模块。攻击模块,实施精准打击
nops空指令模块
payloads漏洞载荷模块,通常作用是为渗透测试者打开在目标系统上的控制会话连接
post存放一些渗透成功之后的向靶机发送一些功能指令
plugins
字面意思就是插件。这里面存放一些集成了第三方的插件,如sqlmap、nessus等
script
一些攻击能用到的脚本
data
msf攻击过程中使用到的一些文件
shell
ruby脚本
config
一些配置文件
查看辅助模块
search auxiliary
查看攻击模块
show exploits
基本的常用命令
exit退出
msfconsole,启动
一、msfconsole
? 帮助菜单
back 从当前环境返回
banner 显示一个MSF banner
cd 切换目录
color 颜色转换
connect 连接一个主机
exit 退出MSF
help 帮助菜单
info 显示一个或多个模块的信息
irb 进入irb脚本模式
jobs 显示和管理作业
kill 杀死一个作业
load 加载一个插件
loadpath 在一个路径搜索并加载模块
quit 退出MSF
resource 运行存储在一个文件中的命令
route 查看一个会话的路由信息
save 保存动作
search 搜索模块名和描述
set 给一个变量赋值
setg 把一个值赋给全局变量
show 显示所给类型的模块,或所有模块
sleep 在限定的秒数内什么也不做
unload 卸载一个模块
unset 解除一个或多个变量
unsetg 解除一个或多个全局变量
use 通过名称选择一个模块
version 显示MSF和控制台库版本号
二、database
db_add_host 添加一个或多个主机到数据库
db_add_note 添加一个注释到主机
db_add_port 添加一个端口到主机
db_connect 连接一个存在的数据库
db_create 创建一个新的数据库实例
db_del_host 从数据库删除一个或多个主机
db_del_port 从数据库删除一个端口
db_destroy 删除一个存在的数据库
db_disconnect 断开与当前数据库实例的连接
db_driver 指定一个数据库驱动
db_hosts 列出数据库中的所有主机
db_nmap 执行Nmap并记录输出
db_notes 列出数据库中的所有注释
db_services 列出数据库中的所有服务
db_vulns 列出数据库中的所有漏洞
db_workspace 转换数据库工作区
db_import_ip_list 引入一个IP列表文件
db_import_amap_mlog 引入一个THC-Amap扫描结果文件(-o -m)
db_import_nessus_nbe 引入一个Nessus扫描结果文件(NBE)
db_import_nessus_xml 引入一个Nessus扫描结果文件
db_import_nmap_xml 引入一个Nmap扫描结果文件(-oX)
db_autopwn 自动利用
三、db_autopwn
-h 显示帮助
-t 显示所有匹配的利用模块
-x 选择基于漏洞的模块
-p 选择基于开放端口的模块
-e 运行所有匹配目标的利用程序
-r 用一个反向连接的shell(reverse)
-b 用一个随机端口的绑定shell(bind)
-q 禁用利用程序输出
-l [范围] 只对此范围内的主机进行利用
-X [范围] 永远排除此范围内的主机
-PI [范围] 只对开放这些的端口的主机进行利用
-PX [范围] 永远排除对开放这些端口的主机
-m [范围] 只运行名字与正则表达式匹配的模块
四、Meterpreter
核心命令:
? 帮助菜单
channel 显示动态频道的信息
close 关闭一个频道
exit 终止meterpreter会话
help 帮助菜单
interact 频道交互
irb IRB脚本模式
migrate 转移meterpreter到其他进程
quit 终止meterpreter
read 从频道读数据
run 执行一个meterpreter脚本
use 加载一个或多个扩展
write 向频道写数据
文件系统命令:
cat 读取一个文件内容到屏幕
cd 切换目录
del 删除指定文件
download 下载一个文件或目录
edit 编辑一个文件
getlwd 获取本地工作目录
getwd 切换工作目录
lcd 切换本地工作目录
lpwd 打印本地工作目录
ls 文件列表
mkdir 创建目录
pwd 打印当前工作目录
rm 删除指定文件
rmdir 远程目录
upload 上传一个文件或目录
网络命令:
ipconfig 显示网络接口
portfwd 发送一个本地端口到一个远程服务
route 查看和修改路由表
系统命令:
clearev 清除事件日志
execute 执行一个命令
getpid 取得当前进程ID
getuid 取得服务器运行用户
kill 杀死一个进程
ps 列出进程列表
reboot 重启远程计算机
reg 修改远程注册表
rev2self 在远程机器调用RevertToSelf()
shell 返回一个cmdshell
shutdown 关闭远程系统
sysinfo 取得远程系统的信息
用户接口命令:
enumdesktops 列出所有访问桌面和windows工作站
idletime 远程用户闲置时间
keyscan_dump 转存击键缓存
keyscan_start 开始捕捉击键
keyscan_stop 停止捕捉击键
setdesktop 转移另一个工作站桌面
uictl 用户接口控制
密码数据库命令:
hashdump SAM转储
时间戳命令:
timestomp 修改文件时间戳
MS08_067
原理
本次实验利用的是MS08-067漏洞。攻击者可以利用受害主机默认开放的SMB服务端口445,发送恶意资料到该端口,通过MSRPC接口调用Server服务的一个函数,并破坏程序的栈缓冲区,获得远程代码执行权限,从而完全控制主机。
具体原理如下:MS08-067漏洞是通过MSRPC over SMB通道调用Server服务程序中的NetPathCanonicalize函数时触发的,而NetPathCanonicalize函数在远程访问其他主机时,会调用NetpwPathCanonicalize函数,对远程访问的路径进行规范化,即将路径字符串中的/转换为\并去除相对路径,而在NetPathCanonicalize函数中发生了栈缓冲区内存错误,造成可被利用实施远程代码执行。攻击者精心设计的输入路径,可以在函数去除相对路径时,把路径字符串中的内容复制到路径串之前的地址空间中,达到覆盖函数返回地址,执行任意代码的目的。
实操
用kali做攻击方,windows xp做被攻击方
首先访问xp的ip
kali的ip
ping一下
可以ping通
kali这面也可以
用netstat -an查看xp是否开启了445端口。
看来是开了
下面开始攻击!
启动msf:输入msfconsole
下面开始攻击!
启动msf:输入msfconsole
ms08_067
use MS08_067漏洞
show 看一下相关说明
show options
设置rhost 和 lhost ip
rhost是被攻击的机器
lhost是攻击的机器
show targets 可以选择被攻击的机器的系统,我这里是xp sp2 对应5
选择5输入 输入exploit开始攻击
然后就可以对其进行电脑进行操作
MS10_018
原理
MS10-018漏洞主要危害IE6和IE7,⽽最新的IE8浏览器不受影响。但根据有关统计数字,⽬前国内使⽤IE浏览器的⽤户⽐例超过85%,
影响IE6和IE7浏览器,⿊客可以利⽤⽹上公布的攻击代码进⾏挂马,造成IE允许远程下载⽊马、⿊客后门到⽤户电脑中。由于该漏洞影响范围不断增加,微软公司已经提前发布该漏洞的补丁程序。
而攻击者可以通过该漏洞获取受害主机的控制权。
实操
打开vm上的xp系统。打开自带的IE浏览器。点击help–>About Internet Explorer
可以看到IE版本为6.0,可以作为靶机
查看攻击机和靶机的ip
kali的ip为172.17.0.1
xp的ip为192.168.17.130
互相ping一下
没问题。
search这个漏洞
选用 0 号
show options
我们需要设置的就是lhost ip 和srvhost
给链接起个名字,set uripath ****(这里随便起)
然后攻击
看上图我们知道,我们生成了一个http://192.168.17.128:8080/XI AM *****
的链接。然后用xp点击这个连接
发现什么都没有
此刻在返回kali攻击机就可以发现xp的信息我们已经可以看到了
然后使用session -l 命令查看会话
sessions -i 1 利用第一会话。开启shell,现在就相当于进入了xp系统的cmd命令提示
查看ip
xp系统的
可以看到一模一样
MSF10_087
原理
如果用户打开或预览特制的RTF电子邮件,则最严重的漏洞可能允许远程执行代码。成功利用这些漏洞中的任何一个的攻击者可以获得与本地用户相同的用户权限。与使用管理用户权限进行操作的用户相比,将其帐户配置为在系统上具有较少用户权限的用户受到的影响较小。
低版本的word版本会出现RTF文件漏洞。
攻击范围:
实操
查看kali和xp的ip
kali为192.168.17.128 xp 为192.168.17.130
设置攻击载荷
show options
设置为弹出一个注册表
set CMD regedit.exe
目标机器已经弹出注册表