服务器是否被入侵的排查方案,从零基础到精通,收藏这篇就够了!


在开源技术日益普及的今天,对于 网络安全 从业者而言,能够迅速且准确地判断服务器是否遭受入侵至关重要。本文将结合实战经验,总结几种常见的服务器入侵场景,希望能为大家提供参考。

01

日志信息核查:蛛丝马迹的发现地

入侵者为了掩盖行踪,可能会删除服务器上的日志信息。因此,检查日志文件的完整性是首要任务。你需要确认日志文件是否仍然存在,或者是否被恶意清空。以下是一些常用的命令示例:

[root@hlmcen69n3 ~]# ll -h /var/log/*
-rw-------. 1 root root 2.6K Jul 7 18:31 /var/log/anaconda.ifcfg.log
-rw-------. 1 root root 23K Jul 7 18:31 /var/log/anaconda.log
-rw-------. 1 root root 26K Jul 7 18:31 /var/log/anaconda.program.log
-rw-------. 1 root root 63K Jul 7 18:31 /var/log/anaconda.storage.log

[root@hlmcen69n3 ~]# du -sh /var/log/*
8.0K /var/log/anaconda
4.0K /var/log/anaconda.ifcfg.log
24K /var/log/anaconda.log
28K /var/log/anaconda.program.log
64K /var/log/anaconda.storage.log

通过 ll -h 命令可以查看日志文件的详细信息,包括大小和修改时间。du -sh 命令则可以查看目录的总体大小。如果发现日志文件的大小异常或者缺失,就需要提高警惕

02

用户账户异常:警惕新增的“陌生人”

入侵者可能会通过创建新的用户账户来长期潜伏。因此,务必仔细检查 /etc/passwd/etc/shadow 文件,这两个文件分别存储了用户的基本信息和加密后的密码。

[root@hlmcen69n3 ~]# ll /etc/pass*
-rw-r--r--. 1 root root 1373 Sep 15 11:36 /etc/passwd
-rw-r--r--. 1 root root 1373 Sep 15 11:36 /etc/passwd-

[root@hlmcen69n3 ~]# ll /etc/sha*
----------. 1 root root 816 Sep 15 11:36 /etc/shadow
----------. 1 root root 718 Sep 15 11:36 /etc/shadow-

重点关注是否有来历不明的用户账户,特别是那些具有高权限的用户

03

密码文件篡改:防范权限提升的陷阱

除了新增用户,入侵者还可能直接修改现有的用户密码,特别是 root 用户的密码,以达到控制服务器的目的。同样需要查看 /etc/passwd/etc/shadow 文件,检查是否存在异常的修改记录。

[root@hlmcen69n3 ~]# more /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

[root@hlmcen69n3 ~]# more /etc/shadow
root:*LOCK*:14600::::::
bin:*:17246:0:99999:7:::
daemon:*:17246:0:99999:7::

注意观察用户密码字段是否被修改,以及是否存在异常的密码哈希值

04

登录事件追踪:谁在偷偷摸摸?

通过查看 /var/log/lastlog 日志文件,可以追踪服务器最近的成功登录事件和最后一次不成功的登录事件。

[root@hlmcen69n3 ~]# lastlog
Username         Port     From             Latest
root             **Never logged in**
bin              **Never logged in**
daemon           **Never logged in**

重点关注是否存在异常的登录来源 IP 地址和登录时间

05

实时在线用户:揪出“潜伏者”

使用 who 命令可以查看当前登录服务器的所有用户,对应的日志文件是 /var/run/utmp

[root@hlmcen69n3 ~]# who
stone    pts/0        2017-09-20 16:17 (X.X.X.X)
test01   pts/2        2017-09-20 16:47 (X.X.X.X)

确认所有在线用户是否都是授权用户,并检查是否存在异常的终端连接

06

历史登录用户:不放过任何可疑痕迹

通过 last 命令可以查看服务器创建以来所有登录过的用户,对应的日志文件是 /var/log/wtmp

[root@hlmcen69n3 ~]# last

test01   pts/1        X.X.X.X         Wed Sep 20 16:50   still logged in
test01   pts/2        X.X.X.X         Wed Sep 20 16:47 - 16:49  (00:02)
stone    pts/1        X.X.X.X         Wed Sep 20 16:46 - 16:47  (00:01)
stone    pts/0        X.X.X.X         Wed Sep 20 16:17   still logged in

仔细审查历史登录记录,查找是否存在异常的登录用户和登录时间段

07

连接时长统计:谁在偷偷占用资源?

ac -dp 命令可以查看服务器所有用户的连接时长(小时),同样依赖于 /var/log/wtmp 日志文件。

[root@hlmcen69n3 ~]# ac -dp
stone               11.98
Sep 15             total        11.98
stone               67.06
Sep 18             total        67.06
stone                1.27
test01               0.24
Today              total         1.50

对比用户的连接时长,如果发现某个用户的连接时长明显异常,就需要进一步调查

08

流量异常监控:警惕“暗流涌动”

如果服务器产生了异常流量,可以使用 tcpdump 命令抓取网络包,分析流量情况。也可以使用 iperf 工具进行网络性能测试,评估是否存在异常流量。

09

安全日志分析:从 secure 中寻找线索

/var/log/secure 日志文件记录了与安全相关的事件,例如用户登录、权限验证等。通过分析该文件,可以尝试发现入侵者的蛛丝马迹。

[root@hlmcen69n3 ~]# cat /var/log/secure | grep -i "accepted password"
Sep 20 12:47:20 hlmcen69n3 sshd[37193]: Accepted password  for stone from X.X.X.X port 15898 ssh2
Sep 20 16:17:47 hlmcen69n3 sshd[38206]: Accepted password  for stone from X.X.X.X port 9140 ssh2
Sep 20 16:46:00 hlmcen69n3 sshd[38511]: Accepted password  for stone from X.X.X.X port 2540 ssh2
Sep 20 16:47:16 hlmcen69n3 sshd[38605]: Accepted password  for test01 from X.X.X.X port 10790 ssh2
Sep 20 16:50:04 hlmcen69n3 sshd[38652]: Accepted password  for test01 from X.X.X.X port 28956 ssh2

重点关注 "Accepted password" 相关的日志,检查是否存在暴力破解、弱口令等安全问题

10

异常进程排查:揪出幕后黑手

10.1、使用 top 命令识别可疑进程

通过 top 命令可以实时查看服务器的进程状态,重点关注 CPU 占用率、内存占用率异常的进程

10.2、定位进程的可执行文件

/proc 虚拟文件系统目录下,可以找到每个进程对应的可执行文件。

[root@hlmcen69n3 ~]# ll /proc/1850/ | grep -i exe
lrwxrwxrwx. 1 root root 0 Sep 15 12:31 exe -> /usr/bin/python

[root@hlmcen69n3 ~]# ll /usr/bin/python
-rwxr-xr-x. 2 root root 9032 Aug 18  2016 /usr/bin/python

通过检查可执行文件的路径和属性,可以判断进程是否合法

11

文件恢复:亡羊补牢,犹未晚矣

如果确认服务器已经被入侵,并且重要文件被删除,可以尝试找回被删除的文件。

11.1、文件删除原理

当进程打开某个文件时,即使该文件被删除,只要进程保持打开状态,文件仍然存在于磁盘中。进程可以通过文件描述符继续读取和写入该文件。

11.2、/proc 文件系统的作用

/proc 目录包含了反映内核和进程树的各种文件,这些文件实际上是内存中的映射,而不是磁盘上的真实文件。lsof 程序可以利用这些信息来显示进程的文件描述符和相关的文件名。

11.3、文件恢复步骤

当系统中的某个文件被意外删除后,如果还有进程正在访问该文件,就可以通过 lsof/proc 目录下恢复该文件的内容。

例如,假设 /var/log/secure 文件被删除,恢复步骤如下:

  1. 确认文件已被删除:
[root@hlmcen69n3 ~]# ll /var/log/secure
ls: cannot access /var/log/secure: No such file or directory
  1. 使用 lsof 命令查看是否有进程打开该文件:
[root@hlmcen69n3 ~]# lsof | grep /var/log/secure
rsyslogd    1264     root    4w   REG              8,1   3173904       263917 /var/log/secure (deleted)
  1. 从上面的信息可以看到 PID 1264(rsyslogd)打开了该文件,并且文件已被标记为删除。可以通过 /proc/1264/fd/4 查看文件内容:
[root@hlmcen69n3 ~]# tail /proc/1264/fd/4
Sep 20 16:47:21 hlmcen69n3 sshd[38511]: pam_unix(sshd:session): session closed for user stone
...
Sep 20 17:18:52 hlmcen69n3 sshd[38790]: Connection closed by 51.15.81.90
  1. 使用 I/O 重定向将文件内容恢复:
[root@hlmcen69n3 ~]# cat /proc/1264/fd/4 > /var/log/secure
  1. 再次查看 /var/log/secure,确认文件已恢复。

对于日志文件和数据库等重要文件,这种恢复方法非常有效。

总结

服务器安全至关重要,希望以上排查方案能帮助大家及时发现并解决安全问题。请务必定期进行安全检查,防患于未然!
```

黑客/网络安全学习包

资料目录

  1. 成长路线图&学习规划

  2. 配套视频教程

  3. SRC&黑客文籍

  4. 护网行动资料

  5. 黑客必读书单

  6. 面试题合集

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

*************************************CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享*************************************

1.成长路线图&学习规划

要学习一门新的技术,作为新手一定要先学习成长路线图方向不对,努力白费

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


因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

*************************************CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享*************************************

2.视频教程

很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩


因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

*************************************CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享*************************************

3.SRC&黑客文籍

大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录

SRC技术文籍:

黑客资料由于是敏感资源,这里不能直接展示哦!

4.护网行动资料

其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!

5.黑客必读书单

**

**

6.面试题合集

当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。

更多内容为防止和谐,可以扫描获取~

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

*************************************CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享*********************************

猜你喜欢

转载自blog.csdn.net/Javachichi/article/details/147145324
今日推荐