WebGoat靶场-XSS

反射型&DOM
第一题
没什么好说的,点一下按钮就行,只是让你初步认识一下控制台及script脚本的作用。
第二题
就最下面倒数第二个框可以注入,然后注入方式只有两种,alert和console.log,从源码可以看出来:
注入方法是写死的,必须满足题目设置。
第三题
这里考察DOM型XSS。
首先看一下webgoat靶场中URL的特点
http://localhost:8085/WebGoat/start.mvc#lesson/CrossSiteScripting.lesson/9
发现由#分割为两个部分。#后面的内容,是由前端处理的,也就是由script进行页面的切换。
下面的内容涉及到js,我不太会,先贴别人的贴子了:
简单来说就是找script文件中参数可控,且能触发xss的地方。
最终结果是:start.mvc#test
咱们可以通过这种路由去触发:http://localhost:8085/WebGoat/start.mvc#test/%3Cscript%3Ealert%281%29%3C%2fscript%3E
DOM型其实和反射型很像。
两种的区别在于:
- DOM型是直接由前端处理注入的参数,整个过程不会向后端传递数据
- 反射型是将数据传到后端过了一遍,再回显到前端页面实现注入的
第四题
用到上面那个#test,然后到f12 控制台检查。
存储型
直接往评论区发,跟上面调用的script是一样的。只不过这里只要有用户浏览评论区就会触发。
小结
这里显然只能学到最基础的,后面遇到具体漏洞的时候再补充吧
参考
https://drun1baby.top/2022/05/05/WebGoat%E4%BB%A3%E7%A0%81%E5%AE%A1%E8%AE%A1-07-XSS/