Broken Auth. - CAPTCHA Bypassing
Level: Low
验证码绕过,本题验证码没有时间限制,所以提交一次验证码后,可以暴力破解用户名和密码了
![](https://img.haomeiwen.com/i11772931/44f49f5820ae3bf8.png)
![](https://img.haomeiwen.com/i11772931/8a97d1cce098c163.png)
Level:Medium / High
方法如上,依然可以暴力破解
Broken Auth. - Forgotten Function
Level: Low
在源码中使用了
mysqli_real_escape_string()
函数,进行了防sql注入验证
只能通过暴力破解邮箱了,挂上你的字典试试看吧~~~
邮箱正确了,会提示你的安全问题,也不会直接显示密码。
$email = mysqli_real_escape_string($link, $email);
$sql = "SELECT * FROM users WHERE email = '" . $email . "'";
![](https://img.haomeiwen.com/i11772931/7da79ba1d5ea086b.png)
Level: Medium
通过源码得知,在中级难度时,安全问题会发送邮箱。
$content = "Hello " . ucwords($login) . ",\n\n";
$content.= "Your secret: " . $secret . "\n\n";
$content.= "Greets from bWAPP!";
Level: High
在最高难度时,会将
sha1
的随机哈希值发送到邮箱,通过安全问题找回页面重置安全问题
![](https://img.haomeiwen.com/i11772931/3af406df3592f8e8.png)
Broken Auth. - Insecure Login Forms
Level: Low
查看网页源文件,找到了用户名和密码
![](https://img.haomeiwen.com/i11772931/1db1ab7c314e4db6.png)
Level: Medium
查看网页源文件,找到了用户名
brucebanner
,也找了一段js脚本
![](https://img.haomeiwen.com/i11772931/c2a0c3c3b13de933.png)
可以通过浏览器工具-> 控制台中复制这段
js
代码即可
![](https://img.haomeiwen.com/i11772931/c7d35606e74a7070.png)
Level: High
没什么解法了,只剩下
bee
/bug
了
Broken Auth. - Logout Management
这个通过源码可以发现,Low/Medium/High三个级别的区别
switch($_COOKIE["security_level"])
{
case "0" :
// Do nothing
break;
case "1" :
// Destroys the session
session_destroy();
break;
case "2" :
// Unsets all of the session variables
$_SESSION = array();
// Destroys the session
session_destroy();
break;
default :
// Do nothing
break;
}
Level: Low
退出登录时,
session
没有销毁,可以账号依然有效
Level:Medium
退出登录时,
session
已经销毁,需重新登录
Level:High
退出登录时,
session
先被清空,然后销毁,需要重新登录
Broken Auth. - Password Attacks
Level: Low
使用Burp Suite爆破即可
![](https://img.haomeiwen.com/i11772931/c8152d4696924ac3.png)
Level:Medium
中级难度加了一个随机盐值
因为盐值没有时间限制,同样可以进行爆破,但需要每次请求先获取道salt
的值。
![](https://img.haomeiwen.com/i11772931/c5eb29ecd9b91a5f.png)
Level: High
高级难度加了图片验证码
![](https://img.haomeiwen.com/i11772931/92965b1715df3cc4.png)
Broken Auth. - Weak Passwords
弱口令,没啥说的,挂字典吧。
Level:Low
test / test
Level: Medium
test / test123
Level: High
test / Test123
Session Mgmt. - Administrative Portals
Level: Low
直接修改URL中的
admin
值为1
即可
![](https://img.haomeiwen.com/i11772931/a92df41f7a4a58da.png)
Level:Medium
修改
Cookie
中的admin
值为1
即可
![](https://img.haomeiwen.com/i11772931/ebcd8c2941c0a015.png)
Level:High
如果有本事,去需要修改
session
中的admin
值为1
吧。
或者直接用管理员账号bee
/bug
登录也可以。
![](https://img.haomeiwen.com/i11772931/8e531cba1f6ac8c5.png)
Session Mgmt. - Cookies (HTTPOnly)
Level: Low
Cookies中
httponly
字段设置为false
点击 Click Here ,本地JS脚本可以直接访问到top_security
这个变量值
![](https://img.haomeiwen.com/i11772931/0783a6608f0a17de.png)
Level: Medium
Cookies中
httponly
字段设置为true
点击Click Here,本地JS脚本无法访问top_security
变量值了
通过服务器端是可以直接访问的
![](https://img.haomeiwen.com/i11772931/dadb66dffd4393c9.png)
![](https://img.haomeiwen.com/i11772931/dd7aa232f78343e5.png)
Level:High
Cookies中
httponly
字段设置为ture
,同时缩短了cookies
的生存时间
与中级难度的区别在于,调整了Cookie的生存时间,仅有300秒(5分钟)
![](https://img.haomeiwen.com/i11772931/a2b12d44cb8d509d.png)
Session Mgmt. - Cookies (Secure)
Level:Low
可以看到,在这个级别的难度
httponly
已经设置为true
,
通过Session Mgmt. - Cookies (HTTPOnly)
的页面,点击Click Here,本地JS脚本无法访问top_security
。
![](https://img.haomeiwen.com/i11772931/c12f4fe3efadf4d1.png)
Level:Medium
中级难度时,需要在SSL下Cookies才会有效
使用SSL后,top_security
改为maybe
切换回非SSL时,可以看到服务器不会返回top_security
的值
![](https://img.haomeiwen.com/i11772931/ffbd066cdbd1bdf3.png)
--我是分隔符--
![](https://img.haomeiwen.com/i11772931/c78f01a3059e3fe8.png)
Level:High
与上题一样,在中级难度基础上增加了过期时间的限制
Session Mgmt. - Session ID in URL
三个等级的难度都一样
Session ID 永远不要暴露在URL中
Session Mgmt. - Strong Sessions
本题主要是通过观察
top_security_nossl
和top_security_ssl
的情况,
来了解Session
的安全存储
Level:Low
没有任何安全可言
Level:Medium
可以观察到
top_security_nossl
的值是使用了HASH
处理
![](https://img.haomeiwen.com/i11772931/db17c76105890070.png)
Level:High
在非SSL情况下,看不到
top_security_ssl
的值
改用HTTPS
后,可以观察到top_security_nossl
值
![](https://img.haomeiwen.com/i11772931/a1076c2899c02a2a.png)
至此,第二部分也写完了,关于HTTPS
的问题,如果没有ssl
证书,最简单的解决办法,请去下载bee-box的虚拟机镜像吧。
网友评论