Skip to content

Reference

Signatures reference

Signature types, match modes and validation rules for global and custom signatures.

A signature is an indicator the scanner looks for: a file hash, a file name, a path, a window title, a memory string, a domain, and so on. Signatures are data, never code. DUXAC maintains a global database; workspaces whose plan includes custom signatures can add their own.

The tables on this page are generated from SIGNATURE_TYPES and SIGNATURE_LIMITS in packages/shared.

Fields#

FieldDescription
name3 to 80 characters, shown on findings.
descriptionOptional, up to 500 characters.
categoryThe check category the signature belongs to.
typeOne of the types below.
matchexact, contains or glob, restricted per type.
patternThe value to look for.
severityinfo to critical; capped at the check's highest severity when evaluated.
confidence1 to 100: how strongly a match indicates cheating.
tagsUp to 10 free tags (cheat family, vendor).

Types#

TypeLabelMatch modesExampleApplies toChecks
file_hashFile SHA-256exact64 hex charactersfiles hashed by PRC/FIV/FS/DRV checksPRC-001, PRC-003, FIV-001, FIV-002, FIV-003, FS-001, FS-003, FS-004, DRV-001
file_nameFile nameexact, glob, containse.g. loader*.exefiles, Prefetch, BAM, USN journal, recycle binSYS-005, FIV-001, FIV-002, FS-001, FS-003, FS-004, EXE-001, EXE-002, EXE-003, EXE-004, EXE-005, AF-003
file_pathFile pathglob, containse.g. %APPDATA%*\menu.dllfiles, processes, execution historySYS-005, PRC-001, PRC-003, FIV-001, FIV-003, FS-001, EXE-001, EXE-002, EXE-003, EXE-005, DRV-002
process_nameProcess nameexact, globe.g. injector.exerunning processesPRC-001, HW-002, AF-003
module_nameModule nameexact, globe.g. hook.dllDLLs loaded in FiveM, FiveM logsPRC-003, FIV-004
window_titleWindow titleexact, glob, containse.g. Menu vvisible and hidden top-level windowsPRC-001
memory_stringMemory stringcontainsat least 6 charactersmemory of selected processes (MEM-001)MEM-001
file_stringFile stringcontainsat least 6 characterscontents of candidate executables and FiveM logsFIV-004, FS-001
certificate_subjectCode-signing subjectexact, containspublisher namesigned executables and driversPRC-001, FS-001, DRV-001
driver_nameDriver nameexact, globe.g. iqvw64e.sysloaded kernel driversDRV-001
service_nameService nameexact, globservice key nameinstalled servicesDRV-002
registry_keyRegistry keyexact, globe.g. HKCU\Software\Cheat*autoruns and known registry locationsEXE-005
pci_devicePCI/USB device idexact, globe.g. PCI\VEN_10EE&DEV_*PCI and USB device idsHW-001, HW-002
domainDomainexact, globe.g. *.cheatseller.exampleDNS cache, browser historyNET-001, NET-002
filenameBrowser download filenameexact, glob, containse.g. cheat.zipbrowser download history (NET-002)—

Matching rules#

  • Every comparison is case-insensitive. file_hash compares lower-case hexadecimal.
  • exact: the whole value equals the pattern.
  • contains: the pattern occurs anywhere in the value.
  • glob: * matches any run of characters (including none), ? exactly one character, and the whole value must match.
  • There are no regular expressions. This rules out catastrophic backtracking and guarantees that the scanner's C# matcher behaves exactly like the TypeScript reference; both are pinned by shared test vectors.
  • Paths are normalised before matching: / becomes \, and the user profile, %LOCALAPPDATA%, %APPDATA% and %TEMP% prefixes are replaced by those placeholders. Write path patterns with the placeholders, for example %APPDATA%\*\loader*.exe.
  • memory_string and file_string patterns are searched as ASCII and as UTF-16LE.

Validation#

A signature is rejected (never stored or sent to a scanner) unless it respects these rules:

  • Pattern length: at most 256 characters, no leading/trailing whitespace, no control characters.
  • memory_string and file_string: at least 6 characters.
  • contains: at least 3 characters.
  • glob: at most 4 * wildcards and at least 3 literal characters.
  • file_hash: exactly 64 hexadecimal characters (SHA-256).
  • At most 2000 signatures per workspace (your plan may allow fewer).
  • Severity is one of info, low, medium, high, critical; confidence is an integer from 1 to 100.

Lifecycle#

Every save creates a new version. You publish a version to make it active, can roll back to an earlier one, and can disable a signature without deleting it. The dashboard lets you validate a definition and test it against sample values before publishing. Each signature records how often it matched and how often staff marked its findings as false positives, so weak indicators are easy to spot.

Writing good signatures#

  • Prefer hashes and specific paths over short names: loader.exe on its own is a common file name.
  • Use glob with enough literal text; very short patterns are refused for a reason.
  • Set confidence honestly. A name match on a popular tool is low confidence; the hash of a known cheat build is high.
  • Watch the false-positive count and retire signatures that only produce noise.