如何判断Linux系统是否被黑客入侵?可以用这种方法

恶意软件有时会使用Linux内核进程伪装来隐藏其运行时,让我们研究一下如何使用这种策略来揭露Linux恶意软件。

[[324092]]

Linux内核进程伪装了什么?

在Linux上,内核创建了许多线程来帮助完成系统任务,这些线程可以用于调度,磁盘I / O等。

当您使用标准进程列表命令(例如ps)时,这些线程将显示为带有 [brackets] ,以表示它们是某种线程。 在ps 列表中, 普通进程通常不会显示 [brackets]。方brackets表示该进程没有命令行参数,这通常意味着该进程是作为线程产生的。

例如,以下清单显示了内核线程与正常进程的比较:

  1. ps –auxww 

图1:Linux内核线程与正常进程

它是什么样子的?

Linux恶意软件使用多种技术来隐藏检测程序。

据全球公认的白帽黑客、网络安全专家郭盛华透露:“黑客将使用的一种方法是通过使进程,在ps列表中的名称周围显示[brackets]来模拟内核线程 ,管理员可以轻松地以这种方式忽略恶意进程。”

如果您查看下面的清单,我们已经开始尝试通过看起来像内核线程来隐藏自身。你能看见它吗?

图2:伪装隐藏的Linux内核线程的示例

如何模拟Linux内核线程

现在您知道了伪装的Linux内核线程是什么样子,让我们设置一个测试,以便您可以尝试使用命令行取证来查找它。

我们将使用sleep命令进行仿真,因为您可以在任何系统上执行该命令,而不必担心会引起麻烦:

  1. export PATH=.:$PATH  
  2. cp /bin/sleep /tmp/[kworkerd]  
  3. cd /tmp  
  4. "[kworkerd]" 3600 & 

该出口路集的东西,所以我们可以在不需要把一个运行在本地目录中的文件“./”在它的前面。这使它看起来更合法。

接下来,我们将sleep命令复制到/ tmp,然后以假名[kworkerd]运行它。我们为sleep命令设置了3600秒的值,因此一旦测试结束,它将在一个小时后自动退出。

让我们看一下我们的手工,当执行ps命令时,我们应该看到[kworkerd]正在运行。

  1. ps -auxww 

图3:真正与冒名顶替的Linux内核线程

伪装与进程图伪装的Linux内核线程

我们用来掩盖伪装过程的第一种方法是查看它是否在/ proc / / maps下具有任何内容。

该位置通常是进程显示它们链接到的库以及映射到内存中的位置的位置。对于真正的内核线程,它应该为空。如果您在此位置查找[brackets]中命名的进程, 但该进程 显示任何数据,则它不是真正的内核线程。

我们将使用的基本命令是cat / proc / / maps,其中 是我们正在研究的进程ID。在上面的示例中,我们认为[kworkerd]对于PID 2121似乎可疑,因此我们将对其进行检查:

  1. cat/ proc / 2121 / maps 

图4:使用Linux / proc映射检测内核伪装

如果您在此区域下看到任何内容,并且该过程 周围有 [brackets],则可能是恶意的并试图隐藏。

如果需要,可以运行此命令以快速遍历所有系统PID,并查看哪些带有方括号的名称,但具有映射文件。通常,您在这里什么也看不到。任何显示数据的信息都应进一步调查。

  1. ps auxww | grep \\[ | awk '{print $2}' | xargs -I % sh -c 'echo PID: %; cat /proc/%/maps' 2> /dev/null 

如果发现了什么,此命令将输出以下图像。

图5:查找伪装成脚本的Linux内核

在/ proc / / maps列表中,您将看到一些路径来研究二进制文件在哪里链接到其自身或所使用的库。在上面,我们看到了/ tmp / [kworkerd]路径,这是要调查的高优先级位置。您还可能会看到可疑的库,对隐藏目录的引用等。仔细看看,确保您不会错过任何东西!

伪装加密的伪装Linux内核线程

揭露伪装的Linux内核线程的另一种方法是查看它是否显示与正在运行的进程关联的二进制文件。基本上,您仅使用我们讨论的关于恢复已删除的恶意二进制文件的技术 ,但是请查看是否可以获得SHA1。如果您返回了,那么这是试图隐藏的正常过程,而不是内核线程。真正的内核线程不会链接到启动它们的二进制文件。

如果仅查看/ proc / / exe,则可以快速复制Linux上的进程二进制文件。您可以将此文件复制到新位置,并具有启动该过程的二进制文件的即时快照。您还可以使用此链接获取即时值,以检查已知恶意软件的数据库。真正的内核线程将无法获得此数据,只有冒名顶替者会提供。

在我们的案例中,我们将使用此知识来调查可疑的PID 2121,如下所示:

  1. sha1sum / proc / 2121 / exe 

图6:获得Linux内核伪装攻击的SHA1

让我们恢复二进制并将其复制到某个地方,以便可以离线分析它。使用下面的命令,我们将复制到/ tmp / suspicious_bin。现在,我们拥有自己的副本,以防恶意软件试图自卫地删除自身:

  1. cp / proc / 2121 / exe / tmp / suspicious_bin 

图7:恢复可疑的Linux恶意软件二进制文件

如果要自动搜寻PID并获取冒名顶替者的SHA1 attack,可以运行以下命令:

  1. ps auxww | grep \\[ | awk '{print $2}' | xargs -I % sh -c 'echo PID: %; sha1sum /proc/%/exe' 2> /dev/null 

上面的命令将尝试获取所有带有[花括号]的进程的SHA1 ,任何返回值的可能都是骗子:

图8:伪装Linux内核线程的SHA1的脚本输出

现在,您有两种使用Linux命令行的可靠方法来调查试图伪装成内核线程的可疑进程。看完这篇文章后,你应该知道如何判断Linux系统是否被黑客入侵了吧?

 

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/134175.html<

(0)
运维的头像运维
上一篇2025-03-01 01:03
下一篇 2025-03-01 01:04

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注