[시큐어코딩 가이드] 2-3-1. 경쟁조건: 검사시점과 사용시점(TOCTOU)
시간 및 상태 통시 또는 거의 동시에 여러 코드 수행을 지원하는 병렬 시스템이나 하나 이상의 프로세스가 동작되는 환경에서 시간 및 상태를 부적절하게 관리하여 발생할 수 있는 보안약점이다. 경쟁조건: 검사시점과 사용시점(TOCTOU) 정의 병렬시스템(멀티프로세스로 구현한 응용프로그램)에서는 자원(파일, 소켓 등)을 사용하기에 앞서 자원의 상태를 검사합니다. 하지만, 자원을 사용하는 시점(Time Of Use)과 검사하는 시점(Time Of Check)이 다르기 때문에, 검사하는 시점에 존재하던 자원이 사용하던 시점에 사라지는 등 자원의 상태가 변하는 경우가 발생합니다. 이와 같은 문제는 동기화 오류뿐만 아니라 교착상태 등과 같은 문제가 발생할 수 있습니다. 안전한 코딩기법 변수, 파일과 같은 공유자원을 여..