Как MRAC детектит Kernel Driver Cheat?

Пользователь
Статус
Оффлайн
Регистрация
13 Мар 2018
Сообщения
306
Реакции[?]
52
Поинты[?]
1K
Насколько я знаю знаю, мрак работает на 3 ядре , в таком случае если кернел читик ud на 0 ядре, ток как он может детектится?
 
Начинающий
Статус
Оффлайн
Регистрация
3 Окт 2021
Сообщения
3
Реакции[?]
5
Поинты[?]
0
Это уровни привилегированности процесса, на кольце (ринге) 0 могут исполняться любые команды процессора, но это не значит, что все что происходит из под ринга 0 остается незамеченным.
 
Забаненный
Статус
Оффлайн
Регистрация
23 Авг 2021
Сообщения
6
Реакции[?]
2
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Это уровни привилегированности процесса, на кольце (ринге) 0 могут исполняться любые команды процессора, но это не значит, что все что происходит из под ринга 0 остается незамеченным.
Много чего, того, что находится в ринг 0 невидимо для апликейшен левела. Например если ac MRAC попробует сделать что то подобное - __asm__("bound 0x1000, 0x1001"), где 1000 и 1001 адресса находятся в ядре, ему выкинет gpe или sf. Насколько я знаю, если юзать только те функции, которые доступны только кернелу, никакой ас находящийся на ring 3,2,1 лвле не сможет задетектить чит
 
Пользователь
Статус
Оффлайн
Регистрация
13 Мар 2018
Сообщения
306
Реакции[?]
52
Поинты[?]
1K
Много чего, того, что находится в ринг 0 невидимо для апликейшен левела. Например если ac MRAC попробует сделать что то подобное - __asm__("bound 0x1000, 0x1001"), где 1000 и 1001 адресса находятся в ядре, ему выкинет gpe или sf. Насколько я знаю, если юзать только те функции, которые доступны только кернелу, никакой ас находящийся на ring 3,2,1 лвле не сможет задетектить чит
но какие же это функции?
 
Забаненный
Статус
Оффлайн
Регистрация
23 Авг 2021
Сообщения
6
Реакции[?]
2
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Keine panik!
Эксперт
Статус
Оффлайн
Регистрация
29 Апр 2020
Сообщения
812
Реакции[?]
417
Поинты[?]
49K
мрак работает на 3 ядре
Ты путаешь понятия, это называется не ядро, а кольцо (ring), которое описывает уровень доступа.
Вообще x86 поддерживает 4 кольца, но в винде используются только 2 (0 и 3), потому что есть архитектуры где только 2.
При этом на самом деле любые процессы постоянно работают на нескольких уровнях привилегий, обычное приложение в юзермоде (3 кольце), затем вызывает вин апи функцию скажем CreateFileA из kerne32.dll, она уже обращается к NtCreateFile в ntdll.dll, которая в свою очередь переходник на системный вызов, во время системного вызова процессор переключается в режим ядра и передает управление ядру винды к обработчику NtCreateFile, т.е. технически процесс продолжает выполнение уже в 0 кольце.
Тем не менее, то что мрак не имеет своего драйвера не значит, что он по косвенным признакам не может задетектить чит из драйвера.
Например мрак может получить список драйверов, найти их на диске, посмотреть их содержимое (если запущен от админа), следить за изменениями памяти, поэтому сам по себе драйвер не спасет от детекта.
Много чего, того, что находится в ринг 0 невидимо для апликейшен левела. Например если ac MRAC попробует сделать что то подобное - __asm__("bound 0x1000, 0x1001"), где 1000 и 1001 адресса находятся в ядре, ему выкинет gpe или sf. Насколько я знаю, если юзать только те функции, которые доступны только кернелу, никакой ас находящийся на ring 3,2,1 лвле не сможет задетектить чит
Это называется привелигированные инструкции, ring 2 и 1 не используются никогда вообще.
Даже используя функции ядра и например пропатчив память, у которой была раньше снята контрольная сумма, это не спасет от детекта.
 
Energy Reload
Забаненный
Статус
Оффлайн
Регистрация
20 Авг 2017
Сообщения
1,206
Реакции[?]
330
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Пользователь
Статус
Оффлайн
Регистрация
13 Мар 2018
Сообщения
306
Реакции[?]
52
Поинты[?]
1K
Ты путаешь понятия, это называется не ядро, а кольцо (ring), которое описывает уровень доступа.
Вообще x86 поддерживает 4 кольца, но в винде используются только 2 (0 и 3), потому что есть архитектуры где только 2.
При этом на самом деле любые процессы постоянно работают на нескольких уровнях привилегий, обычное приложение в юзермоде (3 кольце), затем вызывает вин апи функцию скажем CreateFileA из kerne32.dll, она уже обращается к NtCreateFile в ntdll.dll, которая в свою очередь переходник на системный вызов, во время системного вызова процессор переключается в режим ядра и передает управление ядру винды к обработчику NtCreateFile, т.е. технически процесс продолжает выполнение уже в 0 кольце.
Тем не менее, то что мрак не имеет своего драйвера не значит, что он по косвенным признакам не может задетектить чит из драйвера.
Например мрак может получить список драйверов, найти их на диске, посмотреть их содержимое (если запущен от админа), следить за изменениями памяти, поэтому сам по себе драйвер не спасет от детекта.

Это называется привелигированные инструкции, ring 2 и 1 не используются никогда вообще.
Даже используя функции ядра и например пропатчив память, у которой была раньше снята контрольная сумма, это не спасет от детекта.
получается, что писать драйвер для варфейса бесполезно? можно сделать что-то более эффективное в этой ситуации и обойтись без драйвера?
 
Energy Reload
Забаненный
Статус
Оффлайн
Регистрация
20 Авг 2017
Сообщения
1,206
Реакции[?]
330
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
получается, что писать драйвер для варфейса бесполезно? можно сделать что-то более эффективное в этой ситуации и обойтись без драйвера?
Спуфер, инжектор.
Если можешь инжектить без драйвера мапом - это очень хорошо.
 
Продам прострел стен Warface 10к руб!
Забаненный
Статус
Оффлайн
Регистрация
7 Авг 2018
Сообщения
308
Реакции[?]
106
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
всем прив верите ли вы в призраков ???
Забаненный
Статус
Оффлайн
Регистрация
17 Авг 2018
Сообщения
863
Реакции[?]
338
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Energy Reload
Забаненный
Статус
Оффлайн
Регистрация
20 Авг 2017
Сообщения
1,206
Реакции[?]
330
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
всем прив верите ли вы в призраков ???
Забаненный
Статус
Оффлайн
Регистрация
17 Авг 2018
Сообщения
863
Реакции[?]
338
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Energy Reload
Забаненный
Статус
Оффлайн
Регистрация
20 Авг 2017
Сообщения
1,206
Реакции[?]
330
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Keine panik!
Эксперт
Статус
Оффлайн
Регистрация
29 Апр 2020
Сообщения
812
Реакции[?]
417
Поинты[?]
49K
получается, что писать драйвер для варфейса бесполезно? можно сделать что-то более эффективное в этой ситуации и обойтись без драйвера?
Почему же, если у мрака тоже драйвер, то вы просто будете на равном уровне привилегий.
И до тех пор пока майкрософт и вендоры железа не затянут гайки туже, ты всегда сможешь победить.
Только драйвер ач у тебя будет прямо перед глазами, и ты сможешь среверсить все что он делает, а свой дров защитить как следует, чтобы усложнить им анализ.
Кроме этого, ач все таки софт общего пользования, они где-то вынуждены использовать стабильные методы, которые гарантированно будут работать у всех, а ты же можешь использовать что-то более опасное/недокументированное.
Насчет более эффективного, сейчас любят говорить про гипервизоры, но это больше сказка, да можно, но для новичка маловероятно.
 
Участник
Статус
Оффлайн
Регистрация
15 Дек 2018
Сообщения
1,081
Реакции[?]
213
Поинты[?]
0
Почему же, если у мрака тоже драйвер, то вы просто будете на равном уровне привилегий.
И до тех пор пока майкрософт и вендоры железа не затянут гайки туже, ты всегда сможешь победить.
Только драйвер ач у тебя будет прямо перед глазами, и ты сможешь среверсить все что он делает, а свой дров защитить как следует, чтобы усложнить им анализ.
Кроме этого, ач все таки софт общего пользования, они где-то вынуждены использовать стабильные методы, которые гарантированно будут работать у всех, а ты же можешь использовать что-то более опасное/недокументированное.
Насчет более эффективного, сейчас любят говорить про гипервизоры, но это больше сказка, да можно, но для новичка маловероятно.
Гипервизор заебешься изучать, насколько мне известно. Пока будешь тратить на него время - обходить детекты гипервизора у ач, они сделают ещё 100500 способов как его задетектить, и так по кругу.

Dimedrol замапить дрв и никаких имён нет, просто надо закрыть дыры того же кдмаппера и спрятать свой драйвер. Либо сделать свой дрв с помощью которого будешь уже свой основной дрв загружать, и какие-то базовые хуёвины скрыть.
ну а через сокеты же не надо регистрировать девайс
Если не ошибаюсь, там нужон поток свой, а этого новичку я б не посоветовал делать.
 
всем прив верите ли вы в призраков ???
Забаненный
Статус
Оффлайн
Регистрация
17 Авг 2018
Сообщения
863
Реакции[?]
338
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Гипервизор заебешься изучать, насколько мне известно. Пока будешь тратить на него время - обходить детекты гипервизора у ач, они сделают ещё 100500 способов как его задетектить, и так по кругу.

Dimedrol замапить дрв и никаких имён нет, просто надо закрыть дыры того же кдмаппера и спрятать свой драйвер. Либо сделать свой дрв с помощью которого будешь уже свой основной дрв загружать, и какие-то базовые хуёвины скрыть.

Если не ошибаюсь, там нужон поток свой, а этого новичку я б не посоветовал делать.
Да, там создаётся поток
 
Сверху Снизу