五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

一道逆向題

2022-03-24 14:45 作者:rkvir逆向工程學(xué)院  | 我要投稿

查殼后程序是一個32位無殼的程序

拉到od和ida中分析一下

經(jīng)過分析,

首先分析第一個字符串比較的call

取字符串的第一個字符,循環(huán)字符串n次(n為字符串的長度),將第一個字符相加n次,然后這個值=550也就是0x226

所以這里只要滿足 字符*n=550 就可以,經(jīng)過后面的分析這里n需要填10(見下文)

也就是?7開頭長度為10 的字符串

接下來調(diào)試程序

在段首004010770地址下個斷點(ida中main函數(shù)開頭的地址)

我們一路單步(F8)來到這里,這里必須跳轉(zhuǎn)(可以修改標(biāo)志寄存器的S位改變是否跳轉(zhuǎn)),不然程序是不會進行字符串比較的

下面那個call就是進行字符串比較的call了

我們單步(F7)進入,發(fā)現(xiàn)這里面有兩個跳轉(zhuǎn)

第一個jnz就是==550的判斷

第二個jnz是字符串是否相等的判斷

對應(yīng)ida中

這里我們看到一串類似base64的字符串

搜索字符串看一下

猜測這里他自定義了base64編碼表

解密得到

因為這里解密到的長度是10,所以上面的n才為10,不然加密后的字符串長度是不夠的

此時我們測試一下,

當(dāng)算法call執(zhí)行完成后我們修改字符串為 上面解密到的,我們看能不能成功

在內(nèi)存窗口中修改后

然后來到字符串比較的地方

我們可以看到要進行比較的兩個字符串是一樣的

所以現(xiàn)在

只需要讓我們輸入的字符串經(jīng)過算法call后等于?? =>=:<2>?=2

然后分析一下算法的call

算法call里主要就是這個call,然后這個call執(zhí)行了4次,我們點進去

分析

第一次執(zhí)行的是4

第二次1

第三次2

第四次3

此時只需要將? =>=:<2>?=2 反推回來

也就是

先每一位+1,再除啦第一位后面每一位-3,再每一位xor9? 就可以了

然后寫腳本


一道逆向題的評論 (共 條)

分享到微博請遵守國家法律
自治县| 海门市| 铁岭县| 潼关县| 安阳市| 秦皇岛市| 崇州市| 当雄县| 咸阳市| 韩城市| 成武县| 文水县| 宁津县| 虹口区| 新邵县| 萨迦县| 鲁山县| 玛曲县| 瑞昌市| 南汇区| 宜城市| 剑阁县| 罗田县| 南涧| 乌鲁木齐市| 隆尧县| 乡宁县| 济阳县| 融水| 满洲里市| 武陟县| 新沂市| 台东市| 芦山县| 德化县| 樟树市| 新泰市| 牙克石市| 宁乡县| 兴国县| 花莲县|