关于这个X-FORWARED-FOR 有很多非主流漏洞都和他有关 之前我和我的基友misty以为关于这个标头的漏洞会有很多会被很多开发者忽视 会出现很多关于他的安全漏洞
0x01 这个X-Forwared-For是个啥 啥样的漏洞会关于他
关于这个X-Forwared-For 他的作用很简单 很多网站利用这个东西获取客户的IP 也就是网页浏览者的Ip 他通过http包传输 我们暂时先不讲他的运行原理 毕竟我们不是聊开发 那么了解他是个啥之后 我们就聊聊关于他常见的三种安全问题形式 这三种漏洞都是因为这个X-Forwared-For是放在http包里的所以我们可以任意修改而出现的漏洞
第一种 伪造IP掩护自己的行为
之前我在乌云上就看到了一个漏洞 这个漏洞大概就是说 这个网站在获取IP时采取了X-Forwared-For这个方法 然后黑客可以伪造这个发送过去的IP 然后服务端获取到的Ip就不是黑客的真实IP 然后就形成了安全问题
我最初以为这根本不算漏洞厂商不会受理 可是没想到还真有厂商受理了........无奈之
第二种 形成XSS
我之前着重研究的就是关于这个东西的XSS 我还在XSS攻击剖析那本书里看到了有几句话的内容讲述这个漏洞 可是估计没人认真看这段 毕竟是非主流 具体我下面会讲的
第三种 密码找回或者常用地验证
我们都知道 申诉时他会验证你是否在常用地申诉的 那么我们就可以利用这个 还有就是QQ如果设置了登陆也需要密保 那么如果你不在常用地登陆他就会让你验证密保 我们就可以利用这个东西绕过这个验证密保的环节(换成常用地的IP就ok 一会下面我会详解)
0x02 先上工具 手工改包神马的都弱爆了
不多说 firefox把这个插件当下来你就懂了
引用我的偶像7B的一句话 : 不会你就多看点AV你就会了。
0x03 第一种和第二种的搞法
第一种 很简单就是在插件里改一下 如果他获取的IP变成了你改的IP就说明有这个安全问题
第二种 就有点复杂了 上IP138的XFOR-XSS镇楼 <ignore_js_op>
这种XSS的形成原理是这样的
很多网站会获取你的IP
然后回显出来(如果单纯是回显很鸡肋 估计是无法利用的)还有一些会保存在你的个人资料里 比如discuz (但是discuz安全性果然在国内数一数二 我在discuz里一个这样的XSS都没看到过) 或者在下次登录时显示出来上次登录的IP 如果没有做好处理 就会形成XSS
不废话 你应该能懂
所以各位基友以后挖洞盲打时也可以开着这个插件然后把XSS代码放里 然后浏览网站 这样如果你突然遇到了一个你写的弹窗的话多半是那块有某个获取IP的功能没处理好!
其实还有很多网站会存储IP到数据库 比如discuz 所以也可以利用这个插件构造一些sql语句试试能不能进行注入 因为小弟不才 不会php 所以这部分研究就做不了了 感兴趣的大牛做一些然后分享出来吧!
0x04 关于第三种和小总结
第三种我不知道腾讯在服务端的验证机制如何 所以我不敢妄下定论 但是如果开着插件并且更改为常用地的IP去申诉的话效果的确会有加成
别的东西以此类推 写太多了不想多写了 多写就成废话了
另外 很多站都不是用这个X-FORWARED获取IP的 所以你用这个插件修改不了IP别怪这个插件不好使!
就介绍到这吧 谢谢大家 谨以此文给大家增加一点思路!还有给开发的提个醒 这块很多小程序都会疏忽 ...并且如果能不用就尽量不用这个协议吧 很不安全 ..
趁着X-FORWARED还有人用 赶紧去挖几个吧
纯原创 看在我辛苦码字的份上 不给点JB你对的起本屌丝么?!
个人一点经验 大牛勿喷
补充内容 (2014-2-12 11:55): 谢谢各位指正 我第一句话的确有一个错误 他不是一种协议