上篇我介紹了第一戰(zhàn)的情況及收獲粱年,這一篇我們繼續(xù)介紹新收獲售滤。
歷史篇章
首篇地址~思路預(yù)測(cè)
http://www.reibang.com/p/93b0b4e7e091第一戰(zhàn)地址
http://www.reibang.com/p/96facd4e0dee
目前進(jìn)展
通過ida靜態(tài)分析進(jìn)去了瓶頸台诗,分析核心驗(yàn)證邏輯應(yīng)該和createVM有很大關(guān)系,這個(gè)VM會(huì)加載core.bin文件拉队,然后對(duì)輸入的字符串進(jìn)行檢驗(yàn)弊知,不正確就返回1粱快。
但對(duì)于創(chuàng)建vm秩彤、以及使用VM的匯編代碼分析沒有頭緒,而且猜測(cè)代碼做了混淆加密事哭。
貼個(gè)圖給大家看看結(jié)構(gòu),這個(gè)密密麻麻啊鳍咱,看著就頭大了。
思路調(diào)整
靜態(tài)分析思路遇到困難蓄坏,開始調(diào)整思路進(jìn)入動(dòng)態(tài)分析階段,又是一個(gè)全新的知識(shí)領(lǐng)域妹蔽,從零開始吧,百度了各種技能挠将,搭建動(dòng)態(tài)調(diào)試的環(huán)境乳丰,目前環(huán)境基本Ok了,不過斷點(diǎn)有問題内贮,猜測(cè)代碼做了反調(diào)試控制产园。還在繼續(xù)摸索中汞斧。
漲技能
把這幾天用到的技能總結(jié)下:
ida用法技巧學(xué)習(xí)
進(jìn)一步學(xué)習(xí)了ida的技巧,包括看流程圖什燕、graph粘勒,初步學(xué)習(xí)動(dòng)態(tài)調(diào)試,沒能成功屎即,繼續(xù)學(xué)習(xí)中庙睡。學(xué)習(xí)了如何在ida中寫注釋,修改函數(shù)名等技俐。通過adb shell 啟動(dòng)代理android_server
ida的動(dòng)態(tài)調(diào)試使用的方式是在android端運(yùn)行ida自帶的android_server乘陪。在這一步我又碰到了一個(gè)坑,發(fā)現(xiàn)android_server命令執(zhí)行后沒有反應(yīng)雕擂,端口沒有啟動(dòng)起來啡邑。按照網(wǎng)上多個(gè)方法都試了,一直無效井赌,包括使用了root權(quán)限谤逼,都啟動(dòng)不起來端口。后來發(fā)現(xiàn)ida下還有一個(gè)android_server_nonpie族展,當(dāng)時(shí)就抱著試試看的想法,復(fù)制到了手機(jī)模擬器中拔鹰,一運(yùn)行發(fā)現(xiàn)看到了期待已久的端口啟動(dòng)語句仪缸。ddms
學(xué)習(xí)使用android jdk中的ddms工具。該工具可以查看手機(jī)模擬器的進(jìn)程列肢,選中需要監(jiān)控的進(jìn)程后恰画,會(huì)出現(xiàn)綠色小蜘蛛圖標(biāo),同時(shí)后面會(huì)出現(xiàn)8700端口號(hào)瓷马。jdb
學(xué)習(xí)使用java中的jdb命令拴还。連接到8700端口。
jdb.exe -connect com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=8700
該工具和ddms搭配使用欧聘,主要目的是做本地端口轉(zhuǎn)發(fā)片林。
初步認(rèn)識(shí)反調(diào)試
在學(xué)習(xí)中了解到有的程序做了反調(diào)試,程序會(huì)監(jiān)控是否被動(dòng)態(tài)調(diào)試怀骤,如果發(fā)現(xiàn)動(dòng)態(tài)調(diào)試會(huì)閃退或者改變程序流程费封,以干擾動(dòng)態(tài)調(diào)試。學(xué)習(xí)查看進(jìn)程內(nèi)存并dump指定位置內(nèi)容
# dd if=/proc/9058/mem of=/sdcard/aliscm1 skip=335544320 ibs=1 count=32768
cp /system/lib/libc.so /sdcard
初步認(rèn)識(shí)混淆
在靜態(tài)分析時(shí)看到了Alipay Obfuscator (based on LLVM 4.0.1)蒋伦,看名字應(yīng)該是阿里基于llvm做的混淆工具弓摘,代碼應(yīng)該是做了混淆的,那張巨大的圖估計(jì)是混淆后的痕届。得到了一些VM的信息
virtual_machine_application VM=1 VM_VERSION=0.1 VM_BUILD=Aug 15 2017 17:43:17 VM_LOGNAME=zhangjiantao
革命尚未成功韧献,尚需繼續(xù)努力末患。
學(xué)習(xí)過程中遇到什么問題或者想獲取學(xué)習(xí)資源的話,歡迎加入我的圈子多多交流锤窑,共同進(jìn)步璧针,具體看我的個(gè)人介紹,我們一起學(xué)技術(shù)果复!