最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

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

紅色警戒2逆向系列:使用ScyllaHide反反調(diào)試

2023-04-07 09:18 作者:亞熱帶的甘蔗  | 我要投稿

所以這一期我研究了好久,最后想出了一個(gè)可能是辦法的辦法,記錄一下,也請(qǐng)大佬指教,因?yàn)榫W(wǎng)上關(guān)于這個(gè)的內(nèi)容實(shí)在是有點(diǎn)少

所以我本來是這么想的,通過找到檢測(cè)調(diào)試器的代碼,然后把這些代碼給Hook了。但是這樣顯然就會(huì)遇到一個(gè)問題。那就是首先需要靜態(tài)分析找到反調(diào)試的代碼。這樣的工作量巨大,而且有一些動(dòng)態(tài)調(diào)用涉及到大量的指針操作,要找到指針的指向又需要用調(diào)試器,但是反調(diào)試機(jī)制又不讓我們調(diào)試,所以是一個(gè)非常棘手的問題。

方案二就是使用虛擬機(jī),但是我不喜歡這個(gè)方案,因?yàn)槲业碾娔X比較差(一個(gè)后端開發(fā)人員的電腦居然很差)。所以我也沒有這么做

所以我想選擇一些反反調(diào)試器。所以我就選擇了ScyllaHide來反反調(diào)試。從GitHub上下載了ScyllaHide的插件,然后又把它裝到了x32GDB上,然后點(diǎn)擊plugin ->?ScyllaHide -> AttachProcess中,然后把PID填寫進(jìn)去,大概就是這樣:

這里應(yīng)該會(huì)顯示EXE path

選擇attach,這個(gè)時(shí)候再進(jìn)入游戲,發(fā)現(xiàn)并沒有卡死,成功繞開了反調(diào)試機(jī)制。

由此我還想出來一個(gè)賴皮的招數(shù),就是在快被對(duì)手打死的時(shí)候,使用GDB調(diào)試一下,然后就會(huì)觸發(fā)反調(diào)試,我和對(duì)手就會(huì)卡死,然后等個(gè)1個(gè)小時(shí)對(duì)手退了,再退出GDB,恢復(fù)游戲(開玩笑的,好孩子不要學(xué))

之前用的一直是Ghidra,所以可以給大家看C語言代碼。雖然這個(gè)C語言代碼質(zhì)量不高,但是大家都喜聞樂見。不過換到x32GDB的時(shí)候就要看匯編語言代碼了,請(qǐng)大家做好心理準(zhǔn)備(大概)


接下來我們就要分析debugLogger函數(shù)了,有一個(gè)問題就是戰(zhàn)網(wǎng)版本的紅警刪除了所有的調(diào)試信息。我在上一篇還吐槽了西木工作室的開發(fā)人員懶,沒想到他們?cè)谟壤锏膹?fù)仇版本把調(diào)試信息刪除了。不過原版和尤復(fù)幾乎完全一樣,所以我們可以通過學(xué)習(xí)原版的結(jié)構(gòu)來推算尤里的復(fù)仇版本。

通過點(diǎn)進(jìn)DebugLogger函數(shù)然后尋找調(diào)用該函數(shù)的函數(shù)(也就是點(diǎn)function?call trees,然后看ingoing call),我們可以發(fā)現(xiàn)一些有意思的代碼,比方說讀取各種ini文件的,像

之類的,也許Ares的作者當(dāng)年也看到了這些,所以開發(fā)出了Ares。

DebugLogger還提示了很多關(guān)于網(wǎng)絡(luò)的信息,這些信息我們?cè)谥蟮奈恼吕飼?huì)仔細(xì)分析,這對(duì)我們開發(fā)更多人的模式可能有幫助

下集預(yù)告:我也不知道下集要寫啥,可能是通過spy++和x32GDB查看點(diǎn)擊某個(gè)位置造成的邏輯變化,從而定位一些重要的函數(shù),方便我們之后Hook


紅色警戒2逆向系列:使用ScyllaHide反反調(diào)試的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
株洲县| 启东市| 宿松县| 武定县| 新竹县| 平阴县| 宜良县| 新民市| 明光市| 灵宝市| 内丘县| 牙克石市| 安福县| 台北县| 阳高县| 宜州市| 汝南县| 钦州市| 自治县| 新巴尔虎右旗| 新营市| 鄄城县| 饶平县| 冷水江市| 庆元县| 阿合奇县| 红河县| 南投市| 安塞县| 屯昌县| 定陶县| 潜山县| 保康县| 湟中县| 澳门| 麻阳| 临洮县| 六枝特区| 德昌县| 石林| 三穗县|