目录
一、菜狗的闯关
第2页
第4页
第5页
第6页
二、课程思维图
一、菜狗的闯关 第2页这一页就是试试webwolf好不好使
右上角有个小狼狼的就是要用到webwolf的题目
webwolf从这里下载:https://github.com/WebGoat/WebGoat/releases
如果下载很慢或者失败的话,可以在webwolf-8.1.0.jar文件上右键复制链接,然后复制到这个网站下载:https://d.serctl.com/
webwolf v8.1.0应该和webgoat v8.1.0一样,也要java 11.
启动webwolf服务器的命令是:
java -jar webwolf-8.1.0.jar --server.address=0.0.0.0
端口默认是9090
启动webwolf可以点击上图那个蓝色的here,就会直接跳转到http://你的ip:9090/WebWolf
先点一下灰色的这行Forgot your password?
跳转到下图这个页面之后,在输入框中输入这种格式的邮箱: webgoat用户名@随便什么东西
然后在webwolf的Mailbox中可以看到下图这样的邮件,邮件中有更新的密码
然后返回webgoat用 webgoat用户名@任何东西(甚至纯webgoat用户名)和刚刚webwolf邮件中看到的新密码登录,即可过关。(不过这题页数那儿不会变绿)
这题要求猜对另一个用户(比如tom,admin或者larry)的安全问题(最喜欢的颜色)的答案。
这题提示了没有防暴力破解机制,因此可以选定用户名,然后在burpsuite里面对颜色进行爆破。
然而我穷尽英文词汇量,随便猜了几个就猜到了。。所以就没有用burpsuite爆破。。
这道题告诉我们,选喜欢的颜色要高逼格一点,不要用常用词汇(不是)
安全问题也应该像密码一样有防暴力破解机制。
emmmm这页选两个看一下为啥不安全就过了
这题要求重置tom的密码,并以tom的身份登录。 题目提示tom收到邮件就会点击link。
先摸一遍重置密码的流程:
首先点一下上图灰色的这行Forgot your password?跳转到下图这个页面
然后在输入框中输入这种格式的邮箱: webgoat用户名@随便什么东西,点Continue
到webwolf,发现一封邮件
点击上图邮件中的link,会跳转到下图这个重置密码的页面
从下图可见,重置密码的链接中包含服务器ip和端口号,以及一串类似token的东西。
类似token的这段东西试了几次,没有发现什么规律,MD5解密也解不出来。
但如果服务器ip和端口号可以修改,tom点击邮件中的link的时候,webwolf就可以接收到这个token。由于这个token似乎是修改密码的唯一凭证,因此有了这个token,就可以修改tom的密码。
接下来就开始攻略tom:
给tom发个邮件,用burpsuite拦截,一路forward,等到下面这个包(或者给自己邮箱发个包,再重放也可以,发邮件这步和token没关系)
修改Host为webwolf的ip和端口号
在webwolf的Incoming requests中可以看到tom点击邮件中link的时候发来的请求,请求中包含了token
拿真正的修改密码的路径和token拼一拼,来到真正的修改密码的页面,输入新密码并save(这边还发现一个不安全的地方,同一个token能多次修改密码)
来到webgoat的account access页面用tom的邮箱和刚刚修改的密码登录。过关~