Project Zero 한국어
팔로우
메모리 접근 추적 및 스택 기반 지연 주입을 이용한 레이스 컨디션 테스트
많은 보안 버그는 경합 조건(race condition)으로, 부정적인 효과가 나타나려면 멀티스레드 실행이 올바른 인터리빙으로 발생해야 합니다. 이는 여러 사용 사례에 어려움을 야기합니다: 수동 또는 정적 분석을 통해 발견된 버그 후보를 확인하는 것. 회귀 테스트: 경합 조건 버그를 수정한 후, 테스트 스위트의 일부로 버그를 안정적으로 트리거하는 회귀 테스트를 작성할 좋은 방법이 없는 경우가 많습니다. 퍼징과 같은 자동 버그 발견: 퍼저가 동시 작업의 모든 흥미로운 인터리빙을 실행하거나, 작업이 경합할 때만 실행되는 코드 경로에 도달하기 어렵습니다.