Metasploit
-
又名MSF框架技术,是一个开源工具,方便渗透测试,由Rudy程序语言编写的模板化框架,由很好的扩展性
-
Auxiliaries(辅助模块)
负责执行扫描,嗅探,指纹识别等相关功能
-
Exploit(漏洞利用模块)
利用系统,应用,或服务中的安全漏洞进行攻击,每个漏洞都有相应的攻击代码
-
Payload(攻击载荷模块)
是目标系统在被渗透攻击后完成实际攻击功能的代码
-
Post(后期渗透模块)
在取得目标权限远程控制之后,进行一系列后渗透攻击
-
Encoders(编码工具模块)
负责面纱,防止被杀毒软件,防火墙,IDS及类似的安全软件检测出来
基础使用
- 初始化并使用数据库
msfdb
- 开启msf
msfconsole
- 查看数据库状态
db_status
- 可以使用kage打开界面化
- help查看帮助
- exit 退出
控制台常用命令
-
show展示
-
seach
-
use(使用)、info(查看信息)、back(回退)
- show options 查看模块配置
重点关注required,有就是需要设置的
-
set(设定值)
-
exploit(运行)
- jobs(查看当前工作)
- kill(停止进程)
扫描模块
arp扫描
search
use
set
exploit
udp扫描
tcp port扫描
smb版本探测
利用exp模块
永恒之蓝演示
search
use
exploit
paylaod
msfvenom
构造payload,生成后门木马的,可直接使用无需启动msf
常用参数
- -l 查看可用模块
-
-p 生成payload
看视频发现,他的msfvenom居然可以自动补全,于是就去搜了一下,搞定它!链接
一般格式
msfvenom -p +系统/*
一般会使用meterpreter的
bind正向,reverse反向,一般用tcp协议
- -f 指定输出格式
- -e 指定编码
- -i 指定编码次数
演示
先看看配置
输入上面的端口,然后加密,加密次数(不要超过20次)输出文件
windows 一般生成exe文件
linux 一般时elf文件(使用的脚本也要将windows改为linux)
先生成一个文件
打开msf
使用监听模块,查看配置
更换payload,要和刚刚生成的所用的一致,不然会报错
监听地址和端口也要一样
然后开始跑,把1.exe扔到对应windows机器里执行
可以看到成功执行,并且进入meterpreter
Meterpreter
后渗透工具
常用命令
help
可查看操作
-
使用
background
可退回msfsessions -l
查看会话session -i
回到指定会话
-
pwd
查看目标当前目录lpwd
本地目录
-
cd
可切换目标目录lcd
可切换本地目录 -
ls
列出目标文件lls
-
clearev
清除记录开始
执行后
-
download + 目标文件
下载文件到主机 -
upload +文件
上传到默认路径,也可以跟一个路径 -
execute
目标机器执行命令,需要参数
一般使用-f使用文件配合-H隐藏进程
ps
列出目标进程
-
getuid
查看当前用户身份
-
getprivs
查看用户权限
-
migrate +进程号
进程迁移可获得更高权限,隐藏进程
-
getpid
查看当前进程号 -
shell
进入目标终端,exit
退出 -
idletime
查看目标主机空闲时间
sysinfo
-
kill+pid
杀死进程 -
shutdown,reboot
-
netstat
查看目标网络
ipconfig
查看ip
getsystem
尝试提权
当前是system权限,先换一个权限,用migrate
切换后
成功了
常用模块,信息收集
run+tap键
查看可用模块
multi表示通用,osx表示苹果
-
killav 杀死杀软
-
hashdump 导出目标机密码
-
post/windows/wlan/wlan_profile wifi密码
-
vnc 实时屏幕监控
-
webcam 开启摄像头
-
post/windows/gather/checkvm 检测是否为虚拟机
-
post/windows/gather/enum_computers 查看域内主机
-
post/windows/manage/enable_rdp 开启3389,前提是有权限
-
token 获取
加载incognito模块,list_tokens -u读取
-
切换token令牌
impersonate_token + token 注意双斜杠
-
mimikatz
Armitage
前端可视化
msf更新
- apt-get install metasploit-framework