版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
安卓app逆向與安全防護目錄1.課程目標2.市場狀況3.逆向工具使用4.加解密基礎(chǔ)5.協(xié)議分析6.app殼7.安全防護1.學(xué)會什么以及如何學(xué)習(xí)2.移動領(lǐng)域安卓方向的app市場的安全狀況3.逆向工具的介紹與使用4.常見加解密與壓縮算法5.App的網(wǎng)絡(luò)協(xié)議分析技巧6.常見app加固廠商脫殼方法研究7.如何編寫更安全的app課程目標1.什么是逆向工程2.為什么要學(xué)習(xí)安卓逆向3.如何學(xué)習(xí)安卓逆向4.如何學(xué)習(xí)其它平臺的逆向工程技術(shù)什么是逆向工程來自維基百科的定義:https:///zh-hans/逆向工程逆向工程(又稱反向工程),是一種技術(shù)過程,即對一項目標產(chǎn)品進行逆向分析及研究,從而演繹并得出該產(chǎn)品的處理流程、組織結(jié)構(gòu)、功能性能規(guī)格等設(shè)計要素,以制作出功能相近,但又不完全一樣的產(chǎn)品。逆向工程源于商業(yè)及軍事領(lǐng)域中的硬件分析。其主要目的是,在不能輕易獲得必要的生產(chǎn)信息下,直接從成品的分析,推導(dǎo)出產(chǎn)品的設(shè)計原理。逆向工程可能會被誤認為是對知識產(chǎn)權(quán)的嚴重侵害,但是在實際應(yīng)用上,反而可能會保護知識產(chǎn)權(quán)所有者。例如在集成電路領(lǐng)域,如果懷疑某公司侵犯知識產(chǎn)權(quán),可以用逆向工程技術(shù)來尋找證據(jù)。對最終程序的二進制代碼所進行的逆向工程被稱為“代碼反向工程”,或簡稱RCE(ReverseCodeEngineering)。為什么要學(xué)習(xí)安卓逆向逆向技術(shù)常見的應(yīng)用場景app安全審查系統(tǒng)漏洞挖掘惡意代碼殺查同行業(yè)競品技術(shù)原理分析移除安全機制如何學(xué)習(xí)安卓逆向知識點Java基礎(chǔ)(JCA、JSSE)文件格式(DEX、OAT、ELF、Smali、resources.arsc)Smali閱讀、arm反匯編閱讀Apktool、smali/baksmali、enjarify、android-classyshark、jadx、JD-GUI、BytecodeViewer、AndroidKiller的使用JEB、jdb、AndroidStudio/IntellijIDEA、gdb、IDAPro的使用如何學(xué)習(xí)其它平臺的逆向工程技術(shù)需要掌握的技能表操作系統(tǒng)的安全架構(gòu)操作系統(tǒng)中可執(zhí)行文件格式反匯編工具的使用反匯編代碼的閱讀理解調(diào)試器的使用網(wǎng)絡(luò)抓包工具的使用加解密知識市場狀況1.安卓App安全形勢2.安卓系統(tǒng)安全形勢3.安卓逆向工程師市場需求安卓App安全形勢阿里移動安全漏洞年報安卓系統(tǒng)安全形勢阿里移動安全漏洞年報安卓逆向工程師市場需求看雪論壇招聘專區(qū)逆向工具使用1.反編譯工具
Apktool/Shakaapktool、smali/baksmali、dex2jar、enjarify2.靜態(tài)分析工具
android-classyshark、jadx、JD-GUI、BytecodeViewer、AndroidKiller的使用3.動態(tài)調(diào)試工具 JEB、jdb、AndroidStudio/IntellijIDEA、gdb、IDAPro的使用4.Hook框架 Cydia
Substrate、Xposed、adbi、Frida等。5.沙盒環(huán)境
DroidBox
反編譯工具Apktool
/iBotPeaches/apktool/Shakaapktool
/shakaapktool/為什么選擇Shakaapktool?Shaka(沙加,黃金圣斗士之一)處女座沙加(SHAKA):被譽為最接近神的圣斗士,平時閉著雙眼,但當(dāng)他張開眼睛時,其力量會大為增加,并使出天舞寶輪,奪去敵人的五感。反編譯工具Shakaapktool
/shakaapktool/增強功能:反編譯工具Shakaapktool
/shakaapktool/對抗反反編譯:反編譯工具Shakaapktool
/shakaapktool/修正官方Bug:反編譯工具smali/baksmalihttps:///JesusFreke/smali安卓反匯編的基石Smali反匯編Smali動態(tài)調(diào)試->smalideaSmali->Dex/Dex->Smali/Odex->Dex反編譯工具smali/baksmalihttps:///JesusFreke/smaliDex字節(jié)碼:https:///devices/tech/dalvik/dalvik-bytecode.htmlDex文件格式:https:///devices/tech/dalvik/dex-format.htmlSmali動態(tài)調(diào)試:https:///JesusFreke/smali/wiki/smalideaSmali寄存器與參數(shù)傳遞:https:///JesusFreke/smali/wiki/Registers反編譯工具Dex2jar
https:///pxb1988/dex2jarEnjarify
https:///google/enjarify反編譯工具Dex2jar
https:///pxb1988/dex2jarEnjarify
https:///google/enjarifyVS反編譯工具AndroidCrackTool/thread-1194-1-1.htmlAndroid逆向助手http:///kgdiwss靜態(tài)分析工具JD-GUIhttp://jd.benow.ca/靜態(tài)分析工具android-classyshark
https:///google/android-classyshark靜態(tài)分析工具jadx
https:///skylot/jadx靜態(tài)分析工具BytecodeViewerhttps:///Konloch/bytecode-viewer靜態(tài)分析工具AndroidKiller動態(tài)調(diào)試工具DalvikDebuggerjdbadbshellamstart-D-ncom.droider.crackme0201/.MainActivitymonitorjdb-connectcom.sun.jdi.SocketAttach:port=8700,hostname=methodscom.tencent.crackme0201.MainActivitystopincom.droider.crackme0201.MainActivity.checkSN(java.lang.String,java.lang.String)wherestepstepsteplocalsdumpthis動態(tài)調(diào)試工具DalvikDebuggerAndroidStudio/IntellijIDEA+smalidea/JesusFreke/smali/wiki/smalidea動態(tài)調(diào)試工具NativeDebuggergdbgdb:~/Library/Android/android-ndk-r12b/prebuilt/darwin-x86_64/bin/gdbgdbserver:~/Library/Android/android-ndk-r12b/prebuilt/android-arm/gdbserver動態(tài)調(diào)試工具NativeDebuggergdbgdbserver:3333--attachpidorgdbserver:3333/data/local/tmp/xxx/*android_gdb#!/bin/sh~/Library/Android/android-ndk-r12b/prebuilt/darwin-x86_64/bin/gdb"$@”*/adbforwardtcp:3333tcp:3333android_gdb/xxx(gdb)targetremote:3333(gdb)setdisassemble-nexton(gdb)break*xxx(gdb)layoutasm(gdb)layoutregs(gdb)c...動態(tài)調(diào)試工具NativeDebuggergdb+AffinicDebugger動態(tài)調(diào)試工具NativeDebuggerlldb+ds2/facebook/ds2動態(tài)調(diào)試工具DalvikDebugger+NativeDebuggerJEB2https://動態(tài)調(diào)試工具DalvikDebugger+NativeDebuggerIDAProHook框架JEB2監(jiān)聽調(diào)試事件Hook框架CydiaSubstratehttp://DumpDex:https:///WooyunDota/DumpDexHook框架Xposed
https:///rovo89/Xposed最為強大的安卓Java層Hook框架1.Apk方法Hook2.系統(tǒng)方法Hook3.系統(tǒng)資源修改4.系統(tǒng)增強補丁Hook框架Xposed
https:///rovo89/Xposed最為強大的安卓Java層Hook框架1.Apk方法Hook
publicvoidhookMethod(ClassLoaderclassLoader){
try{
XposedBridge.log("nowhookcrypt...");
Class<?>clzAC=XposedHelpers.findClass("com.cxx.b.ac",classLoader); XposedBridge.hookAllMethods(clzAC,"h",newHookedMD5Method()); }catch(Throwablet){
XposedBridge.log(t);
}}publicstaticclassHookedMD5MethodextendsXC_MethodHook{
@Override
protectedvoidafterHookedMethod(MethodHookParamparam)throwsThrowable{
CommLog.e(TAG,"after"+param.method.getName()+"...");
Stringr0=(String)param.args[0]; Stringret=(String)param.getResult();
Stringpre=param.method.getName(); CommLog.e(TAG,pre+"data:"+r0); CommLog.e(TAG,pre+"ret:"+ret); super.afterHookedMethod(param);
}}微信搶紅包?聊天消息防撤回?/fkzhang/WechatUnrecalledHook框架Xposed
https:///rovo89/Xposed最為強大的安卓Java層Hook框架2.系統(tǒng)方法Hookhttps:///AndroidKnife/XposedDebughttps:///rovo89/XposedInstallerHook框架Xposed
https:///rovo89/Xposed最為強大的安卓Java層Hook框架3.系統(tǒng)資源修改http:///module-overviewHook框架Xposed
https:///rovo89/Xposed最為強大的安卓Java層Hook框架4.系統(tǒng)增強補丁AppSettings:https:///rovo89/XposedAppSettingsXprivacy:https:///M66B/XPrivacyNekoSMS
https:///apsun/NekoSMS…...Hook框架adbi
https:///crmulliner/adbi鷹眼https:///MindMac/AndroidEagleEyeHook框架Fridahttps:///frida/fridaHookNative,打印調(diào)用參數(shù)HookJava:加解密基礎(chǔ)1.安卓中的JCA與JSSE2.對稱加密3.非對稱加密4.數(shù)字證書5.算法工具安卓中的JCA與JSSEJCA(JavaCryptographyArchitecture)設(shè)計原則:1.實現(xiàn)的獨立性與互用性2.算法的獨立性與擴展性實現(xiàn)的獨立性-使用密碼學(xué)服務(wù)(cryptographicservices),加密解密、數(shù)字
簽名、數(shù)據(jù)摘要等算法的實現(xiàn)都基于這些概念。算法的獨立性-使用基于provider的架構(gòu),
CryptographicServiceProvider(CSP)
必須實現(xiàn)一個或多個密碼學(xué)服務(wù)。實現(xiàn)的互用性-每個實現(xiàn)能夠協(xié)同合作,如密鑰的使用、簽名的驗證,對于同一
個算法而言,
providerA生成的密鑰要能被providerB使用,
providerA生成的簽名要能被providerB驗證。算法的擴展性-新算法要易于添加。安卓中的JCA與JSSECSP(
CryptographicServiceProviders)MessageDigestmd=MessageDigest.getInstance("MD5");MessageDigestmd=MessageDigest.getInstance("MD5","ProviderC");安卓中的JCA與JSSECSP(
CryptographicServiceProviders)Provider[]providers=java.security.Security.getProviders();for(Providerp:providers){ System.out.printf("%s/%s/%f\n",p.getName(),p.getInfo(),p.getVersion()); Set<Provider.Service>services=p.getServices(); for(Provider.Services:services){ System.out.printf("\t%s/%s/%s\n",s.getType(), s.getAlgorithm(),s.getClassName()); }}Android中的Provider安卓中的JCA與JSSECSP(
CryptographicServiceProviders)Android中的ProviderAndroid4.4:AndroidOpenSSL/Android'sOpenSSL-backedsecurityprovider/1.000000DRLCertFactory/ASN.1,DER,PkiPath,PKCS7/1.000000BC/BouncyCastleSecurityProviderv1.49/1.490000Crypto/HARMONY(SHA1digest;SecureRandom;SHA1withDSAsignature)/1.000000HarmonyJSSE/HarmonyJSSEProvider/1.000000AndroidKeyStore/AndroidKeyStoresecurityprovider/1.000000Android6.0.1:AndroidOpenSSL/Android'sOpenSSL-backedsecurityprovider/1.000000AndroidKeyStoreBCWorkaround/AndroidKeyStoresecurityprovidertoworkaroundBC/1.000000BC/BouncyCastleSecurityProviderv1.52/1.520000Crypto/HARMONY(SHA1digest;SecureRandom;SHA1withDSAsignature)/1.000000HarmonyJSSE/HarmonyJSSEProvider/1.000000AndroidKeyStore/AndroidKeyStoresecurityprovider/1.000000AndroidN:Deprecated?http:///2016/06/security-crypto-provider-deprecated-in.html安卓中的JCA與JSSESPI(ServiceProviderInterface)JCA主要的API:引擎類與算法:加解密操作、密鑰與算法參數(shù)轉(zhuǎn)換、對象高層表示Providers中的接口通過SPI定義。Signature
->SignatureSpiCipher->CipherSpiJCA主要的API:核心類與接口:安卓中的JCA與JSSESPI(ServiceProviderInterface)安全相關(guān)的API:java.securityjavax.cryptojava.security.certjava.security.specjavax.crypto.specerfaceserfacesimportjavax.crypto.*;Cipherc=Cipher.getInstance("AES");c.init(ENCRYPT_MODE,key);安卓中的JCA與JSSEKeyStore密鑰存儲KeyStore類型:1.jks。SunJCE
Provider提供,安卓中無法使用。2.bks。BCProvider提供,安卓默認支持。3.pkcs12。JDKPKCS12KeyStore,BCProvider提供,安卓默認支持。4.dks。Domain
KeyStore。不常用。bks:pkcs12:安卓中的JCA與JSSEJSSE(JavaSecureSocketExtension)JSSE的用途:為Java版本的SSL(SecureSocketsLayer
)與
TLS(TransportLayerSecurity)提供框架實現(xiàn)。JSSE標準API:1.ServerSocketFactory、SocketFactory2.非阻塞引擎用于處理SSL/TLS數(shù)據(jù)流(SSLEngine)3.創(chuàng)建套接字、服務(wù)套接字、SSL服務(wù)套接字以及使用的類4.套接字的類表示:安全套接字上下文類、安全工廠類與引擎類5.密鑰與信任管理器接口(X509KeyManager、X509TrustManager)安卓JSSE中的Provider:HarmonyJSSEProvider:舊版本使用,代碼基于Java實現(xiàn)。OpenSSLProvider:新版本使用,代碼基于JNINative調(diào)用。安卓中的JCA與JSSE安卓中的證書綁定(CertPinning)https:///training/articles/security-ssl.html安卓中的JCA與JSSE繞過證書綁定!?。。˙reakingCertPinning)Hook繞過基于Xposed:JustTrustMehttps:///Fuzion24/JustTrustMe基于Substrate:Android-SSL-TrustKillerhttps:///iSECPartners/Android-SSL-TrustKiller對稱加密Cipher類algorithm/mode/paddingalgorithm:算法。AES、DES、DESede等。mode:分組模式。ECB、CBC、CFB、OFB、CTR等。padding:填充模式。PKCS5Padding、PKCS7Padding、NoPadding、ZeroPadding對稱加密常見的對稱加密算法非對稱加密Cipher類algorithm/mode/paddingalgorithm:算法。RSA、DSA等。mode:分組模式。ECB。padding:填充模式。PKCS1Padding、NoPadding非對稱加密公鑰與私鑰存儲格式:DER(DistinguishedEncodingRules):區(qū)分編碼規(guī)則。二進制格式,記錄的第一個字段信息是一個
ASN.1(AbstractSyntaxNotationOne)對象。DER可用于編碼公鑰、私鑰與證書。PEM(PrivacyEnhancedMail):保密郵件的編碼標準。信息轉(zhuǎn)換為ASCII碼或其他編碼,使用BASE64對
加密后的信息進行編碼。DER可用于編碼公鑰、私鑰與證書。XML:一些密碼學(xué)的庫支持使用XML保存公鑰與私鑰信息。存儲規(guī)范:PKCS#1:RSAPublic/PrivateKeyfile。Java默認支持。PKCS#8:Public/PrivateKeyfile。OpenSSL默認支持。ASN.1git:///libtasn1.git非對稱加密公鑰與私鑰-DERwithPKCS#1DERPrivateKey:
DERPublicKey:
->->非對稱加密公鑰與私鑰-DER
withPKCS#8DERPrivateKey:
DERPublicKey:
->->非對稱加密公鑰與私鑰-PEMwithPKCS#1PEMPrivateKey:
PEMPublicKey:
非對稱加密公鑰與私鑰-PEMwithPKCS#8PEMPrivateKey:
PEMPublicKey:
非對稱加密公鑰與私鑰-XMLXMLPrivateKey:
PEMPublicKey:
數(shù)字證書什么是數(shù)字證書?數(shù)字證書是一個經(jīng)證書授權(quán)中心數(shù)字簽名的包含公開密鑰擁有者信息以及公開密鑰的文件。最簡單的證書包含一個公開密鑰、名稱以及證書授權(quán)中心的數(shù)字簽名。數(shù)字證書還有一個重要的特征就是只在特定的時間段內(nèi)有效。簡單的說:在密碼學(xué)領(lǐng)域,數(shù)字證書就是帶有數(shù)字簽名的公鑰!存儲格式:DER(DistinguishedEncodingRules):區(qū)分編碼規(guī)則。二進制格式,記錄的第一個字段信息是一個
ASN.1(AbstractSyntaxNotationOne)對象。DER可用于編碼公鑰、私鑰與證書。PEM(PrivacyEnhancedMail):保密郵件的編碼標準。信息轉(zhuǎn)換為ASCII碼或其他編碼,使用BASE64對
加密后的信息進行編碼。DER可用于編碼公鑰、私鑰與證書。存儲規(guī)范:X509:安卓系統(tǒng)大量使用的證書規(guī)范。目前使用v3版本。PKCS#7:.p7c格式結(jié)尾。PEM存儲的話,會以“-----BEGINPKCS7-----”
和“-----ENDPKCS7-----”
做頭尾標記,存儲證書鏈與單個證書。PKCS#12:.pfx或.p12格式結(jié)尾??纱鎯ψC書、私鑰及公鑰。數(shù)字證書X509
PEM證書->數(shù)字證書X509證書算法工具JCrypTool/CrypToolhttp://算法工具openssl/openssl/opensslecho-n"hello"|opensslaes-128-cbc-a-e-Ke0e0e0e0f1f1f1f1e0e0e0e0f1f1f1f1-ive0e0e0e0f1f1f1f1e0e0e0e0f1f1f1f1tv611lW0N+HKtQi+ysr2TQ==算法工具RECalcTool協(xié)議分析1.網(wǎng)絡(luò)抓包2.數(shù)據(jù)包分析與識別3.日志分析4.代碼分析與算法識別5.Hook輸出或動態(tài)調(diào)試6.測試結(jié)果網(wǎng)絡(luò)抓包抓包工具:Http/Socket抓包:tcpdump:adbshelltcpdump-p-vv-s0-w/sdcard/capture.pcaptcpdump->WireSharkHttp/Https抓包:Fiddler、Burpsuite、Charles1.手機導(dǎo)入FakeCert.crt2.抓包工具配置Https代理3.手機設(shè)置代理服務(wù)器4.手機HookBreakingSSLPinning5.抓包測試網(wǎng)絡(luò)抓包Http/Https抓包配置1234數(shù)據(jù)包分析與識別通信協(xié)議Socket數(shù)據(jù)格式紅色與綠色部分:對應(yīng)的部分是固定值,猜測是協(xié)議的固定字段部分。黑色部分:應(yīng)該是通信的真正數(shù)據(jù),數(shù)據(jù)的長度為16字節(jié)的整數(shù)倍,猜測是使用對稱或非對稱加密,而通信傳輸一般使用對稱加密,故猜測此處使用對稱加密,接下來需要反編譯代碼,驗證猜測,找到密鑰與算法。數(shù)據(jù)包分析與識別通信協(xié)議RESTorSOAP?數(shù)據(jù)格式JSONapplication/octet-stream??常見的壓縮算法常見壓縮算法數(shù)據(jù)頭部:gzip1F8B08zip504B(PK)rar52617221(Rar!)zlib789clzma6c00lz404224Dapplication/octet-stream??1F8B08->gzip日志分析App日志輸出自帶了日志輸出但默認關(guān)閉默認開啟日志輸出日志分析過時的方法-Smali注入針對日志輸出語句被移除,但日志框架保留代碼分析與算法識別IDAPro+FindCrypt2Rijndael
S-boxAESInit代碼分析與算法識別AES_cbc_encryptwithPKCS5paddingPKCS5Padding有如下特點:1.填充的字節(jié)都是一個相同的字節(jié)。2.該字節(jié)的值,就是要填充的字節(jié)的個數(shù)。如果要填充8個字節(jié),那么填充的字節(jié)的值就是0×8;要填充7個字節(jié),那么填入的值就是0×7;…如果只填充1個字節(jié),那么填入的值就是0×1;PKCS5Padding與PKCS7Padding的區(qū)別:前者只作用于塊大小為64字節(jié)的數(shù)據(jù),后者沒有此限制。代碼分析與算法識別CBC(密碼分組鏈接模式)CBC模式原理代碼分析與算法識別RSA/ECB/PKCS1Padding
PKCS1Padding填充規(guī)則代碼分析與算法識別RSA
1024自定義Padding長度12,默認11,數(shù)據(jù)長117字節(jié)Hook輸出或動態(tài)調(diào)試Hook:測試結(jié)果測試報告破解效果代碼還原App殼1.簡述脫殼前學(xué)習(xí)的知識、殼的歷史、脫殼方法2.第一代殼3.第二代殼4.第三代殼5.第N代殼簡述1.Apk文件結(jié)構(gòu)2.Dex文件結(jié)構(gòu)3.殼史4.殼的識別Apk文件結(jié)構(gòu)文件或目錄作用META-INF/也就是一個
manifest
,從
javajar
文件引入的描述包信息的目錄res/存放資源文件的目錄lib/如果存在的話,存放的是
ndk
編出來的
so
庫AndroidManifest.xml程序全局配置文件classes.dex最終生成的
dalvik
字節(jié)碼resources.arsc編譯后的二進制資源文件Dex文件結(jié)構(gòu)殼史第一代殼Dex加密
1.Dex字符串加密 2.資源加密 3.對抗反編譯
4.反調(diào)試 5.自定義DexClassLoader第二代殼Dex抽取與So加固
1.對抗第一代殼常見的脫殼法
1.DexMethod代碼抽取到外部(通常企業(yè)版) 2.Dex動態(tài)加載 3.So加密第三代殼Dex動態(tài)解密與So混淆
1.DexMethod代碼動態(tài)解密
2.So代碼膨脹混淆 3.對抗之前出現(xiàn)的所有脫殼法第四代殼armvmp(未來)
1.vmp殼的識別娜迦:libchaosvmp.so,libddog.solibfdog.so愛加密:libexec.so,libexecmain.so梆梆:libsecexe.so,libsecmain.so,libDexHelper.so360:libprotectClass.so,libjiagu.so通付盾:libegis.so網(wǎng)秦:libnqshield.so百度:libbaiduprotect.so常用加固廠商特征殼的識別基于特征的識別代碼第一代殼1.內(nèi)存Dump法2.文件監(jiān)視法3.Hook法4.定制系統(tǒng)5.動態(tài)調(diào)試法內(nèi)存Dump法內(nèi)存中尋找dex.035或者dex.036/proc/xxx/maps中查找后,手動Dump內(nèi)存Dump法內(nèi)存中尋找dex.035或者dex.036android-unpacker/strazzere/android-unpacker內(nèi)存Dump法內(nèi)存中尋找dex.035或者dex.036drizzleDumper
/DrizzleRisk/drizzleDumper升級版的android-unpacker,read和lseek64代替pread,匹配dex代替匹配odex內(nèi)存Dump法IDAPro+dumpDEXdumpDex/CvvT/dumpDex文件監(jiān)視法Dex優(yōu)化生成odexinotifywait-for-Android/mkttanabe/inotifywait-for-Android監(jiān)視文件變化文件監(jiān)視法Dex優(yōu)化生成odexinotifywait-for-Android/mkttanabe/inotifywait-for-Android監(jiān)視DexOpt輸出Hook法HookdvmDexFileOpenPartial/4.4_r1/xref/dalvik/vm/DvmDex.cppHook法HookdvmDexFileOpenPartial定制系統(tǒng)修改安卓源碼并刷機定制系統(tǒng)DumpApk/CvvT/DumpApk只針對部分殼動態(tài)調(diào)試法IDAPro動態(tài)調(diào)試法gdbgcore法.gdbserver:1234–attachpid.gdb(gdb)targetremote:1234(gdb)gcorecoredump文件中搜索“dex.035”第二代殼1.內(nèi)存重組法2.Hook法3.動態(tài)調(diào)試4.定制系統(tǒng)5.靜態(tài)脫殼機內(nèi)存重組法Dex篇ZjDroid/showthread.php?t=190494內(nèi)存重組法Dex篇ZjDroid/showthread.php?t=190494對付一切內(nèi)存中完整的dex,包括殼與動態(tài)加載的jar內(nèi)存重組法so篇elfrebuild內(nèi)存重組法so篇elfrebuild構(gòu)造soinfo,然后對其進行重建Hook法針對無代碼抽取且HookdvmDexFileOpenPartial失敗
HookdexFileParse/4.4_r1/xref/dalvik/vm/DvmDex.cppHook法針對無代碼抽取且HookdvmDexFileOpenPartial失敗
HookdexFileParse/WooyunDota/DumpDexHook法針對無代碼抽取且HookdexFileParse失敗Hookmemcmp/4.4_r1/xref/dalvik/vm/DvmDex.cppHook法針對無代碼抽取且HookdexFileParse失敗Hookmemcmp定制系統(tǒng)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 石河子大學(xué)《應(yīng)急人力資源管理》2022-2023學(xué)年第一學(xué)期期末試卷
- 物業(yè)智能化解決方案
- 石河子大學(xué)《數(shù)學(xué)文化賞析》2021-2022學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《口腔頜面外科學(xué)》2022-2023學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《工程熱力學(xué)與傳熱學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 精神科新冠肺炎演練
- 沈陽理工大學(xué)《數(shù)學(xué)建?!?023-2024學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《液壓與氣動技術(shù)》2022-2023學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《電氣控制與PC技術(shù)》2022-2023學(xué)年期末試卷
- 沈陽理工大學(xué)《場地設(shè)計》2021-2022學(xué)年第一學(xué)期期末試卷
- 醫(yī)美行業(yè)發(fā)展趨勢
- 自發(fā)性腹膜炎的護理查房課件
- 冠心病中醫(yī)護理查房的課件
- 幼兒園公開課:中班健康《逃生大闖關(guān)》課件
- 建立網(wǎng)絡(luò)安全管理責(zé)任制明確安全工作職責(zé)和責(zé)任
- 2024年浙江省海港集團招聘筆試參考題庫含答案解析
- 安徽省工傷職停工留薪分類目錄
- 食堂滅四害方案五
- 聶榮臻將軍:中國人民解放軍的奠基人之一
- 安全技術(shù)之傳動裝置的防護措施
- 小麥病蟲害識別及防治技術(shù)課件
評論
0/150
提交評論