Stupidc0de Backdoor is the largest and most feature-complete tool in the corpus: 90 KB, 2030 lines of PHP, twelve distinct function modules, and zero authentication on any of them. It is the flagship of the Indonesian “Stupidc0de Family” collective, with five distinct handles embedded in the source — Putra-Attacker, Daryun, Shor7cut, Osvaldas, and Sinkaroid — alongside a contact email, a Facebook profile, and the group’s branded domain. No other tool in the collection leaks as many operator identities in a single file.

Capabilities

The menu spans the full spectrum of post-compromise operations: file management, command execution, config grabbing, domain enumeration, mass tools, cPanel utilities, bypass tools, file creation, RDP account creation, cross-account jumping, and a database dumper. Every module is available to any visitor without authentication. The tool also contains a WordPress admin password reset module that can change the admin credentials of any WordPress installation on the same server, and a zone-h.com mass-defacement notifier packed inside a gzinflate-compressed payload — automating the “claim” step of defacement campaigns.

The runtime dependency on PHP 5.6 is hard: the code uses eregi, mysql_connect, and each(), all removed in PHP 7.0. On modern servers the shell returns a 500 error. This is not a design choice — it is technical debt from the 2013-2014 era of shared hosting where PHP 5.x was universal. The tool was built for that ecosystem and never updated.

Supply-Chain Surface

The supply-chain surface is the most extensive in the corpus. Five functions perform runtime remote-includes: four fetch code from Pastebin URLs and one pulls from a GitHub repository. These are not one-time downloads — they execute on every invocation of the corresponding module. If any of the four Pastebin pastes or the GitHub account is compromised, every deployed Stupidc0de instance silently executes the replacement payload.

Vulnerabilities

#ClassImpactStatus
1Pre-auth RCEFull system command executionLive-proven
2Pre-auth LFI — confirmed /etc/passwdArbitrary file readLive-proven
3Pre-auth arbitrary file uploadFull filesystem writeLive-proven
4Zero authentication on all 12+ function modulesUnrestricted accessConfirmed
55 runtime supply-chain remote-includes (4 Pastebin + 1 GitHub)Remote code injectionConfirmed
6WordPress admin password reset — unauthenticatedCMS takeoverConfirmed

The self-incrimination is extraordinary. A meta author tag, an email address, a Facebook profile, five separate handles, and a branded domain — all embedded in a file that ships with zero authentication. The name “Stupidc0de” is, in this context, not merely a brand. It is an accurate description.

Detection Surface

File-system indicators

IndicatorTypeDetail
Expected size~90 KB / 2030 linesLargest tool in corpus
Stupidc0deStringTool name in source
Stupidc0de FamilyStringAuthor group identification
Putra-Attacker, Daryun, Shor7cut, Osvaldas, SinkaroidStrings5 named contributors
Zero authenticationAuthNo auth on 12+ function modules
5 remote-include URLsCode patternRuntime supply-chain — include() from external URLs
zone-h referenceStringMass defacement notifier
RuntimePHP 5.6 only

HTTP access-log indicators

Log patternWhat it means
No authentication on any moduleZero auth across 12+ function modules
Outbound include() from remote URLs5 runtime supply-chain remote-includes
zone-h outboundMass defacement notifier
POST cmd=Command execution
Response >80KB from single PHP file90KB / 2030 lines — largest tool in corpus

YARA rule

rule webshell_stupidc0de {
    meta:
        description = "Stupidc0de Backdoor (Indonesian scene, 90KB full-featured)"
        author      = "OHIIHO Threat Research"
        reference   = "https://research.ohiiho.com/arsenal/stupidc0de/"
        status      = "validated"

    strings:
        $title      = "Stupidc0de" ascii
        $family     = "Stupidc0de Family" ascii
        $author1    = "Putra-Attacker" ascii
        $author2    = "Daryun" ascii
        $author3    = "Shor7cut" ascii
        $author4    = "Sinkaroid" ascii
        $email      = "puputsc48@gmail.com" ascii
        $html_title = "-:- Backdoor -:-" ascii
        $css_class  = "class='coeg'" ascii
        $conf_dir   = "Stupidc0de-Conf" ascii

    condition:
        filesize < 120KB
        and ($title or $family or $html_title or $conf_dir)
        and ($author1 or $author2 or $author3 or $author4 or $email or $css_class)
}

MITRE ATT&CK

TechniqueContext
T1505.003Web Shell
T1059.004Command and Scripting Interpreter: Unix Shell (live RCE)
T1083File and Directory Discovery (config grabber, domain enumerator)
T1552.001Unsecured Credentials: Credentials In Files (CMS config harvest)
T1608.001Stage Capabilities: Upload Tool (5x runtime remote-includes)
T1491.002Defacement: External (zone-h mass notifier)
T1136Create Account (WordPress admin password reset)

OHIIHO Threat Research.