Co to jest ochrona na poziomie jądra? Bezpieczeństwo oszukiwania Ring-0
Co robi ochrona na poziomie jądra i dostęp do Ring-0 w kodach CS2? Opisujemy, jak obrona oparta na sterownikach utrudnia wykrywanie VAC i VACNet.
Co to jest Ring-0? Poziomy uprawnień systemu operacyjnego
Nowoczesne systemy operacyjne wykorzystują hierarchię pierścieni w oparciu o poziom uprawnień, na którym działa kod. Pierścień-3, normalne zastosowania; Jest to najbardziej ograniczona warstwa, na której działają gry, przeglądarki i oprogramowanie biurowe. Ring-0 to najbardziej autoryzowany poziom należący do jądra systemu operacyjnego i umożliwiający bezpośredni dostęp do sprzętu. Kiedy sterownik działa w Ring-0, może bezpośrednio zakłócać odczyt/zapis pamięci, monitorowanie procesów i przerwania sprzętowe. W przypadku kodów działających w grach takich jak CS2 ta różnica jest krytyczna: kod działający na Ring-3 jest łatwo widoczny, ponieważ ma ten sam poziom autoryzacji co gra i sam moduł anty-cheat, podczas gdy komponent działający na Ring-0 działa ze znacznie głębszej i trudniejszej do wykrycia lokalizacji.
Dlaczego kody zostały przeniesione na poziom jądra?
W ostatnich latach systemy zapobiegające oszustwom w grach, w tym VAC, zaczęły używać własnych sterowników jądra; Ułatwiło to skanowanie klasycznych kodów działających na Ring-3. W odpowiedzi twórcy cheatów musieli podnieść swoją obronę do tego samego poziomu. Komponent działający na ring-0 może uciec przed własnymi procedurami skanowania modułu zabezpieczającego, ukryć się na liście procesów i filtrować żądania odczytu pamięci. To wyścig zbrojeń: w miarę jak mechanizmy przeciwdziałania oszustwom sięgają głębiej, dostawcy oszustw, którzy chcą zapewnić niezawodną ochronę, muszą sięgnąć równie głęboko. Tanie lub amatorskie kody, które pozostają na poziomie użytkownika, są zatem wykrywane znacznie szybciej i łatwiej.
Podpisany problem ze sterownikiem i metody obejścia
Domyślnie system Windows pozwala na ładowanie na poziomie jądra wyłącznie sterowników podpisanych przez firmę Microsoft. Utrudnia to instalację dowolnego sterownika jądra w systemie. W tym momencie dostawcy wysokiej jakości oszustw korzystają albo z trybów podpisywania testów, ładując za pośrednictwem podpisanych sterowników zawierających luki w zabezpieczeniach (BYOVD), albo z technik ręcznego mapowania. Mapowanie ręczne to metoda umieszczania sterownika bezpośrednio w pamięci bez zapisywania go na liście sterowników systemu Windows, co powoduje pozostawienie śladu, którego nie mogą zobaczyć standardowe narzędzia do skanowania sterowników. Ta technika jest złożona i może prowadzić do awarii systemu, jeśli zostanie zastosowana nieprawidłowo.
Rola architektury wewnętrznej PX8.2 na poziomie jądra
Architektura PX8.2 CSCodep działa wewnętrznie, to znaczy jest zintegrowana z własnym obszarem pamięci gry, a nie jako proces zewnętrzny, a część tej integracji zachodzi na poziomie jądra. W ten sposób nie zostanie ślad po zewnętrznych narzędziach czytających pamięć spoza gry; Sztuczka tkwi w podpisanej przestrzeni procesu CS2. Komponent jądra kontroluje, która pamięć jest widoczna, filtrując żądania obsługi własnego sterownika modułu zabezpieczającego. Ta architektura jest jednym z kluczowych powodów, dla których CSCodep pozostaje wolny od wykrywania VAC przez ponad 3 lata; ponieważ powierzchnia wykrywania jest znacznie zmniejszona w porównaniu z procesem działającym na poziomie użytkownika.
Zagrożenia i ograniczenia ochrony na poziomie jądra
Chociaż praca na poziomie jądra zapewnia silną prywatność, nie jest pozbawiona ryzyka. Nieprawidłowo napisany sterownik może zakłócić stabilność systemu, a przestarzała technika BYOVD może zostać oznaczona jako osobne zagrożenie przez oprogramowanie antywirusowe. Ponadto Microsoft i Valve regularnie łatają znane luki; Dlatego ochrona na poziomie jądra nie jest obroną statyczną, jest to obrona, która musi być stale aktualizowana. Decydujący jest tutaj wybór niezawodnego dostawcy: sterownik jądra, który nie jest regularnie aktualizowany, w ciągu kilku miesięcy stanie się zawodny, zarówno pod względem ryzyka wykrycia, jak i niestabilności systemu. CSCodep testuje i wydaje komponent sterownika PX8.2 po każdej aktualizacji Windows i CS2.