Проверка hl.exe через правила YARA
В современном игровом мире борьба с читерством является важной задачей. Одним из методов обнаружения вредоносного кода является использование правил YARA для анализа исполняемых файлов и загруженных в память модулей. В данной статье рассмотрим, как с помощью YARA можно проверить процесс hl.exe на наличие подозрительных библиотек и модификаций в памяти.
Основные этапы проверки
Консоль сервера

Пример правил YARA
Заключение
Использование YARA для проверки hl.exe на наличие вредоносного кода — это эффективный метод анализа, позволяющий обнаруживать несанкционированные модификации процесса. Подход с анализом загруженных DLL и изучением памяти делает систему более надежной и защищенной от читерства. В архиве приложил исходники
В современном игровом мире борьба с читерством является важной задачей. Одним из методов обнаружения вредоносного кода является использование правил YARA для анализа исполняемых файлов и загруженных в память модулей. В данной статье рассмотрим, как с помощью YARA можно проверить процесс hl.exe на наличие подозрительных библиотек и модификаций в памяти.
Основные этапы проверки
- Поиск процесса hl.exe
Для начала необходимо найти идентификатор процесса hl.exe. -
Код:
function FindProcessID(const ProcessName: string): DWORD; begin // Реализация поиска PID процесса по имени end;
Данный метод позволяет получить PID целевого процесса, если он запущен.- Загрузка правил YARA
YARA позволяет загружать заранее подготовленные сигнатуры вредоносного кода. -
Код:
function LoadYaraRules(const RuleFile: string; var Rules: Pointer): Boolean; begin // Загрузка и компиляция YARA-правил end;
Функция читает правила из файла и компилирует их для последующего использования.- Проверка загруженных DLL
Чтобы выявить подозрительные модули в процессе, используется метод: -
Код:
function CheckLoadedDLLs(ProcessID: DWORD; Rules: Pointer): Boolean; begin // Проверка загруженных модулей процесса end;
Данный метод сканирует загруженные библиотеки и проверяет их соответствие правилам YARA.- Анализ памяти процесса
Помимо проверки загруженных модулей, важным этапом является анализ памяти. -
Код:
function FindInjectedDLLs(ProcessID: DWORD; Rules: Pointer): Boolean; begin // Анализ памяти процесса на предмет внедренных библиотек end;
Эта функция выделяет подозрительные участки памяти, сохраняет их во временные файлы и анализирует с помощью YARA.- Отправка данных на сервер
В случае обнаружения нарушения информация передается на сервер. -
Код:
procedure SendToServer(const Message: string); begin // Отправка информации на удаленный сервер end;
Это позволяет централизованно отслеживать попытки использования читов.
Код:
import { Body, Controller, Post } from '@nestjs/common';
@Controller('cheat-detected')
export class CheatDetectedController {
@Post()
handleCheatDetected(@Body() body: { message: string }) {
console.log(body.message);
// Здесь можно добавить логику для обработки обнаруженных читов
return { status: 'received', message: body.message };
}
}

Пример правил YARA
Код:
rule metla_hack {
meta:
description = " - file metla_hack.asi"
author = "yarGen Rule Generator"
reference = "https://github.com/Neo23x0/yarGen"
date = "2025-02-06"
strings:
$s1 = "33333333333333333333333333333333333333333333333333" ascii
$s2 = "jjjjjjjjjjjjjjjjjjjk" fullword ascii
$s3 = "FPUMaskValue" fullword ascii
condition:
uint16(0) == 0x5a4d and filesize < 200KB and
2 of them
}
Использование YARA для проверки hl.exe на наличие вредоносного кода — это эффективный метод анализа, позволяющий обнаруживать несанкционированные модификации процесса. Подход с анализом загруженных DLL и изучением памяти делает систему более надежной и защищенной от читерства. В архиве приложил исходники
Download all Attachments
-
9.9 MB Просмотры: 9