반응형
이번엔 setuid 문제입니다.
로그인을 하고 home 디렉터리의 파일의 권한을 확인해보니
ls -l
bandit20의 실행 권한이 현재 s로 setuid로 설정된 것을 보실 수 있습니다.
이 권한(s)은 이 파일을 실행한 어떠한 유저라도 일시적으로 해당 파일의 소유자의 권한을 얻을 수 있습니다.
즉 우리가 노려할 것은 이 파일이 어떤 파일인지 알아본 뒤,
bandit20의 권한을 일시적으로 얻었을 때에 /etc/bandit_pass/bandit20의 패스워드를 훔쳐보는 것입니다.
일단 그룹권한으로 현재 bandit19도 읽고 실행할 수 있으니 실행해 봅시다.
./bandit20-do
아하 인자를 하나 전달해서 실행하라고 하네요.
일단 예시 그대로 따라 실행해보도록 하겠습니다.
./bandit20-do id
아무래도 인자값을 명령어로 받아들여 실행시키는 것 같습니다.
여기서 저희가 알 수 있는 것은 전달받은 명령어가 euid로 설정된 bandit20으로 실행된다는 것을 의미하죠.
cat 명령어를 이용해서 바로 출력해보도록 하겠습니다.
./bandit20-do cat /etc/bandit_pass/bandit20
이렇게 다음 레벨의 패스워드를 얻을 수 있었습니다.
다음으로 가봅시다.
반응형