[OverTheWire:Bandit] Level 17 ~ Level 18
2023. 7. 16. 19:27ㆍWar Game/OverTheWire
문제
다음 단계로 넘어가는 암호는 홈 디렉토리 내 passwords.new 파일에 저장되어 있으며 또 다른 파일 하나인 passwords.old와 passwords.new 사이에 변경된 유일한 줄이 암호라고 한다.
Keyword
ls, diff, cat
풀이
ls
cat passwords.new
cat passwords.old
ls 명령어를 사용해서 홈 디렉토리 내에 두 파일이 있는 것을 확인했으며 각 파일을 cat 명령어를 사용해서 내용을 출력해 봤더니 암호같이 보인 라인이 한가득이었다. 이걸 하나하나 다 비교해서 찾아내는 건 곤란하고 두 파일의 내용을 비교해주는 명령어인 diff를 사용해 보자.
diff -c passwords.new passwords.old
diff 명령어의 -c 옵션은 두 파일 간 차이점을 출력해주는 기능을 가지고 있다. 이를 사용해서 두 파일간 차이가 있는 줄을 출력했더니 차이점이 있는 라인 왼쪽에 '!' 기호가 있는 것을 확인할 수 있었다. '!' 기호 옆에 있는 라인이 두 파일 간의 차이가 있는 부분이며 passwords.new파일에 암호가 저장되어 있다.
cat passwords.new | grep "암호"
diff 명령어 사용 시 먼저 적은 파일의 내용이 먼저 출력된다. 그러므로 먼저 출력된 '!'기호 옆 라인을 passwords.new파일에서 cat 명령어를 사용해 찾아보면 저장되어 있는 것을 확인할 수 있다.
'War Game > OverTheWire' 카테고리의 다른 글
[OverTheWire:Bandit] Level 19 ~ Level 20 (0) | 2023.07.16 |
---|---|
[OverTheWire:Bandit] Level 18 ~ Level 19 (0) | 2023.07.16 |
[OverTheWire:Bandit] Level 16 ~ Level 17 (1) | 2023.07.16 |
[OverTheWire:Bandit] Level 15 ~ Level 16 (0) | 2023.07.15 |
[OverTheWire:Bandit] Level 14 ~ Level 15 (0) | 2023.07.15 |