首页 > 数据库 >redis 漏洞复现

redis 漏洞复现

时间:2022-11-30 16:14:06浏览次数:60  
标签:公钥 密码 redis 漏洞 复现 txt ssh

漏洞产生的前提条件

1、redis绑定 在 0.0.0.0:6379,且没有进行添加防火墙规则避免其他非信任来源 ip 访问等相关安全策略,直接暴露在公网;
2、没有设置密码认证(一般为空),可以免密码远程登录redis服务。

环境准备

可参考官网准备redis server
https://redis.io/docs/getting-started/installation/install-redis-from-source/
启动redis,这里用6080端口做实验,默认端口是6379
image

漏洞1,利用公钥认证获取root权限

攻击机可以无密码登录到redis
image
在攻击机中生成ssh公钥和私钥,密码设置为空
image
进到.ssh目录,将生成的公钥保存到test.txt

(echo -e "\n\n";cat id_rsa.pub ; echo -e "\n\n") > test.txt

将保存ssh公钥的test.txt写入到redis中
image
获取redis的备份路径
image
修改redis的备份路径并将公钥写到服务器上
image
image
到这我们已经成功将自己的公钥上传到服务器了,这时我们就可以通过私钥进行ssh登录
image
如登录报错可通过

eval "$(ssh-agent -s)"
ssh-add

漏洞2,利用crontab

利用redis写入文件到周期性计划任务执行
image

定时任务已经在跑了
image

在攻击机上通过nc 监听指定的端口

nc -lvnp 8800

已经正常连接被攻击的机器
image

总结

通过上述实验告诉我们
1、redis要配置密码认证
2、不要用root启动服务
3、可以通过iptables 限制来源等等

标签:公钥,密码,redis,漏洞,复现,txt,ssh
From: https://www.cnblogs.com/aiverhua/p/16938741.html

相关文章

  • Redis这些知识你了解吗?
    Redis非关系型数据库一、关于Redis1.什么是NoSql?NoSQL(NoSQL=NotOnlySQL),意即“不仅仅是SQL”,泛指非关系型的数据库.它们都有些共同的特征:不需要预定义模式:不需要事先......
  • 用redis统计大量用户的登陆情况[只判断是否活跃]
    有这样的一个场景需求:有上亿的用户,要统计这批用户的登陆情况,例如一周连续登陆,连续三天是是否登陆,一周活跃天数等用户存在的挑战数据如何尽可能用小的空间存储如何能快速获......
  • Redis的快照
    redis本地持久化到硬盘有两种方式,一是快照(snapshotting),二是只追加文件(append-onlyfileAOF)快照快照,顾名思义可以理解为拍照一样,把整个内存数据映射到硬盘中,保存一份......
  • redis惊群
    什么是惊群首先,我们使用缓存的主要目的就是为了高并发情况下的高可用,换句话说,在使用了缓存的高并发的系统下,如果缓存突然都消失了,会发生什么?首先数据库的压力必然骤增,接着负......
  • 检测到目标url存在http host头攻击漏洞
      修复建议对Host字段进行检测Nginx,修改ngnix.conf文件,在server中指定一个server_name名单,并添加检测。Apache,修改httpd.conf文件,指定ServerName,并开启UseCanonica......
  • 云小课|云小课教您如何选择Redis实例类型
    阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说)、深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云。更多精彩内容请单击......
  • Redis基础命令
    Redis基础命令目录Redis基础命令Redis数据结构介绍Redis通用命令String类型key的层级结构Hash类型List类型Set类型SortedSet类型Redis数据结构介绍redis是一个key-value......
  • 安询杯web复现
    安询杯babyweb源码:index.php<?php//something in flag.phpclass A{    public $a;    public $b;    public function __wakeup()   ......
  • centos7安装redis
    安装依赖yuminstall-ygccyum-yinstallcentos-release-sclyum-yinstalldevtoolset-9-gccdevtoolset-9-gcc-c++devtoolset-9-binutilssclenabledevtoolse......
  • es,logstash,redis,filebeat
    logstash从redis中拿取数据后会删除reids中的key,就无法在redis中查询到beats输入的值。----filebeat.ymlfilebeat.inputs:-type:tcphost:"0.0.0.0:8000"output.redis:......