QuickSand.io ReportsToday we're going to dig deeper into the QuickSand.io document malware analysis reporting, and how the analyst can dig deeper into the results and extracted executables.
HeaderThe report header contains the information you'd expect - analysis time (for the submitted times you'll have to look at the submissions json page). File hashes. is_malware: 0 for clean, 1 for suspicious active content, 2 for exploits and embedded executables. Score - each yara rule for exploits or active content adds to the score. Runtime - it's fast. And the yara hits - exploits - CVE #, executables windows/mac/VB and whether a PE header is found, and general - the trojan signatures from Malware Tracker.
|QuickSand.io Report Header|
StreamsThe streams section of the report is where you can did deeper into the content and cryptanalysis results. Clicking the headers expands the sections and the indentation shows the object relationships. Grey title are less interesting, red have exploits, and brown have executables.
The distribution item in the root can be very useful. The X's indicate the part of the file where an embedded executable exists. 0 is for null sections, F is for FF sections, 1 is for high entropy areas, and A is for ascii sections such as most of an RTF file.
We are also working on a structural hash structhash of the file which can help find samples from the same attacker or exploit kit.
|QuickSand.io Streams section|
For docx files you'll see the hierarchy of files within the zip, and embedded OLE files or high entropy data is analyzed for embedded executables as well.
Macros and No Embedded exe's
A lot of the new macro malware won't have an embedded exe, using the distribution results below, we can see the file is mostly null blocks "0" and does not have enough entropy to have a built in EXE.
The XOR section shows the xorkey for cryptanalysis found keys, or xortkey for a key dictionary result.
The Rol section shows the bitwise rol used. You can click the sha256 link for a hex dump of the section, and click (str) for the extracted strings.
The dropped files section is similar, click the number (1) to see the hexdump and (str) to see the strings. The strings section can help to get a quick ID of the trojan or find some unique strings for a quick Yara rule.
Tip: hex dumps can be converted back to files: # xxd -r webhexdump.txt > malware.virus
|dropped file hex dump|
|dropped file extracted strings|
The bottom of the page has links to a JSON version of the report and a JSON of the submissions (date, original filenames).