운영체제/Bandit

OverTheWire: Bandit Level 12 → Level 13 풀이

공부하는 뚱이 2023. 2. 5. 00:44
반응형

 

이번 문제를 요약하자면 전 단계들과 마찬가지로 data.txt에 암호가 저장되어 있고 이것은 반복적으로 압축된 파일의 16진수 덤프이다. 파일을 압축해제하고 패스워드를 찾는 것이 이번 문제의 포인트이다.

 

문제에서 친절하게 설명을 더 해주었는데

이 문제는 /tmpin에서 mkdir을 사용하여 작업할 수 있는 디렉토리를 만드는 것이 유용하다고 한다.

그런 다음 cp를 사용하여 데이터 파일을 복사하고 mv를 사용하여 이름을 변경한다.

 

한번 문제가 알려주는 데로 따라가 보자

일단 /tmp에 ericls 디렉터리를 만들고 data.txt를 가져오는 것까지 실행했다. 그리고 문제에서 이번 data.txt파일은 반복적으로 압축된 파일의 16진수 덤프라 했기 때문에 파일을 16진수로 보여주는 xxd 명령어를 사용했다.

 

그 뒤 file pass를 입력하여 보자

pass를 보니 gzip compressed data, gzip로 압축되어 있다. 그렇다면  압축된 파일을 풀어보자

압축을 풀기 위해서는 mv 명령어를 사용하여 pass를 pass.gz로 보낸 후 gzip -d pass.gz 명령어를 사용해 압축을 풀어준다

그리고 다시 file로 pass를 살펴보니 이번에는 bzip2로 압축이 되어 있다고 한다.

이것도 같은 방법으로 mv pass pass.bz2 로 이동시킨 후 bzip2 -d pass.bz2 명령어를 사용해 압축을 풀어준다.

그랬더니 다시 gzip으로 압축되어있다..... 후.... 얼마나 많이 압축시킨 건지....

 

계속 반복해 보자!

gzip 압축을 풀고 나니 이제는 POSIX tar archive라고 한다. 이번에는 tar 명령어를 사용하여 압축을 해제해야 한다.

 

계속.. 계속... 계속 반복!!! 반복된 학습은 기억에 오래 남는다!

후... 결국 ASCII text가 나왔고 password 획득 성공!

반응형