DCS Summer 2012 Research Awards — Project Description

Binary Instrumentation Tools for Operating System Kernels

Faculty name: Angela Demke Brown
Research area: computer systems, operating systems, compiler design
Campus address: BA5228
Campus phone: 416-946-8080
Email address: demke [at] cs.toronto.edu
Number of students: 1
Skills required:
  • Strong expertise of C
  • Basic knowledge of the internals of the Linux operating system
  • Basic knowledge of compiler design
  • Shell programming, python

Brief project description:

A binary instrumentation system enables monitoring and potentially manipulating every instruction in an existing binary, just before the instruction starts executing. Binary instrumentation systems have been used for developing bug-finding and security tools. For example, Memcheck, built using a binary instrumentation system, allows detecting various types of memory errors dynamically, such as accessing memory after it has been freed.

We have recently developed a binary instrumentation system for an operating system. We aim to use this system to develop tools for finding bugs in the Linux kernel, hardening the kernel against malicious device drivers, and for examining the behavior of kernel-based rootkits.

In this project, the summer student will develop one of the tools mentioned above.

Back to the index.