openrasp
openrasp copied to clipboard
XSS的检测存在绕过的可能性
OpenRasp版本:1.0rc2分支编译的最新代码 测试用例集:OpenRASP 官方测试用例集合(002-file-read.jsp)
构造的payload:http://localhost:8081/vulns/002-file-read.jsp?file=%3Ciframe%20src%3d%22http%3a%2f%2fwww.baidu.com%22%3E
结果:payload中的
原因:Response body返回的结果为
<p>读取内容</p> <pre>java.io.FileNotFoundException: \localhost\vulns\reports\<iframe src="http:\www.baidu.com"> (文件名、目录名或卷标语法不正确。)</pre>
与payload(<iframe src="http://www.baidu.com">)相比缺少了一个“/”。从而绕过了检测逻辑。
计划使用最长公共字符串算法来解决这个问题,下下个版本 v1.1 会增加开发模式,勾选后会开启这个算法。

感觉你对算法了解很深入,有其他想法可以加入QQ群讨论。。
最长公共字符串? 具体是怎么解决,可以简单描述一下吗,谢谢!