跳至主要内容

Hacking Team Android Browser Exploit代码分析

原文来自乌云,备份地址

0x00 前言


Hacking Team 415G泄露资料的vector-exploit-master\src\ht-webkit-Android4-src目录中,包含一份Android Browser exploit代码。用户在浏览器中点击攻击者的链接,便会执行恶意代码。恶意代码利用漏洞获取root权限,并静默安装木马apk。影响Android4.0-4.3版本。

00x1 漏洞利用的艺术


Exploit代码利用了三个已知的libxslt漏洞,获得对内存地址的完整控制能力。
  1. information leak (CVE-2011-1202)。
  2. Arbitrary memory read (CVE-2012-2825)
  3. Heap-buffer-overflow (CVE-2012-2871)
关键流程:
enter image description here

00x2 利用分析


1 申请330块1M大小的内存,并给每一块内存区域打上标记(0x70747468,‘HTTP’)。
enter image description here
2 进行内存搜索,利用CVE-2012-2825可以检查任意内存地址是否为0x70747468(’HTTP’)的能力,找出第一步的标记内存,得到标记内存所在的地址。这里查找内存的时候涉及一个技术细节。
When parsing a XSLT stylesheet containing a DTD, a structure of type xmlEntity is accessed as another type. The value of cur->ns->href is then compared with a string(“http://www.w3.org/1999/XSL/Transform"). If not equal, return null.
enter image description here
将ns->href和ns->prefix的值改为addr,然后利用二分法在[0x7a703030, 0x79303030]这块内存空间遍历addr,如果找到"http://www.w3.org/1999/XSL/Transform",会返回一个正确的documentElement。
enter image description here
由于这块地址在第一步中已经申请。这块内存我们知道地址并可以随意使用,这一步很关键。可控制的内存约4MB,称为ZoneX。
3 精心修改ZoneX,利用CVE-2011-1202泄漏堆对象的地址和CVE-2012-2871写特定内存地址为特定值的能力,把ZoneX标记为已释放,但JS仍然有读写的能力。
enter image description here
enter image description here
enter image description here
这一过程相当复杂,暂且跳过。
4 立即申请大量新的ArrayBuffer覆盖ZoneX,由于JS仍然有读写ZoneX的能力,可以马上修改一块符合条件的ArrayBuffer的起始地址为0x00000000,结束地址为0xFFFFFFFF,即整个内存区域。
enter image description here
5 利用BufferMemoryObject对象,封装对内存地址的操作,至此JS已经得到整个RING3内存的完整读写能力。
enter image description here
6 下载小马module.so
enter image description here
7 结合CVE-2011-1202信息泄漏漏洞,获得libwebcore.so的基址进而获得libc.so的基址。
enter image description here
然后在libc和libwebcore中搜索可用的gadget。
enter image description here
8 操作内存,覆盖JS对象的虚表,构造假的vtable完成两个gadget的拼接。并使用ROP攻击手法,通过mprotect给堆上的shellcode代码执行的权限,并将执行流程跳转到真正的shellcode。
enter image description here
enter image description here
9 shellcode中激活已经下载好的小马module.so;
enter image description here
10 接下来小马下载ROOT提权程序(exploit,ELF)获取ROOT权限;并留下一个shell /system/bin/rilcap,过程和rcs完全一致。
enter image description here
用IDA打开小马,发现其使用了Obfuscator-clang对代码进行了混淆。
enter image description here
所涉及的两种root方法,第一种是put_user,另一种是towel。
11 随后,小马在ROOT权限下静默安装黑客指定的木马程序。ALL DONE。

00x4 总结


从三个POC到一套完整的远程代码执行exploit,是一个复杂而艰难的过程。Hacking Team 的exploit演绎相当之精彩,不得不说是漏洞利用的艺术。从远程代码执行,到下载rcs远程控制客户端,Hacking Team构建了一条完整的黑色链条。看完之后,各位看官会不会和小编一样,背后吓出了一身冷汗。Android Browser Exploit仅仅是Hacking Team泄漏资料中的一个项目,其中的技术点便相当复杂。其所泄漏的项目,不仅包括源代码,还包括大量工程化的工具以及技术文档。仅需简单地配置和修改即可自动化生成黑客工具,很容易被不法分子利用。可想而知,这将大大降低黑产的技术门槛。黑产水平将在短时间内显著提升。守护用户安全之路将任重而道远。

Popular posts from 产品随想的博客

《Elon Musk》Chapter 1 - 10

To anyone I’ve offended, I just want to say, I reinvented electric cars and I’m sending people to Mars in a rocket ship. Did you think I was also going to be a chill, normal dude? ——Elon Musk, Saturday Night Live, May 8, 2021 PROLOGUE: Muse of Fire Near the end of the first week, the boys were divided into two groups and told to attack each other. “It was so insane, mind-blowing,” Musk recalls. Every few years, one of the kids would die. The counselors would recount such stories as warnings. “Don’t be stupid like that dumb fuck who died last year,” they would say. “Don’t be the weak dumb fuck.” 这种氛围有毒 “I realized by then that if someone bullied me, I could punch them very hard in the nose, and then they wouldn’t bully me again. They might beat the shit out of me, but if I had punched them hard in the nose, they wouldn’t come after me again.” 勇于挑战,哈哈哈 In the emergency room, when they were preparing to stitch him up, he resisted being treated until he was promised that the dog would not ...

Steve Jobs: `There's Sanity Returning', 1998

Nobody can doubt the charisma of Steven P. Jobs. The interim CEO of Apple Computer Inc., who returned to the company last July after his ignominious 1985 ouster, has brought back his legendary vision, impatience, and infectious passion for the Macintosh. Jobs spoke to Business Week Correspondent Andy Reinhardt in Apple's stark, fourth-floor boardroom, just after the company rolled out its new software strategy on May 11. Note: This is an extended, online-only version of the Q&A that appears in the May 25, 1998, issue of Business Week. Q: Now that you've introduced the new, bold-looking iMac, are you going to do some radically different products? A: There's a lot of talk about such things -- about handhelds, set-top boxes. A lot of computer companies have been searching for a consumer product. My view is that the personal computer has been the most successful consumer product of the last 10 years. What we have to do, what the industry stopp...

CAD 天正与 AI 工作流

基本步骤   1. 天正导出 T3 .dwg 文件,尽量在2007版本   2. AI 打开,打开时候可以选择比例,因为 AI 画布是基于真实尺度   3. AI 打开 .dwg 后,更改画布到所需要的大小   4. 之后用 PS 打开 AI 文件,可以维持想要的大小和比例   5. 而且 AI 可以读取天正的图层 课外了解   1. ETH 风格平面图   2. 日本创新性的停车方式   3. AI中的实时上色功能去了解

Rhino_GH从入门到精通听课笔记_二

一. 基础操作   1. Rhino F6精确更改相机视野   2. 中键和左菜单栏弹出时间都是可以自己设置缩短的 二. 软件技巧   1. GH搭配生成楼梯,柱子,栏杆   2. SU\3DS\OBJ 均可被Rhino识别   3. 已命名工作位置很有用,和和已命名是图标是不一样的   4. Rhino等轴测做法          显示——投影——改为平行          旋转改为0/360          视图——等角视图 三. 奇技淫巧   1. 善用微信搜索,比如“地形制作”,第三讲前半部分讲解利用高程点制作地形   2. Rhino转折剖制作方法,用面split模型,即模型被切成两个,类似于佐罗刀   3. 转折剖模型制作时间很久,工作量比较大 四. Rhino命令   1. worksession  链接文件进来,以一个图层显示,类似于SU里面的另存再载入的操作,可       以节省运算量,比ctrl+c ctrl+v快   2. ctrl+w  局部放大   3. hatch  嵌面

罗伯特·艾格 创始人肖像计划 <​Ep.2>

Link 罗伯特·艾格 创始人肖像计划 <​Ep.2>   https://zhuanlan.zhihu.com/p/127042313 Note 这个男人,过去十五年时间,几乎不接受采访,只是静悄悄的,花掉了1000亿美金。 ——这个男人,太厉害了...... 艾格跳槽去了ABC,从最底层的小导播做起,一辈子46年职业生涯,再也没有跳过槽。这46年里的最后15年,他升任CEO,做出了惊天动地的大事情。 今年,艾格退休写了自传,起名字叫《The Ride of a Lifetime》,我想了半天,这书名有点拽,只能翻译成《一辈子就要干一票大的》,笔者一介俗人,但愿艾总不要介意,哈哈。 ——《一辈子的旅途》,感觉会更契合些?哈哈哈 在艾总的这本《干一票》里,我读来读去,总是找不到他是怎么升到副总裁的——升到副总裁之后的一步步到CEO倒是写的很细致,看来大佬写自传也为自己讳,不愿意提太多当年勇。 ——Interesting 地表最强二人组(Tom Murphy和Dan Burke)最牛逼的成就就是不出让股权(Equity)的资本并购。一路用自由现金流加发行债券来进行收购,85年的时候举债30亿,配合巴菲特的5亿美金,小鱼吞大鱼,一把吃掉了当时比自己体量大得多的ABC电视台。他们俩的管理特点是极端节俭,冷血砍成本(不禁让人想到贝索斯),收购完成后,直接开掉1500员工、干掉高管电梯、高管餐厅、全员改坐经济舱,甚至于把曼哈顿总部的办公室卖了,换来1.75亿美金。三年多就把当时举的债还完。 作为巴菲特一辈子最推崇的企业家组合,Tom和Dan还有一个特点:放权。他们俩极为谨慎用人,但是一旦选中,就破格提拔,尚方宝剑交出,让牛人干大事。没干多久,俩人就接二连三的退休了,艾格你年轻,你来当总裁! 艾格原话是这么写的:“我心里也有预期,感觉最后总裁的位置是我的,但是确实没想到来的那么快”。按照网友的话就是“一脸懵逼”。 艾格有个特点,他性格是标准的外柔内刚,外圆内方。他不强势,不豪夺,永远不是人群中最聒噪的那位。他能等,在大都会(CapCities)花六年时间做三把手,等到二把手退休,再等好几年到一把手退休,最终上位 ——耐得住寂寞,受得住繁华 21世纪出头即提出战略: 第一句:我们只做高质量品牌视频 第二句:全力拥抱技术而不是对抗 第三句:全球化 大佬的出手案例...

进入双拼的世界

──小鹤双拼官方记忆口诀诗一首 Kuai ing Liang uang Ruan Cao Zou , T ue Qiu Yun Wei Jan Mian 快 迎 两 王 软 草 走 ,特 约 秋 云 为 见 面 Xia ua Song iong ShU ChI ZhVi , Geng Dai Bin Niao Fen Pie Hang 夏 娃 怂 恿 书 痴 追,更 待 斌 鸟 分 撇 航 注释: 如上,一和三两句的前四个字为一个大写字母代表了两个字的拼音   T ue各取拼音谐音为特约,Jan取英文谐音为见,其余均是一个大写字母代表一个字的拼音   斌鸟是一种鸟,分撇一词是分离之意,故斌鸟分撇航意为鸳鸯各自飞。   译文: 一个地方官笑着说:“快欢迎两位王爷到软草原走一走,我为两位特意约了秋云姑娘来见面”,   夏娃听见了,怂恿暗恋秋云的书痴快去追,此时不追,更待何时?难道要等鸳鸯各自飞? 记住后,每按一个键,都得停顿几秒,不过熟悉了字母和声韵母之间的对应关系。 双拼练习网站推荐: https://linci.co/sp/