业务系统实现审计日志功能时在记录IP时从请求头信息(x-forwarded-for等)中获取IP地址,x-forwarded-for等信息可以进行伪造,从而造成系统存在设计缺陷,更严重的会存在XSS漏洞。
检测方法:
1)使用burpsuite拦截访问请求,放入repeater中
2)在请求中增加参数X-Forwarded-For: 10.10.1.13)查看系统日志,检查日志内容中IP字段是否记录为10.10.1.1,如果是则说明存在漏洞。
解决方案:
系统获取IP地址时,使用request.getRemoteAddr()方法,可避免此设计缺陷。