最新公告
  • 欢迎您光临悠哉网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • 如何判断Linux系统是否被黑客入侵?可以用这种方法


    即将开播:4月29日,民生银行郭庆谈商业银行金融科技赋能的探索与实践

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

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

    Linux内核进程伪装了什么?

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

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

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

    1. ps –auxww 

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

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

    它是什么样子的?

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

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

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

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

    图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 

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

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

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

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

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

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

    1. cat/ proc / 2121 / maps 

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

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

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

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

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

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

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

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

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

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

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

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

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

    1. sha1sum / proc / 2121 / exe 

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

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

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

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

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

    图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 ,任何返回值的可能都是骗子:

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

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

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

    1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
    2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
    3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
    4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
    5. 如有链接无法下载、失效或广告,请联系管理员处理!
    6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
    7. 如遇到加密压缩包,默认解压密码为"www.yoozai.net",如遇到无法解压的请联系管理员!
    悠哉网 » 如何判断Linux系统是否被黑客入侵?可以用这种方法

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    悠哉网 WWW.YOOZAI.NET
    悠哉网,用户消费首选的网站,喜欢你就悠哉一下。

    发表评论

    • 1072会员总数(位)
    • 40643资源总数(个)
    • 0本周发布(个)
    • 0 今日发布(个)
    • 487稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情