0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

排查Linux机器被入侵的11个步骤

马哥Linux运维 来源:未知 作者:胡薇 2018-08-08 14:42 次阅读

随着开源产品的越来越盛行,作为一个Linux运维工程师,能够清晰地鉴别异常机器是否已经被入侵了显得至关重要,个人结合自己的工作经历,整理了几种常见的机器被黑情况供参考。

背景信息:以下情况是在CentOS 6.9的系统中查看的,其它Linux发行版类似。

1.入侵者可能会删除机器的日志信息,可以查看日志信息是否还存在或者是否被清空,相关命令示例:

2.入侵者可能创建一个新的存放用户名及密码文件,可以查看/etc/passwd及/etc/shadow文件,相关命令示例:

3.入侵者可能修改用户名及密码文件,可以查看/etc/passwd及/etc/shadow文件内容进行鉴别,相关命令示例:

4.查看机器最近成功登陆的事件和最后一次不成功的登陆事件,对应日志“/var/log/lastlog”,相关命令示例:

5.查看机器当前登录的全部用户,对应日志文件“/var/run/utmp”,相关命令示例:

6.查看机器创建以来登陆过的用户,对应日志文件“/var/log/wtmp”,相关命令示例:

7.查看机器所有用户的连接时间(小时),对应日志文件“/var/log/wtmp”,相关命令示例:

8.如果发现机器产生了异常流量,可以使用命令“tcpdump”抓取网络包查看流量情况或者使用工具”iperf”查看流量情况。

9.可以查看/var/log/secure日志文件,尝试发现入侵者的信息,相关命令示例:

10.查询异常进程所对应的执行脚本文件

a.top命令查看异常进程对应的PID

b.在虚拟文件系统目录查找该进程的可执行文件

11.如果确认机器已经被入侵,重要文件已经被删除,可以尝试找回被删除的文件。

1>当进程打开了某个文件时,只要该进程保持打开该文件,即使将其删除,它依然存在于磁盘中。这意味着,进程并不知道文件已经被删除,它仍然可以向打开该文件时提供给它的文件描述符进行读取和写入。除了该进程之外,这个文件是不可见的,因为已经删除了其相应的目录索引节点。

2>在/proc 目录下,其中包含了反映内核和进程树的各种文件。/proc目录挂载的是在内存中所映射的一块区域,所以这些文件和目录并不存在于磁盘中,因此当我们对这些文件进行读取和写入时,实际上是在从内存中获取相关信息。大多数与 lsof 相关的信息都存储于以进程的 PID 命名的目录中,即 /proc/1234 中包含的是 PID 为 1234 的进程的信息。每个进程目录中存在着各种文件,它们可以使得应用程序简单地了解进程的内存空间、文件描述符列表、指向磁盘上的文件的符号链接和其他系统信息。lsof 程序使用该信息和其他关于内核内部状态的信息来产生其输出。所以lsof 可以显示进程的文件描述符和相关的文件名等信息。也就是我们通过访问进程的文件描述符可以找到该文件的相关信息。

3>当系统中的某个文件被意外地删除了,只要这个时候系统中还有进程正在访问该文件,那么我们就可以通过lsof从/proc目录下恢复该文件的内容。

假设入侵者将/var/log/secure文件删除掉了,尝试将/var/log/secure文件恢复的方法可以参考如下:

a.查看/var/log/secure文件,发现已经没有该文件。

b.使用lsof命令查看当前是否有进程打开/var/log/secure,

c.从上面的信息可以看到 PID 1264(rsyslogd)打开文件的文件描述符为4。同时还可以看到/var/log/ secure已经标记为被删除了。因此我们可以在/proc/1264/fd/4(fd下的每个以数字命名的文件表示进程对应的文件描述符)中查看相应的信息,如下:

d.从上面的信息可以看出,查看/proc/1264/fd/4就可以得到所要恢复的数据。如果可以通过文件描述符查看相应的数据,那么就可以使用I/O重定向将其重定向到文件中,如:

e.再次查看/var/log/secure,发现该文件已经存在。对于许多应用程序,尤其是日志文件和数据库,这种恢复删除文件的方法非常有用。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    10988

    浏览量

    206724

原文标题:排查Linux机器是否已经被入侵

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Linux SSH远程管理故障如何排查

    SSH远程管理故障排查方案:1、检测两机器是否畅通  两机器之间是否畅通,查看物理链路是否有问题(网线网卡、IP是否正确)  第1步:物
    发表于 07-25 16:45

    Linux SSH远程管理故障如何排查

    SSH远程管理故障排查方案:1、检测两机器是否畅通  两机器之间是否畅通,查看物理链路是否有问题(网线网卡、IP是否正确)  第1步:物
    发表于 11-30 17:40

    阿里机器智能11经典实战案例

    传统程序员如何学习机器智能?阿里公开11经典实战案例
    发表于 09-19 08:11

    linux运维怎么排查

    linux运维排查常用命令(开发专享)
    发表于 11-11 06:34

    分布式多步骤入侵场景建模及其抽象描述

    本文从入侵检测的角度提出了一种完全非集中方式,将分布式多步骤入侵场景建模为分布于被保护网络系统中多个节点上的检测子任务序列。本文基于巴科斯范式对分布式多步骤
    发表于 09-03 08:57 8次下载

    电脑对机器机升级步骤

    电脑对机器机升级步骤:华亚电脑对机器升级步骤,海尔电脑对机升级步骤,国芯升级步骤
    发表于 01-14 17:07 65次下载

    Linux的安装步骤

    Linux的安装步骤下面我们介绍Linux的安装。各种Linux发行版本的安装各有不同,但是却大同小异。总的来说,除了国产的Linux以外,
    发表于 01-18 09:57 863次阅读

    解析Linux如何判断自己的服务器是否被入侵的检测方法

    如何判断自己的服务器是否被入侵了呢?仅仅靠两只手是不够的,但两只手也能起到一些作用,我们先来看看UNIX系统上一些入侵检测方法,以LINUX和solaris为例。
    的头像 发表于 01-13 10:27 5773次阅读

    Linux:QEMU调试内核的步骤

    Linux:QEMU调试内核的步骤
    的头像 发表于 06-23 09:03 2883次阅读
    <b class='flag-5'>Linux</b>:QEMU调试内核的<b class='flag-5'>步骤</b>

    如何鉴别Linux服务器是否被入侵

    随着开源产品的越来越盛行,作为一个Linux运维工程师,能够清晰地鉴别异常机器是否已经被入侵了显得至关重要,个人结合自己的工作经历,整理了几种常见的机器被黑情况供参考。
    的头像 发表于 03-16 10:08 1108次阅读

    Windows主机入侵痕迹排查办法

    一般情况下,客户资产都比较多,想要对所有的资产主机进行入侵痕迹排查基本不太现实,等你全部都排查完了,攻击者该做的事早就做完了,想要的目的也早就达到了。那么针对客户资产量大的情况,我们应该怎么处理?
    的头像 发表于 03-18 09:24 1938次阅读

    11步骤完美排查linux机器是否已经被入侵

    当进程打开了某个文件时,只要该进程保持打开该文件,即使将其删除,它依然存在于磁盘中。这意味着,进程并不知道文件已经被删除,它仍然可以向打开该文件时提供给它的文件描述符进行读取和写入。除了该进程之外,这个文件是不可见的,因为已经删除了其相应的目录索引节点。
    的头像 发表于 03-13 10:53 4248次阅读

    常用linux网络排查命令

    今天浩道跟大家分享linux网络运维中常见的命令,掌握好这些命令,在排查故障时将会游刃有余!
    发表于 06-25 10:49 519次阅读

    PLC故障排查步骤

    故障排查对于PLC非常重要,下面是一般的PLC故障排查步骤: (1)收集信息:首先,收集有关故障的详细信息,包括故障现象、故障发生时间、相关设备和传感器的状态等。这有助于更好地了解问题,并缩小
    的头像 发表于 11-17 09:01 971次阅读

    服务器入侵现象、排查和处理步骤

    近期有一个朋友的服务器(自己做了网站)好像遭遇了入侵,具体现象是: 服务器 CPU 资源长期 100%,负载较高。 服务器上面的服务不能正常提供服务。
    发表于 03-22 10:56 118次阅读
    服务器<b class='flag-5'>入侵</b>现象、<b class='flag-5'>排查</b>和处理<b class='flag-5'>步骤</b>