
对于这一题,题目说明就讲这是一个ssrf 造成任意文件读取
那我们就进入题目看一下
进入后显示是一个表单,需要我们填写信息(这里顺便测试了xss,你自己也可以试一试,是完全OK的),随便填充后网页转到/create.php
除了download外都是静态资源,我们点击download进行查看
要注意这里不是直接下载,而是给用户一个编辑机会,点击右上角文档属性看到pdf编辑应用为 wkhtmltopdf 0.12.5
这里上网上查一下这个版本编辑器存在目录遍历漏洞,正好题目解释上有github的漏洞利用
<script>
x=new XMLHttpRequest;
x.onload=function(){
document.write(this.responseText)
};
x.open("GET","file:///etc/passwd");
x.send();
</script>
因为我们直接先前验证了xss,在之前最开始表单第一个框填充上就ok
提交之后等待加载,之后点击download
现在pdf文档就是/etc/passwd的内容了(这里应该是因为同源策略,在本地pdf加载时候不受限制,可以在这里加载任何东西,然而其他地方都不行!后面有讲)
但是题目作者并不想让我们止步,他讲要让我们访问内网另一个域名的网站进行登录才能获得flag ( 疯掉了 )
按照之前同样操作。根据提示我们查看提示中/etc/hosts目录,查看到有两个ip,172.17.0.4 93786f6c8a09ca41bf257db1c9529eee
我想着怎么进行访问呢,搜了一些内容,想到可以使用ifram框架直接接入该网页
poc为 :
<script>document.write('<iframe src="http://172.17.0.2" width="600" height="400" id="iframe"></iframe>');</script>
加载完,这里是空白,ok,应该是同源策略,吧,很棒。
点击download 却能看到该网站登录框 :
ok,作者还讲要进行自动填充上弱口令密码,我真不行了,试了很多,完不成最后一步~~
TIP:要注意,这个页面好像有两个,一个是正常登陆框,另一个是也是两个框但应该不是正确的
后面应该看这个pdf应用漏洞的更多poc吧,这就留给你们这些大佬了。