服务器被黑,安装Linux RootKit木马

前言

疫情还没有结束,放假只能猫家里继续分析和研究最新的攻击技术和样本了,正好前段时间群里有人说服务器被黑,然后扔了个样本在群里,今天咱就拿这个样本开刀,给大家研究一下这个样本究竟是个啥,顺便也给大家分享一些关于Linux Rootkit恶意软件方面的相关知识点吧,全球高端的黑客组织都在不断进步,做安全更应该努力学习,走在黑客前面,走在客户前面,加强自身安全能力的提升才能应对未来各种最新的安全威胁事件,才能帮助客户更好的解决安全问题。

这个样本是一个Linux Rootkit类型的恶意样本,根据国外安全厂商报道最近半年Linux恶意软件呈指数级增长,在2022年上半年记录的恶意软件样本在2022年1月至2022年6月期间增加了近650%,随着云计算的发展,针对Linux的恶意软件攻击样本在未来应该会越来越多,然而尽管 Linux 恶意软件样本大量增加,但 Windows 仍是受恶意软件感染最多的操作系统。

分析

1.通过逆向分析,发现该恶意样本是一个Linux RootKit木马程序,样本参考了2018年H2HC(Hackers 2 Hackers Conference)会议上Matveychikov & f0rb1dd3分享的Linux RootKit高级技术,加载执行Linux Rootkit木马,如下所示:

2.解密Linux RootKit木马数据过程,如下所示:

3.Linux RootKit木马数据,如下所示:

4.笔者自己编写了一个简单的解密程序,用于解密上面的Linux RootKit木马数据,如下所示:

5.解密Linux RootKit木马数据之后,如下所示:

6.通过逆向分析解密出来的Linux RootKit木马,发现是Reptile木马源代码修改的,如下所示:

7.Reptile是一款开源的Linux RootKit木马程序,Linux RootKit木马功能非常强大,如下所示:

可以隐藏文件、目录、自身、网络连接、反弹shell木马等,Linux RootKit木马运行之后,如下所示:

该Linux RootKit木马可以通过Volatility内存检测的方法发现木马后门模块,如下所示:

笔者曾研究过多个基于Linux平台的RootKit家族样本,说不定你的服务器上就被安装了这些RootKit家族样本,RootKit包含应用层和驱动层,应用层主要使用的技术就是二次打包修改、替换常用二进制文件、LD_PRELOAD环境变量写入/etc/ld.so/preload、捆绑合并等方式,驱动层主要使用的syscall hook以及最近两三年比较流行的通过eBPF技术来实现文件,进程、网络的隐藏等。

总结

笔者通过研究的一些高端样本可以预测在未来基于底层RootKit或者高级隐藏技术的恶意软件可能会增多,像此前TeamTNT黑客组织也曾使用Linux RootKit的Diamorphine木马来达到隐藏目的,同时一些勒索病毒也开始使用底层驱动程序进行辅助攻击,未来几年不管是Windows平台,还是Linux平台,安全对抗都会持续升级,可能会出现更多使用高级技术或者底层技术的恶意软件家族,包含更高级的混淆加密反调试反虚拟机等免杀技术,更底层的木马隐藏技术,会成为高级威胁攻击的主流攻击技术。

最近几年随着云计算的发展,云原生安全似乎又成为了一个热点,同时eBPF技术的成熟与发展,又出现了一批基于eBPF技术的RootKit攻击技术,一些开源代码也被公布在了GitHub平台上面bad-bpf、ebpfkit、boopkit、TripleCross等eBPF RootKit项目未来可能也会成为黑客利用的工具,被应用到各种针对Linux平台的恶意软件当中,目前eBPF的RootKit对环境要求比较高,暂时还不太流行,不过也已经发现了一些eBPF RootKit的恶意软件家族Symbiote,还有像此前NSA方程式组织开发的顶级后门Bvp47也使用了BPF隐藏信道,随着eBPF技术的进一步发展与成熟,基于eBPF的后门可能会越来越多,目前已经有一些比较简单的检测eBPF木马的方法,例如使用bpf-hookdetect、Hades、ebpfkit-monitor、bpftool等工具进行简单的猎捕工作,同时可以使用IDA\Ghidra的eBPF逆向分析插件、readelf、llvm-objdump等工具进行相关的逆向分析工作,安全就是这样,有攻必有防,我们通过不断研究最新的攻击技术,攻击样本,然后找到相应的检测和防御技术,黑客组织为了获取更大的利益,也在不断研究各种最新的安全技术,然后开发出更高级更隐蔽的恶意软件攻击样本,安全研究人员只有不断的学习与进步,与时俱进,才能更好的发现和对应这些高端黑客组织的攻击活动。

安全技术发展已经有几十年了,国内外各种安全大会上基本上每年都会有一些新的安全技术分享,同时也会有一些新的安全概念被提出来,其实万变不离其宗,安全的核心永远是对抗,有攻就一定有防,就像矛与盾一样,最近几年比较热门的云原生安全技术,笔者通过深度研究一些云原生安全攻击事件案例之后,发现其实云原生安全技术底层对抗逻辑并没有太多的改变,只是增加了一些上层的东西,上层的东西对抗其实是比较简单的,解决起来并没有太大的技术难题,更难的对抗还是在底层技术的对抗,安全研究人员需要去更多的关注和解决云原生安全的底层技术,而不要总是停留在表层技术的研究,黑客都在不断的进步,如果安全研究人员不持续保持进步,研究更高级更底层的安全技术,可能根本无法及时发现和对应那些高端黑客组织的攻击活动,安全的路还很长,需要持续不断的努力,活到老,学到老。

笔者一直从事与恶意软件威胁情报等相关安全分析与研究工作,包含挖矿、勒索、远控后门、僵尸网络、加载器、APT攻击样本、CS木马、Rootkit后门木马等,涉及到多种不同的平台(Windows/Linux/Mac/Android/iOS),笔者做安全研究的兴趣就是喜欢研究一些最新的恶意软件家族样本,跟踪国内外报道的各种安全事件中涉及到的攻击样本等,通过详细分析各种安全攻击事件中涉及的样本、漏洞和攻击技巧等,可以了解全球黑客组织最新的攻击技术以及攻击活动趋势等,同时还可以推判出他们大概准备做什么,发起哪些攻击活动,以及客户可能会受到什么危害等,通过研究全球的黑客组织以及攻击活动,做到知已知彼,各位读者朋友如果有遇到什么新的恶意软件家族样本或最新的家族变种都可以私信发给笔者,感谢给笔者提供样本的朋友们!

做安全,不忘初心,与时俱进,方得始终!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/676841.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《MySQL 简易速速上手小册》第10章:未来趋势和进阶资源(2024 最新版)

文章目录 10.1 MySQL 在云计算和容器化中的应用10.1.1 基础知识10.1.2 重点案例:使用 Python 部署 MySQL 到 Kubernetes10.1.3 拓展案例 1:在 AWS RDS 上部署 MySQL 实例10.1.4 拓展案例 2:使用 Docker 部署 MySQL 10.2 MySQL 和 NoSQL 的整合…

基于图像掩膜和深度学习的花生豆分拣(附源码)

目录 项目介绍 图像分类网络构建 处理花生豆图片完成预测 项目介绍 这是一个使用图像掩膜技术和深度学习技术实现的一个花生豆分拣系统 我们有大量的花生豆图片,并以及打好了标签,可以看一下目录结构和几张具体的图片 同时我们也有几张大的图片&…

基于片段的3D分子生成扩散模型 - AutoFragDiff 评测

AutoFragDiff 是一个基于片段的,自回归的,口袋条件下的,3D分子生成扩散模型。 AutoFragDiff方法来源于文章《Autoregressive fragment-based diffusion for pocket-aware ligand design》,由加州大学的Mahdi Ghorbani等人于2023年…

【Java EE初阶十一】文件操作(IO)

1. 认识文件 所谓的文件是一个广义的概念,可以代表很多东西;在操作系统里面,会把很多的硬件设备和软件设备都抽象成“文件”,统一进行管理;但是大部分情况下,我们读到的文件,都是指硬盘的文件&a…

MYSQL笔记:约束条件

MYSQL笔记:约束条件 主键约束 不能为空,值必须是不同的(唯一性) 一个表只能修饰一个主键 PRIMARY KEY自增约束 AUTO_INCREMENT唯一键约束 可以为空 unique非空约束 not null 默认值约束 default 外键约束 foreign key …

CMD常用命令

目录 1.简介 2.基本功能 3.打开方式 4.常用命令 5.练习——通过CMD打开QQ 1.简介 CMD(Command Prompt)是Windows操作系统中的命令行界面工具,它允许用户通过键入文本命令来与操作系统进行交互。CMD提供了一种不依赖图形用户界面的方式来…

详解格式化输入函数scanf

大家好,今天给大家介绍详解格式化输入函数scanf,文章末尾附有分享大家一个资料包,差不多150多G。里面学习内容、面经、项目都比较新也比较全!可进群免费领取。 C语言中常用的输入可以有多种方式,如scanf(),getchar(),g…

centos中docker操作

一、安装docker 确保系统是CentOS 7并且内核版本高于3.10,可以通过uname -r命令查看内核版本。 更新系统软件包到最新版本,可以使用命令yum update -y。 安装必要的软件包,包括yum-utils、device-mapper-persistent-data和lvm2。使用命令yum install -y yum-utils devic…

Mysql制作数据表

一.注意: 1.(Mysql尽量用大写, 2.结尾为‘;’, 3.‘’与“”效果一样, 4.数据表名称显示时定为小写, 5.很多人教的时候喜欢用英文,我觉得麻烦,于是我用中文举例&…

moduleID的使用

整个平台上有很多相同的功能,但是需要不同的内容。例如各个模块自己的首页上有滚动新闻、有友好链接等等。为了公用这些功能,平台引入了moduleID的解决方案。 在前端的配置文件中,配置了模块号: 前端页面请求滚动新闻时&#xff0…

微软AD域替代方案,助力企业摆脱hw期间被攻击的窘境

在红蓝攻防演练(hw行动)中,AD域若被攻击成功,是其中一个扣分最多的一项内容。每年,宁盾都会接到大量AD在hw期间被攻击,甚至是被打穿的企业客户。过去,企业还会借助2FA双因子认证加强OA、Exchang…

ChatGPT高效提问—prompt常见用法(续篇七)

ChatGPT高效提问—prompt常见用法(续篇七) 1.1 零样本、单样本和多样本 ​ ChatGPT拥有令人惊叹的功能和能力,允许用户自由向其提问,无须提供任何具体的示例样本,就可以获得精准的回答。这种特性被称为零样本&#x…

每日一题——LeetCode1417.重新格式化字符串

方法一 个人方法: s里的字符只有小写字母和数字两种情况,我们可以把s里的字母和数字分隔成两个字符串, 比较两个字符串的长度,只有当两个字符串的长度差值的绝对值为1或0才能满足题意。 长度更长的要放在结果字符串的第一位&am…

嵌入式学习之Linux入门篇笔记——18,makefile基本语法(下)

配套视频学习链接:http://【【北京迅为】嵌入式学习之Linux入门篇】 https://www.bilibili.com/video/BV1M7411m7wT/?p4&share_sourcecopy_web&vd_sourcea0ef2c4953d33a9260910aaea45eaec8 1.wildcard 函数 格式:$(wildcard PAT…

SQL如何实现数据表行转列、列转行?

SQL行转列、列转行可以帮助我们更方便地处理数据,生成需要的报表和结果集。本文将介绍在SQL中如何实现数据表地行转列、列转行操作,以及实际应用示例。 这里通过表下面三张表进行举例 SQL创建数据库和数据表 数据表示例数据分别如下: data_…

数据湖的整体思路

湖本质上是一个集中化,中心化的,一体化的存储技术,并且在其之上追求技术架构的统一化,如流批一体,服务分析一体化。 当数据湖成为中心,那么就可以围湖而建“数据服务环”,环上的服务包括了数仓、…

鸿蒙开发(六)布局概述

迄今为止,我还没有正式提到布局的概念。但其实我之前的demo里面,已经默认使用到了一种布局,那就是线性布局(Row、Column),这也是DevEco创建项目默认页面里面默认采用的布局。那么本篇,带着大家一…

微服务介绍、使用 Nacos 实现远程调用以及 OpenFeign 的使用

1 微服务的概念 区别于单体项目 单体项目拆分成微服务项目的目标:高内聚、低耦合 拆分思路 纵向拆分:根据功能模块 横向拆分:抽取可复用模块 2 微服务拆分——远程调用 背景:微服务单一职责,每个服务只有自己的功能…

[PYthon] 字典

如题,这篇博客将带大家来学习Python中的字典~ 那么,是我们想象中的那种字典嘛?接下来跟着可莉去一探究竟吧~ 可莉将这篇文章收录在了:《Python》 可莉推荐的优质博主主页:Keve ’ s blog Python 中的字典(D…

-转换流-

它是字节流和字符流之间转换的桥梁 转换流本身其实是字符流; 转换流的位置: 分为两个:字符转换输入流:InputStreamReader将InputStream转换为Reader字符转换输出流:OutputStreamWriter将Writer转换为OutputStream 作用…