规范化yara签名的python libary

yaratool的Python项目详细描述


#概述

yaratool的创建是为了规范化yara签名,以便很好地格式化签名,检测重复项,并通过哈希(类似于我们如何表示恶意软件)来表示特定的签名。此工具中的哈希方法与ruby yara normalize模块相同。

ynhash设计用于标识yara签名。


import yaratool

ruletext=“”rule debuggercheck_api:antiebug debuggercheck{
meta:
author=“some dude or dudette”
weight=1
字符串:
$=“isdebuggerpresent”
条件:
其中任何一个
}“
yr=yaratool.yararule(ruletext)
print yr.normalize()
print”name:%s,tags:%s,author:%s“%(yr.name,“&;”。join(yr.tags),yr.metas['author'])
print”strings:
对于yr中的字符串。strings:
打印%s%(字符串)
打印“条件:”
对于年条件:
打印%s%(条件)
打印年哈希()


输出


rule debuggercheck\uu api:antiebug debuggercheck{
元:
author=“some dude or dudette”
权重=1
字符串:
$=“isdebuggerpresent”
条件:
其中任何一个
}
名称:debuggercheck\uu api,标记:antebug&;debuggercheck,作者:“some dude or dudette”
字符串:
$=“isdebuggerpresent”
条件:
其中任何一个
yn01:d28d649e24c37244:d936fceff

它将显示任何重复规则的规范化版本。

import yaratool
import sys

'r')
sigrules=fh.read()
fh.close()
rules=yaratool.split(sigrules)
对于规则中的规则:
ynhash=rule.hash()
res=drf.check(rule)
如果res:
重复数+=1
对于res中的r:
print r.normalize()
pass
print rule.normalize()
print
count+=len(规则)
print“计数为%d,重复次数为%d”%(计数,重复次数)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何下载多个。java中的PDF文件   linux Java打开文件,形成实际用户主页~/   java如何在时间线内维护TableView选择?   java Hibernate注释@Where vs@WhereJoinTable   Java读/写访问异常FileNotFoundException(访问被拒绝)   继承在Java中是否可以扩展最后一个类?   Android HttpClient使用java使应用程序崩溃。lang.OutOfMemoryError:pthread_create   java为什么即使我在proguardproject中添加了jar文件,也会出现这种错误。txt?   如果添加JButton,swing Java FocusListener和KeyListener将无法工作   java使用solrj检索json格式的SolrDocument   使用Microsoft Visual Studio代码进行Java编程   java NoClassDefFoundError:org/apache/log4j/Logger   哈希集中包含相等对象的java   java中的参数化构造函数是否需要有一个主体?   java类似于NetBeans不必要的代码检测器   Java实践问题   java Blackberry“[projectname].调试文件丢失”和“I/O错误:找不到程序”jar