1. 初步信息收集
1.1 系统信息
-
• 目的:了解当前系统的基本情况,包括操作系统版本、内核版本等。
-
• 命令: cat /etc/redhat-release
1.2 网络信息
-
目的:查看网络连接状态、开放端口以及防火墙规则,排查异常网络活动。
-
• 命令:
-
# 查看当前网络连接
netstat -tulnp
# 查看防火墙规则(以 iptables 为例)
iptables -L -n -v2. 用户和权限检查
-
2.1 用户账户检查
-
• 目的:检查系统中是否存在异常新增用户,以及用户权限是否合理。
-
• 命令:
# 查看所有用户账户
cat /etc/passwd
# 查看近期新创建的用户(根据修改时间)
find /etc/ -name "passwd" -mtime -7 -
参数说明:
-
find
: 这是一个用于查找文件和目录的命令。 -
/etc
: 这是要搜索的目录。在这个例子中,搜索范围是/etc
目录。 -
-name "passwd"
: 这个选项指定要查找的文件名。在这里,它查找名为passwd
的文件。 -
-mtime -7
: 这个选项用于查找在过去 7 天内被修改过的文件。-7
表示“少于 7 天前”。 -
2.2 异常权限检查
-
• 目的:检查文件和目录的权限是否被异常修改。
-
• 命令:
# 检查系统关键目录(如 /etc、/bin 等)的权限
find /etc /bin -perm -4000 # 查找具有 SUID 权限的文件
参数说明: -
find
: 这是一个用于查找文件和目录的命令。 -
/etc /bin
: 这是要搜索的目录。在这个例子中,搜索范围是/etc
和/bin
目录。 -
-perm -4000
: 这个选项用于查找具有 SUID 权限的文件。SUID 权限允许用户以文件所有者的身份执行该文件 -
3.进程检查
-
• 目的:查看当前运行的进程,排查异常进程。
-
• 命令:
-
# 查看所有进程
ps -ef
# 查看占用 CPU 或内存较高的进程
top -b -n 1 | head -n 20
4.异常文件检查
-
• 目的:查找近期修改的文件、隐藏文件等,可能存在异常脚本或后门。
-
• 命令:
# 查找最近 7 天内修改的文件
find / -type f -mtime -7
# 查找隐藏文件
find / -name ".*"
参数说明: -
-mtime -7
: 这个选项用于查找在过去 7 天内被修改过的文件。-7
表示“少于 7 天前”。 -
5. 日志文件分析
5.1 系统日志
-
• 目的:查看系统日志,查找异常登录、系统调用等信息。
-
• 命令:
# 查看系统日志
cat /var/log/messages
# 查看登录日志
cat /var/log/secure
-
6. 定时任务检查
6.1 系统定时任务
-
• 目的:检查系统的定时任务配置,是否存在异常任务。
-
• 命令:
# 查看系统级定时任务
cat /etc/crontab
# 查看用户级定时任务
crontab -l -u <username>
-
7. 网络流量监控
-
• 目的:使用工具监控网络流量,查看是否存在异常流量。
-
• 命令:
# 安装并使用 iftop 监控网络流量
yum install iftop -y # CentOS 系统
apt - get install iftop -y # Ubuntu 系统
iftop
8.1数据库连接和数据检查
-
• 目的:检查数据库的连接情况和数据是否被篡改。
-
• 命令:
# 以 MySQL 为例,登录数据库
mysql -u <username> -p
# 查看数据库列表
SHOW DATABASES;
9.清除恶意文件和进程
-
• 目的:删除发现的恶意文件,终止异常进程。
-
• 命令:
# 删除恶意文件
rm -f <filename>
# 终止异常进程
kill -9 <pid>
9.2 加强系统安全
-
• 目的:更新系统补丁、修改弱密码、加强防火墙规则等。
-
• 命令:
# 更新系统软件包
yum update -y # CentOS 系统
apt - get update && apt - get upgrade -y # Ubuntu 系统