점점 레벨이 올라갈수록 문제 난이도가 올라가네요..
그래도 포기하지 않고 하나씩 해결해 봅시다
Bandit Level 12 → Level 13 문제 풀이
ssh bandit12@bandit.labs.overthewire.org -p 2220
password : JVNBBFSmZwKKOP0XbFXOoW8chDz5yVRv
Bandit Level 12 → Level 13 문제의 비밀번호는 반복적으로 압축된 파일의 hexdump인 data.txt 파일에 있다고 합니다
먼저 mkdir 디렉터리 생성 명령어를 이용하여 /tmp 경로의 데이터 파일을 복사하고(cp) 이름을 바꾸는(mv) 명령어를 사용하라고 합니다
우선 홈 디렉터리에 있는 data.txt 파일을 /tmp/musa라는 경로를 설정하여 데이터 파일을 복사했습니다
이 data.txt 파일을 읽어보면 hexdump인 파일을 xxd -r 명령어를 이용하여 바이너리 파일로 바꿨습니다
xxd -r 명령어는 문제에서 주어진 hexdump Wiki를 참고했습니다
그래서 변환한 바이너리 파일을 data 이름으로 리다이렉션 했습니다
[ 리다이렉션 사용법 ]
그다음 data 파일 정보를 확인하니 gzip 파일로 압축되어 있다고 합니다 압축을 풀기 위해 data 파일의 이름을 data2.gz 이름으로 변경 후 gzip으로 압축된 파일을 gzip -d data2.gz 명령어를 이용하여 압축을 풀어주었습니다
이런 식으로 나머지 압축 부분도 반복적으로 수행하면 됩니다
data2 파일 정보는 bzip2로 압축되어 있다고 합니다 이것도 위에랑 동일하게 적절한 명령어를 사용해 주면 됩니다
이 작업을 3번 정도 하니 tar이라는 다른 패턴이 나왔습니다 tar 압축은 tar -xf 파일명.tar 명령어를 이용하여 압축을 풀 수 있습니다 tar 같은 경우 압축을 풀면 .bin 파일이 나오는데 이 bin 파일을 가지고 똑같이 압축을 풀면 됩니다
이렇게 똑같은 작업을 여러 번 수행해 주면 됩니다
마지막 gzip 파일을 풀면 비밀번호가 나오게 됩니다 이번 문제는 노가다가 많아서 그런지 다른 문제보다 상당히 난이도가 있다고 느꼈습니다 (압축을 푸는 과정에서 이게 맞나? 싶을 정도로 압축을 많이 풀었네요..)