This rule identifies the presence of ACProtect, a commercial software protection tool often used by adversaries to obfuscate malicious payloads and evade static analysis. Proactively hunting for this signature allows the SOC to detect potentially hidden or packed executables that may be leveraging commercial protection mechanisms to mask their true intent within the environment.
rule AnticrackSoftwareProtectorv109ACProtect
{
meta:
author="malware-lu"
strings:
$a0 = { 60 [8] 00 00 [12] E8 01 00 00 00 ?? 83 04 24 06 C3 [5] 00 }
condition:
$a0 at pe.entry_point
}
This YARA rule can be deployed in the following contexts:
This rule contains 1 string patterns in its detection logic.
ACProtect.exe or ACProtect64.exe utility by a DevOps engineer or application support team to apply or verify code protection (obfuscation/anti-debugging) on a newly built .NET or C++ application binary before deployment to a staging environment.
msbuild.exe, dotnet.exe, cmd.exe invoked by CI/CD agents) or where the command line contains arguments like /p, /a, or /v (common ACProtect flags for protect, analyze, or verbose).svc_build, svc_deploy) or paths under standard build artifacts directories (e.g., C:\Builds\, D:\Artifacts\) where the process name matches ACProtect* and the working directory is not a user profile.Tools, Utilities, Bin, or ACProtect in the directory name, and the parent process is an interactive shell (cmd.exe, powershell.exe, pwsh.exe) rather than a service or system process.