• Redis被攻击纪实


    一、前言

    声明:本文仅供技术交流使用,严禁采用本文的方法进行任何非法活动。

    上周新来的同事分享Redis的原理和机制,想起2017年的时候测试环境Redis被攻击,最后只能重新安装服务器,今天试验一把利用Redis漏洞进行攻击,只有理解了别人是怎么攻击的,才能更好地进行防范。

    二、被攻击机器环境搭建

    IP: 120.55.95.55OS: Linux CentOS7.6     Redis5.0.9

    1、编译安装Redis

    注:需要安装tcl,并且在编译时指定MALLOC=libc,否则会各种报错。

    2、修改redis.conf

    #bind 127.0.0.1protected-mode nodaemonize yes注:这里以非保护模式启动Redis,Redis4.0以后版本对安全有所加强,默认安装好后不将保护模式去掉,远程是无法连接的。
    

    3、启动redis 

    ./redis-server ../redis.conf

    三、攻击机器环境搭建

    IP:118.178.255.158OS:Red Hat Enterprise7.9 

    1、安装Redis客户端

    2、测试Redis连接是否OK

    redis-cli -h 120.55.95.55

    四、进行攻击

    1、生成本机公钥

    ssh-keygen

    2、将公钥文件写入Redis

    注:第一步将公钥文件公钥内容前后分别加上两个换行,否则上传的公钥无效,第二步将处理后的公钥内容设置到Redis Key为crackit中去。

    3、将公钥写入authorized_keys文件

    注:上面语句用于动态修改Redis数据存放路径及文件名。

    ~/.ssh/authorized_keys内容如下

    注:数据文件中本来key和value是连着的,但我们写入crackit的值时加了两个换行符,这样公钥不会被key干扰,就是有效的。

    4、使用自己的私钥登录被攻击机器

    ssh root@120.55.95.55

    然后你想做什么都可以了。。。。

    五、真实案例

    1、2017年时候测试环境安装的是Redis4.0版本(或者更低,记不太清了),默认安装6379端口可以远程访问,然后被黑了,被人家做为挖矿机,他们太狠了,一定要把我CPU耗尽,搞得别的程序都跑不了(这样别人不就发现了吗,不能控制CPU的占用情况吗?),当时只截取了Redis被注入一段代码。

    2、刚申请的测试机120.55.95.55立马被其他人黑了

    机器Load

    Redis被注入:

    注:忘记截屏了,重启了Redis,那个注入的key找不到了

    信任登录被加了其它公钥

    注:这台机器先放着给他用两天,有空再观察一个情况,今天还要做系统发布。

  • 相关阅读:
    堆--数据流中第K大元素
    一级造价工程师(安装)- 计量笔记 - 第六章第二节自动控制系统
    yolov5-seg(实例分割)的tensorRT部署
    Claude: ChatGPT替代大语言模型
    基于SE-YOLOv5s的绝缘子检测
    UI自动化测试、接口测试等自动化测试
    妙手ERP功能更新:Shopee认领配置中的主货号支持按后缀自动递增、Ozon采集箱支持批量编辑【颜色样本图】、TikTok Shop......
    [CISCN2019 华北赛区 Day1 Web1]Dropbox
    A tour of gRPC:06 - gRPC client straming 客户端流
    【ONLYOFFICE震撼8.1】ONLYOFFICE8.1版本桌面编辑器测评
  • 原文地址:https://blog.csdn.net/2301_76787421/article/details/134294719