쉽고 깔끔하게

[FTZ] level 1 Write-up 본문

Pwnable/FTZ

[FTZ] level 1 Write-up

찐무 2019. 2. 10. 21:57
728x90
반응형

ID : level1

Password : level1




Xshell 사용 시 문자 오류 >





hint  파일의 내용을 출력했을 때 문자가 깨져있는 것을 볼 수 있다.





Xshell에 기본적으로 설정되어 있던 언어 설정에 들어가 'Korean(EUC)'로 변경해준다.




< 문제 풀이 >





SET-UID가 걸린 level2 권한을 가진 파일을 찾으면 문제를 해결할 수 있다.



SET-UID


SET-UID가 설정된 파일을 실행하면 소유자가 아니더라도 일시적으로 소유자의 권한으로 실행된다.





원하는 조건의 파일이나 디렉터리를 검색할 수 있는 명령어 find를 사용하여 찾고자 하는 SET-UID가 걸린 level2의 권한을 갖는 파일을 찾기 위해 -perm 옵션과 -user 옵션을 사용했다. (여기서 / 는 '현재 디렉터리부터 찾는다'는 의미이다.)


하지만 결과에서는 모두 Permission denied(접근 권한 없음)이 뜬다.





2>/dev/null 옵션을 사용하여 검색 결과 중 오류가 발생한 결과를 제외한다.


숫자 2는 표준에러, /dev/null은 휴지통을 뜻하기 때문에 표준에러를 휴지통에 넣는다는 의미가 된다.


이렇게 하면 SET-UID가 걸린 level2의 권한을 갖는 파일인 /bin/ExecuteMe를 찾을 수 있다.





/bin/ExecuteMe라는 결과를 가지고 /bin으로 이동하여 ExecuteMe 파일을 찾을 수 있었다.


ExecuteMe의 허가권과 소유권이 SET-UID와 level2인 것을 확인하였다.




ExecuteMe를 실행시키면 어떤 명령을 실행시키겠냐는 말과 함께 my-passchmod를 제외한 명령어를 입력하라는 조건에 맞춰 bash 쉘을 실행하여 권한을 획득하였다.


이후 my-pass를 사용하게 되면 level2의 암호를 얻을 수 있다.


level2 password : hacker or cracker


level1 clear

728x90
반응형