정보보안

레이스 컨디션(Race Condition) 공격

닉네임못짓는사람 2020. 11. 7. 09:53
반응형

기본 개념


레이스 컨디션 - 한정된 자원을 동시에 이용하려는 여러 프로세스가 자원의 이용을 위해 경쟁을 벌이는 현상을 말한다.

이 레이스 컨디션을 이용해 root권한을 얻어내는 공격을 레이스 컨디션 공격이라고 한다.

공격 방법


사용자가 프로그램을 실행했을 때 SetUID를 통한 권한 상승으로 관리자 권한의 임시 파일이 생성된다.

공격자는 이 임시 파일의 이름을 파악해놓고, 임시 파일이 생성되면 이 파일의 심볼링 링크를 생성한다.

다음 프로그램 실행 시 기존의 임시 파일이 삭제되고 재생성되면 공격자는 심볼릭 링크를 이용해 파일의 내용을 변경한다.

그러면 시스템은 변경된 파일을 자신이 생성한 임시 파일이라 인식해 프로세스를 진행시키고,

공격자는 관리자 권한으로 실행되는 프로그램에서 자신이 원하는 동작을 실행할 수 있게된다.

 

필요 조건


1. 파일의 소유자가 root이고, SetUID비트를 가져야 함.

2. 생성되는 임시 파일의 이름을 공격자가 사전에 알고 있어야 함.

반응형

'정보보안' 카테고리의 다른 글

해시(Hash)란?  (0) 2022.01.29
Stack Buffer OverFlow 공격  (0) 2020.11.14
Buffer OverFlow 대응방안  (1) 2020.10.04