Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/2576195.2576212acmconferencesArticle/Chapter ViewAbstractPublication PagesveeConference Proceedingsconference-collections
research-article

Composable multi-level debugging with Stackdb

Published: 01 March 2014 Publication History

Abstract

Virtual machine introspection (VMI) allows users to debug software that executes within a virtual machine. To support rich, whole-system analyses, a VMI tool must inspect and control systems at multiple levels of the software stack. Traditional debuggers enable inspection and control, but they limit users to treating a whole system as just one kind of target: e.g., just a kernel, or just a process, but not both.
We created Stackdb, a debugging library with VMI support that allows one to monitor and control a whole system through multiple, coordinated targets. A target corresponds to a particular level of the system's software stack; multiple targets allow a user to observe a VM guest at several levels of abstraction simultaneously. For example, with Stackdb, one can observe a PHP script running in a Linux process in a Xen VM via three coordinated targets at the language, process, and kernel levels. Within Stackdb, higher-level targets are components that utilize lower-level targets; a key contribution of Stackdb is its API that supports multi-level and flexible "stacks" of targets. This paper describes the challenges we faced in creating Stackdb, presents the solutions we devised, and evaluates Stackdb through its application to a security-focused, whole-system case study.

References

[1]
P. P. Bungale and C.-K. Luk. PinOS: A programmable framework for whole-system dynamic instrumentation. In Proc. VEE, pages 137--147, June 2007.
[2]
P. M. Chen and B. D. Noble. When virtual is better than real. In Proc. HotOS, pages 133--138, May 2001.
[3]
J.-H. Chiang, H.-L. Li, and T. Chiueh. Introspection-based memory de-duplication and migration. In Proc. VEE, pages 51--61, Mar. 2013.
[4]
[email protected]. distorm - Powerful Disassembler Library For x86/AMD64. http://code.google.com/p/distorm/.
[5]
B. Dolan-Gavitt, T. Leek, M. Zhivich, J. Giffin, and W. Lee. Virtuoso: Narrowing the semantic gap in virtual machine introspection. In Proc. IEEE S&P, pages 297--312, May 2011.
[6]
T. Garfinkel and M. Rosenblum. A virtual machine introspection based architecture for intrusion detection. In Proc. NDSS, Feb. 2003.
[7]
GDB Developers. GDB: The GNU Project Debugger. http://www.gnu.org/software/gdb/.
[8]
A. Ho. Personal communication, Nov. 2013.
[9]
A. Ho and S. Hand. On the design of a pervasive debugger. In Proc. AADEBUG, pages 117--122, Sept. 2005.
[10]
A. Ho, S. Hand, and T. Harris. PDB: Pervasive debugging with Xen. In Proc. GRID, pages 260--265, Nov. 2004.
[11]
A. Joshi, S. T. King, G. W. Dunlap, and P. M. Chen. Detecting past and present intrusions through vulnerability-specific predicates. In Proc. SOSP, pages 91--104, Oct. 2005.
[12]
B. Lee, M. Hirzel, R. Grimm, and K. S. McKinley. Debug all your code: Portable mixed-environment debugging. In Proc. OOPSLA, pages 207--226, Oct. 2009.
[13]
C.-K. Luk, R. Cohn, R. Muth, H. Patil, A. Klauser, G. Lowney, S. Wallace, V. J. Reddi, and K. Hazelwood. Pin: Building customized program analysis tools with dynamic instrumentation. In Proc. PLDI, pages 190--200, June 2005.
[14]
MITRE CorporationThe MITRE Corporation. CVE--2013--1763, Feb. 19, 2013. http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-1763.
[15]
B. Payne et al. vmitools - virtual machine introspection tools. http://code.google.com/p/vmitools/.
[16]
PHP GroupThe PHP Group. PHP at the Core: A Hacker's Guide. http://www.php.net/manual/en/internals2.php.
[17]
A. Srivastava and J. Giffin. Automatic discovery of parasitic malware. In Recent Advances in Intrusion Detection, volume 6307 of LNCS, pages 97--117. Springer, 2010.
[18]
Volatile Systems. The Volatility Framework: Volatile memory artifact extraction utility framework. https://www.volatilesystems.com/default/volatility.
[19]
J. Wessel. Using kgdb, kdb and the kernel debugger internals. http://www.kernel.org/pub/linux/kernel/people/jwessel/kdb/.
[20]
B. White, J. Lepreau, L. Stoller, R. Ricci, S. Guruprasad, M. Newbold, M. Hibler, C. Barb, and A. Joglekar. An integrated experimental environment for distributed systems and networks. In Proc. OSDI, pages 255--270, Dec. 2002.
[21]
L. K. Yan and H. Yin. DroidScope: Seamlessly reconstructing the OS and Dalvik semantic views for dynamic Android malware analysis. In Proc. USENIX Security, pages 569--584, Aug. 2012.
[22]
F. Zhang, K. Leach, K. Sun, and A. Stavrou. SPECTRE: A dependable introspection framework via system management mode. In Proc. DSN, pages 1--12, June 2013.

Cited By

View all
  • (2018)HYDRAProceedings of the 13th International Conference on Availability, Reliability and Security10.1145/3230833.3230861(1-10)Online publication date: 27-Aug-2018
  • (2018)HyperagentsProceedings of the Eighth ACM Conference on Data and Application Security and Privacy10.1145/3176258.3176317(212-223)Online publication date: 13-Mar-2018
  • (2017)Software Tools for Low-Level Software and Operating Systems ClassesProceedings of the 19th Workshop on Computer Architecture Education10.1145/3116214.3116241(16-23)Online publication date: 24-Jun-2017
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
VEE '14: Proceedings of the 10th ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
March 2014
236 pages
ISBN:9781450327640
DOI:10.1145/2576195
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 March 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. virtual machine introspection
  2. virtualization

Qualifiers

  • Research-article

Conference

VEE '14

Acceptance Rates

VEE '14 Paper Acceptance Rate 18 of 56 submissions, 32%;
Overall Acceptance Rate 80 of 235 submissions, 34%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 18 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2018)HYDRAProceedings of the 13th International Conference on Availability, Reliability and Security10.1145/3230833.3230861(1-10)Online publication date: 27-Aug-2018
  • (2018)HyperagentsProceedings of the Eighth ACM Conference on Data and Application Security and Privacy10.1145/3176258.3176317(212-223)Online publication date: 13-Mar-2018
  • (2017)Software Tools for Low-Level Software and Operating Systems ClassesProceedings of the 19th Workshop on Computer Architecture Education10.1145/3116214.3116241(16-23)Online publication date: 24-Jun-2017
  • (2017)Architecture for Resource-Aware VMI-based Cloud Malware AnalysisProceedings of the 4th Workshop on Security in Highly Connected IT Systems10.1145/3099012.3099015(43-48)Online publication date: 19-Jun-2017
  • (2017)AravProceedings of the 12th Annual Conference on Cyber and Information Security Research10.1145/3064814.3064829(1-8)Online publication date: 4-Apr-2017
  • (2017)ATOM: Efficient Tracking, Monitoring, and Orchestration of Cloud ResourcesIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2017.265246728:8(2172-2189)Online publication date: 1-Aug-2017
  • (2017)A Wingman for Virtual AppliancesRuntime Verification10.1007/978-3-319-67531-2_25(390-399)Online publication date: 6-Sep-2017
  • (2015)ATOMProceedings of the 2015 IEEE International Conference on Big Data (Big Data)10.1109/BigData.2015.7363764(271-278)Online publication date: 29-Oct-2015
  • (2019)Tenant-Oriented Monitoring for Customized Security Services in the CloudSymmetry10.3390/sym1102025211:2(252)Online publication date: 18-Feb-2019
  • (2018)HYDRAProceedings of the 13th International Conference on Availability, Reliability and Security10.1145/3230833.3230861(1-10)Online publication date: 27-Aug-2018

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media