/*
    YARA Hunting Rules for Winactivator (Pua_Tool)
    Source: SystemHelpDesk Malware Families Catalog
    Reference: https://malware-families-catalog.systemhelpdesk.com/families/winactivator
    License: Apache-2.0
    Generated: 2026-10-16
*/

rule MALWARE_WIN_WINACTIVATOR_T1_ARTIFACT
{
    meta:
        description = "Tier 1 Primitive Artifact: Raw string matches for Winactivator (Pua_Tool)"
        category = "Pua_Tool"
        tier = "T1 - Primitive Artifact"
        confidence = "Medium (Fast Triage)"
        author = "SystemHelpDesk Threat Research Desk"
        reference = "https://malware-families-catalog.systemhelpdesk.com/families/winactivator"
        date = "2026-10-16"
    strings:
        $fam_name = "winactivator" ascii wide nocase
        $alias_1 = "hacktool:win32/autokms" ascii wide nocase
        $alias_2 = "hacktool:win32/winactivator" ascii wide nocase
        $alias_3 = "pua:win32/kmspico" ascii wide nocase
        $alias_4 = "win32/autokms.hacktool" ascii wide nocase
        $alias_5 = "riskware.winactivator" ascii wide nocase
    condition:
        uint16(0) == 0x5a4d and any of them
}

rule MALWARE_WIN_WINACTIVATOR_T3_ATTRIBUTION
{
    meta:
        description = "Tier 3 Attribution Fingerprint: Heuristic detection for Winactivator tradecraft"
        category = "Pua_Tool"
        tier = "T3 - Attribution Fingerprint"
        confidence = "High (Confirmed Family Signature)"
        author = "SystemHelpDesk Threat Research Desk"
        reference = "https://malware-families-catalog.systemhelpdesk.com/families/winactivator"
        date = "2026-10-16"
    strings:
        $attrib_str = "winactivator" ascii wide nocase
        $pe_magic = "MZ" ascii
        $net_marker1 = "http" ascii nocase
        $net_marker2 = "POST" ascii
        $net_marker3 = "User-Agent:" ascii nocase
        $generic_marker1 = "CreateProcess" ascii
        $generic_marker2 = "VirtualAlloc" ascii
    condition:
        uint16(0) == 0x5a4d and $attrib_str and 1 of ($generic_marker*)
}
