Skip to main content
QUICK REVIEW

[논문 리뷰] Automatic Test Data Generation and Model Checking with CHR

R. Nicholas Gerlich|arXiv (Cornell University)|2014. 06. 09.
Software Testing and Debugging Techniques참고 문헌 10인용 수 5
한 줄 요약

이 논문은 임무 핵심 위성 소프트웨어에서 자동 테스트 데이터 생성 및 모델 체킹을 위한 CHR 기반 툴체인을 제시한다. 제약 조건 처리 규칙을 사용하여 비가능한 경로를 탐지하고, 구조적 커버리지 기준을 만족하는 입력을 생성한다. 이는 이전에 수동 및 정적 분석에서 놓쳤던 실제 위성 제어 기능에서 한 바이트 버퍼 오버플로우를 몇 초 만에 발견했다.

ABSTRACT

We present an example for application of Constraint Handling Rules to automated test data generation and model checking in verification of mission critical software for satellite control.

연구 동기 및 목표

  • 임무 핵심 위성 제어 소프트웨어를 위한 자동 테스트 데이터 생성 및 모델 체킹을 수행하는 것.
  • 테스트 입력 생성 과정에서 비가능한 실행 경로를 조기에 탐지하는 것.
  • 구조적 커버리지 목표를 산술 제약 조건과 통합하여 정밀한 테스트 입력 합성하는 것.
  • 제약 기반 기호적 실행을 사용하여 복잡한 임베디드 시스템의 정당성을 검증하는 것.
  • 자동 검증 및 테스트 생성을 통해 안전 핵심 소프트웨어의 신뢰성을 향상시키는 것.

제안 방법

  • 이 방법은 경로 구성, 만족 가능성 검사, 제약 조건 해결을 위한 제약 조건 처리 규칙(CHR) 기반 제약 조건 솔버를 구현한다.
  • 경로 제약 조건은 함수의 제어 흐름 그래프에서 유도되며, 특정 경로가 순행되기 위해 만족되어야 할 조건을 나타낸다.
  • 효율성을 높이고 비가능한 경로를 조기에 탐지하기 위해 전진, 역행, 분할 전략을 조합하여 경로 구성한다.
  • 유한 정수 및 부동소수점 유형에 대한 산술 제약 조건은 간격 필터링 및 타입 간 이중 방향 전파를 통해 처리된다.
  • 실제 위성 제어 소프트웨어에서 결과를 검증하기 위해 동적 랜덤 테스트 도구(DCRTT)와 툴체인을 통합한다.
  • 기호적 실행을 사용하여 경로를 분석하고 경로 제약 조건을 해결함으로써 잠재적 버퍼 오버플로우를 탐지한다.

실험 결과

연구 질문

  • RQ1CHR는 안전 핵심 임베디드 시스템에서 자동 테스트 데이터 생성 및 모델 체킹에 효과적으로 활용될 수 있는가?
  • RQ2제약 기반 기법을 사용하여 경로 구성 과정에서 비가능한 경로를 어떻게 조기에 탐지할 수 있는가?
  • RQ3제약 기반 기호적 실행은 수동 및 정적 분석에서 놓친 미세한 버퍼 오버플로우를 어느 정도 탐지할 수 있는가?
  • RQ4실제 임무 핵심 코드에서 구조적 커버리지 목표와 산술 제약 조건을 통합하는 데 얼마나 효과적인가?
  • RQ5혼합 데이터 유형과 복잡한 제어 흐름을 가진 복잡한 실세계 임베디드 소프트웨어에 대해 CHR 기반 솔버는 확장 가능한가?

주요 결과

  • 툴체인은 이전에 수동 및 정적 분석에서 놓쳤던 실제 위성 제어 기능에서 한 바이트 버퍼 오버플로우를 탐지했다.
  • 경로 제약 조건을 해결하여 오버플로우 조건 하에서 memcpy 호출에 도달하는 것을 목표로 함으로써 결함이 1초 이내에 식별되었다.
  • 해결 과정에서 오버플로우가 발생하는 조건는 next_entry_start == MAX_BUFFER_SIZE - length + 1, last_entry_start > 0, 그리고 last_entry_start < length - 1임이 드러났다.
  • 오버플로우는 비가역적 데이터와 비가역적 프로그램 메모리의 손상으로 이어질 수 있으며, 이는 응답 없음 상태를 유발할 수 있다.
  • 결함는 확인되고 수정되었으며, 향후 유사 문제를 탐지하기 위해 랜덤 테스트 도구가 확장되었다.
  • 연구는 CHR 기반 제약 조건 해결이 복잡한 임베디드 시스템에서 기호적 실행 및 모델 체킹에 효과적임을 보여준다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.