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

Oracle:安卓反混淆工具

安全 數據安全
Oracle:基于Dalvik 反混淆的一種模式,它使用了有限執行來提高語義分析。此外,這個靈感激發了另一個安卓反混淆工具:Simplify。

Oracle:基于Dalvik 反混淆的一種模式,它使用了有限執行來提高語義分析。此外,這個靈感激發了另一個安卓反混淆工具:Simplify。

[[161882]]

之前:

https://github.com/CalebFenton/dex-oracle/blob/master/lib/dex-oracle/plugins/string_decryptor.rb

 

之后:

https://github.com/CalebFenton/dex-oracle/blob/master/lib/dex-oracle/plugins/string_decryptor.rb

 

比特幣:133bmAUshC5VxntCcusWJdT8Sq3BFsaGce

安裝:

步驟一. 安裝Smali / Baksmali

我確定如果你是安卓逆向精英,那你的路徑中肯定已經有smali和baksmali了。

步驟二. 安裝安卓 SDK / ADB

確保你的路徑中有adb。

步驟三. 安裝Gem

gem install dex-oracle

或者,你也可以選擇使用這種方式獲得源:

git clone https://github.com/CalebFenton/dex-oracle.git

cd dex-oracle

gem install bundler

bundle install

步驟四. 連接設備或者模擬器

你必須有一個模擬器運行或者一個接入Oracle能夠工作的設備。

Oracle需要在一個live的安卓系統上執行方法。你可以選擇真正的安卓設備,也可以選擇模擬器(推薦)。如果你選擇了真正的安卓設備,確保你不介意在上面運行潛在的惡意代碼。

如果你更喜歡使用模擬器,并且已經安裝了Android SDK,你可以創建并啟動模擬器,如圖:

android avd

用法

Usage: dex-oracle [opts] <APK / DEX / Smali Directory>
    -h, --help                       顯示屏幕
    -s ANDROID_SERIAL,               執行驅動的設備ID, default=""

        --specific-device
    -t, --timeout N                  ADB 命令執行超時, default="120"
    -i, --include PATTERN            僅僅是優化方法和類匹配模式, e.g. Ldune;->melange\(\)V
    -e, --exclude PATTERN            從優化中排除這些類型,包括重寫
        --disable-plugins STRING[,STRING]*
                                     禁用插件, e.g. stringdecryptor,unreflector
        --list-plugins               列出可用插件
    -v, --verbose                    詳細內容
    -V, --vverbose                   非常詳細的內容

舉個例子,對于在一個類里面的唯一的deobfuscate方法調用Lcom/android/system/admin/CCOIoll,而不是一個APK調用obad.apk;

dex-oracle -i com/android/system/admin/CCOIoll obad.apk

如何運行

Oracle把Android app(APK), Dalvik可執行文件(DEX)和Smali文件作為輸入源。第一,如果輸入源是一個APK或者DEX,它會被分解成很多個Smali文件。然后,這個Smali文件會被傳遞給很多執行粉絲和修改的插件。插件搜索能夠被轉化為更易讀的模式。為了了解代碼做了什么工作,一些Dalvik方法真的被執行了,然后我們收集了輸出。這樣,一些方法調用可以被替換為常量。之后,所有的Smali文件都被更新了。最后,如果輸入是一個APK或者一個DEX文件,被修改的Smali文件會被重新編譯,一個已更新的APK或者DEX就被創建了。

方法執行是被驅動執行的。輸入APK, DEX或者Smali都被和驅動混合進了一個使用dexmerge的DEX,然后被壓入了一個安卓設備或者安卓模擬器。無論插件是否請求,Oracle之后都會發送方法執行信息到驅動。驅動程序在自己的DEX使用Oracle提供的參數使用Java反射來執行方法,結果返回任何輸出或異常。這種方法對于很多字符串解密方法都非常有用,通常情況下,使用加密字符串或者一些one limitation都是執行是限制的靜態方法。

攻擊

1. 創建自己的插件

這里有三個帶有Oracle的插件

Undexguard – 刪除某些特定類型的Dexguard混淆

Unreflector – 刪除某些Java反射

String Decryptor - 簡單的能夠刪除一些常見加密字符串的插件

如果你遇到一類新的混淆,它可能會用Oracle反混淆。查看Smali并找出是否代碼可以這樣:

1. 重新排列

2. 執行一些靜態方法理解

以上任何一種情況,你都應該嘗試并寫出你自己的插件。下面的四個步驟教你如何創建自己的插件:

1. 確定Smali模式

2. 搞清楚如何簡化模式

3. 搞清楚如何與驅動交互并調用方法

4. 搞清楚如何直接應用修改

這里包含的插件應該是理解步驟3、4的很好的指導。驅動被設計幫助步驟2 。

當然,我們非常歡迎你分享任何你遇到的混淆。

更新驅動程序

首先,確保DX在你的路徑上。這是Android SDK的一部分,但是它可能不在你的路徑上,除非你是硬核。

驅動程序文件夾是一個由Gradle管理的Java項目。將它導入Eclipse,IntelliJ等,然后進行修改。為了完成驅動的更新,運行./update_driver。這將重建驅動并轉換輸入JAR進入一個DEX。

更多信息

TetCon 2016 Android反混淆演示

責任編輯:藍雨淚 來源: FreeBuf
相關推薦

2023-08-04 17:52:22

2020-10-14 07:27:08

MacBook

2014-04-01 13:50:28

安卓Android開發者

2014-03-14 11:44:28

安卓開發者Android開發

2014-04-18 13:20:34

Android安卓開發工具

2016-02-16 13:27:20

2016-03-12 21:46:56

Inspeckage應用程序動態分析

2019-03-26 16:45:23

安卓蘋果手機

2018-10-25 22:45:53

開發者技能工具

2015-12-10 17:02:59

2012-03-28 10:37:55

谷歌安卓開發工具AppInventor

2023-03-26 20:23:10

Java開源工具

2019-06-20 16:07:12

鴻蒙安卓操作系統

2015-05-13 18:30:47

2013-11-04 14:49:34

安卓

2018-02-09 08:59:47

安卓FuchsiaiOS

2023-09-12 09:51:54

微軟生成式 AI

2015-07-28 15:10:55

2013-10-17 10:17:41

安卓

2014-12-09 11:15:06

郵箱安卓移動端
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 色综合中文 | 欧美在线视频一区 | 天天操夜夜拍 | a级片在线观看 | 亚洲精品免费在线观看 | 人人干免费 | 日韩一区二区在线视频 | 男人电影天堂 | 91成人精品 | 欧美一级黄色免费 | 精品久久不卡 | 一区二区三区视频免费看 | 亚洲综合二区 | 四虎影院免费在线 | 欧美日韩久久精品 | 丁香婷婷成人 | 日本理论片好看理论片 | 精品无码三级在线观看视频 | 成人国产综合 | 国产区视频在线观看 | 在线成人免费视频 | 毛片国产 | 日韩在线观看网站 | 成人av网站在线观看 | 欧美日韩成人影院 | 一级黄色日本片 | 国产乱码精品一区二区三区忘忧草 | 一区二区日韩 | 久久亚洲国产 | av中文在线| 久久一 | 拍拍无遮挡人做人爱视频免费观看 | 国产精品久久久久久久久久免费看 | 亚洲国产精品99久久久久久久久 | 性高湖久久久久久久久 | 91看片免费版 | 午夜免费视频 | 一区二区视屏 | 日韩精品在线播放 | 国产极品车模吞精高潮呻吟 | 成人不卡 |