漏洞名称:

反射型XSS漏洞

漏洞位置:

2022-04-19_141500.png

漏洞分析:

  1. 漏洞地址是http://xxx.xxx.xxx/datum/search?tag=AR/VR/MR%22}%3C/script%3E%3Cscript%3E+alert(222)+%3C/script%3E%22。定位到路由位置如下:

2022-04-19_142109.png

  1. 往下走进入控制器

2022-04-19_142304.png

  1. 找到对应的if入口($path == datum)

2022-04-19_142424.png

  1. 有二级目录的进入$column->getContentData($path),继续跟入

2022-04-19_142739.png

  1. 继续进入$this->service->getContentData($key)

2022-04-19_142909.png

  1. 在$this->service->getContentData方法里定位到以下部分

2022-04-19_143126.png

  1. 这里$data[‘content’][‘keywords’]和$data[‘content’][‘tag’]都是由get方式直接传参过来的,之后返回到RouteController.php。这里的$data直接进入view函数,导致反射型XSS漏洞的产生。

2022-04-19_143645.png

  1. 漏洞复现:直接访问地址http://xxx.xxx.xxx/datum/search?tag=AR/VR/MR%22}%3C/script%3E%3Cscript%3E+alert(222)+%3C/script%3E%22触发弹窗。

3333.png

漏洞修复:

  1. 参数输入输出位置做好转义或者过滤。