国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 編程設(shè)計 > 正文

Reflector reflexil爆破軟件使用圖文實例

2020-07-14 13:13:46
字體:
供稿:網(wǎng)友

一起玩一個CrackMe(C#),打算一起來寫KeyGen,他用的是爆破的方法,我修復程序后發(fā)現(xiàn)里面常量各種溢出...無奈,只能用reflexil注入方法,然后寫出KeyGen.
分享下使用reflexil常用的幾個方法..

Reflector 之reflexil使用

先寫個簡單的控制臺程序

工具,添加插件.

選中reflexil 1.6 (1.7從來沒附加成功過.不知道為啥..)

一 直接修改操作數(shù)

可以直接編輯IL

Update 后

在程序集中右鍵

另存程序.

執(zhí)行剛保存的程序

還可以直接添加IL 接著讓后面繼續(xù)輸出

二 直接注入IL

右鍵,新建(new Create),填寫對應(yīng)的操作碼,選擇類型,

值得注意的是右邊的按鈕,append(添加),接著是插入在選擇之前,然后是插入在選擇之后;別選錯了.

注意    注入的時候操作數(shù)的類型別選錯了.

然后繼續(xù)參照上面的,將程序另存一次.

三 替換代碼

如果不想折騰IL,直接選擇 替換所有代碼.

不過這意味著你要重寫所有代碼(大多數(shù)時,我都會用在重寫某個方法上)…然后提交一下,他會自動編譯, 然后繼續(xù)參照上面的,將程序另存一次.

提交完成后會自動編譯,并且再右側(cè)區(qū)域會生成對應(yīng)的IL.

然后繼續(xù)參照上面的,將程序另存一次.

執(zhí)行下…

四  注入方法

別選錯地方了.是你要將方法注入到某個類中,不是注入class所以,一定是在類上右鍵

暫時只能注入返回值為void的方法

對了,點擊OK后會有個該死的提示,這提示的大致意思是:

當你在執(zhí)行,增加,刪除,重命名,等動作時,你不會直接看見相應(yīng)的操作,他們是不同步的.

你必須要重新加載程序集才可以看見.

當然,你還需要將程序另存一次.!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

然后你需要關(guān)閉程序集,接著重新打開剛才另存的 

現(xiàn)在方法已經(jīng)注入進去了.

然后我需要給它添加點內(nèi)容..

讓方法輸出個InjectedMethod字符串

在方法中添加IL

接著修改Main方法,并且調(diào)用剛才注入的方法.

另存下..

執(zhí)行結(jié)果.

PS:   如果是替換代碼的話,先更改injectmethod時不用實現(xiàn)main方法,只需要修改injectmethod()方法,然后再去修改Main方法.調(diào)用時因為injectmethod方法不是static所以需要實例化Program

接下來說說添加有參數(shù),有返回值的方法:

先在參數(shù)(parameter)標簽,中添加一個參數(shù).

然后在屬性標簽中修改返回值為string.

接著使用替換代碼的功能

可以看見方法已經(jīng)帶有參數(shù)并且有返回值.

修改下這個方法

打印下傳進來的名字,并且打印當前時間

修改主函數(shù)調(diào)用

編譯,然后不要忘記另存….

Good Job .

Have Fun .

By McevilRock

9-7/2014

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 鲁山县| 唐海县| 木里| 徐汇区| 海口市| 威远县| 屯昌县| 晋宁县| 日土县| 乾安县| 扶余县| 洛隆县| 凤山县| 雷山县| 丹寨县| 密云县| 威远县| 通州区| 咸丰县| 承德市| 华蓥市| 阿拉尔市| 安塞县| 新民市| 江永县| 延庆县| 丰台区| 克什克腾旗| 宁城县| 兴化市| 子洲县| 新宁县| 年辖:市辖区| 合肥市| 贵阳市| 兴宁市| 观塘区| 绍兴市| 安义县| 英超| 通渭县|