본문 바로가기
KERD
논문KCI 등재

바이너리 분석도구 효율성 평가를 위한 Instrumentation 성능 측정기법

Instrumentation Performance Measurement Technique for Evaluating Efficiency of Binary Analysis Tools

0

조회

0

다운로드

1

인용

0

참고문헌

키워드

주제분류컴퓨터학

초록

바이리 instrumentation 기법은 소스코드가 공개되어 있지 않은 로그램을 모니터링하거나 디버깅을 통해 오류를 진단, 는 메모리 정보획득 등을 해 개발, 발되어왔다. 그러나 instrumentation 기법을 사용한 바이 리 분석기법에 한 연구들은 주로 그 활용방법과 락없는 정확한 분석에 집하고 있으며, 실용 측면에서 요한 성능지표인 효율성에 한 연구는 거의 이지지 않고 있다. 특히 분석도구나 알고리즘의 분석시간을 상호 비 교할 수 있는 지표와 방법론이 정립되어있지 않았다. 이 연구는 바이리 instrumentation 기법의 오버헤드를 측 정하여 그 효율성을 비교평가할 수 있는 단기능과 측정방법론을 제안한다. 한 제안한 방법을 DynamoRIO와 Pin에 용하여 성능차를 도출하다. 분석도구의 효율성 비교결과는 사용목에 따른 분석도구의 선택기이 되며, 측정방법론은 기존도구와 앞으로 새롭게 개발될 분석도구들에 해서도 그 효율성을 검증하는 방법으로 사용될 수 있다.

Abstract

Binary instrumentation has been developed for monitoring and debugging executables without their source codes. Previous efforts on the binary instrumentation are mainly focused on its capability and accuracy, but not on efficiency for practical application. In particular, criteria and measurement methodologies for evaluating and comparing the efficiency of binary investigation tools and algorithms do not estimated yet. In this paper, we propose the instrumentation primitives which are a unit functionality and measurement methodology. Through the empirical experiments by adopting the proposed methodology on DynamoRIO and Pin, we show the feasibility of the proposal.

참고문헌 (25)

  1. Lehman, M. M., "Programs, life cycles, and laws of software evolution", Proceedings of the IEEE, 68(9), pp.1060~1076 (1980)
  2. Lehman, M. M., "Metrics and laws of software evolution-the nineties view", Software Metrics Symposium, 1997. Proceedings., Fourth International, pp.20~32 (1997)
  3. Ebert, C., "Embedded software : Facts, figures, and future", Computer, 42(4), pp.42~52 (2009)
  4. Newsome, James, "Dynamic taint analysis : Automatic detection, analysis, and signature generation of exploit attacks on commodity software", Proceedings of the 12th Network and Distributed Systems Security Symposium (2005)
  5. "SPEC CPU 2006"[URL]
  6. "DynamoRIO"[URL]
  7. Luk, C. K., "Pin : building customized program analysis tools with dynamic instrumentation", ACM Sigplan Notices, 40(6), pp.190~200 (2005)
  8. Laurenzano, M. A., "Pebil : Efficient static binary instrumentation for linux", Performance Analysis of Systems & Software(ISPASS), 2010IEEE International Symposium on, pp.175~183 (2010)
  9. Vulcan: Binary transformation in a distributed environment. technical report msr-tr-2001-50, "Srivastava, Amitabh", microsoft research, ~ (2001)
  10. Bernat, A. R., "Anywhere, any-time binary instrumentation", Proceedings of the 10th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools, pp.9~16 (2011)
  11. Zhang, M., "A platform for secure static binary instrumentation", ACM SIGPLAN Notices, 49(7), pp.129~140 (2014)
  12. Nethercote, N., "Valgrind : a framework for heavyweight dynamic binary instrumentation", ACM Sigplan notices, 42(6), pp.89~100 (2007)
  13. Hunt, Galen, "Detours : Binaryinterception ofwin 3 2functions", 3rd usenix windowsnt symposium (1999)
  14. Dtrace : The reverse engineer’s unexpected swiss army knife, "BEAUCHAMP, Tiller", Blackhat Europe, ~ (2008)
  15. Low-overhead software dynamic translation, "Scott, K.", University of Virginia, ~ (2001)
  16. "Intel Microarchitecture codename Nehalem performance monitoring unit pr ogramming guide"[URL]
  17. "Processor Tracing"[URL]
  18. Tikir, M. M., "Efficient instrumentation for code coverage testing", ACM SIGSOFT Software Engineering Notes, 27(4), pp.86~96 (2002)
  19. RUIZ-ALVAREZ, Arkaitz, "Evaluating the impact of dynamic binary translation systems on hardware cache performance", Workload Characterization, 2008. IISWC 2008. IEEE International Symposium on. IEEE, 2008, pp.131~140 (2008)
  20. Soffa, M. L., "Exploiting hardware advances for software testing and debugging(nier track)", Proceedings of the 33rd International Conference on Software Engineering, pp.888~891 (2011)
  21. Walcott-Justice, K., "THeME : a system for testing by hardware monitoring events", Proceedings of the 2012 International Symposium on Software Testing and Analysis, pp.12~22 (2012)
  22. Schwartz, E. J., "All you ever wanted to know about dynamic taint analysis and forward symbolic execution(but might have been afraid to ask)", 2010 IEEE Symposium on Security and Privacy, pp.317~331 (2010)
  23. "one-at-a-time hash"[URL]
  24. "Building Dynamic Tools with DynamoRIO on x86 and ARMv8"[URL]
  25. E. Duesterwald, "Software profiling for hot path prediction : less is more", ACM SIGPLAN Notices, 35(11), pp.202~211 (2000)

관련 논문AI추천

이 간행물의 다른 논문 (24건)