成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

移動開發 Android
由于 Android 系統在解析時對非 COMP_DEFLATE 的壓縮方式采取的是未壓縮處理,從邏輯上看,這種做法并不符合規范,因此,導致 b356 成功地利用了這一邏輯漏洞。徹底的解決方案應該是 Android 系統按照規范的 zip 包解壓格式進行處理。
背景

隨著移動應用的廣泛普及,惡意軟件也日趨復雜和隱蔽。本報告著眼于一個由 ReBensk 提交至 incinerator.cloud 的惡意 Android 軟件樣本。

樣本哈希值:

MD5: 2f371969faf2dc239206e81d00c579ff

SHA-256: b3561bf581721c84fd92501e2d0886b284e8fa8e7dc193e41ab300a063dfe5f3

在 ReBensk 提交至 incinerator.cloud 的多個惡意樣本中,我們特別關注了一款經過自定義修改的 APK 文件,以下簡稱為“樣本 b356”。這個樣本采用了獨特的混淆和隱蔽技術,導致標準的解壓縮工具無法成功解壓其內容。通過特定的修正操作,我們成功突破這一限制,并進一步分析了該樣本。

分析過程

1. 解壓失敗分析

在嘗試使用 7z 工具解壓這個 APK 文件時(Apk 本質上是一個 ZIP 文件),遇到錯誤顯示 AndroidManifest.xml header 錯誤,這說明標準的解壓過程無法正確地解壓樣本 b356。

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

在使用 010 Editor 打開 APK 文件并應用 ZipAdv 模板進行解析后,并未發現任何明顯的錯誤或異常。

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

為了更深入地了解問題,我們打開了一個正常運行的 APK 文件進行對比分析。這樣做是為了確定是否存在某種特殊或不規則的結構或數據,可能是導致解壓失敗的原因。

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

通過對比發現,我們發現樣本 b356 采用了一個不非法的壓縮算法 0x23C2。在標準的 ZIP 格式規范中,壓縮方法由一個短整數(short)表示,取值通常如下文所示(以下代碼取自 010 Editor 的 ZIPAdv.bt 模板)。由于 0x23C2 不是任何已知的標準壓縮方法,因此 7z 等解壓工具無法識別和處理。

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

因此,樣本 b356 采用了未知的壓縮算法,導致通用壓縮工具解壓縮失敗。但為什么它能在 Android 系統上仍然可以成功安裝和運行呢?

2. Android 系統的成功解析與運行原因

正如下圖所示, 根據 Android 系統源代碼,當系統遇到非 COMP_DEFLATE 的壓縮算法時,它會采用“未壓縮”(COMP_STORED)的方法處理輸入文件。具體來說,系統直接讀取未壓縮數據的長度,并據此進行解析。

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

請注意看黃框和紅框中的代碼對比,在黃框中,如果使用的是 COMP_DEFLATE 壓縮算法,系統將按照相應的方法解壓縮,如果不是,系統將直接讀取壓縮前的長度,然后進行處理。

這就解釋了為什么修改了 AndroidManifest 的壓縮方法后,系統仍然可以正確運行。樣本 b356 在正常打包流程完成后,將包中的 AndroidManifest.xml 文件內容替換為未壓縮前的內容,并將壓縮算法替換為非 COMP_DEFLATE 。因此,常規解壓工具會失敗,但 Android 系統會按照未壓縮的方式處理,因此可以正常運行。

3. 解壓程序的修改建議

3.1 修復 Apk

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

按照 Android 系統的處理方式,Apk 的 AndroidManifest.xml 只能采用兩種壓縮方式。COMP_DEFLATE 或未壓縮。

如果壓縮算法不是默認的 COMP_DEFLATE ,那么一定是未壓縮。因此修復 apk 的方法是,如果發現壓縮算法不是 COMP_DEFLATE ,將壓縮算法設置為 0,即未壓縮,并將壓縮后的長度設置為壓縮前的長度。這樣,常規解壓工具就可以解壓了。

修復后,我們嘗試使用 7-Zip(通常簡稱為 7z)工具進行解壓,結果如下圖所示。盡管仍然存在錯誤,特別是關于 CRC(循環冗余檢查)值尚未修復的問題,但我們已成功解壓了 APK 文件,并可以訪問其中的 AndroidManifest.xml 內容。

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)AndroidManifest.xml 多種混淆繞過靜態分析的技術分析(Zip 格式類型修改繞過)

3.2 靜態分析工具的修復

靜態分析工具可以按照系統的解壓方式處理,如果發現 AndroidManifest.xml 的壓縮方法不是 COMP_DEFLATE ,那么就讀取壓縮前的長度作為 AndroidManifest.xml 的內容。

總結

由于 Android 系統在解析時對非 COMP_DEFLATE 的壓縮方式采取的是未壓縮處理,從邏輯上看,這種做法并不符合規范,因此,導致 b356 成功地利用了這一邏輯漏洞。徹底的解決方案應該是 Android 系統按照規范的 zip 包解壓格式進行處理。

來源:https://www.liansecurity.com/#/main/news/GzKmQIoBUQjGUXE22_tO/detail

責任編輯:武曉燕 來源: 嘶吼網
相關推薦

2013-12-04 10:21:38

AndroidAndroidMani

2014-08-04 10:52:48

AndroidMani

2011-03-30 17:32:28

androidmaniAndroid開發

2012-06-05 10:09:45

AndroidManiAndroidMani

2013-03-27 14:15:25

2013-06-28 13:38:45

AndroidAndroidMani

2009-09-21 18:00:49

Hibernate X

2013-01-11 16:23:29

2016-12-28 10:34:58

2017-05-24 11:28:20

2023-02-28 09:47:42

2012-12-24 13:50:54

2015-10-13 16:21:53

2017-01-15 22:51:16

2013-06-03 10:02:53

WAF繞過

2009-10-26 11:32:53

接入網技術

2013-12-18 09:39:37

XSSWAF繞過

2010-02-23 18:10:01

WCF綁定類型

2019-01-17 04:41:38

2019-02-19 08:45:41

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91麻豆精品国产91久久久久久久久 | 欧美福利一区 | 国产xxx在线观看 | 日韩成人av在线 | www.日日夜夜 | xxxcom在线观看| 一区在线免费视频 | 成人久久久 | 99视频在线免费观看 | 中文字幕日韩欧美一区二区三区 | 毛片一级片 | 在线免费观看毛片 | 日韩影院在线观看 | 男人的天堂在线视频 | 国产亚洲一区二区在线观看 | 人碰人操 | 中文字幕欧美一区 | 综合亚洲视频 | ririsao久久精品一区 | 国产精品久久久久无码av | 91视频进入| 美女在线一区二区 | 精品久久香蕉国产线看观看亚洲 | 久久精品国产亚洲一区二区 | 国产亚洲精品久久久久久牛牛 | 亚洲国产成人精品女人久久久 | 中文字幕一区在线观看视频 | 国产一级免费在线观看 | 中文字幕在线观 | 999视频在线播放 | 国产欧美精品一区二区 | 日本三级线观看 视频 | 亚洲国产中文字幕 | 一区日韩 | 国产电影一区二区在线观看 | 99精品电影 | 欧美福利视频 | 国产精品久久国产精品 | 亚洲一区二区精品视频 | 亚洲欧美中文日韩在线v日本 | 在线国产一区二区 |