一,前期信息搜集
1.查看发行版本
执行命令cat /etc/issue
或
执行命令cat /etc/*-release查看后缀release文件
可以看到发行版本为 ubuntu 18.04
2.查看内核版本
命令uname -a 查看内核版本
内核版本为4.15.0
有了这个之后,可以根据版本去查找相应系统提权漏洞
3.使用脚本自动化收集
可以自己在网上查找自动化信息收集脚本,这里尝试了一个
subprocess_linuxd1/day1.py at main · Jwlearning/subprocess_linuxd1 · GitHub
二,系统内核漏洞
1.脏牛漏洞
dirtycow: Dirty Cow exploit - CVE-2016-5195
2.利用脚本进行提权
Exploit Database - Exploits for Penetration Testers, Researchers, and Ethical Hackers
https://github.com/SecWiki/linux-kernel-exploits
在以上网址可以查找对应提权文件,下载下来编译运行即可进行提权
三,通过错误配置进行提权
1.查看passwd
查看/etc/passwd,该目录所有用户可读,root用户可写,如果是批量创建用户,里边可能包含用户密码,登陆进去查看该用户权限,如果为root用户,则赚大发了,不是那也没办法
cat /etc/passwd 发现用户insecurity用户有明文密码
成功获取root权限
2.sodu权限提权
使用命令 sudo -l 查看哪些有sudo权限
https://GTFOBins.github.io
在该网址中查机器的sudo权限,若能利用,则用命令尝试提权
可以看到有一个awk,进入网站查一下
发现可以利用sudo
于是提权到root
3.suid权限提权
suid权限是运行时将权限提升到属主权限,举个例子,普通用户不可以修改/etc/passwd和/etc/shadow,但是普通用户却可以修改自己的密码,这两件事情冲突了,但是因为passwd拥有suid权限,可以在运行时将权限提升为属主权限,相当于属主运行,所以就解决了问题
还是老方法,命令:find / -perm -u=s -type f 2>/dev/null 查看所有拥有suid权限的文件,
在网址中查找taskset,发现可以利用suid
于是进行提权