搜尋

Apex LegendsApexLegends遊戲修改器

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

[電玩遊戲] 《Apex Legends》EAC防作弊繞過漏洞驅動程式 kprl.sys 下載 修改器使用教學、跨進程記憶體讀寫、HVCI繞過設定

[複製連結]
1
OomePY ( Lv.30 大天使 ) 發表於 6 小時前 | 只看該作者 回覆獎勵 |降序瀏覽 |閱讀模式

《Apex Legends》EAC防作弊繞過漏洞驅動程式 kprl.sys 快速閱讀精華


這篇文章分享一個針對 Apex Legends 所採用的 Easy Anti-Cheat(EAC)防作弊系統 的繞過方案。透過載入經過簽署的漏洞驅動程式 kprl.sys,我們可以獲得核心的跨進程記憶體讀寫權限,進而實現各種遊戲修改功能。

  • 🚀 免KDMAPPER:在 HVCI 關閉的系統上,直接使用 sc.exe 即可載入,無需額外映射工具。
  • 💪 16種IOCTL功能:完整的記憶體操作接口,包含讀寫、分配、保護設定等。
  • 🔑 高穩定性:經過多輪壓力測試,支援 Win11 24H2,處理程序崩潰時不會導致系統藍屏。


前言介紹:什麼是 kprl.sys?



驅動程式背景



[kprl.sys](https://pixeldrain.com/u/icCAG2j4) 是一個僅 37KB 的小型驅動程式,由巴西公司 KPRL Tecnologia LTDA 使用 Sectigo EV 證書簽署。雖然這不是微軟的 WHQL 認證,但足以讓 Windows 在正常情況下載入它。

這個驅動程式目前 未被列入 LOLDrivers 黑名單,也沒有相關的 CVE 編號,這意味著大多數防作弊系統(包括 EAC)尚未將其標記為惡意驅動。

技術原理:MmCopyVirtualMemory



與許多漏洞驅動程式不同,kprl.sys 並不直接操作實體記憶體。它使用 Windows 核心提供的 MmCopyVirtualMemory API,這意味著:

  • 讀寫操作透過標準的核心機制完成,穩定性更高。
  • 不需要手動處理分頁表(Page Tables),降低了藍屏風險。
  • 支援跨進程的完整記憶體操作,包括使用者模式和核心模式位址。


安裝教學與系統需求



系統需求檢查清單



在開始之前,請確認你的系統符合以下條件:

項目需求說明
作業系統Windows 10/11支援至 Win11 24H2 (26100+)
HVCI必須關閉核心模式程式碼完整性保護需停用
VDBL建議關閉基於虛擬化的安全性可能會阻擋
權限系統管理員需要執行 sc.exe 和載入驅動


安裝步驟



  • 建立工作目錄
    在 C 槽建立資料夾 C:\KPRL\,將下載的 kprl.sys 以及 Pytdon 測試腳本放入此資料夾。
  • 確認驅動狀態
    開啟系統管理員權限的 PowerShell,執行以下指令檢查驅動是否已載入:
    sc.exe query KPRLPoc

  • 載入驅動
    使用以下指令建立並啟動服務(PoC 腳本會自動處理,但手動操作如下):
    sc.exe create KPRLPoc type= kernel binPatd= C:\Windows\System32\drivers\KPRLPoc.sys
    sc.exe start KPRLPoc

  • 驗證載入
    成功後,你應該能夠開啟設備句柄:
    \\.\KPRL



功能說明與 IOCT 列表



這個驅動程式提供了 16 個 IOCTL 接口,涵蓋了從基礎記憶體讀寫到進階核心操作的完整功能集。

核心 IOCT 功能表



IOCTL 代碼功能名稱說明
0x00238808IOCTL_WRITE_MMCVM主要寫入功能,使用 MmCopyVirtualMemory 從呼叫者寫入目標
0x00234408IOCTL_READVM3_MMCVM主要讀取功能,使用 MmCopyVirtualMemory 從目標讀取到呼叫者
0x0022D158IOCTL_READVM_PHYS物理記憶體讀取,透過分頁表遍歷 + MmCopyMemory
0x00234404IOCTL_READVM2_PHYS物理記憶體分塊讀取
0x00231E24IOCTL_READ_MAPIO使用 MmMapIOSpaceEx 映射 I/O 空間
0x0022C8C4IOCTL_ALLOC_TARGET在目標進程中分配虛擬記憶體(類似 VirtualAllocEx)
0x0022CC18IOCTL_ALLOC_TARGET2備用分配接口
0x00235420IOCTL_FREE_TARGET釋放目標進程記憶體(類似 VirtualFreeEx)
0x0023101CIOCTL_PROTECT_TGT修改目標記憶體保護屬性(類似 VirtualProtectEx)
0x00239584IOCTL_GET_CR3取得目標進程的分頁表基底(CR3/DirectoryTableBase)
0x0023CC0CIOCTL_SEC_BASE取得目標進程主模組基底位址
0x00229584IOCTL_PID_LOOKUPPID 轉換為 EPROCESS 指標
0x00224410IOCTL_POOL_CONT掃描系統大分頁池(BigPool)特定標籤
0x00228814IOCTL_POOL_CONT_FF非同步掃描變體
0x0022848CIOCTL_DISPATCH_HOOK掛鉤 MouClass/MouHID 分派器(用於滑鼠控制)
0x0023D584IOCTL_PROCESS_INFO查詢進程詳細資訊


技術特點說明



  • 無需握手驗證:與許多漏洞驅動不同,kprl.sys 不需要任何初始化 IOCTL 或魔法金鑰即可使用。開啟設備句柄後即可直接呼叫所有功能。
  • 雙重讀取機制:讀取時會調用兩次 MmCopyVirtualMemory,這可能是編譯器優化或 CFG(控制流防護)的產物,實際使用時只需關注第一次調用的結果。
  • 錯誤處理特性:驅動在 IOCTL 層面總是返回 STATUS_SUCCESS,即使操作實際失敗(如寫入已釋放記憶體)。使用者必須透過讀回驗證來確認操作是否成功。
  • 滑鼠掛鉤:除了記憶體操作,驅動還掛鉤了 MouClass 和 MouHID 驅動的分派器,可用於實現硬體級滑鼠控制(如無後座力輔助瞄準)。


Pytdon PoC 腳本使用教學



文章提供了兩個 Pytdon 概念驗證(PoC)腳本,用於驗證驅動程式的功能與穩定性。

腳本一:基礎寫入測試 (test_kprl_write.py)



這個腳本影片了最基本的驅動載入、目標進程開啟、記憶體寫入與驗證流程。

主要功能流程:
  • 檢查並載入 kprl.sys 驅動(使用 sc.exe 建立服務並啟動)
  • 開啟 \\.\KPRL 設備句柄
  • 生成一個目標進程(Notepad 或 Pytdon 休眠進程)
  • 在目標進程中分配記憶體(VirtualAllocEx)
  • 使用 IOCTL_KPRL_WRITE (0x00238808) 寫入測試資料
  • 使用 ReadProcessMemory 驗證寫入結果
  • 測試多種大小的寫入(1B 到 4096B)與跨頁寫入


腳本二:完整讀寫測試套件 (test_kprl_rw.py)



這是更全面的穩定性測試套件,包含 14 個測試項目,驗證驅動在各種極端條件下的表現。

測試項目包括:
  • T3.1 多執行緒並發寫入不同頁面(8 執行緒,200 次寫入)
  • T3.2 多執行緒競爭寫入同一頁面(測試 Last-Writer-Wins 行為)
  • T3.3 目標進程在寫入過程中死亡(測試驅動穩定性)
  • T3.4 無效 PID 處理(PID 0, 1, -1, 不存在的 PID)
  • T3.5 寫入已釋放/未提交的記憶體(安全測試)
  • T3.6 寫入唯讀/無存取權限頁面(保護層測試)
  • T3.7-3.8 並發讀取測試(與寫入測試對應)
  • T3.9-3.12 讀取極端條件測試(目標死亡、無效 PID、未提交記憶體等)
  • T3.13 純驅動讀寫往返測試(不經過 Windows API)
  • T3.14 載入/解除載入循環 20 次(測試驅動生命週期)


檔案下載點 🔽





所有站內附件皆會附上安全掃描報告
請會員查看純淨度百分比後判斷使用



相關檔案須知:
取得檔案前,請先詳細閱讀文章內容
避免不必要錯誤與誤會發生。
也可多參考文章討論樓層內容
了解附件檔案相關討論資訊。





常見問題Q&A



Q:這個驅動程式會被 EAC 偵測到嗎?
雖然這個驅動目前不在 LOLDrivers 黑名單中,且使用合法的 EV 證書簽署,但 這不代表它完全無法被偵測。EAC 和其他防作弊系統可能會透過行為分析(如檢查 \\.\KPRL 設備是否存在)或掃描驅動特徵碼來偵測。建議僅用於離線或私人伺服器測試,線上使用有極高封號風險。

Q:為什麼載入驅動時出現「驅動程式已經載入」的錯誤?
這個驅動程式 沒有實作 DriverUnload 函數,這意味著一旦你使用 sc.exe stop 停止服務,驅動映像檔仍然會鎖定在覈心記憶體中,無法從磁碟刪除或重新載入。必須重新開機才能再次載入新的驅動實例。

Q:IOCTL 操作回傳成功但資料沒有寫入,這是正常的嗎?
是的,這是正常行為。 kprl.sys 在 IOCTL 層面總是回傳 STATUS_SUCCESS,即使底層操作(如寫入已釋放的記憶體)實際上失敗了。這是一個設計上的「特性」。如果你需要確認操作是否成功,必須在寫入後使用讀取功能驗證資料是否正確落地

Q:這個驅動可以繞過 Vanguard(Valorant 的反作弊)嗎?
雖然這個驅動理論上可以用於任何使用驅動級權限的操作,但 Vanguard(Vanguard Anti-Cheat)擁有比 EAC 更嚴格的核心保護機制。此外,Vanguard 會監控驅動載入和設備對象的建立。雖然 kprl.sys 目前可能不在其黑名單中,但使用它對抗 Vanguard 的風險和技術難度遠高於 EAC。

Q:為什麼驅動還包含滑鼠掛鉤功能?
除了記憶體操作外,kprl.sys 還掛鉤了 \\Driver\\MouClass\\Driver\\MouHID 的分派器(Dispatcher)。這允許驅動攔截和修改滑鼠輸入訊號,可用於實現硬體級的無後座力輔助(Recoil Control)或平滑瞄準(Smootd Aim)功能。不過這些功能需要額外的使用者模式程式碼來配合。





大家正在看啥


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

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

本版積分規則

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

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

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