Pourquoi les exécuteurs Lua posent un problème particulier
La plupart des cheats FiveM vivent dans des DLL C/C++ et se détectent par les analyses de signatures classiques sur les modules injectés. Les exécuteurs Lua, eux, exécutent du Lua arbitraire à l'intérieur du runtime de script légal de FiveM : pour la plupart des contrôles statiques, ils ressemblent en tout point à des scripts de jeu légitimes. Une simple analyse de signature du binaire de l'exécuteur aide, mais ce binaire est petit, réécrit souvent et trivial à repackager. La détection doit aussi se faire au niveau de l'exécution.
Détection de signature sur le loader
La première ligne de défense est la détection de signature sur le processus loader et sur toutes les DLL qu'il mappe dans FiveM. Le pack de signatures de Raven suit les familles de loaders les plus actives et est rafraîchi selon un rythme de 1 à 7 jours. Cela attrape immédiatement les exécuteurs paresseux et oblige les autres à repackager à chaque version, ce qui fait gagner du temps.
Contrôles d'intégrité à l'exécution
Au-delà des signatures de loader, Raven valide l'intégrité du runtime Lua lui-même. Il surveille quels handlers natifs ont été patchés, quelles inscriptions d'événements existent et si l'état Lua global a été enrichi de tables étrangères. Les exécuteurs ont généralement besoin d'au moins un de ces éléments pour livrer leur payload : cette couche lève donc un signalement même quand le binaire du loader est inconnu.
La validation côté serveur comme filet de sécurité
Même si la signature du loader et le contrôle à l'exécution sont tous deux contournés, l'exécuteur doit bien faire quelque chose de son accès, et cela passe généralement par le déclenchement d'événements serveur qu'un script légitime ne déclencherait pas. La couche de validation des événements côté serveur (voir /how-it-works/event-validation) bloque les événements venant de sources non autorisées et rejette les charges utiles hors des bornes plausibles. Les dons d'argent pilotés par Lua, les duplications d'objets, les vagues de spawn de véhicules et les téléportations de joueurs passent tous par la même barrière de validation.
Pourquoi la détection des exécuteurs Lua n'est jamais « terminée »
Les auteurs d'exécuteurs réécrivent leurs loaders en permanence, parce que chaque signature livrée contre eux leur coûte toute leur clientèle pour cette version. La détection est continue : un exécuteur qui fonctionne aujourd'hui est un exécuteur détecté sous 1 à 7 jours, et ses utilisateurs se retrouvent alors dans la base de bans mondiale. L'avis du 2026-04-21 dans le changelog en donne un exemple récent : un schéma de déclenchement d'événements Redengine corrigé côté serveur par une règle qui tourne même si tous les contrôles client sont contournés.