Tupni: automatic reverse engineering of input formats

  • Authors:
  • Weidong Cui;Marcus Peinado;Karl Chen;Helen J. Wang;Luis Irun-Briz

  • Affiliations:
  • Microsoft Research, Redmond, WA, USA;Microsoft Corporation, Redmond, WA, USA;University of California, Berkeley, CA, USA;Microsoft Research, Redmond, WA, USA;Microsoft Corporation, Redmond, WA, USA

  • Venue:
  • Proceedings of the 15th ACM conference on Computer and communications security
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Recent work has established the importance of automatic reverse engineering of protocol or file format specifications. However, the formats reverse engineered by previous tools have missed important information that is critical for security applications. In this paper, we present Tupni, a tool that can reverse engineer an input format with a rich set of information, including record sequences, record types, and input constraints. Tupni can generalize the format specification over multiple inputs. We have implemented a prototype of Tupni and evaluated it on ten different formats: five file formats (WMF, BMP, JPG, PNG and TIF) and five network protocols (DNS, RPC, TFTP, HTTP and FTP). Tupni identified all record sequences in the test inputs. We also show that, by aggregating over multiple WMF files, Tupni can derive a more complete format specification for WMF. Furthermore, we demonstrate the utility of Tupni by using the rich information it provides for zero-day vulnerability signature generation, which was not possible with previous reverse engineering tools.