打算从0到1,重新做一遍DWVA靶场,复习各个技巧并记录下思路和总结。
重复使用low等级的方式,会提示不正确的请求。
是怎么回事呢?查看源代码
而burp生成的poc中并没有refer数据,导致csrf未能成功。
开始绕过。
首先我百度了一下,有人说在攻击服务器上将我们的POC传上去,然后将POC命名为靶机的ip,也就是172.16.230.160.html,就可以将refer改成靶机IP进行绕过,那么这么做行不行呢?
我直接在vps中按照步骤去做了,然后点击访问
当我填入http://149.28.28.195/172.16.230.160.html此路径时,然后enter
我发现我的界面变成了这样,点击submit抓包,refer竟然还是我vps的ip,这明显是在框我?
我透了,这是在逗我么?谁说这种方式可以绕过的?
我决定放弃burp生成的poc,自己写。
<img src="http://172.16.1.178/DVWA/vulnerabilities/csrf/?password_current=password&password_new=111&password_conf=111&Change=Change&user_token=651abed3d232c64a3040a7303daf2ffe" border="0" style="display:none;"/> <h1>404<h1> <h2>file not found.<h2>
而当我访问时,成了
退出重新登录,成功。
所以是我的poc写的有问题,这种方式是可以伪造refer的。那么问题出现哪里呢?
为什么burp生成的poc就没有带上我们想要伪造的refer呢?
我认为是访问burp生成的poc时,它需要点一下submit,在此之前,它并没有发出任何请求,而浏览器一定是有一个省略机制,比如你访问index.html,它自动把index.html给省掉了,所以当点击提交按钮,它就当你是url栏中的地址发出的,所以地址也就是vps的IP。而我后来自己写的poc,是当访问这个页面时就立马把请求发出了,而且是在带有靶机IP的时候发出的,所以refer中就带了靶机的IP。
很神奇。
未完待续......