목록분류 전체보기 (22)
Never Stop Running
힌트를 보니 텍스트 파일 편집 중에 쉘의 명령을 실행시킬 수 있다고 나와있다.그렇다면 텍스트 파일 편집기에 level3의 setuid가 걸려있고, 그 편집기 사용 중에 명령어를 실행시켜 패스워드를 찾아낸다는 생각을 할 수 있다.일단 find명령어로 level3의 setuid가 걸린 파일을 찾아본 결과 editor라는 파일이 나왔다. editor를 실행시키는 동안 level3의 권한을 가지고 있기 때문에 이 상태에서 밖의 쉘에 명령을 내린다면 level3의 권한으로 명령어가 실행될 것이다.vi는 쉘로 빠져나가지 않고 외부명령어를 실행시킬 수 있는 방법이 있는데 바로 명령어 앞에 느낌표(!)를 붙이는 것이다. id 명령어 실행 결과 uid는 level3인 것을 확인할 수 있다.그렇게 my-pass를 실행시키..
힌트를 보니 level2의 권한으로 setuid가 걸린 파일을 찾으라고 되어있다.find명령어로 루트폴더부터 level2의 권한으로 setuid가 걸린 파일을 찾고 만약 찾은 파일이 오류가 뜨면 /dev/null로 보내게 만들었다. (find명령어 permission옵션에서 +와 -의 차이점은 검색하면 쉽게 나온다.)/bin/ExecuteMe라는 파일 하나가 나와서 실행시켜보았다. level2의 권한으로 한가지 명령어를 실행시켜준다는 메세지가 떴다.우리는 level2의 쉘을 얻으면 되기 때문에 쉘을 띄우는 명령어를 사용했다. id 명령어를 사용하니 uid가 level2인 것을 확인할 수 있었다. my-pass로 비밀번호를 확인하였다. NextID : level2PW : hacker or cracker