【Yara】命名规范

文章目录
  1. 1. 规则命名规范
    1. 1.1. 基础规范
    2. 1.2. 相关内容
      1. 1.2.1. 一、威胁类型(Threat Type)
      2. 1.2.2. 二、家族/变种(Family/Variant)
      3. 1.2.3. 三、标识符(Identifier)
      4. 1.2.4. 完整规则命名示例
  2. 2. 命名空间规范
    1. 2.1. 基础规范
    2. 2.2. 相关内容
      1. 2.2.1. 一、按来源分类
      2. 2.2.2. 二、按威胁分类
      3. 2.2.3. 三、混合命名实践
  3. 3. 快速索引
    1. 3.1. 一、恶意软件类型及描述
    2. 3.2. 二、恶意软件平台相关
概述

Yara 规则命名规范,方便编写 Yara 规则时取名

部分内容参考AI

相关参考

规则命名规范

基础规范

  1. 基础格式

    • 允许字符:字母(A-Za-z)、数字(0-9)、下划线(_),禁止空格或连字符(如 rule Trojan-Spy 非法)。

    • 长度建议:不超过 64 字符(避免工具链截断)。

    • 示例:

      1
      2
      rule Banker_Stealer_2025  // 合法 
      rule APT29#Operation // 非法(含特殊符号)
  2. 语义化命名

    • 推荐结构:<威胁类型>_<家族/变种>_<标识符>,例如:
      • Ransomware_LockBit_3
      • Backdoor_CobaltStrike_HTTP
      • Trojan_Emotet_Macro
  3. 避免冲突

    • 同一命名空间(namespace)内规则名需唯一,否则后者覆盖前者。

相关内容

以下是 YARA规则命名中 <威胁类型>_<家族/变种>_<标识符> 的常见分类及示例(截至2025年6月13日),按威胁情报最新实践整理,覆盖主流恶意软件和攻击场景:


一、威胁类型(Threat Type)

分类 示例 说明
Ransomware 勒索软件 LockBitBlackCat
Backdoor 后门程序 CobaltStrikeNanoCore
Trojan 木马 EmotetQakBot
Spyware 间谍软件 RedLineCerberus
Worm 蠕虫 WannaCryStuxnet
Dropper 释放器 IcedIDBazarLoader
Infostealer 信息窃取 RaccoonVidar
APT 高级持续性威胁 APT29APT41
Exploit 漏洞利用工具 ProxyLogonLog4Shell
Macro 宏病毒 HancitorFormbook

二、家族/变种(Family/Variant)

命名逻辑 示例 关联威胁类型
恶意软件家族 ContiREvil Ransomware
攻击组织代号 FIN7Lazarus APT
代码特征 Obfuscated_PS1 Script/Exploit
传播方式 Phish_Email Trojan/Spyware
C2协议 HTTP_C2 Backdoor

三、标识符(Identifier)

用途 示例 适用场景
版本/变种 v2BETA 区分迭代(如 Emotet_v3
攻击目标 FinanceHealthcare 行业针对性(如 APT29_GOV
技术特征 AES_Encrypted 加密方式(如 Ransomware_AES
时间戳 20250613 首次发现日期
哈希片段 0x1a2b 关键代码片段哈希

完整规则命名示例

  1. 勒索软件:Ransomware_LockBit_3_AES
    • 类型:Ransomware
    • 家族:LockBit 3.0变种
    • 标识符:使用AES加密
  2. APT攻击:APT_APT29_CloudSnooper_GOV
    • 类型:APT
    • 家族:APT29(Cozy Bear)的CloudSnooper工具
    • 标识符:针对政府目标
  3. 宏病毒:Macro_Hancitor_Phish_Invoice
    • 类型:宏病毒
    • 家族:Hancitor传播链
    • 标识符:钓鱼邮件伪装为发票

命名空间规范

基础规范

  1. 命名规则

    • 与规则名称类似,但需体现来源分类,例如:
      • Microsoft_Sysmon(厂商+工具)
      • MalwareBazaar_Ransomware(开源项目+分类)
      • Internal_CompanyX_Logs(内部私有规则)
  2. 行业惯例

    类型 命名示例 适用场景
    商业厂商 Kaspersky_ThreatIntel 厂商提供的规则库
    开源社区 Sigma_APT_C2 基于Sigma转换的规则
    内部项目 ProjectY_Indicators 企业内部分类

相关内容

以下是截至 2025年6月13日 主流的 YARA 规则命名空间(namespace来源与分类标准,按行业实践和威胁情报需求整理为 5大核心分类,兼顾实用性与兼容性:


一、按来源分类

类型 命名示例 适用场景
商业安全厂商 Kaspersky_ThreatIntel 卡巴斯基等厂商的规则库
开源社区项目 Sigma_APT_C2 基于Sigma转换的规则(如GitHub)
企业内部私有 AcmeCorp_IR_Logs 内部事件响应或日志检测规则
威胁情报平台 MISP_Financial_Threats 从MISP等平台导出的IoC规则
学术研究机构 MITRE_CAR MITRE的对抗行为规则库

二、按威胁分类

类型 命名示例 覆盖范围
恶意软件家族 Malware_Emotet_Macro 特定家族(如Emotet的宏病毒变种)
攻击技术 TTP_T1059_CommandLine MITRE ATT&CK技术编号关联规则
行业针对性 Sector_Healthcare_Ransom 针对医疗行业的勒索软件规则
攻击阶段 KillChain_InitialAccess 按杀伤链阶段分类(如初始访问)
漏洞利用 Exploit_Log4Shell_RCE 特定漏洞(如Log4j远程代码执行)

三、混合命名实践

  1. 厂商+威胁类型
    • CrowdStrike_Ransomware_LockBit
    • 结构:<厂商>_<威胁类型>_<变种>
  2. 平台+行业
    • AlienVault_Finance_Phishing
    • 结构:<情报平台>_<行业>_<攻击类型>
  3. 时间戳动态命名
    • AutoGen_20250613_APT29
    • 用于自动化生成的临时规则库

快速索引

根据 MITRE ATT&CK框架、CARO恶意软件命名规范 和 行业威胁情报实践

一、恶意软件类型及描述

类型 描述
Adware(广告软件) 在受感染的计算机上显示广告,可能会严重干扰用户的正常使用,也可能导致系统运行缓慢。
Backdoor(后门) 是一种访问计算机系统或加密数据的方法,绕过了系统通常的安全机制。开发人员可能创建后门用于故障排除等,但也会被攻击者利用,攻击者可借此在入侵系统后保持访问权限。
Behavior(行为类) 可能指具有特定行为模式的恶意软件,这类恶意软件的判定通常基于其在系统中的行为表现。
BrowserModifier(浏览器修改器) 会对浏览器的设置、功能等进行修改,可能导致浏览器出现异常,如篡改主页、添加恶意插件等。
Constructor(构造器) 用于创建其他恶意软件的程序,攻击者可利用构造器快速生成新的恶意软件。
DDoS(分布式拒绝服务攻击程序) 通过控制大量被感染的计算机(僵尸网络),向目标服务器发送海量请求,使其无法正常服务,导致系统崩溃或网络拥堵。
Exploit(漏洞利用程序) 利用系统、软件或硬件中的漏洞进行攻击,使攻击者能够获得系统的控制权或执行恶意操作。
Hacktool(黑客工具) 供攻击者用于入侵、破坏或控制计算机系统的工具,如密码破解工具、端口扫描工具等。
Joke(玩笑类) 这类恶意软件通常不会造成严重的破坏,可能只是通过弹出一些玩笑性质的窗口或消息来干扰用户。
Misleading(误导类) 通过虚假信息误导用户,使其做出错误的操作,如诱导用户下载恶意软件、输入敏感信息等。
MonitoringTool(监控工具) 在用户不知情的情况下,对用户的行为进行监视,收集用户的敏感信息,如键盘输入、浏览历史等。
Program(程序类) 较为宽泛的概念,可能指具有恶意功能的程序。
PWS(个人网络服务器恶意软件) 可能会利用个人网络服务器的漏洞进行攻击,或者伪装成个人网络服务器软件来窃取用户信息。
Ransom(勒索软件) 偷偷安装在用户电脑上,锁定用户的计算机或者加密用户的文件,并要求用户支付赎金以恢复访问权限。
RemoteAccess(远程访问类) 允许攻击者远程控制受感染的计算机,执行各种操作,如窃取数据、安装其他恶意软件等。
Rogue(流氓软件) 通常伪装成合法的安全软件,诱导用户购买或下载,实际上会对用户的系统造成损害,如窃取信息、破坏系统文件等。
SettingsModifier(设置修改器) 修改计算机系统的设置,可能导致系统出现异常或安全漏洞。
SoftwareBundler(软件捆绑器) 将恶意软件与其他合法软件捆绑在一起,在用户安装合法软件时,同时安装恶意软件。
Spammer(垃圾邮件发送器) 控制受感染的计算机发送大量的垃圾邮件,可能会导致网络拥堵,也可能用于传播其他恶意软件。
Spoofer(欺骗器) 伪装成其他合法的实体,如网站、应用程序等,骗取用户的信任,从而窃取用户的敏感信息。
Spyware(间谍软件) 在用户不知情或未取得用户许可的情况下,对用户的行为进行监视,收集用户的敏感信息,如键盘输入、浏览历史、个人隐私等。
Tool(工具类) 与Hacktool类似,是供攻击者使用的工具。
Trojan(特洛伊木马) 伪装成有用的程序诱骗用户安装,但实际上在后台运行恶意代码,可以窃取敏感信息、提供后门访问或执行其他恶意操作。
TrojanClicker(点击器木马) 自动点击广告或链接,可能用于增加广告的点击量或执行其他恶意操作,给用户带来经济损失。
TrojanDownloader(下载器木马) 用于下载其他恶意软件到受感染的计算机上,进一步扩大攻击范围。
TrojanNotifier(通知器木马) 可能会弹出虚假的通知消息,误导用户进行操作。
TrojanProxy(代理木马) 将受感染的计算机作为代理服务器,用于隐藏攻击者的真实身份,进行非法活动。
TrojanSpy(间谍型木马) 具有间谍软件的功能,在用户不知情的情况下,收集用户的敏感信息。
VirTool(病毒工具) 可能是用于创建、传播或控制病毒的工具。
Virus(病毒) 通过修改其他程序,使其他程序包含一个自身可能已发生变化的原程序副本,从而完成传播自身程序。一旦感染,病毒会破坏文件或者系统的正常运行,并且可以自我复制,扩散到更多的文件和系统中。
Worm(蠕虫) 能够自我复制并通过网络传播,通常会占用大量系统资源并导致网络拥堵,还可能执行其他恶意操作,如窃取信息、安装后门等。

二、恶意软件平台相关

2.1 操作系统

平台 描述
AndroidOS 针对安卓操作系统。
DOS 针对MS - DOS平台。
EPOC 针对Psion设备。
FreeBSD 针对FreeBSD平台。
iPhoneOS 针对iPhone操作系统。
Linux 针对Linux平台。
MacOS 针对MAC 9.x平台或更早版本。
MacOS_X 针对MacOS X或更高版本。
OS2 针对OS2平台。
Palm 针对Palm操作系统。
Solaris 针对基于System V的Unix平台。
SunOS 针对Unix平台4.1.3或更低版本。
SymbOS 针对Symbian操作系统。
Unix 针对通用Unix平台。
Win16 针对Win16 (3.1)平台。
Win2K 针对Windows 2000平台。
Win32 针对Windows 32位平台。
Win64 针对Windows 64位平台。
Win95 针对Windows 95、98和ME平台。
Win98 仅针对Windows 98平台。
WinCE 针对Windows CE平台。
WinNT 针对WinNT。

2.2 脚本语言

脚本语言 说明
ABAP Advanced Business Application Programming scripts
ALisp ALisp scripts
AmiPro AmiPro script
ANSI American National Standards Institute scripts
AppleScript compiled Apple scripts
ASP Active Server Pages scripts
AutoIt AutoIT scripts
BAS Basic scripts
BAT Basic scripts
CorelScript Corelscript scripts
HTA HTML Application scripts
HTML HTML Application scripts
INF Install scripts
IRC mIRC/pIRC scripts
Java Java binaries (classes)
JS Javascript scripts
LOGO LOGO scripts
MPB MapBasic scripts
MSH Monad shell scripts
MSIL .Net intermediate language scripts
Perl Perl scripts
PHP Hypertext Preprocessor scripts
Python Python scripts
SAP SAP platform scripts
SH Shell scripts
VBA Visual Basic for Applications scripts
VBS Visual Basic scripts
WinBAT Winbatch scripts
WinHlp Windows Help scripts
WinREG Windows registry scripts

2.3 宏

描述
A97M Access 97, 2000, XP, 2003, 2007, and 2010 macros
HE macro scripting
O97M Office 97, 2000, XP, 2003, 2007, and 2010 macros - those that affect Word, Excel, and Powerpoint
PP97M PowerPoint 97, 2000, XP, 2003, 2007, and 2010 macros
V5M Visio5 macros
W1M Word1Macro
W2M Word2Macro
W97M Word 97, 2000, XP, 2003, 2007, and 2010 macros
WM Word 95 macros
X97M Excel 97, 2000, XP, 20

2.4 后缀

提供有关恶意软件的额外详细信息,包括如何将其用作多组件威胁的一部分:

  • .dam:受损的恶意软件。
  • .dll:恶意软件的动态链接库组件。
  • .dr:恶意软件的投放器组件。
  • .gen:使用通用签名检测到的恶意软件。
  • .kit:病毒构造器。
  • .ldr:恶意软件的加载器组件。
  • .pak:压缩的恶意软件。
  • .plugin:插件组件。
  • .remnants:病毒的残留部分。
  • .worm:恶意软件的蠕虫组件。
  • !bit、!cl、!dha、!pfn、!plock、!rfn:内部类别,用于指代某些威胁。
  • !rootkit:恶意软件的rootkit组件。
  • @m:蠕虫邮件发送器。
  • @mm:大规模邮件蠕虫。