마지막 트레이닝이다.
열심해 해보자
- SetUID를 조작하면 관리자 권한 (root)를 얻을 수 있따.
- 레이스 컨디션 : 한정된 자원을 동시에 이용하려는 여러 프로세스가 지원의 이용을 위해 경쟁을 벌이는 현상
- IFS 버그 : IFS 변수는 도스에서 사용하지 않는 변수이다. 이것은 사용자의 명령해중 공백 구분자를 표시하는 것으로 디폴트 값은 '' 이다.
- 버퍼오버플로우 : 버퍼 오버런은 메모리를 다루는 곳에 오류가 발생하여 잘못된 동작을 하는 프로그램 취약점이다.
- 포맷 스트링 어택 : 포맷팅을 수행하는 printf() 같은 특정한 C 함수들에서 검사되지 않은 사용자 입력을 포맷 스트링 파라미터로 사용하는 것으로부터 나온다.
이번에는 파일에 SetUID가 있는지 알아보는 과정이다.
- ls -al /usr/bin/passwd 를 입력해서 확인해본다.
- s는 x를 포함하고 있는데 바로 이것이 SetUID이다.
- find / -perm -4000 을 입력하면 "/ 부터 SetUID가 걸린 모든 파일을 찾아준다.
- 4000 앞에 "-"는 "적어도" 라는 뜻이다.
- -perm 은 "권한을 찾겠다" 는 옵션이다.
- 4 는 SetUID를 의미한다.
- 본 문제를 풀 때 SetUID가 걸린 파일을 찾아 다음으로 넘어가는 방식이다.
- 이번에는 SetUID에 대한 이해를 해보았다.
- 시스템 해킹이 이렇게 접근한다고 알고 있었지만 직접 명령어를 타이핑한 경험은 처음이다.
- 본 문제를 풀면서 발전해보자
'pwn > FTZ 풀이' 카테고리의 다른 글
FTZ Training 9 (0) | 2021.03.14 |
---|---|
FTZ Training 8 (0) | 2021.03.13 |
FTZ Training 7 (0) | 2021.03.13 |
FTZ Training 6 (0) | 2021.03.13 |
FTZ Training 5 (0) | 2021.03.13 |