Google Project Zero, 메모리 접근 추적과 지연 주입으로 레이스 컨디션을 테스트하는 도구 MAccConc 공개

Testing Race Conditions

Google Project Zero, 메모리 접근 추적과 지연 주입으로 레이스 컨디션을 테스트하는 도구 MAccConc 공개

Google Project Zero가 리눅스 커널의 레이스 컨디션을 탐지하고 재현하기 위한 도구 MAccConc를 공개했다. 이 도구는 ASAN 아웃라인 계측과 KCOV를 활용해 메모리 접근을 추적하고, 카운트 증강 스택 트레이스로 실행 간 안정적인 식별자를 부여한다. 또한 KCOV_SET_DI ioctl을 통해 지연을 주입해 특정 인터리빙을 강제할 수 있으며, 자동 A-B-A 인터리빙 테스터와 수동 탐색을 위한 터미널 UI 및 GUI를 제공한다. GitHub에서 사용할 수 있다.

이 도구는 리눅스 커널의 멀티스레드 테스트 케이스에서 가능한 인터리빙을 탐색하기 위해 만들었다: 테스트 케이스의 모든 가능한 A-B-A 인터리빙을 자동으로 테스트하는 도구, 수동 탐색을 위한 터미널 UI, 그리고 수동 탐색을 위한 GUI.

이 날의 다른 글

2026-09-12