본문 바로가기

보안

OverTheWire Wargame Bandit Level 2 -> 3 풀이

반응형

 

저번 글에서는 level 1 -> 2 을 해결해 보았습니다. 이번에는 level 2 -> 3문제를 해결해 보도록 하겠습니다. 

 

level 2 -> 3 문제

서버의 spaces in this filename 이라는 이름의 파일에 있는 다음 레벨에 접속하기 위한 비밀번호를 알아내는 문제입니다.

level 2 -> 3 풀이

지금은 현재 level 1 -> 2을 해결한 후 서버에 접속해 있는 상태입니다. 명령어 입력줄이  사진과 같지 않다면 저번 글을 참고해 주세요.

 

먼저 ls를 입력하여 현재 디렉토리에 있는 파일들을 살펴보도록 하겠습니다.

 

ls

 

 

결과를 확인해 보면 우리가 찾던 spaces in this filename 파일이 현재 디렉토리에 존재한다는 것을 알 수 있습니다. 이제 cat 명령어를 이용하여 해당 파일의 내용을 확인해 보도록 하겠습니다.

 

cat spaces in this filename

 

하지만 원하는 파일의 내용이 출력되지 않고 에러가 발생합니다. 이는 cat 명령어가 공백(space)을 기준으로 서로 다른 여러개의 파일이라고 해석하기 때문입니다. 즉 위의 명령은 각각 spaces, in, this, filename 이라는 이름을 가지는 4개의 파일 내용을 출력하는 명령어 인 것입니다. 공백까지 포함하여 파일이름이라고 해석하게 하기 위해서는 공백앞에 역슬래쉬(\)를 붙여주어 아래와 같이 실행해야 합니다.

 

cat spaces\ in\ this\ filename

 

그러면 이렇게 다음 문제로 접속할 수 있는 비밀번호를 알아낼 수 있습니다. 

 

※이 외에도 파일이름을 큰 따옴표(")나 작은 따옴표(')로 감싸서 표현하는 방법도 있습니다.

 

cat "spaces in this filename"
cat 'spaces in this filename'

 

다음 글에서는 level 3 -> 4 문제의 풀이를 진행해 보도록 하겠습니다.

 

반응형