Broken Auth. - CAPTCHA Bypassing
Level: Low
验证码绕过,本题验证码没有时间限制,所以提交一次验证码后,可以暴力破解用户名和密码了
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 . "'";
Level: Medium
通过源码得知,在中级难度时,安全问题会发送邮箱。
$content = "Hello " . ucwords($login) . ",\n\n";
$content.= "Your secret: " . $secret . "\n\n";
$content.= "Greets from bWAPP!";
Level: High
在最高难度时,会将
sha1
的随机哈希值发送到邮箱,通过安全问题找回页面重置安全问题
Broken Auth. - Insecure Login Forms
Level: Low
查看网页源文件,找到了用户名和密码
Level: Medium
查看网页源文件,找到了用户名
brucebanner
,也找了一段js脚本
可以通过浏览器工具-> 控制台中复制这段
js
代码即可
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爆破即可
Level:Medium
中级难度加了一个随机盐值
因为盐值没有时间限制,同样可以进行爆破,但需要每次请求先获取道salt
的值。
Level: High
高级难度加了图片验证码
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
即可
Level:Medium
修改
Cookie
中的admin
值为1
即可
Level:High
如果有本事,去需要修改
session
中的admin
值为1
吧。
或者直接用管理员账号bee
/bug
登录也可以。
Session Mgmt. - Cookies (HTTPOnly)
Level: Low
Cookies中
httponly
字段设置为false
点击 Click Here ,本地JS脚本可以直接访问到top_security
这个变量值
Level: Medium
Cookies中
httponly
字段设置为true
点击Click Here,本地JS脚本无法访问top_security
变量值了
通过服务器端是可以直接访问的
Level:High
Cookies中
httponly
字段设置为ture
,同时缩短了cookies
的生存时间
与中级难度的区别在于,调整了Cookie的生存时间,仅有300秒(5分钟)
Session Mgmt. - Cookies (Secure)
Level:Low
可以看到,在这个级别的难度
httponly
已经设置为true
,
通过Session Mgmt. - Cookies (HTTPOnly)
的页面,点击Click Here,本地JS脚本无法访问top_security
。
Level:Medium
中级难度时,需要在SSL下Cookies才会有效
使用SSL后,top_security
改为maybe
切换回非SSL时,可以看到服务器不会返回top_security
的值
--我是分隔符--
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
处理
Level:High
在非SSL情况下,看不到
top_security_ssl
的值
改用HTTPS
后,可以观察到top_security_nossl
值
至此,第二部分也写完了,关于HTTPS
的问题,如果没有ssl
证书,最简单的解决办法,请去下载bee-box的虚拟机镜像吧。
网友评论