A new set of functions yr_scanner_* has been added to the API. The purpose of these functions is providing a way for using the same YR_RULES object with different sets of values for external variables. With the existing yr_rules_scan_* functions all clients sharing a YR_RULES object were forced to use the same set of values for externals variables, because the external variables were associated to the YR_RULES object. With the new API each client can create a separate YR_SCANNER to be used with the same YR_RULES object. Each YR_SCANNER can have its own set of external variables. The existing API keeps working as usual.
YARA in a nutshell
YARA is a tool aimed at (but not limited to) helping malware researchers to identify and classify malware samples. With YARA you can create descriptions of malware families (or whatever you want to describe) based on textual or binary patterns. Each description, a.k.a rule, consists of a set of strings and a boolean expression which determine its logic. Let's see an example:
rule silent_banker : banker
{
meta:
description = "This is just an example"
threat_level = 3
in_the_wild = true
strings:
$a = {6A 40 68 00 30 00 00 6A 14 8D 91}
$b = {8D 4D B0 2B C1 83 C0 27 99 6A 4E 59 F7 F9}
$c = "UVODFRYSIHLNWPEJXQZAKCBGMT"
condition:
$a or $b or $c
}
The above rule is telling YARA that any file containing one of the three strings must be reported as silent_banker. This is just a simple example, more complex and powerful rules can be created by using wild-cards, case-insensitive strings, regular expressions, special operators and many other features that you'll find explained in YARA's documentation.
YARA is multi-platform, running on Windows, Linux and Mac OS X, and can be used through its command-line interface or from your own Python scripts with the yara-python extension.
If you plan to use YARA to scan compressed files (.zip, .tar, etc) you should take a look at yextend, a very helpful extension to YARA developed and open-sourced by Bayshore Networks.
Who's using YARA
- ActiveCanopy
- Adlice
- AlienVault
- BAE Systems
- Bayshore Networks, Inc.
- BinaryAlert
- Blue Coat
- Blueliv
- Conix
- CrowdStrike FMS
- Cuckoo Sandbox
- ESET
- Fidelis XPS
- FireEye, Inc.
- Fox-IT
- FSF
- Guidance Software
- Heroku
- Hornetsecurity
- InQuest
- JASK
- jsunpack-n
- Kaspersky Lab
- Koodous
- Laika BOSS
- Lastline, Inc.
- McAfee Advanced Threat Defense
- Metaflows
- NBS System
- Nozomi Networks
- osquery
- Payload Security
- PhishMe
- Picus Security
- Radare2
- Raytheon Cyber Products, Inc.
- ReversingLabs
- root9B
- RSA ECAT
- SpamStopsHere
- stoQ
- Symantec
- Tanium
- Tenable Network Security
- The DigiTrust Group
- ThreatConnect
- ThreatStream, Inc.
- Thug
- Trend Micro
- VirusTotal Intelligence
- VMRay
- We Watch Your Website
- Websense
- x64dbg
- YALIH
- Scanii
Are you using it? Want to see your site listed here?