권한 있는 프로그램이 임시파일 경로의 소유자를 확인한 뒤 같은 경로를 다시 열어 기록한다. 공격자가 두 동작 사이에 심볼릭 링크를 바꾸어 보호 파일을 덮게 했다. 가장 직접적인 개선은?
검사 단계: lstat(path)로 일반 파일 확인
사용 단계: 별도 open(path) 호출
공격자는 두 호출 사이 path를 민감 파일 링크로 교체 가능
정답 4번
lstat로 확인한 경로와 나중에 open이 여는 대상은 그 사이 링크가 바뀌면 달라진다. 신뢰할 수 있는 상위 디렉터리를 기준으로 파일을 열고 fstat로 열린 객체를 확인한 뒤, 같은 파일 디스크립터에 기록해야 한다. 기존 파일은 검증 전에 O_TRUNC로 내용을 지우지 않아야 하며, 새 파일 생성은 O_CREAT|O_EXCL을 이용할 수 있다. O_NOFOLLOW는 마지막 경로 요소의 링크만 막으므로 상위 경로도 공격자가 바꾸지 못하도록 보호해야 한다.
콘텐츠 정보
출제범위 기반 실전 연습을 위해 정처LAB이 독립 제작했습니다. 표시 연도는 학습 범위의 맥락이며 특정 시행 회차의 출제문항이나 복원 원문을 뜻하지 않습니다.
- 자료 유형
- 정처LAB 자체 제작
- 검수 상태
- 내용 검수 완료
- 해설 작성·검수
- 정처LAB 편집 기준
- 최종 검수
- 2026-09-04