劉惠明 騰訊玄武實驗室安全研究員
首先做沙箱方面的簡介,,之后介紹我們研究的動機,,在此基礎(chǔ)上我們會實現(xiàn)三步對沙箱的攻擊,,首先是實現(xiàn)關(guān)掉瀏覽器頁面之后仍然能夠存在的,。第二個即使重啟設(shè)備攻擊仍然是有效的,,第三個甚至重裝系統(tǒng)攻擊仍然是有效的,。
大家都用過瀏覽器,,在瀏覽器上面打開一個頁面那個頁面和瀏覽器主進(jìn)程之間是不一樣的,,如果它一樣,,我只要攻擊了一個頁面,其他瀏覽器的很多內(nèi)容都能被我獲取到,,為了規(guī)避這樣的情況,,現(xiàn)在主流瀏覽器全部加上了一個(英),一個沙箱的機制,,一個沙箱就是一個獨立的進(jìn)程,,當(dāng)(英)沒有渲染和GS執(zhí)行的時候會在一個獨立的進(jìn)程里面進(jìn)行渲染,如果出現(xiàn)問題也不會影響其他的情況,,它有幾個不同的限制,,這邊列出的就是資源方面的限制,它本身獲取到的資源有限,,IBC和內(nèi)核交互也有限制,,在此之外,現(xiàn)在也有一些新的瀏覽器也加上了一個(英),,一個頁面上可能有不同站點的頁面元素,,每個站點元素在不同的進(jìn)程中存在,就算攻陷了其中一個頁面的進(jìn)程你也無法去把整個頁面其他來源的(英)拿到,,它已經(jīng)在2018年5月份在(英)上面已經(jīng)生效了,,而且是默認(rèn)開啟。
除此之我們要知道的是沙箱逃逸是非常困難的事情,,現(xiàn)在想象一下手機上打開一個惡意頁面,,可能你覺得是正常頁面,你連到了一個會場wifi中,,隨便打開一個頁面它可能就在攻擊你,,然后拿到你瀏覽器的執(zhí)行權(quán)限之后,僅僅能干的事情把自己本身的頁面能偷到,,但是不能干其他的事情,,就是因為沙箱的限制,如果想做更多的事情,,需要把沙箱給突破,,突破沙箱是非常困難的,因為沙箱有很多新特性會把很多東西都限制起來,,一般情況下大家能夠開發(fā)的特性越多,,那么你的漏洞會越多,沙箱不是這樣,,沙箱特性越多,,限制越多,攻擊越困難,,越加越多的限制之后沙箱越來越攻擊困難,,大家也可以了解從一個側(cè)面跟大家描述一下,,因為大家都知道一個東西的難度跟它的價值是有正關(guān)系的,可以清楚的看到(英),,(英)上突破沙箱要50萬美元,,一個漏洞是50萬美元,如果沒有沙箱逃逸只給7500美元,,這就體現(xiàn)了沙箱逃逸本身漏洞的難度和價值所在,,每年也會有沙箱逃逸漏洞存在,但是比較困難,,我們能不能改變思路,,在沙箱內(nèi)部攻擊而不直接打倒它,是不是也能獲取很多攻擊的結(jié)果,?我們投入需要性價比,,我拿一個50萬美元的漏洞去打一個受害者投入產(chǎn)出比是非常低的,如果沒有突破沙箱直接突破7500美元就可以達(dá)到,,不打破沙箱可以做什么事情,,這就是我們研究的東西,有很多之前的工作,,在沙箱中不突破,,可以干一些(英)橫向移動,端口掃描,,做攻擊的人比較清楚,,但是它本身也干不了更多的事情,只能在這個頁面當(dāng)中進(jìn)行,,一旦關(guān)掉了惡意頁面所有攻擊全都失效,,在頁面打開的情況下,我們可以通過一些頁面上展示的方法,,就不一一展開了,,當(dāng)(英)打開的時候保持攻擊持久化是可行的,但是完掉這個頁面之后,,攻擊代碼是否還在手機或者是電腦里,,一般情況下是不在了,之后我們的研究思路是什么,?首先第一點想到的是就算關(guān)掉了瀏覽器頁面,,發(fā)現(xiàn)這個頁面你把它關(guān)掉,關(guān)掉之后是不是惡意代碼能不能不讓它消失,?這就是我們的目標(biāo),,我們的目標(biāo)是把惡意代碼攻擊的思路站在攻擊者的角度,,他們就想把惡意代碼保持的越久越好,, 可以通過渲染器進(jìn)程的(英)拿到當(dāng)你關(guān)閉這個頁面之后,,惡意代碼仍然在的攻擊方式,之后我們再使用(英)污染機制,,即使打開一個惡意頁面把手機重啟了,,惡意頁面還在,之后我們就提出了一個新的攻擊思路叫做(英),,通過這樣的方式即使升級了瀏覽器,,把這樣的方式裝上仍然能夠控制你的賬戶,相關(guān)細(xì)節(jié)就一筆帶過,,會把主要思路給大家講一下,。
渲染器進(jìn)程,我們的目標(biāo)就是關(guān)掉這個頁面之后依然存在,,方式就是把退出的方式給(英)掉,,我現(xiàn)在能夠在你的頁面中執(zhí)行任意代碼,這是我們的攻擊思路,,試想一下這樣的場景,,打開手機頁面,關(guān)掉,,那個瀏覽器頁面還在,,瀏覽器只是認(rèn)為我把它關(guān)掉之后這個頁面就不應(yīng)該顯示了,不顯示之后頁面還在后臺,,是不是會被瀏覽器殺掉,,如果不殺掉是不是就存在在你的后臺?關(guān)閉頁面有兩種方式,,第一種是我告訴這個頁面我要關(guān)掉你了,,你把自己殺掉。第二種當(dāng)我發(fā)現(xiàn)你沒殺掉自己之后,,我會強制把你給做掉,,如果沒有用第二種思路,僅僅告訴它自己關(guān)掉,,豈不是就是一種攻擊思路,,我們測試了一下發(fā)現(xiàn)在windows上(英)和安卓上的(英)都可以實現(xiàn)這樣的攻擊,現(xiàn)在安卓手機打開一個頁面,,現(xiàn)在關(guān)掉頁面,,那個頁面一直在后臺運行著,這都是可以存在的,,我們成功的在IE和Firefox,,就是告訴這個頁面自己關(guān)掉,chrome如何關(guān)閉tab,我們研究一下chrome,,chrome是通過兩種方式,,首先會讓它自己殺自己,會返回我正在跑的狀態(tài),,發(fā)現(xiàn)你還在運行的時候,,我們在第二個進(jìn)程里面會調(diào)(英),調(diào)到最后是(英),,在(英)上面是要去殺它,,在這樣的情況下,chrome在mac是不可以實現(xiàn)這樣的攻擊,,在安卓上面是可以的,,在安卓上面有一個特殊的機制,一般情況下大家理解打開一個頁面,,本身這個頁面應(yīng)該是瀏覽器進(jìn)程產(chǎn)生的,,但是在安卓上卻不是這樣的,安卓有一個特殊的機制叫做(英),,發(fā)現(xiàn)沙箱進(jìn)程負(fù)進(jìn)程其實不是(英),,負(fù)進(jìn)程是在(英)這個特殊的進(jìn)程,特殊進(jìn)程是(英)tab頁面,,瀏覽器想殺它是殺不掉的,,他們兩個權(quán)限是在一個層級,都是在應(yīng)用權(quán)限,,其次他們倆也沒有上下級,,這里是殺不掉,殺不掉當(dāng)然就出現(xiàn)了問題,,(英)進(jìn)程無法把(英)進(jìn)程正確的殺掉,,谷歌現(xiàn)在已經(jīng)修了,通過(英)的方式,,把它給修掉了,,也是一個相關(guān)的漏洞CVE,大家有興趣可以看一下,,在整體的實現(xiàn)思路就是(英)API,,API只要我自己不關(guān)閉就不殺掉,別人不殺我我就一直在,,我的惡意頁面一直在我的后臺運行,。
我們就實現(xiàn)了第一種攻擊思路,在我關(guān)閉了頁面之后惡意代碼仍然存在,,不僅關(guān)掉頁面,,又把瀏覽器關(guān)掉了,,甚至把我的設(shè)備都關(guān)掉了,是不是我惡意攻擊還能存在,?我們繼續(xù)往下研究,,發(fā)現(xiàn)通過cache是可以實現(xiàn)的,為什么使用cache,,本身瀏覽器它是經(jīng)常會使用的,大家覺得我打開瀏覽器不多,,但是你打開微信,,打開支付寶上面點的每一個按鈕,每一個鏈接都是用瀏覽器渲染后臺的,,現(xiàn)在相關(guān)的特性和速度大家覺得非常重要,,cache是提升速度非常重要的方式,我把常用的方式cache到本地,,就不用隨時到本地下載,,現(xiàn)在cache用的非常多,每個瀏覽器都會把常用的資源和代碼cache,,而這些cache會帶來一定的問題,,首先它廣泛用于各大瀏覽器。其次可以保存很長的時間,,最后它可以被污染,,cache污染也是我在拿到瀏覽器tab頁面可以做的事情,研究之后針對HTTPcache,,這只是其中的一個cache,,為了方便講述,我們需要通過污染HTTPcache拿到一個持久權(quán),,我們成功在windows,,MAC都做了實驗,但安卓和其他限于時間,,就沒有都做這個實驗,,完全都是可以的。
這是我們的攻擊思路,,攻擊者可以控制受害者打開一個頁面,,或者是受害者打開攻擊頁面,會把這個頁面相關(guān)的cache污染代碼給注入進(jìn)去,,之后我需要把這個頁面設(shè)計它跳轉(zhuǎn)到一個我要的頁面上,,比如說谷歌的(英),之后用受害者打開這個頁面之后就會有cache的出發(fā),,它為了速度快肯定要先看一下本地有沒有,,發(fā)現(xiàn)本地有,,我就不會在網(wǎng)上下載,就會加載污染cache,,打開之后我就可以把我相關(guān)的代碼給觸發(fā)掉,,好像聽起來很簡單,因為有cache的存在,,只要把它污染,,之后每次打開瀏覽器,打開頁面都會產(chǎn)生這樣的結(jié)果,,而我們攻擊的方式是污染新頁面的tab,,每次打開新頁面就會觸發(fā)代碼,所有人都會打開一個新頁面有這個操作,,我是能夠一直在你的瀏覽器當(dāng)中存在的,。
我們看一下我們是怎么實現(xiàn)的,這是第一步,,首先我要獲取你的遠(yuǎn)程代碼執(zhí)行權(quán)限,,因為瀏覽器越來越重視性能,可能加很多提升方式,,它漏洞的數(shù)量就不是特別少,,幾乎每個月都有一個非常好的控制你手機瀏覽器的漏洞出現(xiàn),而這些漏洞能夠非常輕易的被攻擊者拿到,,拿到你手機瀏覽器tab控制權(quán),,拿到你瀏覽器頁面控制權(quán)之后,把相關(guān)cache的代碼給放進(jìn)去,,我現(xiàn)在放到頁面上是一個測試的,,轉(zhuǎn)入目標(biāo)頁面注入payload,我們注入的是(英)頁面,,大家都要打開,,每次打開都會觸發(fā),每次它打的時候我們就會(英)一下,,受害者打開目標(biāo)頁面,,每次打開瀏覽器,打開新頁面的時候,,都會受害,,手機重啟或者是瀏覽器重啟都是可以的,它還是一直存在,,每次(英)能注意到,,如果注入的是密碼GS,就完全注意不到了,。
我們能存活多久,?是有幾個字段控制存活長度,,控制的方式比較方式,這邊不再具體講,,我們測試了之后在有限的測試環(huán)境下兩天時間是完全可以的,。
如何獲取更久的存活?因為這個cache是會過期的,,根據(jù)每個頁面的屬性都不一樣,,可能存儲幾天可能這個cache就該更新了,如何活的更久,?如何讓我的惡意代碼,,攻擊者,怎么讓更久的存活,?像(英)存活更久的本地cache,,(英)是一個網(wǎng)站為了提升訪問速度的思路,,把常用的GS代碼,,拉下來以后直接存到本地,下一次直接用,,是沒有過期時間的,,分析了前一萬個域名,發(fā)現(xiàn)四千個網(wǎng)站把(英)存在本地,,只要把這個(英)里面的GS代碼污染,,每次打開這些頁面都會觸發(fā)惡意代碼,這是在國內(nèi)講,,不方便放國內(nèi)的廠商,,一萬多個四千多個都有大家可以想象到,它不是一個漏洞,,本身僅僅是為攻擊者打開一個持久化大門,,能讓廠商說你不要用(英)嗎,也不行,,是為了提升速度,,為了提升速度帶來的麻煩我們要了解的。
在此之外,,新的瀏覽器特性也注意到這些點,,也開了更多的特性,像Site Isolation在我們的攻擊當(dāng)中,,過不了Site Isolation,,有了Site Isolation之后,每一個頁面上的站點都會是一個進(jìn)程,,互相之間是沒法污染的,,一個攻擊者,,比如說叫(英),它的GS是沒法污染到(英)GS的,,即使你們在一個頁面中用(英)連接進(jìn)來也是沒辦法污染的,,但是我們也把它給突破了,我們是怎么突破的,,首先先看一下Site Isolation是在(英),,去年上去的,它當(dāng)時是為了緩解(英)攻擊,,當(dāng)時是一個幽靈漏洞,,正好把我們的攻擊思路也給修掉了,它不同的頁面會在不同的進(jìn)程里,,如何繞過它,,我們在此基礎(chǔ)上研究了其他的cache,發(fā)現(xiàn)其中有一個特殊的cache叫做V8代碼cache,,而這個代碼也是cache的一種,,但是并不受(英)的影響,我們可以用它實現(xiàn)長久的攻擊,,(英)它的核心函數(shù)在(英)里面,,相關(guān)的攻擊策略跟剛才的有點類似,受害者打開頁面,,攻擊者可以獲取頁面控制權(quán),,之后打開一個被污染的頁面之后可以觸發(fā)代碼,其中會有很多比較多的(英)在里面,,我們需要把其中的(英)給匹配上,,因為本身這個(英)并不是說你給他任何一個東西都可以,他需要看的是正常(英),,我們可以分析一下在第一次check的時候會有這么多的流程,,在其中最主要的是標(biāo)黃這一點,(英)它是一個比較重要的參數(shù),,我們需要把這個東西給模擬出來,,怎么拿到相關(guān)的參數(shù)模擬出來正確的check?渲染進(jìn)程通過自身獲?。ㄓⅲ?,之后通過這樣的思路,同樣的方式去(英)請求我們需要的(英),,獲取之后就可以把其中的(英)找出來構(gòu)建出來正常的(英),,過了這個check就會有額外的check,剛才是部署時候的check,,也是跟剛才一樣,,也會檢查一些參數(shù)是否匹配,,而這些參數(shù)恰好我們也能拿到,比如說(英)我們可以看到是通過這樣的計算方式拿到的,,這就不展開講,,計算方法包括(英)我們都在tab的權(quán)限下獲取到的,之后我們可以通過比較公開的特征把它給繞過,,check C也是一樣,,這邊就不展開講,之后我們成功的在(英)兩個月前的最新版本實現(xiàn)了cache持久化,,即使打開了(英)最新的特性,,我仍然可以在你的頁面中長久的存在,打開惡意頁面重啟瀏覽器,、手機都沒用,,這是我們相關(guān)的攻擊思路,首先(英)它的函數(shù),,構(gòu)建payload,,構(gòu)建相關(guān)的payload,可以把這個cache寫進(jìn)去,,通過一個(英)也是一樣的(英),,讓大家清楚的看到我們攻擊成功了,,注入進(jìn)去,,V8的code cache是不受跨域污染,這個code cache是執(zhí)行權(quán)限的cache,,是在頁面當(dāng)中需要執(zhí)行的片段,,在cache持久化的防御方面,我們會發(fā)現(xiàn)它有很多的cache,,檢查了很多次,,我們一一把它突破,這是為什么,?是因為核心能夠在我自己的權(quán)限當(dāng)中獲取所有的cache相關(guān)的知識,,仍然能夠把cache過掉,我們現(xiàn)在就需要提出一些思路,,本身是有(英)進(jìn)程來限制,,而不是由你自己來限制,而(英)不能修改其他(英)的限制,,同時跟剛才的思路一樣,,我們在(英)進(jìn)程那邊得設(shè)置一些我tab不知道的東西去cache才能真正防御,否則加上之后在下面仍然能把你過掉,,(英)加上(英),,大家也不用擔(dān)心這是我們之前的例子,,這是它的評估,在V8 cache這一方面可以實現(xiàn)在重啟手機之后仍然存在,,如果重啟(英)到一個新的(英),,直接升級了(英),重裝了(英)一個新的版本是可以的,,是能夠突破攻擊的條件,,目標(biāo)的URL把(英)給改了也可以繼續(xù)突破,在這樣的防御方案都是可以通過精巧的攻擊把它繞過的,。
重裝瀏覽器把原來的刪掉再裝一個新的進(jìn)去,,這樣是可以防范我們的攻擊,我們怎么能把這個攻擊也給做了,?即使你把設(shè)備重啟,,即使把瀏覽器重裝,還能攻擊呢,,我就提出了一個克隆攻擊的思路,,我們知道安卓webView本身是非常重要的組件,這個瀏覽器并不是獨立的瀏覽器,,如果打開朋友圈的鏈接,,一點,并沒有跳到瀏覽器,,直接在微信里打開,,就是因為微信直接用了系統(tǒng)webview,就可以在任何應(yīng)用當(dāng)中打開界面,,而且能夠微信打開頁面之后被微信所配置,,可以配置它各種方面的屬性,(英)它的安全機制首先在安卓7或者是7.1之前,,都是和主app是共享一個進(jìn)程,,微信打開一個惡意頁面,那個惡意頁面本身所在的進(jìn)程和你微信的進(jìn)程是一樣的,,是不是覺得很危險,?但是安卓8.0之后打開一個頁面之后,那個頁面和你本身微信,、支付寶本身的APP是隔離開的,,通過(英)來緩解這樣的攻擊思路。
我們再說一下克隆攻擊是什么,,如何在(英)得到一個持久化攻擊,?首先我們需要從webView拿到應(yīng)用本身的東西,我就是想知道支付寶的數(shù)據(jù),其次還要保持控制,,其次最好是遠(yuǎn)程的,,隱蔽的,(英)是滿足了所有的條件,,什么是克隆攻擊,?說克隆大家都會覺得是生物學(xué)上的克隆,我通過一個細(xì)胞核就可以把一個生物完整的拷貝過來,,對移動設(shè)備,,移動設(shè)備最重要的是移動應(yīng)用,怎么能夠克隆到所有的信息,?本身是我們需要梳理的東西,,現(xiàn)在說一下移動應(yīng)用什么是它的細(xì)胞核,最關(guān)鍵的一點怎么把它拿過來,,現(xiàn)在的應(yīng)用,,大家現(xiàn)在用的微信、微博都是基于云端去考慮設(shè)備的,,很多東西并不是存本地,,肯定是存在云端,想要的就拉下來,。
第二個長時間保持在線狀態(tài),,每次登微博都上一次賬號,,輸入一下賬戶密碼才行這肯定是不接受的,,保持登錄狀態(tài)長久。第三點也是比較重要的,,跟PC端為什么不一樣,,因為用手機IP和位置經(jīng)常會變的,,云端并不知道你到底是不是你自己了,,馬上出差到美國,,現(xiàn)在就在美國登錄了,異地登錄也是很容易之前PC端異地登錄了,,在另外一個地方下線,,現(xiàn)在下線大家的用戶體驗非常差,稍微移動一下或者是拿著手機跑到其他的地方就下線了,。
首先我們在移動應(yīng)用上需要的是長久存活的,,我們就有這樣的想法,能不能通過某種方式把你的這些核心(英)給偷過來,,這里面跟(英)有一些區(qū)別,,左邊是受害者,右邊是攻擊者,,受害者用了最新款的三星手機,,F(xiàn)acebook用也是最新款,,受害者需要做的就是隨便掃一個二維碼,之后我們會發(fā)現(xiàn)攻擊者這邊有一些反應(yīng),,攻擊者這邊是把受害者整個APP信息全部都拿過來了,,是一模一樣的東西,而且受害者根本不知道,,他覺得自己的賬戶很正常,,實際上有一個遠(yuǎn)處的人在盯著你,當(dāng)我想發(fā)一個東西的時候,,可以隨時在攻擊者的手機上發(fā)出去,,他已經(jīng)把狀態(tài)直接發(fā)到他的賬戶上了,攻擊者可以拿到受害者應(yīng)用上面的所有東西,,基于云端,,只要拿到(英),云端申請,,所有東西都在我這里,,我想發(fā)什么都沒有問題。
怎么才能達(dá)到這樣的攻擊效果,?首先怎么偷到,?之前在安卓7.1之前,(英)和(英)是共享一個進(jìn)程,,現(xiàn)在我們都知道我直接通過一類或者是N類的漏洞,,而這個漏洞是(英),而webview并不是app自帶的,,裝一個微信或者是支付寶并不自帶的瀏覽器,,這個瀏覽器是你手機里面的,而手機里面瀏覽器的更新webview更新會非常慢,,根據(jù)我們的調(diào)查,,絕大數(shù)的手機webview都會有,拿到它的(英)是非常簡單的,,在安卓7.1之前他們倆又是在同一個進(jìn)程里,,訪問一個惡意鏈接,拿到你的控制權(quán),,把你的(英)全部偷過來,,剛才那個并不是Facebook的問題,是手機上webview組件的問題,,它的組件更新到最新版本但還是有這樣的漏洞,,導(dǎo)致我可以拿到那個手機上面所有跟Facebook這樣所有APP,并不是Facebook的問題。
在安卓8.0之后,,大家用安卓覺得7.1之前也只占用戶量的一半左右,,大多數(shù)人已經(jīng)升級到了8.0,甚至9.0,,那么安卓O之后怎么攻擊,?安卓O之后每一個webview的進(jìn)程都是獨立的,我獲取到頁面之后我是沒法獲取到應(yīng)用的(英),,之后怎么辦,?把這個APP和webview是有相關(guān)的墻在那兒擋著,自己不能訪問網(wǎng)絡(luò),、讀寫硬盤,,我們可以通過一個誤配置的webview來實現(xiàn)克隆攻擊,手機瀏覽器頁面是有需求跟手機APP通信,,現(xiàn)在在微信支付寶打開一個他們自身的鏈接,,他們總不能讓你再登錄一次,他們倆之間肯定需要有信息交互,,很多時候需要打開相關(guān)的配置,,開關(guān),而這其中有兩個配置開關(guān)叫(英),,這兩個開關(guān)能夠打開會怎么樣,,會發(fā)現(xiàn)打開之后如果他們倆任何一個打開了,(英)都能夠允許通過(英)的方式獲取到這個APP中所有的文件,,當(dāng)一個應(yīng)用打開開關(guān)之后,,我們可以通過webview來實現(xiàn)同樣的攻擊效果,通過SD卡放一個(英)存到SD卡之后,,之后再通過get的方式把它(英)給傳到云端,,就直接獲取手機APP中的文件,如何讓一個APPwebview去漏的一個file,,這個有點繞,,對安卓不太熟悉會不太理解,我們今天講的內(nèi)容是沙箱,,沙箱APP也有沙箱,,不僅APP有沙箱,而且不同瀏覽器不同域之間也有相關(guān)的限制,,我們從APP打開的頁面是APP的,是無法跨域到(英)域,,無法通過(英)去獲取到(英),,怎么才能能夠從APP域到(英)域,用一個UXSS漏洞也是不太合理的,最后我們發(fā)現(xiàn)可以使用(英),,這個是每個APP自定義的鏈接形式,,比如說打開了一個淘寶:/線,打開它,,瀏覽器就會跳轉(zhuǎn)到淘寶,,打開瀏覽器的頁面會跳轉(zhuǎn)到APP上,就是這樣的思路,,本身我們在webview會有這樣的攻擊入口,,通過(英)這個就不詳細(xì)展開了,這邊的效果,,我點一個頁面,,下載到SD卡之后,我再通過(英)讓它再加載SD卡的惡意文件,,我需要一個跳板,,首先下載下來一個文件,這個文件有惡意代碼,,再通過(英)的方式把它給加載進(jìn)來,,加載的方式是通過(英)加載的,現(xiàn)在就不存在(英)和APP之間的跨域關(guān)系,,現(xiàn)在直接拿到應(yīng)用里面的(英),,這個是我們攻擊的思路,受害者打開一個釣魚鏈接,,是能夠直接把文件下載到SD卡,,相關(guān)的(英)會不會觸發(fā),就會把英)發(fā)送到攻擊者服務(wù)器上,,之后通過(英)去拿到所有的賬戶信息,,任何沙箱都沒突破,任何沙箱也都沒有阻擋,,但是已經(jīng)拿到了他的賬戶永久控制權(quán),,現(xiàn)在他的APP(英)是不過期的,file,,URL,,并不是我想加載一個什么就可以加載,應(yīng)用也會想著去防御攻擊,,大部分應(yīng)用防御是比較困難的,,前面的防御幾乎是不可能的,可以通過(英)或者是(英)的方式把它繞過去,,之后就可以實現(xiàn)在很多應(yīng)用上實現(xiàn)攻擊思路,,這都是我們攻擊的流程中需要繞過的方法,,通過這樣的方法幾乎能繞過幾乎所有的APP都可以繞過。
繞過防御,,還有另外一點防御,,有一些應(yīng)用會想到會不會把我的(英)給偷走在其他地方就可以登錄?那我需要跟你的設(shè)備綁定一下,,我要綁定到設(shè)備的(英),,只有你的設(shè)備(英)跟我登錄過的設(shè)備一樣,才能認(rèn)為你可以登錄上去,,否則就是把你的(英)偷過來,,這樣他們想到了防御,但是沒有想到是不是可以簡單的繞過,,雖然有一些應(yīng)用會有防御措施,,但是他把獲取到的(英)綁定信息也當(dāng)成文件存到了本地,之后仍然可以通過剛才提出的攻擊方式把這些文件也拷貝到,,這就繞過了相關(guān)的防御,,這是相關(guān)的攻擊思路。
這是我們對于漏洞的緩解和防御,,我們可以通過把(英),,不要接受任何的外部鏈接,把(英)安全的放在(英)來防御,。
這是舉的國內(nèi)廠商的例子,,200家有27個是可以非常簡單的獲取到,一些財經(jīng)應(yīng)用,,購物應(yīng)用都會有這樣的問題,,最后我們可以在不突破沙箱的情況下獲取到很多攻擊的方式,之前提到的能夠達(dá)到最終的(英),,一直保持登錄,。
這是我們的結(jié)論,很多攻擊仍然能夠在不突破沙箱的情況下完成,,攻擊者可以偷掉很多受害者相關(guān)的賬號,,克隆他們的賬戶實現(xiàn)非常長時間的攻擊,這句話跟瀏覽器安全或者是沙箱開發(fā)者說的,,很多廠商也有這樣的疑惑,,沙箱已經(jīng)嚴(yán)謹(jǐn)了,很好了,,但是它是現(xiàn)在最好的選擇,,肯定要加,不是說加上就完全沒事,,仍然可以做很多事情,,現(xiàn)在研究很多的沙箱機制能夠?qū)崿F(xiàn)更長的攻擊,,這是我們今天實現(xiàn)的三種攻擊,,都報給了廠商,,也全部修補了,大家不用擔(dān)心,。