Packer visualisation: a fast entropy scanning algorithm that preserves local detail

Tim Ebringer University of Melbourne
Li Sun RMIT University

  download slides (PDF)

Entropy or randomness calculations can be a fast way to estimate whether a file is packed. However, most algorithms we have seen simply give an overall entropy value for the entire file. We present an algorithm that is not only fast, but preserves local detail, so a plot can be made of an entire file showing areas of high entropy and low entropy. Areas of low entropy (code and header, in the case of a PE file) show as lower points on the plot, whereas areas of high entropy (encrypted or compressed data) show as high areas.

We present local-detail preserving entropy plots for a variety of packers, showing that many appear to pack files in a distinctive manner. This seems to be because compressed data and the code that unpacks it tends to be placed in the same relative location in the packed file, leading to a kind of signature based on an 'entropy signal'. We give algorithms which have shown early promise in comparing the entropy signals of various packed files.

Finally, in what we believe to be a unique presentation, we are able to visualize the work of a packed program as it unpacks itself by placing breakpoints on decompression/decryption loops, dumping memory, and performing our detail-preserving entropy analysis on the dump. A YouTube video (link below) shows a UPX-packed file unpacking itself. The start of the video shows the entropy of a UPX-packed file as it is initially loaded into memory. As the video progresses, the uncompressed code is written into the empty section created by the loader. Note the interesting behaviour whereby UPX actually overrides its compressed data with code during the unpacking process. In this video, the y-axis is the amount of entropy, and the x-axis is memory address of the main UPX sections from low to high.

Unpacking video: http://www.youtube.com/watch?v=pcZpSyZuA-Q


Poll

Do you use the same password(s) across multiple websites?
I use the same password for all sites
I have a number of passwords but use the same for some sites
I use a different password for each site
I don't sign up to any sites that require a password

Leave a comment
View 4 comments

Jobs Career Sidebar

Virus Bulletin

In this month's magazine:
  • Social networking meets social engineering
  • Flying solo
  • Geneva convention
  • 7th German Anti Spam Summit 2009
  • Anti-phishing landing page: turning a 404 into a teachable moment
  • An update on spamming botnets: are we losing the war?
  • Windows Server 2008 Standard Edition SP2 x86
Virus Bulletin 10 2009
Subscribe now!
Virus Bulletin currently has 190,995 registered users.