当前位置: 首页 > news >正文

TryHackMe-The Great Escape(Docker)

The Great Escape

我们的开发人员创建了一个很棒的新网站。你能冲出沙盒吗?


端口扫描

循例 nmap

在这里插入图片描述

Web信息收集

robots.txt:

在这里插入图片描述

/exif-util是文件上传点,但是绕过之后貌似没啥用

在这里插入图片描述

在robots.txt当中披露了可能存在.bak.txt,现在我们已知的文件就是exif-util,我们可以尝试查看exif-util.bak.txt是否存在

在这里插入图片描述

SSRF

在这个文件当中存在一个域名,调用了8080端口的exif,但我们直接访问8080是没开的,那么说明8080端口开在了内网,并且exif-util的功能是通过调用内网的api实现的

const response = await this.$axios.$get('http://api-dev-backup:8080/exif', {

那么就可以尝试通过这个功能访问http://api-dev-backup:8080/exif,从而形成ssrf

在这里插入图片描述

ssrf访问到api,这里暴露了curl,尝试能不能进行命令注入

在这里插入图片描述

RCE

使用 | 符号就能rce,但是在根目录发现了.dockerenv,这是在docker里,缺少了许多命令,能进行reverse shell的办法几乎没有,所以只能使用这个webshell

/root下发现个密码

在这里插入图片描述

Git历史提交

在/root目录下还有个.git,查看一下历史提交

在这里插入图片描述

查看增加了flag的那一次提交

在这里插入图片描述

我们获得的是root flag,虽然我也不知道第一个flag在哪

端口敲击

这里还告诉我们:

+Hey guys,
+
+I got tired of losing the ssh key all the time so I setup a way to open up the docker for remote admin.
+
+Just knock on ports 42, 1337, 10420, 6969, and 63000 to open the docker tcp port.

这里我去百度了一下,找到了一种叫做“Port knock”

就像minecraft的红石拉杆密码锁一样,好吧,这就像对暗号

nc一把梭,docker守护进程端口2375就会放行

在这里插入图片描述

在这里插入图片描述

Docker 逃逸

连接到daemon,查看所有镜像

在这里插入图片描述
这里有两个值得注意的 nginx和alpine

nginx应该就是web网站的镜像,因为网站也是nginx,我们刚刚没拿到的flag可能就在那

不过我们还是先拿到最后一个flag,再回来拿这个

将宿主机的根目录挂载到容器的/tmp

在这里插入图片描述

我们将能获得真正的root flag

在这里插入图片描述

再回去找找第一个flag

在这里插入图片描述

好吧,在ubuntu默认的nginx根目录/usr/share/nginx/html下并没有找到,换个image再看看

最终在frontend这个镜像下找到这个网站源码,并且发现一个文件

在这里插入图片描述

这里需要通过HEAD请求/api/fl46,这里直接使用burp就能做到

在这里插入图片描述

http://www.lryc.cn/news/23924.html

相关文章:

  • 这么强才给我28k,我头都不回,转身拿下40k~
  • 【Python学习笔记】第二十一节 Python Lambda 函数
  • Nginx学习整理
  • 阿里面试之Hr面,这个套路把我坑惨了......
  • 域基础和基本环境搭建
  • Java Map集合体系(HashMap、LinkedHashMap、TreeMap、集合嵌套)
  • 使用邮箱验证实现登录功能(发送邮件,redis)
  • 【Linux】网卡的7种bond模式
  • AQS抽象队列同步器
  • springBoot对REST支持源码解析
  • 6 集成学习及Python实现
  • 如何编程实现从多数据库操作数据
  • LeetCode 147. 对链表进行插入排序 | C/C++版
  • 【QT进阶】第五章 QT绘图之自定义控件--仪表盘绘制
  • Java代码弱点与修复之——URL manipulation(URL操纵)
  • Sharding Sphere学习
  • 粗心小编被云拯救,那云上数据谁来拯救?
  • [git可视化软件]gitkraken平替:GitAhead
  • CentOS8基础篇8:使用systemctl管理NFS服务
  • Go defer用法
  • 产地证是什么,主要作用有哪些?
  • 王道计算机网络课代表 - 考研计算机 第一章 计算机网络体系结构 究极精华总结笔记
  • 数据处理 |遍历所有文件夹及子目录文件夹方法总结与实例代码详解
  • ProtoEditor - 如何在Unity中实现一个Protobuf通信协议类编辑器
  • 2022 OpenCV Spatial AI大赛前三名项目分享,开源、上手即用,优化了OAK智能双目相机的深度效果。
  • Android 蓝牙开发——HCI log 分析(二十)
  • flask入门-4.项目实战
  • java 1(概要、变量与运算符)
  • ​力扣解法汇总2363. 合并相似的物品
  • 2022年终总结-找回初心