最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ACProtect Professional 1.3C 主程序脫殼(3)(圖)

互聯(lián)網(wǎng)   發(fā)布時(shí)間:2008-10-08 19:05:26   作者:佚名   我要評(píng)論
運(yùn)行程序,crashedL。直接用修復(fù)完stolen code的dumped_.exe看看。從EP的第1個(gè)call進(jìn)去就有問題。 在OllyDbg中可以看到: 有部分IAT在殼中。這部分代碼前面是跟到了的(在第6次int 3以后),原來認(rèn)為這只是loader自己需要的API。實(shí)際上

找到匹配地址后,ecx等于表項(xiàng)的offset,第1項(xiàng)為0x2A。

2) 查opcode表
用1中的到的offset查opcode數(shù)據(jù)表(007262ED):

密文opcode表:


counter表(記錄每個(gè)地址的調(diào)用次數(shù),超出0x20次將使用新的地址解碼):


第1次解出的變形碼:



3) 調(diào)整stack以便正確調(diào)用變形碼及返回




4) 破壞解出的代碼,ret到變形碼




5) 執(zhí)行變形碼,返回到原程序




6) Patch

先把解出的代碼binary copy到dumped_.exe(直接copy 722416 - 7226B0的代碼即可)。

關(guān)閉722579的解碼(解出7225C1 - 7226B0):


關(guān)閉7226A8處對(duì)前面代碼的破壞:


patch 72260C: jnz->jmp,無論執(zhí)行多少次都使用同一解碼地址



copy正確的ImageBase值,這里為0,改72FC1F為400000





copy 正確的10 bytes key(第1 byte為0)




執(zhí)行,仍然crashedL。

8. 修復(fù)Replaced code (2)

還有replaced code,在這里出異常:


->


將解出的代碼貼到ACProtect_Fixed.exe??梢钥吹?這些實(shí)際上是變形的call代碼。第1次執(zhí)行到這里,在buffer中解出的變形碼為:




XOR的結(jié)果:



目前的dumped_.exe,地址72ED83的值為0(這些值是loader寫入的)。

406DF8的變形碼原來是call GetKeyboardType。原程序的call API 全部被抽掉了。殼代碼的動(dòng)作與前面相似,用返回地址查表,獲取相應(yīng)的指針,生成jmp dword ptr ds:[xxxxxxxx]指令,該地址則指向類似72124C的變形碼,調(diào)用正確的API。

變形call API的返回RVA地址表:

開始:


結(jié)束:


尋址變形碼數(shù)組下標(biāo)表(每項(xiàng)1字節(jié)),用于查變形碼指針數(shù)組:


變形碼地址表(指向變形碼的指針):


相關(guān)文章

最新評(píng)論

洪洞县| 潢川县| 九龙县| 介休市| 福清市| 新巴尔虎右旗| 连云港市| 盐池县| 宁陕县| 宁蒗| 纳雍县| 始兴县| 金坛市| 肇庆市| 汉寿县| 金坛市| 阜宁县| 巴南区| 吉林市| 西乡县| 武强县| 安多县| 湖口县| 弥渡县| 克山县| 东海县| 新乡县| 中卫市| 拉萨市| 台江县| 深泽县| 长岭县| 阜平县| 文水县| 衡南县| 金华市| 凌源市| 汽车| 福海县| 昌邑市| 泉州市|