目录
前言
Dvwa是一个适合新手的靶场,他综合了多个注入web的方法。非常值得我们学习
一、暴力破解
Vulnerability: Brute Force:
Low:
由图2,得出结论。这里可以尝试sql注入。于是我使用了admin’ and 1=1#。成功注入。
Medium:
这里的源码加上了过滤。避免了sql注入的问题。于是我打算使用密码枚举爆破。
最后根据长度大小来判断,结果密码是password,成功登录。
High:
同样抓包。
发现这里多了一个token,面对这种情况。可以使用草叉模式,把这个token带上去爆破。
这里设置初始值。
爆破成功,密码为password
二、ping命令注入
Vulnerability: Command Injection
Low:
从题目中看出,给一个IP并调用ping命令。那么我就可以在输入的时候带上一些字符,被带进终端中,从而被执行
成功,被终端执行。
Medium:
这里同样使用 & 。查看源码发现他把 ; && 这两个过滤了。
High:
从这里可以看出,我们的&给过滤了。
查看源码:
仔细观察 可以发现 | 这个东西没有被过滤。
三、CSRF
Vulnerability: Cross Site Request Forgery (CSRF)
这个是跨网站伪请求。
Low:
抓包发现,客户端给服务的发现了这样的请求:
那么我就使用这个做一个按钮或者网页欺骗用户去点击。
当用户去点击的时候,便会自动把密码该为password。
Medium:
同样点击发送请求。
这里他会检查你的请求前的网站,就是referer。
请求成功!
High:
这里没有反应。
查看源码:
有token,使用bp抓包查看。
这样的话,我就需要配合xss跨网站攻击了尝试获取token。
构造一个xss代码:
<iframe src=’../crsf’ onload=alert(frames[0].document.getElementByname(‘user_token’)[0].vlaue)></iframe>
// 这个代码会出现一个窗口。远程窗口,而后我们在这个窗口里,获取里面的element(元素),得到token。从而完成一此crsf攻击。
password修改成功!
四、文件包含
Vulnerability: File Inclusion
Low:
发现一个可控参数。尝试读取其他文件。
成功读取了file4.php
我也可以读取其他文件比如说php.ini,报错是有绝对路径的。
Mediun:
这里查看源码发现:
他把http过滤了。
这样我们可以使用一下php伪协议。
High: