WAR GAME/Bandit

[OverTheWire: Bandit] level8 -> level9

jir4vvit 2020. 2. 23. 22:54

사용 툴: cygwin

 

1) 문제

level8 -> level9 문제

패스워드는 data.txt 파일에 저장되어 있고, 오직 한 번만 발생하는 텍스트 라인에 있다?

 

오직 한 번만 발생한다는게 무슨 뜻인지 생각 해보자.

 

 

2) 문제풀이

 

bandit8로 로그인하고 홈디렉터리를 살펴보니 data.txt가 있었다.

cat 명령으로 일단 열어보았다.

언제나 당황스럽다.

조금 당황스러웠다.

내가 여기서 처음에 헷갈렸던게 저걸 뭉텅이(?)로 보면 안된다.

한 line씩 살펴보아야 한다.

 

그래서 일단 sort명령을 사용해 오름차순으로 정렬해보기로 하였다.

 

cat data.txt | sort

위 명령을 실행시킴

sort 명령은 오름차순으로 문자들을 정렬한다.

자세히(?) 보면 저렇게 중복된 line들이 있다. 

 

 

문제에서 오직 한 번만 발생하는 텍스트라고 했으니 중복되지 않고 분명 한 번만 적힌 텍스트가 있을 것이다.

 

 

uniq 명령을 사용해보자.

uniq 명령은 중복된 값들을 제거하고, 옵션 -c는 중복된 값을 얼마나 중복됐는지 카운팅한다.

cat ./data.txt | sort | uniq -c

위 명령을 실행시킴

왼쪽에 1이라고 한번 나왔다고 적혀져 있다.

저 라인에 있는 문자열이 아마 패스워드 인 것 같다.

 

 

bandit9로 로그인에 성공해 확인해보니 저 문자열이 bandit9의 패스워드가 맞다는 것을 확인할 수 있었다.

ssh -p 2220 bandit9@bandit.labs.overthewire.org
id