滥用 Docker 目录的搜索权限来提升权限

2024-08-28 13:12

本文主要是介绍滥用 Docker 目录的搜索权限来提升权限,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在最近的一次活动中,我们发现了与/var/lib/docker权限相关的不熟悉的配置。此配置与许多其他低风险问题相结合,导致了一条攻击路径,允许低权限用户将权限提升至 root。

由于这种配置是非标准的,很少见,我们想与更广泛的社区分享我们的观察结果和利用这一特定弱点的方法。我们将通过一个示例来实现这一点,该示例部署到 WithSecure 实验室环境,并且仅复制了在参与过程中观察到的与我们将要演示的攻击路径相关的某些技术细节。所有用户、容器等都是针对此环境定制的,并不代表客户的环境。

在我们的研究中,我们确实发现这是一个之前发现的问题,其 CVE 编号为(CVE-2021-41091),他们在研究获取 SUID 二进制文件以提升权限的方法时发布了CyberArk 。

环境

在这个例子中,我们假设我们已经找到了一种获取低权限用户的方法。这是一个名为vagrant的标准 Linux 用户 ,UID 为 1000。该用户有权重启主机,但除此之外没有任何其他特殊权限。主机本身通过 Docker 运行多个容器。

主机枚举显示/var/lib/docker/ 目录已将搜索位设置为“其他”。如下所示:

vagrant@ubuntu-noble:/var/lib$ ls -ld docker
drwx--x--x 14 root root 4096 Apr  4 15:46 docker

作为 Linux 文件权限的快速入门,基本权限集中有三组权限。这些权限分别是读取、写入和执行/搜索;每个权限都可供所有者、组和其他实体使用。注意:执行/搜索位对于文件是执行,对于目录是搜索。从上图可以看出,这些权限可以看作rwx--x--x,这意味着文件夹允许以下操作:

  • 读取、写入并搜索所有者

  • 搜索群组

  • 搜索其他所有人

所有者和组是其右侧的字段,分别是root 和root 。其他权限将适用于所有非所有者或非组内的实体。在本例中,这

这篇关于滥用 Docker 目录的搜索权限来提升权限的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Docker镜像pull失败两种解决办法小结

《Docker镜像pull失败两种解决办法小结》有时候我们在拉取Docker镜像的过程中会遇到一些问题,:本文主要介绍Docker镜像pull失败两种解决办法的相关资料,文中通过代码介绍的非常详细... 目录docker 镜像 pull 失败解决办法1DrQwWCocker 镜像 pull 失败解决方法2总

通过Docker Compose部署MySQL的详细教程

《通过DockerCompose部署MySQL的详细教程》DockerCompose作为Docker官方的容器编排工具,为MySQL数据库部署带来了显著优势,下面小编就来为大家详细介绍一... 目录一、docker Compose 部署 mysql 的优势二、环境准备与基础配置2.1 项目目录结构2.2 基

Linux修改pip临时目录方法的详解

《Linux修改pip临时目录方法的详解》在Linux系统中,pip在安装Python包时会使用临时目录(TMPDIR),但默认的临时目录可能会受到存储空间不足或权限问题的影响,所以本文将详细介绍如何... 目录引言一、为什么要修改 pip 的临时目录?1. 解决存储空间不足的问题2. 解决权限问题3. 提

关于Docker Desktop的WSL报错问题解决办法

《关于DockerDesktop的WSL报错问题解决办法》:本文主要介绍关于DockerDesktop的WSL报错问题解决办法的相关资料,排查发现是因清理%temp%文件夹误删关键WSL文件,... 目录发现问题排查过程:解决方法其实很简单:重装之后再看就能够查到了:最后分享几个排查这类问题的小www.cp

SpringSecurity 认证、注销、权限控制功能(注销、记住密码、自定义登入页)

《SpringSecurity认证、注销、权限控制功能(注销、记住密码、自定义登入页)》SpringSecurity是一个强大的Java框架,用于保护应用程序的安全性,它提供了一套全面的安全解决方案... 目录简介认识Spring Security“认证”(Authentication)“授权” (Auth

Spring Security注解方式权限控制过程

《SpringSecurity注解方式权限控制过程》:本文主要介绍SpringSecurity注解方式权限控制过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、摘要二、实现步骤2.1 在配置类中添加权限注解的支持2.2 创建Controller类2.3 Us

Python使用DeepSeek进行联网搜索功能详解

《Python使用DeepSeek进行联网搜索功能详解》Python作为一种非常流行的编程语言,结合DeepSeek这一高性能的深度学习工具包,可以方便地处理各种深度学习任务,本文将介绍一下如何使用P... 目录一、环境准备与依赖安装二、DeepSeek简介三、联网搜索与数据集准备四、实践示例:图像分类1.

Redis实现RBAC权限管理

《Redis实现RBAC权限管理》本文主要介绍了Redis实现RBAC权限管理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1. 什么是 RBAC?2. 为什么使用 Redis 实现 RBAC?3. 设计 RBAC 数据结构

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (

Vue中动态权限到按钮的完整实现方案详解

《Vue中动态权限到按钮的完整实现方案详解》这篇文章主要为大家详细介绍了Vue如何在现有方案的基础上加入对路由的增、删、改、查权限控制,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、数据库设计扩展1.1 修改路由表(routes)1.2 修改角色与路由权限表(role_routes)二、后端接口设计