UnpacMe provides a full YARA rule management system complete with a rule editor, validator, and private rule repository. In general UnpacMe supports the current stable YARA version though with some additional limitations. Detailed documentation for the features supported can be found in the latest YARA documentation.

Limitations

  • Only one YARA rule is permitted per rule definition. Multiple rules bundled in a single file will be rejected during validation.
  • Rules cannot use include statements. Searches only have access to the submitted rule.
  • Only the following YARA modules are supported; pe, math, magic, hash, and dotnet.

Rule Editor

The integrated YARA rule editor is a full-featured rich text editor that supports syntax highlighting and type suggestions. The rule editor also supports optional Rule Validation.

The editor can be placed in fullscreen mode by pressing the [esc] key or the fullscreen button in the top right corner of the editor. Press the [esc] key again to escape fullscreen mode.

The rule name bar at the top of the editor will automatically capture the name of the rule in the editor and can also be updated to use a custom name. An optional description field is also available to capture notes about the rule.

Editor Keyboard Shortcuts

Editor Operations

Windows/Linux Mac Action
ESC ESC Fullscreen
Ctrl-S Command-S Save file

Line Operations

Windows/Linux Mac Action
Ctrl-D Command-D Remove line
Alt-Shift-Down Command-Option-Down Copy lines down
Alt-Shift-Up Command-Option-Up Copy lines up
Alt-Down Option-Down Move lines down
Alt-Up Option-Up Move lines up
Alt-Delete Ctrl-K Remove to line end
Alt-Backspace Command-Backspace Remove to linestart
Ctrl-Backspace Option-Backspace, Ctrl-Option-Backspace Remove word left
Ctrl-Delete Option-Delete Remove word right

Selection

Windows/Linux Mac Action
Ctrl-A Command-A Select all
Shift-Left Shift-Left Select left
Shift-Right Shift-Right Select right
Ctrl-Shift-Left Option-Shift-Left Select word left
Ctrl-Shift-Right Option-Shift-Right Select word right
Shift-Home Shift-Home Select line start
Shift-End Shift-End Select line end
Alt-Shift-Right Command-Shift-Right Select to line end
Alt-Shift-Left Command-Shift-Left Select to line start
Shift-Up Shift-Up Select up
Shift-Down Shift-Down Select down
Shift-PageUp Shift-PageUp Select page up
Shift-PageDown Shift-PageDown Select page down
Ctrl-Shift-Home Command-Shift-Up Select to start
Ctrl-Shift-End Command-Shift-Down Select to end
Ctrl-Shift-D Command-Shift-D Duplicate selection
Ctrl-Shift-M Ctrl-Shift-M Expand to matching
Ctrl-, Ctrl-P Command-\ Jump to matching
Ctrl-Shift-, Ctrl-Shift-P Command-Shift-\ Select to matching
Ctrl-Shift-L Command-Shift-L Expand to line

Multicursor

Windows/Linux Mac Action
Ctrl-Alt-Up Ctrl-Option-Up Add cursor above
Ctrl-Alt-Down Ctrl-Option-Down Add cursor below
Ctrl-Alt-Right Ctrl-Option-Right Add next occurrence to multi-selection
Ctrl-Alt-Left Ctrl-Option-Left Add previous occurrence to multi-selection
Ctrl-Alt-Shift-Up Ctrl-Option-Shift-Up Move multicursor from current line to the line above
Ctrl-Alt-Shift-Down Ctrl-Option-Shift-Down Move multicursor from current line to the line below
Ctrl-Alt-Shift-Right Ctrl-Option-Shift-Right Remove current occurrence from multi-selection and move to next
Ctrl-Alt-Shift-Left Ctrl-Option-Shift-Left Remove current occurrence from multi-selection and move to previous
Ctrl-Shift-L Ctrl-Shift-L Select all from multi-selection
Ctrl-Alt-A Ctrl-Alt-A Align cursors

Go to

Windows/Linux Mac Action
Left Left, Ctrl-B Go to left
Right Right, Ctrl-F Go to right
Ctrl-Left Option-Left Go to word left
Ctrl-Right Option-Right Go to word right
Up Up, Ctrl-P Go line up
Down Down, Ctrl-N Go line down
Alt-Left, Home Command-Left, Home, Ctrl-A Go to line start
Alt-Right, End Command-Right, End, Ctrl-E Go to line end
PageUp Option-PageUp Go to page up
PageDown Option-PageDown, Ctrl-V Go to page down
Ctrl-Home Command-Home, Command-Up Go to start
Ctrl-End Command-End, Command-Down Go to end
Ctrl-L Command-L Go to line...
Ctrl-Down Command-Down Scroll line down
Alt-E F4 Go to next error
Alt-Shift-E Shift-F4 Go to previous error

Rule Revisions

YARA rules are automatically versioned as changes are made to the rule. The expandable revisions panel on the left of the editor can be used to quickly view and manage the revisions. Clicking on a revision will display the revision rule in the editor.

Any change to an existing rule will automatically create a temporary new revision though this revision is not automatically saved. Saving the changes will save the new revision and add it to the revision tree. The revisions tree has two important concepts, the Current View, and the Active Revision.

Current View

The current view is the revision that is displayed in the editor. The current view can be used to browse rule revisions. Viewing the revisions will not change the Active Revision.

Active Revision

The Active Revision is the revision of the rule that represents the current state of the rule. The Active Revision is always the last saved revision of the rule. To revert to a previous revision of the rule simply click the desired revision to display it in the Current View, then click save to set it as the Active Revision.

Shared Rules

YARA rules can be shared by clicking the Shared toggle in the rule editor. This will open a Share Rule Revisions dialogue which enable specific revisions of the rule to be shared. When a rule is shared it is added to the Community YARA Rules list and is publicly available to all users.

Enterprise Note: Only Enterprise Administrators can share and un-share enterprise rules.