匯編語言程序破解基本知識(shí)
發(fā)布日期:2022-01-01 10:27 | 文章來源:gibhub
一.機(jī)械碼,又稱機(jī)器碼.
ultraedit打開,編輯exe文件時(shí)你會(huì)看到
許許多多的由0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F組成的數(shù)碼,這些數(shù)碼
就是機(jī)器碼.
修改程序時(shí)必須通過修改機(jī)器碼來修改exe文件.
二.需要熟練掌握的全部匯編知識(shí)(只有這么多)
不大容易理解,可先強(qiáng)行背住,混個(gè)臉兒熟,以后慢慢的就理解了
cmp a,b 比較a與b
mov a,b 把b的值送給a
ret 返回主程序
nop 無作用,英文“no operation”的簡寫,意思是“do nothing”(機(jī)器碼90)***機(jī)器碼的含義參看上面
(解釋:ultraedit打開編輯exe文件時(shí)你看到90,等同于匯編語句nop)
call 調(diào)用子程序
je 或jz 若相等則跳(機(jī)器碼74 或0F84)
jne或jnz 若不相等則跳(機(jī)器碼75或0F85)
jmp 無條件跳(機(jī)器碼EB)
jb 若小于則跳
ja 若大于則跳
jg 若大于則跳
jge 若大于等于則跳
jl 若小于則跳
jle 若小于等于則跳
pop 出棧
push 壓棧
三.常見修改(機(jī)器碼)
74=>75 74=>90 74=>EB
75=>74 75=>90 75=>EB
jnz->nop
75->90(相應(yīng)的機(jī)器碼修改)
jnz -> jmp
75 -> EB(相應(yīng)的機(jī)器碼修改)
jnz -> jz
75->74 (正常) 0F 85 -> 0F 84(特殊情況下,有時(shí),相應(yīng)的機(jī)器碼修改)
四.兩種不同情況的不同修改方法
1.修改為jmp
je(jne,jz,jnz) =>jmp相應(yīng)的機(jī)器碼EB (出錯(cuò)信息向上找到的第一個(gè)跳轉(zhuǎn))jmp的作用是絕對(duì)跳,無條件跳,從而跳過下面的出錯(cuò)信息
xxxxxxxxxxxx 出錯(cuò)信息,例如:注冊(cè)碼不對(duì),sorry,未注冊(cè)版不能...,"Function Not Avaible in Demo" 或 "Command Not Avaible" 或 "Can't save in Shareware/Demo"等 (我們希望把它跳過,不讓它出現(xiàn))
。。。
。。。
xxxxxxxxxxxx 正確路線所在
2.修改為nop
je(jne,jz,jnz) =>nop相應(yīng)的機(jī)器碼90 (正確信息向上找到的第一個(gè)跳轉(zhuǎn)) nop的作用是抹掉這個(gè)跳轉(zhuǎn),使這個(gè)跳轉(zhuǎn)無效,失去作用,從而使程序順利來到緊跟其后的正確信息處
xxxxxxxxxxxx 正確信息,例如:注冊(cè)成功,謝謝您的支持等(我們希望它不被跳過,讓它出現(xiàn),程序一定要順利來到這里)
。。。
。。。
xxxxxxxxxxxx 出錯(cuò)信息(我們希望不要跳到這里,不讓它出現(xiàn))
。。。
。。。
五.爆破無敵口訣 背會(huì)此口訣,天下無敵,以后慢慢琢磨,仔細(xì)體會(huì),收益多多。如此好的口訣,不要錯(cuò)過
一條(跳)就死,九筒(90)就胡 (對(duì)應(yīng)上面的2.修改為nop)
一條(跳)就胡,一餅(EB)伺候 (對(duì)應(yīng)上面的1.修改為jmp)
妻死(74)便妻無(75)
爸死(84)便爸無(85)
ultraedit打開,編輯exe文件時(shí)你會(huì)看到
許許多多的由0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F組成的數(shù)碼,這些數(shù)碼
就是機(jī)器碼.
修改程序時(shí)必須通過修改機(jī)器碼來修改exe文件.
二.需要熟練掌握的全部匯編知識(shí)(只有這么多)
不大容易理解,可先強(qiáng)行背住,混個(gè)臉兒熟,以后慢慢的就理解了
cmp a,b 比較a與b
mov a,b 把b的值送給a
ret 返回主程序
nop 無作用,英文“no operation”的簡寫,意思是“do nothing”(機(jī)器碼90)***機(jī)器碼的含義參看上面
(解釋:ultraedit打開編輯exe文件時(shí)你看到90,等同于匯編語句nop)
call 調(diào)用子程序
je 或jz 若相等則跳(機(jī)器碼74 或0F84)
jne或jnz 若不相等則跳(機(jī)器碼75或0F85)
jmp 無條件跳(機(jī)器碼EB)
jb 若小于則跳
ja 若大于則跳
jg 若大于則跳
jge 若大于等于則跳
jl 若小于則跳
jle 若小于等于則跳
pop 出棧
push 壓棧
三.常見修改(機(jī)器碼)
74=>75 74=>90 74=>EB
75=>74 75=>90 75=>EB
jnz->nop
75->90(相應(yīng)的機(jī)器碼修改)
jnz -> jmp
75 -> EB(相應(yīng)的機(jī)器碼修改)
jnz -> jz
75->74 (正常) 0F 85 -> 0F 84(特殊情況下,有時(shí),相應(yīng)的機(jī)器碼修改)
四.兩種不同情況的不同修改方法
1.修改為jmp
je(jne,jz,jnz) =>jmp相應(yīng)的機(jī)器碼EB (出錯(cuò)信息向上找到的第一個(gè)跳轉(zhuǎn))jmp的作用是絕對(duì)跳,無條件跳,從而跳過下面的出錯(cuò)信息
xxxxxxxxxxxx 出錯(cuò)信息,例如:注冊(cè)碼不對(duì),sorry,未注冊(cè)版不能...,"Function Not Avaible in Demo" 或 "Command Not Avaible" 或 "Can't save in Shareware/Demo"等 (我們希望把它跳過,不讓它出現(xiàn))
。。。
。。。
xxxxxxxxxxxx 正確路線所在
2.修改為nop
je(jne,jz,jnz) =>nop相應(yīng)的機(jī)器碼90 (正確信息向上找到的第一個(gè)跳轉(zhuǎn)) nop的作用是抹掉這個(gè)跳轉(zhuǎn),使這個(gè)跳轉(zhuǎn)無效,失去作用,從而使程序順利來到緊跟其后的正確信息處
xxxxxxxxxxxx 正確信息,例如:注冊(cè)成功,謝謝您的支持等(我們希望它不被跳過,讓它出現(xiàn),程序一定要順利來到這里)
。。。
。。。
xxxxxxxxxxxx 出錯(cuò)信息(我們希望不要跳到這里,不讓它出現(xiàn))
。。。
。。。
五.爆破無敵口訣 背會(huì)此口訣,天下無敵,以后慢慢琢磨,仔細(xì)體會(huì),收益多多。如此好的口訣,不要錯(cuò)過
一條(跳)就死,九筒(90)就胡 (對(duì)應(yīng)上面的2.修改為nop)
一條(跳)就胡,一餅(EB)伺候 (對(duì)應(yīng)上面的1.修改為jmp)
妻死(74)便妻無(75)
爸死(84)便爸無(85)
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
相關(guān)文章