This rule detects potential web shell activity or unauthorized script execution associated with the Pelles C compiler, which adversaries may leverage to establish a foothold or execute arbitrary code on internet-facing assets. Proactively hunting for this specific URL pattern allows the SOC team to identify low-severity intrusion attempts or staging activities that might otherwise go unnoticed in Azure Sentinel before they escalate into more significant compromise.
rule PellesC : Pelle Orinius
{
meta:
author = "_pusher_"
date = "2016-08"
description = "www.smorgasbordet.com/pellesc"
strings:
$aa0 = " -- terminating\x0D\x0A\x00 -- terminating\x0A\x00CRT: \x00unexpected error\x00" wide ascii nocase
$aa1 = "unhandled exception (main)\x00unhandled exception in thread\x00unable to create thread\x00unable to destroy semaphore\x00" wide ascii nocase
$aa2 = "unable to wait on semaphore\x00unable to post semaphore\x00unable to init semaphore\x00unable to unlock mutex\x00unable to lock mutex\x00unable to init mutex\x00" wide ascii nocase
$aa3 = "invalid stream lock number\x00corrupt per-thread data\x00out of memory\x00unable to init threads\x00unable to init HEAP" wide ascii nocase
condition:
3 of ($aa*) and
(pe.linker_version.major == 2) and (pe.linker_version.minor == 50 )
}
This YARA rule can be deployed in the following contexts:
This rule contains 4 string patterns in its detection logic.
Developer Build Automation and CI/CD Pipelines
www.smorgasbordet.com/pellesc during a nightly build job or when a developer manually triggers a dependency update for a C-language project. This is a legitimate retrieval of a known, albeit niche, development tool.java.exe, node.exe, python.exe, jenkins-agent.exe) and the destination URL contains /pellesc.Legacy Application Maintenance and Patching
svc-legacy-app, admin-maintenance) or for scheduled tasks named LegacyAppUpdate or CompilerCacheRefresh that connect to www.smorgasbordet.com.Technical Documentation and Knowledge Base Caching
www.smorgasbordet.com/pellesc to keep the internal copy up-to