OvertheWire:bandit:Level13

CTF수상까지...!!·2023년 11월 2일
0

OvertheWire:문제풀이

목록 보기
14/26

level12 -> level13

문제

Level Goal

The password for the next level is stored in the file data.txt, which is a hexdump of a file that has been repeatedly compressed. For this level it may be useful to create a directory under /tmp in which you can work using mkdir. For example: mkdir /tmp/myname123. Then copy the datafile using cp, and rename it using mv (read the manpages!)

문제풀이

공유 서버여서 그런지 이미 누군가 풀어놓은 data8이 존재한다.

그래도 내가 해봐야겠지..

cp data.txt /tmp/myname123

우선 문제에 따라서 data.txt를 복사해 온 후

cat data.txt 로 data.txt 형태 확인


문제 설명과 같이 hexdump 인 것을 확인할 수 있다.

  • xxd 명령어
    • xxd: 주어진 파일이나 standart input으로 들어온 문자들에 대해서 hex dump(컴퓨터 데이터의 16진법적인 보임새)를 만들어 준다. Endian에 관계 없이 파일에 존재하는 순서대로 나옵니다.

    • 기본 사용법: xxd [file name]

      옵션:

    • -b: bit로 표시

    • -c <cols>: 한 줄에 몇개의 바이트를 표현할지 <cols> 값으로 정합니다.

    • -e: 우측에 나타나는 값들이 ASCII가 아닌 EBCDIC로 합니다.

    • -g <bytes><bytes>에 들어가는 값만큼 묶어서 표현하며 기본 값은 2입니다.

    • -l <value><value>만큼만 hexdump

    • -p: 포맷이 없는 hexdump를 출력

    • -s <offset><offset>의 위치부터 hexdump를 보여준다.

    • -u: byte를 대문자로 출력

    • -r:은 hexdump를 binary로 바꾸는 명령어

    • seek <offset> : 파일 포지션을 정해주는 옵션입니다

여기서 data.txt 파일을 바이너리 파일로 만들어 주기 위해 xxd -r 명령을 사용한다.

그리고 file 명령으로 해당 파일의 정보를 출력한다.





이렇게 gzip, bzip2, tar 의 압축 파일들이 순차적으로 나오는데,

file 명령어로 파일 형태 확인 → mv 명령어로 확장자 변경 → 압축 해제의 반복이다.

파일 확장자 변경(예시)

  • mv data6.bin data6.bin.gz
  • mv data6.bin data6.bin.bz
  • mv data6.bin data6.bin.tar

압축해제(예시)

  • gzip -d data.gz
  • bzip2 -d data.bz
  • tar -xvf data.tar

그러다 보면 파일 이름이 data8.bin: ASCII text 가 나올때 까지 반복하고

cat data8.txt 하면 비밀번호가 나타난다.

비밀번호: wbWdlBxEir4CaE8LaPhauuOo6pwRmrDw

profile
보안 공부...내 공부...

0개의 댓글