Dynamic Protocol Reverse Engineering: A Grammatical Inference Approach

Abstract

Round trip engineering of software from source code and reverse engineering of software from binary files have both been extensively studied and the state-of-practice have documented tools and techniques. Forward engineering of protocols has also been extensively studied and there are firmly established techniques for generating correct protocols. While observation of protocol behavior for performance testing has been studied and techniques established, reverse engineering of protocol control flow from observations of protocol behavior has not received the same level of attention. State-of-practice in reverse engineering the control flow of computer network protocols is comprised of mostly ad hoc approaches. We examine state-of-practice tools and techniques used in three open source projects: Pidgin, Samba, and rdesktop. We examine techniques proposed by computational learning researchers for grammatical inference. We propose to extend the state-of-art by inferring protocol control flow using grammatical inference inspired techniques to reverse engineer automata representations from captured data flows. We present evidence that grammatical inference is applicable to the problem domain under consideration.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Mar 01, 2008
Accession Number
ADA484312

Entities

People

  • Mark E. Deyoung

Organizations

  • Air Force Institute of Technology

Tags

Communities of Interest

  • Air Platforms
  • Cyber
  • Electronic Warfare
  • Energy and Power Technologies
  • Engineered Resilient Systems
  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Application Protocols
  • Computational Science
  • Computer Network Security
  • Computer Networks
  • Computer Programming
  • Computer Programs
  • Computers
  • Digital Communications
  • Electronic Mail
  • Electronic Messaging
  • Intrusion Detectors
  • Network Protocols
  • Network Science
  • Operating Systems
  • Security Protocols
  • Software Testing
  • Transport Protocols

Fields of Study

  • Computer science

Readers

  • Computational Linguistics
  • Software Engineering
  • Theoretical Analysis.

Technology Areas

  • AI & ML
  • AI & ML - Machine Learning Algorithms