명령어 문법 인식 기반의 효율적인 에뮬레이터 차등 테스팅Grammar-aware differential testing for emulators

Cited 0 time in webofscience Cited 0 time in scopus
  • Hit : 342
  • Download : 0
한 컴퓨터 시스템이 다른 컴퓨터 시스템을 모방하여 동작하는 에뮬레이터는 게임, 개발, 디버깅, 프로그램 분석, 악성코드 분석 등 많은 곳에서 활용되고 있다. 그러나 점점 복잡해지는 현대 컴퓨터 아키텍처들을 정확히 에뮬레이션해 주는 것은 매우 어려운 일이고 이를 검증하는 것 또한 어려운 일이다. 에뮬레이터의 정확성을 검증하기 위해서는 각 명령어의 정확한 의미와 동작을 알고있어야 하며 에뮬레이터가 이를 올바르게 구현했는지 검사해야 하기 때문이다. 선행 연구에서는 동일한 명령어를 CPU와 에뮬레이터에 각각 실행시킨 결과를 비교하는 차등 테스팅을 제안했다. 그러나 명령어를 생성할 때 랜덤한 바이트 코드를 생성하기 때문에 비효율적이다는 단점이 존재한다. 따라서 우리는 명령어 문법 인식 기반의 효율적인 에뮬레이터 차등 테스팅 방법론을 제시한다. 명령어를 생성할 때 매뉴얼을 파싱하여 명령어의 문법을 파악하고 이를 기반으로 명령어를 생성하여 선행 연구에 비해 월등히 높은 확률로 유효한 명령어를 생성해낸다. 또한 명령어의 의존성을 고려하여 불필요한 코드의 반복을 줄이고 한 번에 여러 명령어를 테스팅할 수 있는 방법론을 제안한다. 우리의 방법론이 더 높은 확률로 다양한 종류의 명령어를 생성해 낼 수 있었고 QEMU 사용자 에뮬레이터에서 더 많은 버그를 찾을 수 있었음을 실험을 통해 보였다. 또한 명령어 의존성을 고려한 테스팅 방법을 통해 더 빠르게 버그를 찾을 수 있었다. 끝으로 QEMU v7.1.0에서 7개의 새로운 버그를 찾아냈다.
Advisors
차상길researcherCha, Sang Kilresearcher
Description
한국과학기술원 :정보보호대학원,
Publisher
한국과학기술원
Issue Date
2023
Identifier
325007
Language
kor
Description

학위논문(석사) - 한국과학기술원 : 정보보호대학원, 2023.2,[ii, 19 p. :]

Keywords

에뮬레이터▼a차등 테스팅▼a문법 인식▼a의존성; Emulator▼aDifferential testing▼aGrammar-aware▼aDependency

URI
http://hdl.handle.net/10203/309629
Link
http://library.kaist.ac.kr/search/detail/view.do?bibCtrlNo=1032995&flag=dissertation
Appears in Collection
IS-Theses_Master(석사논문)
Files in This Item
There are no files associated with this item.

qr_code

  • mendeley

    citeulike


rss_1.0 rss_2.0 atom_1.0