应急响应-挖矿木马-典型处置案例

2024-02-22 15:52

本文主要是介绍应急响应-挖矿木马-典型处置案例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Windows服务器感染挖矿木马

事件背景
  • 2018年11月,某集团内部服务器感染病毒。根据该集团提供的信息,VMwareNSX监控到大量的的异常445流量,服务器大量资源被占用,初步判断为感染挖矿木马。
事件处置
系统分析
  • 现场对几台服务器进行排查,发现确实存在大量异常445连接,进程PID为56156,如图所示。
  • 通过网络连接查看其相应的进程为svchost.exe系统进程,得知病毒是通过注入系统进程来运行的,如图所示。
  • 使用病毒分析工具进行进程分析,发现病毒文件为 C:\Windows\System32\snmpstorsrv.dll,如图所示。
  • 找到病毒样本文件后对其进行分析,发现此病毒为Nrs Miner挖矿蠕虫病毒,传播方法为利用“永恒之蓝”漏洞在网络内传播,传播端口为445端口。
  • 部分主机由于可连接外服务器,因此病毒会生成TrustedHostex.exe恶意文件,如图所示。‘
  • 该文件会对外部服务器发起请求,进行挖矿,如图所示。
  • 应急响应工程师与系统运维人员沟通后,采用手工查杀的方法对服务器进行病毒查杀。
日志分析
  • 应急响应工程师对收集的日志信息进行整理分析,发现最早被感染的主机为堡垒机应用服务器10.1.201.195,被感染时间为2018/11/16 17:48:18,如图所示。
  • 根据被感染时间的连续性及源IP的连续性,可疑判断出201段服务器是被同一台主机感染的,如图所示。
  • 通过堡垒机登录10.1.201.195服务器,收集服务器所有的日志信息,上传至奇安信观星实验室应急响应平台进行分析。对最近文件及浏览器浏览记录、USB使用记录、系统日志等信息进行排查,未发现异常文件或操作,因此排除人为投毒的可能性。
  • 应急响应工程师与系统运维人员沟通后,发现在病毒传播之前VMwareESX策略失效了,未对445端口进行封堵,导致堡垒机应用服务器可能因其他终端或者物理服务器而感染Nrs挖矿蠕虫,同时造成内网主机大面积感染病毒。
问题总结
  • 根据上述排查信息总结发现,此次内网服务器所感染的病毒为Nrs Miner挖矿蠕虫病毒。病毒传播的方法:利用“永恒之蓝”漏洞进行传播,传播端口为445。通过收集病毒感染的服务器日志信息,发现最早感染的主机为堡垒机应用服务器,感染时间为2018/11/16 17:48:18。通过收集分析堡垒机应用服务器所有日志信息,排查人为投毒的可能性。
事件抑制
  • 隔离问题主机,断开网络连接,尽量关闭外部连接。
  • 将135.139,445端口关闭,非业务端口进行封堵。
  • 将主机密码全部更换为复杂度高的密码。
  • 安装安全补丁,尤其是MS17-010漏洞的。
根除及恢复
  • 终端安全企业级杀毒软件。
  • 使用流量监控设备进行内网流量监控。
  • 出口防火墙封堵挖矿地址和IP地址。
  • 服务器安装“永恒之蓝”补丁。
  • 开启防火墙策略,对135、137、138、139、445端口进行封堵。
  • 及时更改系统用户密码,并使用 LastPass 等密码管理器对相关密码加密存储,避免使用本地明文文本的方法进行存储。系统相关用户杜绝使用弱密码,同时,使用高强度的复杂密码,采用大小写字母、数字、特殊符号混合的组合结构。加强运维人员安全意识,禁止密码重用的情况出现,并定期对密码进行更改。
  • 限制内网主机允许访问的网络及主机范围。有效加强访问控制策略,细化策略粒度,按区域、按业务严格限制各网络区域及服务器之间的访问,采用白名单机制,只允许开放特定的业务必要端口,其他端口一律禁止访问,仅允许管理员访问管理端口,如 FTP、数据库服务、远程桌面等端口。
  • 配置并开启相关关键系统、应用日志,对系统日志进行定期异地归档、备份,避免在发生攻击时,无法对攻击途径、行为进行溯源,加强安全溯源能力。
  • 遵循权限最小化原则,服务器中间件、数据库等相关系统服务使用较低用户权限运行,避免攻击者通过相关服务获取高用户权限,对系统实施进一步攻击,建议更改系统相关服务默认端口,以便防御固定化端口扫描探测、攻击等。
  • 禁止服务器主动发起外部连接请求,对于需要向外部服务器推送共享数据的情况,应使用白名单的方法,在防火墙加入相关策略,对主动连接的 IP 地址范围进行限制,例如,放行反病毒更新服务器、数据库服务器,禁止服务器主动对其他内、外部服务器访问。

Linux服务器感染挖矿木马

事件背景
  • 某公司在流量安全设备上发现存在挖矿木马告警,立即启动应急响应工作,对服务器进行排查,发现恶意入侵行为如下:
    • root用户存在5个用于定时启动挖矿程序的任务计划;
    • 服务器/root/.bashtemp目录存放着多个木马本体及挖矿脚本;
    • 系统日志在24日8时至17时存在日志断层,很可能被攻击者清除;
    • 系统ssh服务于24日16时建立了信任关系,攻击者通过信任关系无需密码就可直接登录服务器。
事件处置
系统分析
netstat-antlp | more
  • 通过检查系统网络连接,发现5个恶意进程,如图所示。
查看系统负载 top
  • 使用top命令,可查看系统负载,发现多个挖矿进程,如图所示。
检查系统临时目录 stat up.txt
  • 检查系统临时目录,发现存在保存用户密码的文本文件,如图所示。
  • 系统ssh服务中存在非法信任关系,通过此信任关系,攻击者无需密码就可登录服务器。
  • root用户中存在多个恶意挖矿任务计划,如图所示,任务计划地址为/var/spool/cron/root/
  • 通过追溯任务计划主体发现在/root/.bashtemp目录中存在着挖矿程序本体及脚本,如图所示。
日志分析
  • 通过分析系统日志发现该服务器ssh服务对外开放,并收到大量外部ssh暴力破解,如图所示。
  • 发现系统日志中存在断层,极有可能是因为攻击者清除日志,如图所示。
事件抑制
  • 定位挖矿木马并查杀。
  • 终端安装杀毒软件。
  • 使用流量监控设备进行内网流量监控。
  • 出口防火墙封堵挖矿地址和IP。
根除及恢复
  • 系统相关用户杜绝使用弱密码,同时,应该使用高强度的复杂密码,采用大小写字母、数字、特殊符号混合的组合结构。加强运维人员安全意识,禁止密码重用的情况出现,并定期对密码进行更改。
  • 禁止服务器主动发起外部连接请求,对应需要向外部服务器推送共享数据的情况,应使用白名单的方法,在出口防火墙加入相关策略,对主动连接的IP地址范围进行限制。
  • 有效加强访问控制策略,细化策略粒度,按区域、按业务严格限制各网络区域及服务器之间的访问,采用白名单机制,只允许开发特定的业务必要端口,其他端口一律禁止访问,仅允许管理员访问管理端口,如FTP、数据库服务、远程桌面等端口。
  • 配置并开启相关关键系统、应用日志、对系统日志进行定期异地归档、备份,避免在发生攻击时,无法对攻击途径、行为进行溯源,加强安全溯源能力。
  • 建议部署全流量监控设备,可及时发现未知攻击流量,以及加强攻击溯源能力,有效防止日志被轮询覆盖或被恶意清除,有效保障服务器沦陷后可进行攻击排查,分析原因。
  • 定期开展系统、应用、网络层面的安全评估、渗透测试、代码审计工作,主动发现目前存在的安全隐患。
  • 加强日常安全巡检制度,定期对系统配置、网络设备配置、安全日志及安全策略落实情况进行检查,常态化信息安全管理工作。

这篇关于应急响应-挖矿木马-典型处置案例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/735747

相关文章

MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固 通俗易懂版)

《MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固通俗易懂版)》本文主要讲解了MySQL中的多表查询,包括子查询、笛卡尔积、自连接、多表查询的实现方法以及多列子查询等,通过实际例子和操... 目录复合查询1. 回顾查询基本操作group by 分组having1. 显示部门号为10的部门名,员

springMVC返回Http响应的实现

《springMVC返回Http响应的实现》本文主要介绍了在SpringBoot中使用@Controller、@ResponseBody和@RestController注解进行HTTP响应返回的方法,... 目录一、返回页面二、@Controller和@ResponseBody与RestController

Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)

《Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)》本文介绍了如何使用Python和Selenium结合ddddocr库实现图片验证码的识别和点击功能,感兴趣的朋友一起看... 目录1.获取图片2.目标识别3.背景坐标识别3.1 ddddocr3.2 打码平台4.坐标点击5.图

使用Navicat工具比对两个数据库所有表结构的差异案例详解

《使用Navicat工具比对两个数据库所有表结构的差异案例详解》:本文主要介绍如何使用Navicat工具对比两个数据库test_old和test_new,并生成相应的DDLSQL语句,以便将te... 目录概要案例一、如图两个数据库test_old和test_new进行比较:二、开始比较总结概要公司存在多

SpringBoot定制JSON响应数据的实现

《SpringBoot定制JSON响应数据的实现》本文主要介绍了SpringBoot定制JSON响应数据的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录前言一、如何使用@jsonView这个注解?二、应用场景三、实战案例注解方式编程方式总结 前言

SpringBoot实现动态插拔的AOP的完整案例

《SpringBoot实现动态插拔的AOP的完整案例》在现代软件开发中,面向切面编程(AOP)是一种非常重要的技术,能够有效实现日志记录、安全控制、性能监控等横切关注点的分离,在传统的AOP实现中,切... 目录引言一、AOP 概述1.1 什么是 AOP1.2 AOP 的典型应用场景1.3 为什么需要动态插

Golang操作DuckDB实战案例分享

《Golang操作DuckDB实战案例分享》DuckDB是一个嵌入式SQL数据库引擎,它与众所周知的SQLite非常相似,但它是为olap风格的工作负载设计的,DuckDB支持各种数据类型和SQL特性... 目录DuckDB的主要优点环境准备初始化表和数据查询单行或多行错误处理和事务完整代码最后总结Duck

Spring MVC如何设置响应

《SpringMVC如何设置响应》本文介绍了如何在Spring框架中设置响应,并通过不同的注解返回静态页面、HTML片段和JSON数据,此外,还讲解了如何设置响应的状态码和Header... 目录1. 返回静态页面1.1 Spring 默认扫描路径1.2 @RestController2. 返回 html2

MySQL不使用子查询的原因及优化案例

《MySQL不使用子查询的原因及优化案例》对于mysql,不推荐使用子查询,效率太差,执行子查询时,MYSQL需要创建临时表,查询完毕后再删除这些临时表,所以,子查询的速度会受到一定的影响,本文给大家... 目录不推荐使用子查询和JOIN的原因解决方案优化案例案例1:查询所有有库存的商品信息案例2:使用EX

使用Python实现批量访问URL并解析XML响应功能

《使用Python实现批量访问URL并解析XML响应功能》在现代Web开发和数据抓取中,批量访问URL并解析响应内容是一个常见的需求,本文将详细介绍如何使用Python实现批量访问URL并解析XML响... 目录引言1. 背景与需求2. 工具方法实现2.1 单URL访问与解析代码实现代码说明2.2 示例调用