服务器遭受攻击如何处理(记录排查)

本文的重点是介绍如何鉴别安全事件以及保护现场的方法,以确保服务器负责人能够在第一时间对安全攻击做出反应,并在最短时间内抵御攻击或减少攻击所带来的影响。

在服务器遭遇疑似安全事件时,通常可以从账号、进程、网络和日志四个主要方面进行评估和分析,以判断事件的性质。如果需要联系安全部门来解决问题,保护现场就变得至关重要,以确保能够获取到关键信息,而不受其他杂乱情况的干扰。

一、检查是否存在异常账号和异常登录linux

1、cat /etc/passwd和/etc/group可以看到当前系统中的所有用户和所有的用户组信息,通过查看来发现是否被添加了异常账号;

复制代码
cat /etc/passwd

如果在上一步中获得了一个异常的用户名"tss",可以使用以下方法对该用户进行详细检查:

  1. 查看用户的历史登录信息:使用命令"last tss"来查看该用户的登录历史记录。
  1. 查看用户的登录失败信息:使用命令"lastb tss"来查看该用户的登录失败记录。

  2. 进入用户的家目录并查看家目录下的账号文件夹:使用命令"cd /home"进入家目录,然后使用命令"ll"来列出该目录下的文件夹,以查看哪些文件夹对应着不同的账号。

2、查看当前登录的用户,ip以及正在执行的命令: w

3、有时候,可以使用命令"ps -ef | grep ssh"来发现伪登录方式;

伪登录方式指的是无法通过"last"命令发现的登录方式。

对于Windows系统:

  1. 使用服务器管理器界面操作:打开服务器管理器,选择"配置",然后选择"本地用户和组",在用户选项卡下查看用户列表。

  2. 使用命令方式(schtasks):注意,由于编码方式不同,直接输入"schtasks"命令可能会报错,提示无法加载列资源。在这种情况下,需要先查看命令提示符(cmd)的编码方式,使用命令"chcp"来调整编码方式。例如,将编码方式从936(中文编码)改为437(美国编码),然后再运行"schtasks"命令。但是,请注意,这样做可能无法打印出非ASCII字符。

二、检查定时任务Linux通过计划任务来查看是否存在定时任务

对于黑客使用定时任务触发相应程序的情况,可以按照以下方法进行检查:

1. Linux系统:

  • 查看计划任务文件:检查/etc/crontab以及目录下的/etc/cron.*文件,包括cron.d/ cron.daily/ cron.hourly/ cron.monthly/ cron.weekly/等。

  • 检查启动项:使用命令systemctl list-unit-files --type=service来查看系统服务的启动项。

2. Windows系统:

  • 界面操作:打开"开始"菜单,运行"msconfig.exe",在"启动"选项卡下查看启动项。

  • 命令方式:使用命令"wmic startup list full"来列出启动项。

三、 检查进程:

1. Linux系统:

使用命令"top"查看正在运行的程序所占用的资源,或者使用命令"ps axu"列出当前系统的进程及其资源情况。

2. Windows系统:

界面操作可以打开任务管理器来查看运行中的进程,或者使用命令"tasklist"来列出进程。

四、 检查系统服务:

  • Windows系统:界面操作可以运行"services.msc"来查看系统服务,或者使用命令"sc query"来查询系统服务。

五、 检查网络连接:

1. Linux系统:

检查/etc/hosts和/etc/resolv.conf文件是否有异常更改,使用命令"netstat -a"来查看网络连接情况。

2. Windows系统:

使用命令"netstat -a"来查看网络连接情况。

六、 检查历史记录:

  • 通过使用"history"命令来查看系统上执行过的命令。

七. 保护现场:

  • 如果条件允许,可以先对服务器进行快照以保存当时的情况,防止系统在短时间内崩溃或被篡改。

  • 如果可以断网,建议先断开网络连接,以防止黑客进行进一步攻击。

  • 使用安全传输方式(如sftp)将日志文件传输到本地或其他安全的服务器,包括/var/log/下的日志文件,如messages、kern.log、secure、cron等,以及用户文件如/etc/passwd、/etc/shadow、/etc/group等可疑文件和后门文件。

  • 如果能确定入侵时间,可以使用"find"命令查找最近时间段内变化的文件,并将这些文件进行打包发送,例如查找5月9日15:08变化的所有python文件:

    find / -type f -name "*.py" -newermt "2023-05-09 15:08:00" ! -newermt "2023-05-09 15:09:00" -exec tar -cvzf python_files.tar.gz {} +

相关推荐
大树882 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠2 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质2 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
小宇宙Zz3 天前
Maven依赖冲突
java·服务器·maven
Inhand陈工3 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智3 天前
ARP代理--工作原理
运维·网络·arp·arp代理
shushangyun_3 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
古城小栈3 天前
Unix 与 Linux 异同小叙
linux·服务器·unix
施努卡机器视觉3 天前
SNK施努卡侧滑门锁上滑轮总成自动化装配线,从零件到组件,全流程精密制造方案
运维·自动化·制造
程序猿阿伟3 天前
《Chrome离线扩展安装的底层逻辑与场景落地指南》
服务器·网络·chrome