博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
yara规则
阅读量:6547 次
发布时间:2019-06-24

本文共 787 字,大约阅读时间需要 2 分钟。

(1)yara文档

链接:

yara规则
(2)规则
yara规则
分为三个段,meta主要为该规则的描述信息,strings段,写匹配的字符串或十六进制特征,支持正则表达式。,condition段主要为条件,即写特征满足的条件。
延续c语言语法,使用/**/注释,多行语法无需符号分行。

rule RuleName{

meta:

strings:             condition:

}

参考网站:

string编写:

字符串特征,使用$符号命令变量,双引号引起字符串内容

$a_test="Virus"
使用nocase忽略大小写
$a_text="Virus"nocase
还可以使用关键字字ascii,wide

十六进制特征使用大括号括起来,每个十六进制数据用空格空开。

$a_hex={3F 76 98 2F}
十六进制支持通配符,使用??表示任意的一个十六进制数据,当你的十六进制特征匹配到其中一个十六进制数据可变时就需要了,
$a_hex1={34 67 ?? 3F}
如果出现一段十六进制未知,那么就使用跳转,用中括号括起来,指定跳转最小和最大位数。
$a_hex2={34 56 25 [4-8] 78} 表示在 34 56 25和78 之间可以有4到8个任意的十六进制组合。
正则表达式,可使用正则表达式丰富特征,在字符串和十六进制数据中使用
$ hex_string = {F4 23(62 B4 | 56 | 45 ?? 67)45}
使用/号表示正则的开始和结束

condition编写

使用逻辑表达式,对string中的变量操作,达到效果。 AND or not 关系操作符>、<、==、<=、>=和!=

使用#号表示该字符出现的次数 如:#hex_tsring==10

转载于:https://blog.51cto.com/antivirusjo/2044651

你可能感兴趣的文章
Hadoop2.2.0安装配置手册!完全分布式Hadoop集群搭建过程~(心血之作啊~~)
查看>>
《大话重构》
查看>>
一起谈.NET技术,WPF与混淆器
查看>>
一起谈.NET技术,C#面向对象设计模式纵横谈:Singleton 单件
查看>>
Mozilla公布Firefox 2011年开发计划
查看>>
Java访问类中private属性和方法
查看>>
UIImage扩展方法(Category)支持放大和旋转
查看>>
可复用的WPF或者Silverlight应用程序和组件设计(3)——控件级别
查看>>
hibernate的一些缺陷(转)
查看>>
An easy to use android color picker library
查看>>
忘记Django登陆账号和密码的处理方法
查看>>
C++的头文件和实现文件分别写什么
查看>>
C语言 · 学生信息(P1102)
查看>>
做项目,还是标准点好(对象命名标准),呵呵
查看>>
iOS开发学习笔记:使用xcode里的单元测试,放在STAssert…里面的语句无法使用自动完成功能...
查看>>
利用批处理文件和任务计划实现Oracle数据库的自动备份
查看>>
API开发 – 让异常变得优雅
查看>>
【270天】每日项目总结系列008(2017.11.02)
查看>>
记一次线上CPU超高的排查过程
查看>>
获取群成员邀请关系
查看>>