이번에는 해커스쿨 ftz Level 2이다.
지난번에 알아낸 비밀번호로 로그인을 해보자.
아이디 : level2
비밀번호 : hacker or cracker
그런 다음 무슨 파일이 있는지 보기 위해 ls, hint 파일을 출력하기 위해 cat hint 를 입력해준다.
마찬가지로 hint 파일을 봐보자.
텍스트 파일 편집 중 쉘의 명령을 실행시킬 수 있다고....?
일단 setuid를 찾기 위해 find / -perm -4000 -user level3 를 입력해보자. (불필요한 출력 없애고 싶으면 2>/dev/null 입력)
editor....? 텍스트 파일 편집기처럼 생긴 파일 이름이다.
이것이 위치한 곳으로 이동하자.
역시나 level3의 setuid를 가지고 있는 것을 확인할 수 있다.
내 권한으로는 읽고 실행시킬 수 있으니 실행을 시켜본다.
익숙한 vi 편집기가 나온다.
보통 이곳에서 코드를 많이 짠다.
아마 이 vi 편집기를 이용하는 동안에는 내 권한이 level2에서 level3로 바뀌었을 것이다.
그럼 이 상태에서 명령어를 발동시켜야 하는데....
편집기에서 어떻게 그러지?
이게 의문(문제)다.
일단 vi 편집기의 기능을 잠깐 설명하자면,
i를 입력하면 입력이 가능하다.
그 상태에서 esc를 누르면 맨 밑의 : 여기에 입력을 할 수 있다.
보통 q(나가기), wq(저장하고 나가기), q!(저장 안하고 나가기)와 같은 명령어를 입력한다.
그런데 !를 입력하고 명령어를 입력하면 여기서 보통 리눅스 창에서 실행하는 명령을 실행시킬 수 있다!
고로 우리가 입력할 명령어는, 쉘을 만들어야 하므로, bash 다. (정확히는 !bash)
그럼 아래와 같이 level3 권한으로 바뀐 것을 확인할 수 있다.
my-pass 로 비밀번호를 알아내자.
레벨 3의 비밀번호는 "can you fly"다.
이렇게 레벨 2도 성공!
'Security > 시스템 해킹' 카테고리의 다른 글
[FTZ] 해커스쿨 FTZ Level 5 문제풀이 (0) | 2020.11.12 |
---|---|
[FTZ] 해커스쿨 FTZ Level 6 문제풀이 (0) | 2020.11.12 |
[FTZ] 해커스쿨 FTZ Level 8 문제풀이 (0) | 2020.10.15 |
[FTZ] 해커스쿨 FTZ Level 1 문제풀이 (0) | 2020.10.07 |
[FTZ] 해커스쿨 FTZ Training 6~10 (0) | 2020.10.02 |
댓글