Kernel Anti-Cheat như Vanguard hay BattlEye đang lục lọi gì ở mức Ring 0? An toàn hay rủi ro bảo mật? Cùng C4F mổ xẻ cuộc chiến chống hack đầy ma giáo này.

Chào anh em, dạo này bắn Valorant hay cày mấy con game FPS try-hard chắc hẳn các ông không lạ gì cái màn hình xanh lè (BSOD) rác rưởi do mấy con anti-cheat cắn mẹ vào nhân OS đúng không? Trên Hacker News hôm nay đang rần rần vụ mổ xẻ cách hoạt động của bọn Kernel Anti-Cheat (chống gian lận cấp độ nhân). Ngồi rảnh lướt comment, tôi tổng hợp lại bốc phốt xem thực chất bọn này đang chui rúc vào máy anh em làm cái đ*o gì nhé.
Nguồn cơn của mọi rắc rối bắt đầu từ việc User-mode (Ring 3) giờ đây đ*o khác gì cái chợ chồm hổm. Mấy thằng pháp sư viết tool cheat lách luật ở Ring 3 dễ như bỡn. Thế là các hãng game (Riot, Epic, v.v.) quyết định chơi bài ngửa: bế nguyên con anti-cheat nhét thẳng vào Kernel-mode (Ring 0).
Ring 0 là nơi có quyền sinh quyền sát cao nhất của Windows. Nhét code vào đây thì anti-cheat làm được gì?
Cơ bản là để được chơi game, các ông đang giao chìa khóa nhà, két sắt và bắt hệ điều hành lột sạch đồ ra cho một công ty game khám xét. Vừa bá đạo vừa ảo ma rủi ro.
Lướt qua các diễn đàn với Reddit, dân tình đang tế nhau bằng bàn phím chia làm mấy phe rõ rệt:
1. Phe Try-hard "Bố mày cần game sạch": "Kệ m* cái gọi là privacy, miễn là tao không bị mấy thằng xài tool headshot xuyên tường là được". Đây là tiếng lòng của đại đa số anh em gamer. Họ sẵn sàng bán luôn dữ liệu, mở toang Ring 0 chỉ để đổi lấy vài giờ leo rank yên bình.
2. Phe Đội mũ cối bảo mật (Security Paranoiacs): "Đùa à? Giao quyền tối thượng cho một con game á?". Các pháp sư bảo mật vạch trần rủi ro cực lớn: Nếu server của bọn hãng game bị hack, hoặc con anti-cheat dính bug (anh em còn nhớ vụ CrowdStrike sập nửa thế giới không?), thì toàn bộ PC của hàng triệu người chơi sẽ thành zombie hoặc ăn màn hình xanh hàng loạt. Một attack surface to tổ chảng!
3. Phe Chim Cánh Cụt (Linux Gamers) khóc thét: Bọn Kernel Anti-Cheat thường đ*o hỗ trợ Linux (qua Proton/Wine). Kết quả? Game thủ xài Steam Deck hay Ubuntu bị khóa mõm, đứng ngoài rìa cuộc chơi multiplayer luôn. Tối cổ thực sự.
4. Phe Cheat Devs - "Vỏ quýt dày có móng tay nhọn": Mấy lão quái viết cheat có sợ không? Không hề! Bọn nó đang chuyển sang xài phần cứng DMA (Direct Memory Access) cắm thẳng vào khe PCIe, hoặc chạy cả cái Windows trong một con Hypervisor. Game vẫn là game, nhưng tao đọc RAM từ một cái PC khác. Anti-cheat Ring 0 khóc thét.
Góc độ system dev mà nói, viết code chạy ở Kernel là đang múa lân trên dây điện. Một con trỏ null (null pointer) vớ vẩn là anh em kéo sập cả cái máy của khách hàng.
Còn về mặt bảo mật? Sự thật cay đắng là Client-side security luôn luôn thất bại. Máy tính nằm trong tay user, sớm muộn gì họ cũng tìm cách pwned nó. Cuộc chạy đua này là vô nghĩa. Giải pháp triệt để cuối cùng (và tốn tiền nhất) vẫn phải là Server-side validation bằng AI để phân tích hành vi, hoặc chơi hệ Cloud Gaming (dữ liệu đo bao giờ chạm vào máy khách). Đến lúc đó thì đo cần Ring 0 Ring 1 gì sất!
Nguồn hóng hớt: