国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

電子工程網

標題: 指令歧義及程序飛和逆向工程的關系 [打印本頁]

作者: hotpower    時間: 2009-4-3 00:23
標題: 指令歧義及程序飛和逆向工程的關系
hottask51 發表于 2009-2-12 08:58 裸奔式實時操作系統HotTask51 ←返回版面

樓主: 指令歧義及程序飛和逆向工程的關系


指令歧義及程序飛和逆向工程的關系

1.標準程序樣例
MOV   DPTR,#0013H;外部中斷1入口地址
JNZ   NEXT1;ACC<>0,取INT1地址
MOV   DPTR,#0003H;外部中斷0入口地址
SJMP  NEXT
NEXT1:
RRA;
NEXT:
MOVC  A,@A+DPTR
MOV   P3,A;
LCALL XXXXH;

2.對應標準程序樣例可等效非典指令序列
MOV   DPTR,#0013H
JNZ   NEXT-1;借用下條指令的操作數2的03H為一個隱含的RRA指令!
MOV   DPTR,#0003H;低8位的03H實際為RRA指令(操作碼03H)!!!
NEXT:
MOVC  A,@A+DPTR
MOV   P3,A
LCALL XXXXH;
可以看出,2個功能相同的指令后者很簡化,當然那個03H實際存在的概率幾乎是沒有的
估計會有人說,為什么標準程序樣例不像如下所示???
MOV   DPTR,#0003H;外部中斷0入口地址
JZ    NEXT;
MOV   DPTR,#0013H;外部中斷1入口地址
RRA;
NEXT:
MOVC  A,@A+DPTR
MOV   P3,A;
LCALL XXXXH;
雖然它不如2精簡,但卻通用許多,而且條理清晰,至少RRA讓人看的很明白。
問題很好也不錯,所有逆向工程正是利用了人們善良帶來的漏洞予以攻擊。成功率幾乎為100%.
因為逆向工程利用二次掃描技術實現代碼和數據的剝離,對于剩下的數據區再多次攻擊(虛擬機)
直到逆向到滿意的代碼和數據的剝離結果。
對2的攻擊會帶來以下2種程序源碼。
3.當ACC為零時可等效為下列指令序列
MOV   A,#00H
MOV   DPTR,#0013H
SJMP  NEXT1;
NEXT1:
MOV   DPTR,#0003H
NEXT:
MOVC  A,@A+DPTR
MOV   P3,A
LCALL 0000H;
4.當ACC非零時可等效為下列指令序列
MOV   A,#0FFH
MOV   DPTR,#0013H
SJMP  NEXT1;
DW    9000H;其中90H為MOV DPTR,#00XXH的操作碼
NEXT1:
RRA;利用數據藏代碼
NEXT:
MOVC  A,@A+DPTR
MOV   P3,A
LCALL 0000H;
而實際上我們的1個程序卻同時需要這2個源碼,因為ACC總存在0和非0兩種狀態。
所以暴力反匯編經常會出現以下的結果
5.
MOV   DPTR,#0013H
JNZ   NEXT;
DW    9000H;這個對于搞過反匯編或熟悉51指令集的人才知道是殘缺的MOV DPTR,#00XXH
NEXT:
RRA
MOVC  A,@A+DPTR
MOV   P3,A
LCALL XXXXH;
當如像64K大的程序時,要有多少個象5一樣不解的結果呀。
不管是用什么法則,如果采用暴力反匯編生成的代碼肯定不會全對。甚至導致編譯失。。!
而遵守掃描法則的反匯編都將2判定為非法代碼序列。直接做為數據處理。這類反匯編出來的
匯編代碼將會100%的通過匯編器的重新編譯。!
菜農的超級反匯編軟件就是遵從了這一原則可以逆向任何“守法代碼”。
故認為使用以下雷同的代碼來保護后跟的代碼和數據
如6:
JNZ   $+3;肯定運行NOP;LCALL DO_CRC;
DW    1200H;低8位為NOP指令
LCALL DO_CRC;CRC校驗,最終正確結果CRC=0(注意這個0將會被多次使用)
例如都用這樣帶有指令歧義的分支代碼來保護,那么遵循任何法則的逆向工程每個分支都應該
提供2個程序清單。
假使有3個帶有指令歧義分支的的程序,應該最多提供4份程序清單。
在這個分支時,用第1份看,這那個分支用第N份看,....暈否???
菜農在這里不談如何破譯,而是“代碼隱身”,就和以前的“中斷隱身”類同。
從以上分析,特別是2給我們的啟示,實際上程序飛也是個“代碼隱身”的問題。
“代碼隱身”可以根據分支的條件將代碼重新組合,而程序飛也是PC值突變脫離了我們正常代碼
序列的范圍,如進入數據區或代碼區指令的操作數1或操作數2。
這就是為什么程序飛工作運行的莫名其妙的原因之所在。因為它是不可控的毫無任何規律可尋的。
所有我們適當地采用例2的保護方法,將會使逆向工作更加困難,讓他們和“程序飛”打交道吧...

菜農 HotPower@126.com 2007.11.16 于西安大雁塔菜地






歡迎光臨 電子工程網 (http://m.qingdxww.cn/) Powered by Discuz! X3.4
主站蜘蛛池模板: 亚洲激情成人 | 色综合久久中文色婷婷 | 国内精品久久久久久久 | 好爽毛片一区二区三区四 | 欧美不卡一区 | 国产精品3| 欧美人成片免费看视频不卡 | 日韩一级在线播放免费观看 | 蜜柚视频高清在线 | 国产成人综合亚洲亚洲欧美 | 国产做国产爱免费视频 | 视频一区二区三区在线 | 亚洲欧美精品日韩欧美 | 香蕉视频网站在线播放 | 国产欧美国产精品第一区 | 久久久久久毛片免费播放 | 亚洲成人黄色网址 | 国产欧美日韩精品高清二区综合区 | 亚洲一级毛片在线观播放 | 一级毛片免费观看不卡视频 | 精品卡1卡2卡三卡免费视频 | 一二三四在线视频社区8 | 四虎影视最新网址 | 日本中文字幕一区二区高清在线 | 欧美日韩一区在线观看 | 国产三级精品三级在线观看 | 特级毛片视频在线 | 最新国产毛片 | 婷婷久草| 免费看动漫网站 | 成人三级在线视频 | 国产自产拍精品视频免费看 | 黄色一级毛片看一级毛片 | 免费高清不卡毛片在线看 | 免费视频一区二区性色 | 国产精品日韩欧美一区二区三区 | 成人影片在线免费观看 | 国产老色批视频在线观看应用 | 黄 色 毛片免费 | 麻豆国内精品欧美在线 | 午夜精品福利影院 |