這個外掛一般人不敢下手
在無意間從網路上獲取到一款付費的遊戲黑產外掛樣本,並且該外掛號稱可以無視遊戲客戶端的反外掛檢測功能。 好奇的心就不由自主的將外掛樣本下載下來,並丟進虛擬機器環境嘗試學習下強大的外掛功能。
從檔案上看起來這個外掛是個正常的應用程式(竟然dll都沒有),接下來就是觀察下這個外掛的行為,就出現了下面誅心的對話方塊展示。
看完前面這兩個對話方塊及文字,讓我內心久久不能平靜,現在這遊戲黑產外掛都開始都這強大了嗎?都開始採用 技術+心理戰 策略了嗎?
瑟瑟發抖過後,下面就分析學習下這個外掛的技術功能。
不是破解哦,我付費買了個授權卡號哦。不是破解哦,我也不會破解技術!
基本分析
對這個樣本的基本分析:
1、分析樣本是否採用第三方加殼軟體進行加殼;
2、分析樣本的依賴模組有哪些;
3、用程序監控工具分析樣本的執行資料行為。
從上圖中可以看到該樣本的 區段增加了一個vmp0的區段名稱 ,這就說明該樣本有用到vmp殼的功能進行對樣本的程式碼或資料進行做保護。
從上圖中,該樣本的主要依賴模組主要是系統的模組,沒有依賴第三方的模組,那麼這個外掛的所有功能都是集中在這個應用程式中。
從上圖中,該樣本還掛鉤RegisterClassA函式,這個函式主要通過註冊視窗類的功能,也就是改變這個樣本這個MFC開發的應用程式視窗資訊以及替換對話方塊資源資訊用的。
網路驗證分析
由於所購買的卡號已到期,那麼接下來就學習分析下這個卡號授權的驗證方式。對於分析這種授權方式,在遊戲黑產外掛中大部分都是採用的是市面上現成的網路驗證(其實也有外掛作者自己寫網路驗證的 )。
個人覺得外掛採用市面的網路驗證主要兩個因素:外掛作者主要的精力還是在外掛功能實現上;外掛作者的技術能力儲備不足。
所以接下來先對樣本確認,採用了市面那款網路驗證(收費還是定製),然後才能高效的對這個網路驗證進行做分析。
對於這種授權方式的驗證方式,最直接的就是要麼靜態的分析(IDA工具)要麼動態分析(ollydbg工具)的 字串資訊 ,然後通過字串資訊進行慢慢除錯跟蹤分析。要麼就是通過分析 網路行為 然後進行通過 關鍵函式下斷點 跟蹤分析。
從上圖中可以看到關鍵字 驗證_天之盾,這個就是這個樣本所採用的第三方網路驗證。這個 天之盾的網路驗證 ,就是天盾網路驗證的定製版本。
上圖就是這個天盾網路驗證的一些公開影片截圖, 這裡突然起了一句話,打敗對手的最好招式,就是了解對手的招式然後見招拆招。
下面就這個 天盾網路驗證 做下梳理,天盾網路是基於 中文程式設計易語言 開發的。
上圖就是該樣本所採用的授權卡方式驗證的關鍵程式碼功能實現流程。
卡號授權 驗證的關鍵流程:
1.從配置檔案上進行讀取授權卡號;
2.載入替換樣本中的面板;
3.進行網路驗證初始化工作;
4.進行關鍵檢測;
5.進行網路驗證。
上圖是天盾網路驗證的服務端程式(這個網路上可以下載到),可以看到這個卡號授權的功能還是非常強大的,還能試用、停封、分析卡號的線上量等等功能。
通過對以上的瞭解,我們此時對網路驗證的分析就會比較有頭緒了,就可以針對這塊網路驗證進行查閱相關資料然後進行做分析了。
針對這種網路驗證的對抗思路:
(需要足夠的耐心)
1.通過抓包分析網路通訊包,然後進行對資料包分析做手腳進行驗證;
2.通過下斷點方式進行不斷除錯,分析出網路驗證的校驗函式或地址,並且在這過程中需要排除掉許許多多的暗樁。
外掛功能分析
在分析樣本過程中,執行著ollydbg工具和pchunter工具,在啟動外掛樣本,那麼會發現這個外掛樣本是無法啟動和啟動就崩潰的情況。
並針對這個樣本里面的關鍵程式碼和資料,這個樣本有對這兩個工具做對抗的檢測操作。防止這個樣本的被除錯分析和記憶體dump分析了。
分析下這個樣本程式外掛功能,這個樣本就是在啟動的時候進行做一次 系統快照 ,然後判斷下是有啟動這些分析工具,沒有執行就正常啟動了外掛, 所以不用過這個檢測 , 先把外掛啟動起來,在啟動除錯分析工具那就可以開始分析之旅了。
下面就開始分析下這個外掛的對這遊戲做了那些手腳。
這個外掛的主要過保護功能:
1、將外掛樣本放到遊戲目錄中;
2、接著從這個外掛作者伺服器上去下載其修改後的“過保護“的檔案;
3、進行替換到遊戲目錄中;
4、替換後再進行啟動遊戲,這樣達到過掉遊戲檢測的思路。
這個作者確實很辛苦,把這個過保護的事情做的很細緻。
以上的全部只是個分析學習的過程,不是破解,我也不會破解!
遊戲黑灰產外掛,一直以來都是長期對抗過程,其中對外掛樣本的獲取和外掛樣本的分析,這個也是對抗過程中的一個很重要的事情。
遊戲中的外掛對抗是需要主動出擊和積極防守相結合的。積極防守的重要思路是研究透外掛樣本的功能和思路,然後對外掛樣本採取果斷的對抗策略。
對於外掛樣本其實可以有幾個點值得思考的。
外掛的開發方式:VB、C++、易語言、按鍵精靈、大漠外掛等等
外掛的注入方式:遠端執行緒、鉤子注入、匯入表注入、劫持注入等等
外掛的保護方式:網路驗證、加殼、內部掛、QQ群驗證等等。
外掛的檢測方式:特徵碼、檔案資訊、心跳包、關鍵函式等等。