事情的起因
最近博主沉迷于三角洲行動無法自拔,每天都是高強度搜打撤。
而且大部分時間,都是做開發(fā)做到一半,然后朋友邀請我一起去玩三角洲,但是最近收到兩次插件封號,并且都是在游戲?qū)种羞M行的封號(真的很生氣)打一半給我封號。
四月份那次是我插著ESP32S3,在開發(fā)微雪的熱成像模塊的時候給我莫名其妙的封號。
最近的那次是連著正點原子的STM32H7R7在開發(fā)屏幕的時候給我封號了。
有的時候都分不清《三角洲行動》封號的機制是什么,我戰(zhàn)績都撈成這樣子了還給我進行的封號,每次封號的理由都是插件封號。
難不成玩游戲的時候插著類似STM32這樣子的開發(fā)板都會被認為是外掛的作弊版?到底是什么樣子的檢測邏輯?
DMA是什么
DMA全稱:Direct Memory Access,直接內(nèi)存訪問,它可以在不依靠CPU的情況下直接對系統(tǒng)內(nèi)存進行訪問。
在嵌入式開發(fā)領域中,依靠DMA,微控制器可以高效快速的從外設將數(shù)據(jù)搬運至內(nèi)存,例如DMCI外設,ADC。也可以利用DMA快速將內(nèi)存中的數(shù)據(jù)搬運到外設,像DAC,屏幕等外設。
如果不使用 DMA,CPU 需要逐個字節(jié)地將數(shù)據(jù)從外設讀取并寫入內(nèi)存,這會占用大量的 CPU 資源。而使用 DMA 后,DMA 控制器可以接管數(shù)據(jù)傳輸任務,CPU 就可以同時進行其他運算工作,從而實現(xiàn)并行處理。
DMA在外掛領域的作用
由于DMA可以直接讀取內(nèi)存的特性,因此游戲外掛制作者通過專門的DMA板子連接到電腦的PCIE插槽,繞過CPU讀取內(nèi)存數(shù)據(jù)。直接訪問和讀取游戲電腦的內(nèi)存數(shù)據(jù)。可以更快地獲取游戲中的關鍵信息,如敵人位置、血量、物品分布等。
在獲取到主機的游戲內(nèi)存數(shù)據(jù)后,DMA外掛將這些數(shù)據(jù)實時傳輸?shù)礁睓C,副機上運行作弊軟件,對數(shù)據(jù)進行分析、處理,并生成透視、自瞄、雷達等作弊效果。之后,通過硬件將操作指令回傳至主機,從而實現(xiàn)自動瞄準、透視敵人、修改屬性等作弊行為。
由于DMA外掛的硬件設計使其無需依賴軟件注入或修改游戲文件,僅通過硬件層面的數(shù)據(jù)流轉(zhuǎn)實現(xiàn)作弊,且主機上沒有直接的外掛程序運行,沒有可疑的內(nèi)存數(shù)據(jù)讀寫和重疊窗口繪制等傳統(tǒng)外掛的明顯特征,極大地提高了隱蔽性,能夠輕易繞過傳統(tǒng)反作弊系統(tǒng)的檢測。
因此DMA在外掛領域非常猖獗。
插塊板子就是作弊嘛?
不知道《三角洲行動》檢測外掛的機制到底是什么,但是對于我們嵌入式開發(fā)者來說,一些開發(fā)插件,尤其是像我這樣子開發(fā)到一半突然興致來了打一把游戲的我相信比比皆是。
不過可能游戲開發(fā)者檢測的是接口,對于嵌入式開發(fā)者來說電腦上可能會插著奇奇怪怪的設備,被游戲官方誤認為是DMA板子從而進行了封號。
但是游戲打到一半被認為是插件封號真的很難受(我都菜成這樣子了還能說我開掛)。