본문 바로가기

Security study/Pwnable

setuid 개념 정리

-- 과제1 -- 

Setuid란?

- 사용자가 실행 파일을 실행할 때 소유자의 권한으로 실행하는 권한이다. set-user-id로 ls -l로 볼 때 s로 표시된다. setuid가 설정된 파일 실행 시,  일시적으로 파일 소유자의 권한을 얻어 실행할 수 있게 된다.

- 사용법 예시

#chmod u+s 파일이름

#chmod 4755 파일이름

- 대표적인 setuid 파일 : /usr/bin/passwd

 ->비밀번호 변경을 할 수 있는 명령어

- 실행권한을 확인했을 때 대문자 S일 경우 setuid만 있고 실행권한 x / 소문자 s일 경우 setuid와 실행권한 둘 다 o

 

-- 과제2 --

 <id 명령을 set-uid 프로그램화>

과정 1

which id로 어디에 있는지 찾는다. -> cp로 id_1이라는 이름으로 복사해온다. -> ls로 잘 복사되었는지 확인한다.

과정 2

chown root로 소유자를 root로 변경 -> chmod 4755로 특수 권한 부여 -> ls -li로 잘 바뀌었는지 확인한다.

->실행을 통해 어떻게 나오는지 확인한다.

<cat 명령을 set-uid 프로그램화>

cat 명령어 set-uid 프로그램화 과정

which cat으로 어디에 있는지 찾는다. -> cp로 cat_1이라는 이름으로 복사해온다. -> ls -li로 cat_1 확인

-> sudo chown root로 소유자를 root로 변경 -> sudo chmod 4755로 특수 권한 부여 -> ls -li cat_1로 확인

'Security study > Pwnable' 카테고리의 다른 글

GDB 사용방법  (0) 2021.05.12
[pwnable.kr] collision 문제 풀이  (0) 2021.05.05
[2주차 과제] swing_pwn_chall 풀이  (0) 2021.04.28
pwntools 사용법 및 기능  (0) 2021.04.28
리눅스 메모리 구조  (0) 2021.03.31