前言
遇到某系统的一个逻辑漏洞,修改服务器返回的数据包就能够查看到原本登录之后才看得到的信息。但是怎么修改服务器返回的数据包呢?
burp设置拦截服务器返回的数据包
设置方法:proxy——>options——>Intercept Server Responses,勾选“Intercept responses based on the following rules:”
设置规则,当拦截请求时,同时拦截响应。
拦截服务器返回的数据包并改包
随意填写登录信息,拦截登录请求,点击forward。
拦截到服务器返回的数据包,并改包,点击“intercept off”:
这是漏洞修复之后的页面显示。在漏洞修复之前,修改服务器返回的数据包之后,可以看到系统的敏感信息。
总结
这个漏洞属于业务逻辑漏洞,前端js显示的逻辑设置不严谨,因此攻击者修改服务器返回的数据包就能够查看到系统的敏感信息。
他逻辑是这样的,当你访问这个域名,前端js就已经有这些信息,只是不登陆看不到。这部分信息,他检测是否登录,就只是依据服务端返回的error的值。
正常业务逻辑应该是,验证了登录,服务端才发送这些信息到前端。
参考
burp设置参考这篇文章