🌍CHEATLAND週報:淺談BATTLEEYE反作弊與R6的淵源(二)。

本期內容會稍稍長一點,請謹慎服用(文長慎入)

Battleye 大部分人知道這個可以說藍星最強反作弊的原因是吃雞大火

接著上一章

這里講的是BE的主動措施

BE相對於其他反作弊引擎,其行為極具攻擊性,主要表現在其主動掃描進程和內存和文件,當然相比國內的tp來講,嚴格意義上BE的進攻性弱雞多了。那麽這篇我就著重於其進攻性的反作弊措施進行淺談

以下為BE反作弊的高危行為。以下提到的方法均為公開方法,並且已知用這些方法去制作R6的輔助均會遭到BE禁令。

(1)D3D(DX)渲染器的事件跟蹤和鉤子(已被BE檢出)

作為一款windos平台的遊戲,必然DX(DirectX)是其內核的一個重要依賴。

那麽r6中的眾多破壞效果和貼圖啊,紋理啊,多線程啊都是依賴DX11。雖然dx11槽點很多,你直接用原生的Havok去配合dx去實現一個實時的碰撞會造成dx渲染器的極大的遲滯,所以r6的技術利用了很多技術去解決這個事情。有人很奇怪為什麽我會扯這麽遠,其實這里有個典故,叫“健康行動”。按照我的猜測,健康行動其實是重構了一部分dx11和Havok以及等等之類的關鍵性破壞計算代碼。說簡單點,r6開發初期時很瘋狂的,啥技術都用,很大程度健康行動之前是有很多“祖傳”代碼的。(PS:敢在遊戲運營的這麽好的情況下去重構底層,我只能說牛逼)。那麽眾多和dx結合的環境其實就是“薄弱點”了。

那麽這些薄弱點的專業叫法就是“事件”和“鉤子”,當然 這依舊很不嚴謹,很遺憾在程序員的世界里面,我還是戰五渣,所以各位大佬別較真。

那麽正常來講我們利用ETW(Event Tracing for Windows-Windows事件跟蹤)來檢測DX渲染器的事件和掛鉤

事件跟蹤模型
當然你也可以直接給DX掛鉤,但是實測下來你應該能在主界面活一段時間,第二局選人涼涼(別問我怎麽知道的)。那麽,我們可以做到的是可以對GPUView中的活躍的一些Controllers進行掛鉤,以下是一些基礎知識。

Direct3D11 Buffer

DXGI Present

DxgKrnl AdapterAllocation

DxgKrnl Blit

DxgKrnl BlitRect

DxgKrnl BlockThread

DxgKrnl DeviceAllocation

DxgKrnl ExtendedProfiler

DxgKrnl Lock

DxgKrnl OfferAllocation

DxgKrnl PatchLocationList

DxgKrnl PresentHistory

DxgKrnl Profiler

DxgKrnl QueuePacket

DxgKrnl ReclaimAllocation

DxgKrnl Render

DxgKrnl ReferenceAllocations

DxgKrnl Unlock

NT – Profile Sample

NT – Stack Walk

知道了以上的點,還是不夠。你需要在windows上千個sleep的mod中找到準確的模塊然後對他們進行掛鉤或者監聽,一般的做法是通過Windows Performance來找出遊戲過程中cpu占用很高的mod然後進行掛鉤,但是反作弊不是傻子,即使你不直接對dx進行注入轉而利用ETW,但是就算這樣最遲鈍的vac都能檢測出光明正大的掛鉤行為。那麽這個時候你就需要一個陰影來隱藏自己(ps:澤拉圖)

(2)Virtual Method Table (VMT) Hooking (已被BE檢出)

C++的輔助的最基本的方法

vmt是啥可以可以參見我文末留下的參考鏈接,具體我不多贅述。簡單來說VMT可以通過合適的不引人注目的內存權限來寫入或讀出。通用的一搬使用memcpy或者WriteProcessMemory

那麽 vmt的技術最經典的例子就算再D3d的應用程序上繪制文本(即內部ESP)。需要注意的是,這不是繪制內部esp的唯一方式,也不是最好的方式,基本的方法我會在參考鏈接中留下,但是不建議你拿r6練手,因為be對vmt的方法檢出率是100%。

拿最基本的csgo舉例子

image 6

CSGO D3D+VMT最基本的效果
那麽最ESP我們是實現了,但是Aimbot呢,BE對各種實現Aimbot的方法的檢測效果又如何?

但是這又是另外一個故事了(xd)

因為D3D的方法的檢出,市面上所有內部ESP的r6輔助全部涼涼,比較大眾的就比如IW之類的

這套常用的輔助機制能夠對付大部分遊戲了,但是也就能對付下VAC和pb。

總共分為三段 這為第二段

(購買輔助點我)

(官方DC群點我)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *