본문 바로가기
WarGames/Bandit

Bandit : Level 0 ~ Level 5

by madevth 2021. 10. 24.
반응형

다음 글 : [WarGames/Bandit] - Bandit : Level 6 ~ Level 10

 

Bandit은 리눅스 명령어를 공부할 수 있는 OverTheWire의 Wargame이다.

매 레벨에서 주어진 문제를 풀어 다음 레벨로 로그인할 수 있는 패스워드를 얻어내야 한다.

매 단계마다 레벨을 풀기 위해 필요한 명령어의 후보들을 알려주기 때문에 맨땅에 헤딩하지 않아도 된다.

 

문제 풀이 방식은 다음과 같다. Level (n - 1) → Level (n) 문제를 풀어서 패스워드 "abcde"를 얻으면, Login as : bandit(n), password: abcde를 입력하고 다음 문제를 푸는 방식이다. 예를 들어 bandit0으로 로그인하여 Level 0 → Level 1의 문제를 풀고 패스워드 123을 얻었다면, 새롭게 bandit1으로 로그인하여 아까 얻은 패스워드 123을 입력하고 Level 1 → Level 2 단계의 문제를 풀면 된다.

 

 

[Level 0] 로그인하기

호스트: bandit.labs.overthewire.org
포트 번호: 2220
User name: bandit0
Password: bandit0

Putty를 사용하면 쉽게 접근할 수 있고, 터미널을 사용한다면

$ ssh -p 2220 bandit0@bandit.labs.overthewire.org 명령어를 통해 접속 가능하다.

 

 

 

[Level 1] 파일 읽기

 

Bandit Level 1

 

파일을 읽기 위해 cat 명령어를 사용하였다. $ cat readme

 

 

[Level 2] Dash(-)가 포함된 파일 읽기

Bandit Level 2

이번 문제는 마찬가지로 파일 읽기이긴 하지만 파일 이름이 - (dash)이다. 리눅스에서는 명령어 옵션을 줄 때 -를 붙이기 때문에 Level 1처럼 그냥 cat -를 하면 옵션을 입력하다 만 줄 알고 아무 일도 일어나지 않는다.

그래서 현재 디렉터리 ./를 붙여서 $ cat ./-로 파일을 읽어주었다.

 

 

[Level 3] 공백이 포함된 파일 읽기

Bandit Level 3

Level 3은 띄어쓰기가 포함된 파일 이름을 읽는 것이다. 위에서 dash가 옵션인지 파일 이름인지 구분 못하는 것처럼 스페이스바가 있으면 명령어의 구분인지 파일 이름인지 알 수 없다. 따라서 \를 붙여준 후 띄어쓰기를 하여 $ cat spaces\ in\ this\ filename으로 파일을 읽어주었다.

 

 

[Level 4] 숨겨진 파일 읽기

Bandit Level 4

Level 4는 ls로 나오지 않는 숨겨진 파일을 읽는 것이다. ls를 입력해도 아무 파일이 나오지 않아서 $ ls -a를 사용하였더니 숨겨진 파일 .hidden이 나왔다.

 

 

[Level 5] Human-readable 파일 찾기

Badit Level 5

Level 5는 inhere 디렉토리에서 human-readable 한 유일한 파일을 찾는 것이다. 아래에 명령어 후보들을 찾아보니 'file' 명령어가 파일의 유형을 알려준다고 한다. inhere 디렉토리를 들어가 보니 -file00부터 -file09까지의 파일이 있었다.

$ file ./*으로 현재 디렉토리의 모든 파일의 유형을 검사해 보니 -file07만 ASCII text 임을 알 수 있었다. $ cat ./-file07을 통해 비밀번호를 얻을 수 있었다.

추가로 $ man file을 통해 file 명령어에 대해 읽어보니 크게 text, executable, data로 유형이 나뉘는데 executable은 understandable to UNIX kernel or another, data는 보통 non-printable이나 바이너리 파일을 의미한다고 한다.

 

 

반응형

'WarGames > Bandit' 카테고리의 다른 글

Bandit : Level 26 ~ Level 30  (0) 2021.11.07
Bandit : Level 21 ~ Level 25  (0) 2021.11.03
Bandit : Level 16 ~ Level 20  (0) 2021.11.01
Bandit : Level 11 ~ Level 15  (0) 2021.10.30
Bandit : Level 6 ~ Level 10  (0) 2021.10.27

댓글