工具的使用
首先github上下载火狐插件(正版收费),按F12调用
服务器生成sessionID通过response返回给浏览器,sessionID存放在浏览器cookie中,然后再通过cookie发送给服务器验证。
获取浏览器请求的cookie

使用Hackbar伪造,输入要访问的服务器url以及刚获取的cookie,点击execute

这时会自动进入界面。

Low Security Level
模拟管理员登录,在浏览器中,点击Generate,Burpsuite抓包,发送到Repeater,go一次,发现:
请求头中:
PHPSESSID=majmpibnicga5ks1oisqkuhf5h; security=low
响应头中:
Set-Cookie: dvwaSession=1

多go几次,发现dvwaSession一直增加,每次加1。
恶意攻击者通过寻找到上述规律,使用浏览器2,成功构造出payload:
Cookie: dvwaSession=71; PHPSESSID=majmpibnicga5ks1oisqkuhf5h; security=low
在无密码认证的情况下,根据cookie用hackbar成功登陆到界面:http://www.dvwa.com/vulnerabilities/weak_id/
Medium Security Level
拟管理员登录,在浏览器里,点击Generate,burp里发现:
请求头中:
Cookie: PHPSESSID=majmpibnicga5ks1oisqkuhf5h; security=medium
响应头中:
Set-Cookie: dvwaSession=1561097825

多go几次,发现dvwaSession和时间戳变化一致。
恶意攻击者通过寻找到上述规律,使用浏览器firefox,成功构造出payload
Cookie: dvwaSession=1561097825; PHPSESSID=majmpibnicga5ks1oisqkuhf5h; security=medium
无密码认证的情况下,根据cookie用hackbar成功登陆到界面:http://www.dvwa.com/vulnerabilities/weak_id/
High Security Level
模拟管理员登录,在浏览器 1 里,点击Generate,burp里发现:

name 必需。规定cookie的名称。
value 必需。规定cookie的值。
expire 可选。规定cookie的有效期。
path 可选。规定cookie的服务器路径。
domain 可选。规定cookie的域名。
secure 可选。规定是否通过安全的HTTPS连接来传输cookie。
httponly 可选。规定是否Cookie仅可通过HTTP协议访问。
value 值:last_session_id_high 自增 1,再用 md5 加密 expire 值:当前时间再加一个小时 path 值:/vulnerabilities/weak_id/
多go几次,发现dvwaSession值通过MD5加密。将每次产生的MD5解密,发现解密后的值,发现和低等级中的代码一样,是从0开始加的。
恶意攻击者通过寻找到上述规律,使用浏览器2,成功构造出payload:
Set-Cookie: dvwaSession=182be0c5cdcd5072bb1864cdee4d3d6e;security=high; PHPSESSID=majmpibnicga5ks1oisqkuhf5h
在无密码认证的情况下,成功登陆到界面:http://www.dvwa.com/vulnerabilities/weak_id/
Impossible Security Level
采用随机数+时间戳+固定字符串再进行sha1运算,完全不能猜测到dvwaSession的值。实现了用户安全会话认证。