目录
一、愉快的通关
第4页
第7页
第11页
1、webwolf解法
2、http.server解法
二、课程思维图
三、一颗安利
一、愉快的通关 第4页这题要求用XXE注入罗列系统根目录。
首先在上图的输入框输入个评论,比如cute,按submit提交。
到burpsuite的proxy模块找到相关request报文,鼠标右键--send to repeater
从上图可见,标签之前的内容是会显示在评论区的,因此如果在此处引用外部实体,外部实体的内容也是可以显示在评论区的。
在request报文中的xml代码中增加DTD,并在其中定义外部实体root,其内容是"file:///",然后记得引用外部实体(&root;)
完整payload:
&root;
send request报文之后即可通关
返回浏览器刷新一下网页,可以看到新增了一条评论,其中包含根目录(windows系统的C盘)下的所有文件和目录
或者burpsuite的proxy模块中的下图这个response报文中也可以看到
这题提醒REST框架中服务器可能会接收开发者想不到的格式的数据。
题目界面和第4页一样,还是随便评论一下,burpsuite抓个包
burpsuite的proxy模块中可以抓到这样一个发送评论内容的包,Content-Type头是application/json,POST数据是json格式的。把这个包send to repeater。
在repeater中需要做两件事:
1、把第4页的payload拷贝到POST数据部分,替换掉原来json格式的数据
2、把Content-Type头的内容改成application/xml
轻松过关~
这一页是XXE盲注,要求读取文件C:/Users/Administrator/.webgoat-8.1.0//XXE/secret.txt的内容,并作为评论提交。
先随便提交个评论,burpsuite抓包,send to repeater
从下一步开始,可以走两条路,一条路用webwolf,另一条路用python提供的简易http服务,其实原理都是一样的。
1、webwolf解法在repeater中修改POST数据内容,修改为下面这段xml代码,并send
cute
其中attack.dtd的内容如下(attack.dtd事先传到webwolf上):
webwolf的incoming requests中有这样的请求,其中包含了我们要找的secret.txt的内容WebGoat%208.0%20rocks...%20(hREXoAREJe)
整理一下格式,把%20替换为空格,得到 WebGoat 8.0 rocks... (hREXoAREJe),并作为评论提交
通关~
在攻击者PC(192.168.101.14)上保存文件attack_local.dtd,其内容如下
在攻击者PC上命令行通过cd命令进入文件attack_local.dtd所在文件夹
然后在命令行输入如下命令,以开启简单的http服务
python3 -m http.server 8000
在repeater中修改POST数据内容,修改为下面这段xml代码,并send
cute
其实从response的报错信息就可以得到我们要的答案了,不过就算没有报错信息,secret.txt文件的内容也会出现在攻击者的命令行窗口
把text=后面的内容整理一下格式,%20替换为空格后作为评论提交即可通关。
二、课程思维图安利一下自己之前写的pikachu漏洞靶场的XXE通关博pikachu XXE (XML外部实体注入)(皮卡丘漏洞平台通关系列)