搜尋

Windows文章程序黑客加密

返回清單
切換到指定樓層
通知這文章過時或找檔案 發表主題

[其他] 【轉貼】簡單談談“遊戲公司”所謂的神乎其技的行為偵測(3)

[複製連結]
SheepKingCN ( Lv.80 論壇達人 ) 發表於 2013-8-18 13:05:45 | 顯示全部樓層 |閱讀模式
此為本人學習、無聊研究用,為了要備份文章,所以才發在這裡。

作者介紹:
名叫Vxk
又名為killvxk
看雪學院的ID叫cvcvxk
是國內外都很著名的Windows內核開發高手。
十年前活躍於國內著名病毒技術論壇CVC,是中國大陸知名的病毒技術專家。
對操作系統內核以及編程,逆向, 非常精通。
被很多人稱為:技術全能專家。
曾出現在網絡流傳的所謂的“頂級黑客名單”上。
經常活躍在國內外各大知名內核開發論壇,
連老外也經常提及老V這樣的稱呼。
發表很多技術文章,公開了不少經典的內核代碼程序,並帶領了很多內核開發新手。

作者在網路上的ID:中國大陸-看雪學院-cvcvxk

文章版權所有人:看雪學院-cvcvxk

------------正文開始------------

第二篇中談到了對純CALL的輔助軟件的一種檢測手段,索性接著亂談這種輔助的檢測手段。
不過這裡談談暗樁模式的檢測,堆棧遍歷逐層找返回的EIP相信很多人都會。
不過在某些Call的地方插入下面這樣的代碼,比如游戲邏輯的發包call的加密call裡面
於是悲情又出來了~
  1. WCHAR wzCallerName[MAX_PATH];
  2.   PVOID dwRetArray[62];
  3.   DWORD dwRetCount;
  4.   BOOL bNeedLogStack = TRUE;
  5.   dwRetCount = RtlCaptureStackBackTrace(2,50,dwRetArray,0);//用api是不好的,可以自己實現的說~~
  6.   if (dwRetCount)
  7.   {
  8.     for(DWORD xIndex=0;xIndex<dwRetCount;xIndex++)
  9.     {
  10.       if (CheckExcepAddr((DWORD)dwRetArray[xIndex]))//排除部分白地址
  11.       {
  12.         bNeedLogStack = FALSE;
  13.         break;
  14.       }
  15.     }
  16.     if (bNeedLogStack)
  17.     {
  18.       for(DWORD xIndex=0;xIndex<dwRetCount;xIndex++)
  19.       {
  20.         GetCallerModule((DWORD)dwRetArray[xIndex],wzCallerName);//獲取地址模塊名稱
  21.         ReportToSrv((DWORD)dwRetArray[xIndex],xIndex,wzCallerName);//把信息寫入定時返回服務器的數據體裡,嘿嘿~
  22.       }
  23.     }
  24.   }
複製代碼
第三篇內容就這些吧,還有幾個有意思的偵測和暗樁的手法...等等繼續講~~





大家正在看啥


回覆 使用道具 檢舉
複製專屬你的推廣連結:發至FB與各論壇宣傳:累積點數換GP商品 & 藍鑽
每五點閱率就可以兌換藍鑽積分或遊戲點卡 夢遊推廣文章換GP商品

你需要登入後才可以回覆 登入 | 加入會員

本版積分規則

Copyright (C) 2010-2020 夢遊電玩論壇

廣告合作:請直接聯繫我們,並附上您預刊登位置的預算。  

快速回覆 返回頂端 返回清單