Level 8에서 가져온 키 값을 복사해서 bandit9에 접속해 보자.

그전에 힌트를 보자

data.txt 안에 여러 개의 '=' 문자 앞에 사람이 읽을 수 있는 몇 안 되는 문자열에 있다고 한다.

cat으로 data.txt 파일을 읽어보니 정말 사람이 읽을 수 없는 것들만 있다.

grep을 이용해서 "====" 입력했는데 바이너리 파일이라고 해서 grep 사용이 안된다고 한다.
grep 사용이 안 되는 이유는 grep 명령어는 주로 텍스트 파일에서 문자열을 검색하는 데 사용하는데 바이너리 파일에서는 이진 데이터(data)가 포함이 되어서 텍스트 파일을 주로 다루는 grep 은 사용이 안된다.
정말 쉽게 말하면 텍스트 파일이 아니고 데이터라서 못쓰는 것이다.

grep -a : 파일을 텍스트 파일로 강제로 바꾸는 명령어
이걸 쓰는 방법도 있지만 더럽게 나오는 거는 똑같다. (안 쓸 것)
그러면 이제 깨끗하게 키 값을 출력해 보자.
먼저 힌트를 보면 'strings'라는 명령어를 이용해서 풀 수 있다고 한다.

strings : 실행 파일이나 객체 파일에서 문자열을 찾아 출력해 준다.
처음에 cat을 이용해서 data.txt 파일을 읽었을 때 와 다르게 'strings'을 쓰니 문자열만 찾아서 출력해 준다
strings에서 문자열만 찾아서 출력해 주었기에 grep 이 먹혀 들어가서 키 값을 찾을 수 있었다.
말로 풀어서 설명하자면
strings data.txt | grep "===" : (data) data파일에서 문자열을 찾아줘 "그리고" === 을 포함하는 문자열을 찾아줘

'Wargame > Linux_bandit' 카테고리의 다른 글
| 리눅스워게임 bandit (overthewire.org) 11 Level - > 12 Level (0) | 2023.03.28 |
|---|---|
| 리눅스 워게임 bandit (overthewire.org) 10 Level -> 11 Level (0) | 2023.03.27 |
| 리눅스 워게임 bandit (overthewire.org) 8 Level -> 9 Level (0) | 2023.03.21 |
| 리눅스 워게임 bandit (overthewire.org) 7 Level -> 8 Level (0) | 2023.03.21 |
| 리눅스 워게임 bandit (overthewire.org) 6 Level -> 7 Level (0) | 2023.03.20 |