Skip to content
Command line tool for scanning streams within office documents plus xor db attack
C YARA Shell
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore Fix yara warning May 24, 2017
INSTALL.txt Update and rename install_dependencies_readme.txt to INSTALL.txt Dec 14, 2016
LICENSE Initial commit Dec 12, 2016 dependancy versions updated May 12, 2017 initial launch Dec 13, 2016
install_libzip_readme.txt initial launch Dec 13, 2016
jWrite.c initial launch Dec 13, 2016
libqs.c cve-2017-8759 sig added Sep 14, 2017
libqs.h fixed true false definitions for older compilers Feb 23, 2019
quicksand_exploits.yara embedded powershell Feb 15, 2018
quicksand_general.yara comment with source url added Dec 14, 2016
sha1.c initial launch Dec 13, 2016
sha1.h initial launch Dec 13, 2016
sha2.c initial launch Dec 13, 2016
tinydir.h initial launch Dec 13, 2016

QuickSand is a compact C framework to analyze suspected malware documents to 1) identify exploits in streams of different encodings, 2) locate and extract embedded executables. By having the ability to locate embedded obfuscated executables, QuickSand could detect documents that contain zero-day or unknown obfuscated exploits.

File Formats For Exploit and Active Content Detection

  • doc, docx, docm, rtf, etc
  • ppt, pptx, pps, ppsx, etc
  • xls, xlsx, etc
  • mime mso
  • eml email

File Formats For Executable Detection

  • All of the above, plus PDF.
  • Any document format such as HWP.

Lite Version - Mplv2 License

  • Key dictionary up to 256 byte XOR
  • Bitwise ROL, ROR, NOT
  • Addition or substraction math cipher
  • Executable extraction: Windows, Mac, Linux, VBA
  • Exploit search
  • RTF pre processing
  • Hex stream extract
  • Base 64 Stream extract
  • Embedded Zip extract
  • ExOleObjStgCompressedAtom extract
  • zLib Decode
  • Mime Mso xml Decoding
  • OpenXML decode (unzip)
  • Yara signatures included: Executables, active content, exploits CVE 2014 and earlier

Example results and more info blog post

Full Version - Commercial License

  • Key cryptanalysis 1-1024 bytes factors of 2; or a specified odd size 1-1024 bytes
  • 1 Byte zerospace not replaced brute force XOR search
  • XOR Look Ahead cipher
  • More Yara signatures included: All lite plus most recent exploits 2014-2016 for CVE identification
  • Try the full version online at

Dependencies (not included)

  • Yara 3.4+
  • zlib 1.2.1+
  • libzip 1.1.1+

Distributed components under their own licensing

  • MD5 by RSA Data Security, Inc.
  • SHA1 by Paul E. Jones
  • SHA2 by Aaron D. Gifford
  • jWrite by TonyWilk for json output
  • tinydir by Cong Xu, Baudouin Feildel for directory processing

Quick Start

  • ./
  • ./quicksand.out -h
  • ./quicksand.out malware.doc


Copyright, License, and Trademark

"" name and the QuickSand application logo are Copyright 2016 Tyler McLellan and Tylabs and their use requires written permission from the author.

Source code quicksand.c, libqs.h, libqs.c and the yara signatures except where noted are Copyright 2016 Tyler McLellan and Tylabs.

See included Mozilla Public License Version 2.0 for licensing information.

You can’t perform that action at this time.