• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Pencil.C++

            更新速度可能會晚于http://blog.csdn.net/bilaopao

              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              34 隨筆 :: 0 文章 :: 40 評論 :: 0 Trackbacks
            一、外掛的分類

            外掛一般的分為2類,脫機式 和 內(nèi)掛式。

            脫機式外掛的定義:完全脫離官方發(fā)布的客戶端程序,可以與游戲服務器自由的進行通訊的外掛程序,這類外掛的實現(xiàn)是2類外掛里最困難的,主要難點在于外掛制作者需要對游戲的通訊協(xié)議進行充分的分析,包括解決封包的加密解密問題,使得封包合法化,這樣游戲服務器才能接受并處理。

            內(nèi)掛式外掛的定義:內(nèi)掛需要以官方發(fā)布的客戶端程序為載體,依靠客戶端程序來完成與游戲服務器的通訊,主要通過反匯編手段分析并修改客戶端代碼后實現(xiàn)功能,一般通過直接調(diào)用游戲客戶端的發(fā)包函數(shù)進行發(fā)包,或者調(diào)用游戲客戶端的封包加密解密函數(shù)自行處理發(fā)包收包。


            二、制作外掛常用的技術手段

               制作外掛一般使用的分析工具:
            動態(tài)分析 OllyDbg(OllyICE)
            靜態(tài)分析 IDA Pro

               制作外掛一般使用的開發(fā)工具:
            VisualStdio系列(VC++,VB)
            Borland系列(Delphi,BCB,BC++)
            中國人自己的開發(fā)工具(易語言)(編者注:此開發(fā)工具優(yōu)勢在于控件種類上,有專門的用于外掛制作的控件)

               制作外掛的技術要點:
            鼠標鍵盤模擬技術:這類技術在RING3層可通過調(diào)用WIN32 API實現(xiàn),在RING0層可通過驅動模擬鼠標鍵盤輸入來實現(xiàn)。按鍵精靈就采用在RING0層通過驅動來模擬鼠標鍵盤,比較底層。

            Hook技術:包括API HOOK 、普通的對游戲代碼進行HOOK等。這類技術有個特點,對目標進程的代碼會進行修改。

            腳本技術:擴充外掛功能的技術之一,能讓外掛使用者編寫腳本來擴充外掛功能。

            三、反外掛中常用的技術手段

            反外掛一般使用的分析工具:
            動態(tài)分析 OllyDbg(OllyICE)
            靜態(tài)分析 IDA Pro

            制作反外掛一般使用的開發(fā)工具:
            依據(jù)游戲客戶端采用的開發(fā)工具來決定。

            制作反外掛的技術要點:
            代碼校驗:包括磁盤代碼及內(nèi)存代碼校驗,防止代碼被非法更改。

            虛擬機保護:虛擬機(VM )其實就是Virtual Machine的縮寫,這里說的VM并不是像VMWare那樣的虛擬機,而是將一系列的指令解釋成bytecode(字節(jié)碼)放在一個解釋引擎中執(zhí)行,能有效的干擾非法調(diào)試者對保護的代碼進行分析。是反外掛技術中的重中之重。

            驅動保護:采用底層鉤子技術,一般采用SSDT HOOK來對游戲進程進行保護。但這種技術有一個致命的缺陷,就是兼容性問題。

            反調(diào)試:對調(diào)試過程產(chǎn)生干擾,阻止非法調(diào)試者進行正常的調(diào)試。反調(diào)試代碼加多后會導致兼容性穩(wěn)定性出現(xiàn)問題。

            四、一般保護的思路及步驟

               防止脫機式外掛:
            合理的設計封包通訊協(xié)議及對封包加密解密算法進行虛擬機保護能有效的防止脫機外掛,反脫機外掛的難度比較低。而且技術要求也不高。

               防止內(nèi)掛式外掛:
            反該類外掛主要從代碼校驗上著手,并配合虛擬機保護,必要時候加上簡單的驅動。簡單的可以采用如下步驟處理:
            (1)        將封包加密解密獨立成一個動態(tài)連接庫(DLL),供游戲主程序調(diào)用進行封包加解密。
            (2)        更換封包加密解密方式,防止破解者采用替換舊客戶端的方式進入游戲。
            (3)        反外掛功能在獨立出來的動態(tài)連接庫里實現(xiàn),在獨立出來的動態(tài)連接庫中加入對主程序代碼段校驗。建立一個新的反外掛線程來校驗代碼段,加入敵意進程或模塊的特征檢測,對關鍵的API進行檢測。檢測到非法可以對服務器進行報告,并在客戶端主動切斷與游戲服務器的連接。
            (4)        在加密解密函數(shù)里加入對反外掛線程的檢測,檢測反外掛線程是否正常運行,如果檢測到非法情況,同樣對服務器進行報告并主動切斷與游戲服務器的連接。
            (5)        對獨立出來的DLL進行虛擬機保護(封包加解密及反外掛線程代碼)。
            (6)        加入一些反調(diào)試技術。
            (7)        根據(jù)實際情況采用驅動技術,對游戲進行保護。

            五、對反外掛工作的建議
            反外掛工作具有長期性,復雜性等特性,故建立專門進行此類工作的軟件安全小組是必須的,及時的收集外掛后分析外掛的所使用的技術和破解反外掛系統(tǒng)的方式,寫出相應的檢測及防護代碼,提交后進行游戲更新。通過不斷的完善反外掛系統(tǒng),我有理由堅信,外掛會在這樣的保護措施下銷聲匿跡。
            posted on 2009-06-08 23:29 Pencil.C++ 閱讀(835) 評論(0)  編輯 收藏 引用
            日本亚洲色大成网站WWW久久| 亚洲狠狠婷婷综合久久久久| 亚洲综合精品香蕉久久网97| 狠狠色伊人久久精品综合网| 国内精品久久国产| 久久精品国产亚洲欧美| 国产精品亚洲综合久久| 精品999久久久久久中文字幕| 99久久精品九九亚洲精品| 2020国产成人久久精品| 91精品国产91久久久久久蜜臀| 亚洲国产精品综合久久网络| 国产亚洲美女精品久久久久狼| 青青热久久国产久精品 | 2020久久精品国产免费| 色青青草原桃花久久综合| 国产亚洲美女精品久久久久狼| 偷窥少妇久久久久久久久| 国产99久久久国产精免费| 性高湖久久久久久久久| 亚洲国产成人精品女人久久久| 亚洲国产精品久久久久久| 久久av无码专区亚洲av桃花岛| 婷婷久久综合九色综合绿巨人| 日本久久久精品中文字幕| 久久精品国产亚洲AV麻豆网站| 久久久久国产一级毛片高清板| .精品久久久麻豆国产精品| 久久香蕉超碰97国产精品| 久久国语露脸国产精品电影| 色播久久人人爽人人爽人人片aV | 久久精品国产一区二区| 亚洲国产成人久久综合碰碰动漫3d | 国产精品99精品久久免费| 久久国产精品无码一区二区三区| 伊人久久大香线蕉综合网站| 性做久久久久久久久老女人| 久久久久久A亚洲欧洲AV冫| 精品久久人人爽天天玩人人妻| 99久久国产综合精品网成人影院| 精品久久久久久久中文字幕|