识别CentOS系统中的Exploit(漏洞利用)需结合日志分析、网络监控、进程检查、文件完整性验证等多维度手段,以下是具体可操作的步骤:
系统日志是识别攻击的“第一现场”,需重点检查以下日志文件:
/var/log/secure
(记录SSH登录、sudo使用等认证信息),搜索多次失败登录尝试(如Failed password
)、非法用户登录(如陌生IP或未授权账户)、权限提升迹象(如su
或sudo
的异常使用)。/var/log/messages
(记录系统服务、内核事件),关注服务异常重启(如httpd
、sshd
频繁崩溃)、内核错误(如oops
、panic
)或未授权文件访问(如/etc/shadow
被读取)。/var/log/httpd/access_log
(Apache)或/var/log/nginx/access.log
(Nginx),检查异常HTTP请求(如大量POST
请求到/admin
、/uploads
等敏感路径,或包含cmd=
、union select
等SQL注入关键词的参数)。grep
命令快速过滤关键词(如grep "Failed password" /var/log/secure
、grep "POST /admin" /var/log/httpd/access_log
),或通过journalctl -xe
查看实时系统日志。网络流量异常往往是Exploit的“外在表现”,需通过以下方式监控:
tcpdump
捕获指定接口(如eth0
)的流量,过滤异常端口(如port 22
(SSH)、port 80
(HTTP)、port 443
(HTTPS)外的非常用端口)或协议(如大量SYN
包、UDP
flood),例如:sudo tcpdump -i eth0 port 22 -nn # 监控SSH端口的连接
sudo tcpdump -i eth0 'tcp[tcpflags] & (tcp-syn|tcp-ack) == tcp-syn' # 检测SYN flood攻击
firewalld
(默认)或iptables
,检查日志(/var/log/firewalld
或/var/log/messages
)中的被阻止连接(如DROP
规则触发的陌生IP)、意外规则更改(如未经授权的iptables -A INPUT
命令)。netstat -tulnp
查看当前网络连接,关注异常端口监听(如root用户运行的非标准端口(>1024)、未知服务的端口)、大量连接的外部IP(如同一IP与多个本地端口建立连接)。异常进程是Exploit的“执行载体”,需通过以下命令检查:
ps aux
或top
/htop
查看当前运行的进程,重点关注不明进程(如名称陌生、无描述信息的进程)、高资源占用进程(如CPU或内存占用突然飙升的进程,如xmrig
(挖矿病毒)、kworker
(DDoS工具))。lsof -p <PID>
(查看进程打开的文件和端口)或pwdx <PID>
(查看进程的工作目录),定位进程的可执行文件路径(如/tmp
目录下的未知可执行文件、/var/www/html
中的webshell)。crontab -l
(当前用户)或ls /etc/cron*
(系统级定时任务),查找可疑定时任务(如频繁执行的wget
/curl
命令下载未知脚本、指向陌生路径的脚本)。Exploit常通过修改系统文件或植入恶意文件实现持久化,需通过以下工具验证:
/etc/passwd
、/etc/shadow
、/etc/ssh/sshd_config
)的创建/修改时间(ls -l
)与业务发布时间,若近期被修改且无合理原因,需进一步检查(如stat /etc/passwd
)。AIDE
(Advanced Intrusion Detection Environment)或Tripwire
(需提前初始化数据库),监控关键目录(如/bin
、/sbin
、/usr/bin
、/etc
)的文件哈希值,若文件被篡改(如/bin/ls
的哈希值变化),工具会发出警报。借助专业工具可快速识别系统中的已知漏洞和恶意行为:
Nmap
(扫描开放端口和服务版本,如nmap -sV localhost
)、Nessus
(商业版,检测已知CVE漏洞)、OpenVAS
(开源版,类似Nessus),发现未修补的高危漏洞(如CentOS内核漏洞、Apache Struts漏洞)。ClamAV
(开源反病毒软件,clamscan -r /
扫描整个系统)、rkhunter
(检测rootkit,rkhunter --check
)、chkrootkit
(类似rkhunter,chkrootkit
),识别植入的恶意软件(如挖矿病毒、后门程序)。SELinux(Security-Enhanced Linux)的强制访问控制(MAC)可阻止未授权的操作,需检查其日志:
/var/log/audit/audit.log
(默认路径),搜索SELinux拒绝记录(关键词avc: denied
),例如:grep "avc: denied" /var/log/audit/audit.log
若日志中存在大量拒绝记录(如某进程试图访问/etc/shadow
但被SELinux阻止),说明可能有Exploit尝试绕过权限控制。通过以上方法的组合使用,可全面识别CentOS系统中的可疑行为,及时发现Exploit攻击。需注意的是,安全检测需定期执行(如每日检查日志、每周扫描漏洞),并结合最小权限原则(限制root使用、关闭不必要的服务)降低风险。