상세 컨텐츠

본문 제목

[Bandit] Level 1 -> Level 2

SYSTEM HACKING/Bandit

by koharin 2019. 3. 28. 22:21

본문

728x90
반응형

 

Level 2의 패스워드는 홈 디렉터리에 위치한 - 파일에 있다.

 

 

 

ls 명령어로  홈 디렉터리에 - 파일이 있는 것을 확인하고 cat - 명령어로 이 파일을 읽으려고 했는데 커서만 뜬다.

 

 

 

ls -l 명령어로 이 파일에 대해 알아보니, 

bandit2라는 uid를 가진 사용자에게 읽기(r)와 쓰기(w)의 권한이 있고,

bandit1이라는 gid를 가진 사용자에게는 읽기(r)의 권한만, 나머지 사용자에게는 권한이 없다.

 

지금 bandit1 사용자로 로그인했으므로 읽기의 권한이 있다. 

따라서 이 dashed file을 읽는 방법이 따로 있는 것 같아서 

Helpful Reading Material의 "dashed filename"을 들어가서 구글링해봤다.

 

리눅스에서 dash(-)로 시작하는 파일이름은 유효하다. 

하지만 유닉스 명령어 옵션들은 일반적으로 dash(-)로 시작한다.

따라서 dashed filename을 명령어로 입력할 때, 명령어 체계에서는 명령어 옵션을 입력하는 줄 알 것이다.

 

cat - stdin(표준 입력)을 해서 사용자의 키보드에서 표준입력받은 내용을 stdout(표준 출력)한다.

따라서 cat -을 입력했을 때 커서가 뜬 이유는 표준 입력을 받기 위한 것이었다.

 

따라서 dashed filename을 입력할 때는 이 파일의 전체 위치 경로를 명시해서 사용해야 한다.

 

 

 

 

$ cat ./-

이렇게 명령어를 입력하면 - 파일의 내용을 출력할 수 있다.

 

 

 

$ cat < -

이렇게 리다이렉션을 사용하여 dashed file의 내용을 출력할 수 있다.

 

 

 

 

Level 2 패스워드를 알아냈으니 exit 명령어로 로그아웃하고, 

 

 

 

bandit2 사용자로 로그인해서  - 파일에서 얻은 패스워드를 입력하면 완료!

728x90
반응형

'SYSTEM HACKING > Bandit' 카테고리의 다른 글

[Bandit] Level 3 -> Level 4  (0) 2019.03.28
[Bandit] Level 2 -> Level 3  (0) 2019.03.28
[Bandit] Level 0 -> Level 1  (0) 2019.03.28
[Bandit] Level 0  (0) 2019.03.28

관련글 더보기