This rule identifies the presence of BeRo Tiny Pascal, a lightweight scripting engine often embedded in malware to execute logic and facilitate communication. Proactively hunting for this component in Azure Sentinel allows the SOC to detect early-stage infection or persistence mechanisms that may not yet trigger high-severity alerts, enabling faster containment of low-fidelity threats.
rule BeRoTinyPascalBeRo
{
meta:
author="malware-lu"
strings:
$a0 = { E9 [4] 20 43 6F 6D 70 69 6C 65 64 20 62 79 3A 20 42 65 52 6F 54 69 6E 79 50 61 73 63 61 6C 20 2D 20 28 43 29 20 43 6F 70 79 72 69 67 68 74 20 32 30 30 36 2C 20 42 65 6E 6A 61 6D 69 6E 20 27 42 65 52 6F 27 20 52 6F 73 73 65 61 75 78 20 }
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.
TinyPascal.exe (or similar Pascal-based utility) by a DevOps team for lightweight script compilation or binary patching during a CI/CD pipeline.
pwsh.exe, python.exe, or node.exe and the file path resides under C:\build\ or C:\ci\.LogCleanerPascal.exe) from a shared network drive or a specific admin tools directory.
\\fileserver\tools\ or C:\AdminTools\ and the process name ends in .exe with a known hash or specific naming convention like *Pascal*.exe.SysInfoPascal.exe) copied to C:\Users\<admin>\Downloads\ to troubleshoot a user’s machine.
IT_Support or Admins group and the file path contains Downloads or Temp, provided the process lifetime is less than 10 minutes.ccmexec.exe (SCCM) or IntuneAgent.exe and the executable name matches *Setup* or *Install* with a Pascal-related suffix.