c#动态修改代码的crackme
題目運(yùn)行截圖
用exeinfo看下有沒有混淆:
拉進(jìn)dnSpy反編譯:
進(jìn)btnCheck_Click單擊過程看下:
里面調(diào)用了Form1.MetMetMet()函數(shù):
在這個(gè)函數(shù)里面動(dòng)態(tài)生成了一個(gè)MetM函數(shù),用form.bb數(shù)組里面的內(nèi)容來填充函數(shù)內(nèi)容,實(shí)際上這個(gè)MetM才是驗(yàn)證函數(shù)
那我們要把這個(gè)函數(shù)修復(fù),動(dòng)態(tài)調(diào)試把bb數(shù)組的內(nèi)容復(fù)制出來,將MetMett函數(shù)的內(nèi)容替換為bb數(shù)組的內(nèi)容:
MetMett函數(shù)的字節(jié)數(shù)據(jù)怎么找呢,動(dòng)態(tài)調(diào)試的時(shí)候form_load會(huì)返回form.bb,這里是MetMett的原始數(shù)據(jù),在Winhex里16進(jìn)制搜索就可以定位,然后替換為程序修改后的bb數(shù)組的數(shù)據(jù):
這里是還原后的數(shù)據(jù),寫python解一下:
文件下載:https://pan.baidu.com/s/1YqwdRIvW_5BcAvJ6VZ5Jig
總結(jié)
以上是生活随笔為你收集整理的c#动态修改代码的crackme的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux migrations病毒守
- 下一篇: SharpStrike:基于C#实现的后