- 主机信息收集
- 自动化信息收集
- 查看版本
- 搜索exp
- 提权工具
- 一、sudo提权
- 二、suid配置错误提权
- 常见root文件
- 寻找
- 三、Capabilities提权
- 四、计划任务提权
- 五、第三方服务提权
- 1、****MySQL UDF 提权 (系统命令执行)****
- 2、docker提权
- **CVE-2022-0492 cgroups漏洞容器逃逸和任意命令漏洞**
- 六、内核提权
- **CVE-2022-0847 DirtyPipe提权**
- **CVE-2022-27666**
- 脏牛提权
- 烂土豆提权 MS16-075
- Nimbuspwn Linux权限提升漏洞
- 参考资料
提权没有银弹,要结合具体情况来分析,目标的系统,内核版本,安装的应用,编程语言环境,用户密码 主机信息收集
hostname
uname -a 内核版本。Linux版本
/proc/version 版本信息,gcc版本
/etc/issue 系统信息, 虽然上面几个有重复,但是可以多看几个,因为很多都可以修改
ps axjf 命令 aux 所有用户
env 环境变量 看编译器 脚本语言
sudo -l 列出来你这个用户能用的??
ls -la 查找隐藏文件
id 查看权限信息,获取信息
/etc/passwd /etc/shadow 查看用户 cat /etc/passwd | cut -d “:” -f 1 有一些是系统自带的没用,可以用 | grep home 过滤
怎么看是否能ssh登陆?默认情况下 用户名后跟/bin/fause /sbin/nologin都不可以ssh登录 /bin/bash /bin/sh之类的可以登录
history 查找有用信息,比如密码
ifconfig 看是否和其他网络相连, ip route查看路由
自动化信息收集- LinPeas: https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite/tree/master/linPEAS
- LinEnum: https://github.com/rebootuser/LinEnum
- LES (Linux Exploit Suggester): https://github.com/mzet-/linux-exploit-suggester
- Linux Smart Enumeration: https://github.com/diego-treitos/linux-smart-enumeration
- Linux Priv Checker: https://github.com/linted/linuxprivchecker
uname -r 内核版本
cat /etc/issue Linux版本
cat /etc/*-release
搜索expsearchsploit
searchsploit linux 3.2.78
提权工具linux-exploit-suggester
linux-exploit-suggester-2
一、sudo提权使⽤sudo -l命令可以查看当前⽤户允许执⾏的提权命令。
伪造sudo, 或者伪造其他命令,如常用的ls, 记录下来管理员的操作 alias 别名
二、suid配置错误提权1.只有可以执行的二进制程序文件才能设定SUID权限,非二进制文件设置SUID权限没任何意义.
2.命令执行者要对该程序文件拥有执行(x)权限.
3.命令执行者在执行该程序时获得该程序文件属主的身份.
4.SUID权限只在该程序执行过程中有效,也就是说身份改变只在程序执行过程中有效
SUID可以让程序调用者以文件拥有者的身份运行该文件,当我们以一个普通用户去运行一个root用户所有的SUID文件,那么运行该文件我们就可以获取到root权限
常见root文件nmap vim find bash more less nano cp
寻找find / -type f -perm -04000 -ls 2>/dev/null
find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000-print2>/dev/null
find / -user root -perm -4000-exec ls -ldb {} ;
三、Capabilities提权https://blog.csdn.net/m0_57221101/article/details/123928521
Linux2.2之后, 出现Capabilities,用于权限管理,
四、计划任务提权root权限的计划任务执行了某个脚本, 如果可以修改这个脚本的话,就可以实现用root权限运行命令的效果
五、第三方服务提权 1、MySQL UDF 提权 (系统命令执行)1.要看运行mysql时的权限是普通用户还是管理员用户
不过这里有一个限制,show global variables like 'secure%' secure_file_priv 没有具体的值(即能够导出/写入文件)
如果secure_file_priv的值不是这个,我们可以在mysql/my.ini中查看是否有secure_file_priv 的参数,如果没有的话我们就添加 secure_file_priv = ’ ’ ,然后冲去apache服务即可生效。
2.上传UDF 的动态链接库文件
2、docker提权 CVE-2022-0492 cgroups漏洞容器逃逸和任意命令漏洞https://blog.csdn.net/Breeze_CAT/article/details/123427680
六、内核提权内核提权一般会最后用,因为可能会把系统搞崩了
根据内核版本来找对应漏洞
CVE-2022-0847 DirtyPipe提权https://view.inews.qq.com/a/20220415A0E82700
影响范围:5.8 <= Linux 内核版本 < 5.16.11 / 5.15.25 / 5.10.102
攻击者通过利用此漏洞,可覆盖重写任意可读文件中的数据,将普通用户提权至特权用户
攻击者可利用此漏洞向由只读文件支持的页面缓存中的页面写入数据,从而提升权限。
复写了 /etc/passwd
CVE-2022-27666IPV6 ESP协议页溢出内核提权
在 5.16.15 之前的Linux 内核中,net/ipv4/esp4.c 和net/ipv6/esp6.c通过大消息进行ESP转换存在缓冲区溢出。在某些配置中,本地用户可以通过覆盖内核堆对象来获得root权限
脏牛提权Linux内核在处理内存写时拷贝(Copy-on-Write)时存在条件竞争漏洞,导致可以破坏私有只读内存映射。一个低权限的本地用户能够利用此漏洞获取其他只读内存映射的写权限,有可能进一步导致提权漏洞。
低权限用户可以利用该漏洞修改只读内存,进而执行任意代码获取 root权限。
Linux Kernel >= 2.6.22的版本。
烂土豆提权 MS16-075攻击者可以诱骗用户尝试使用NTLM对他的计算机进行身份验证,则他可以将该身份验证尝试中继到另一台计算机!
Nimbuspwn Linux权限提升漏洞 参考资料https://www.cnblogs.com/sfsec/p/15163907.html
https://tryhackme.com/room/linprivesc
https://xz.aliyun.com/t/7924
https://blog.csdn.net/qq_37077262/article/details/102964050



