티스토리 뷰

※ 레벨에 대한 정확한 비밀번호를 알려드리지는 않습니다. 힌트와 해결과정을 포스팅하려고 합니다.

※ 최대한 스스로 풀어보시기를 권장합니다.


http://overthewire.org(링크)






  주어진 힌트


↑ 주어진 힌트는 다음레벨의 키는 data.txt에 저장되어있다고 한다.

    # data.txt는 반복적으로 압축된 16진수 덤프 파일( hexdump ) 

    # /tmp 아래에 디렉토리를 만들어 파일을 복사해서  사용하면 유용하게 해결해 나갈 수 있다고 한다. 

        ex. mkdir /tmp/exam 

  



  문제 분석




data.txt가 hexhump( 16진수 덤프 파일 )임을 알 수 있다. 

   # 힌트에서 암시

   # 전 단계에서 활용했던 포멧형식

    


/tmp아래에 임의의 디렉토리를 생성해서 그 안에 파일을 만들어준다. 

   # 홈디렉터리에서 현재 레벨에서 필요한 명령어를 사용할 수 없기 때문에 디렉토리 이동 후 문제를 해결해야한다. ( 권한x )

   # $> mkdir /tmp/exam


/tmp/exam 디렉터리아래에 data.txt.파일을 옮겨준다. 

    # mv명령어는 사용할 수 있는 권한이 없어서, cp 명령어를 통해 /tmp/exam 아래에 data.txt 파일을 옮겨 주었다.




  문제 분석



xxd 명령에 r옵션을 통해 16진수 덤프파일( hexdump )을 이진 파일로 바꾼 후 bandit 파일에 리다이렉션 해준다.

  # 파일 bandit는 hexhump 파일을 이진파일로 바꾼 후 저장하기 위한 임의의 파일이다.

  # file 명령어는 지정한 파일의 종류( 타입 )을 확인하는 명령어이다.

  # bandit 파일은 gzip으로 압축된 파일이고, data2.bin이 압축된 파일 이라고 한다.


  # xxd 명령어( 참조 )



↑파일 bandit의 압축을 풀기위해 확장자를 .gz로 두고 파일명을 변경했다.

   # data2.bin라는 파일명은 가독성을 위해 같이 변경했다.

   # data2.bin.gz로 파일 이름을 변경하면 gzip형태의 파일명이 붉게 변한다.

   # gunzip을 통해 gzip의 압축을 해제 ( gzip -d 옵션으로 압축풀기 가능 )

   # 압축 해제된 data2.bin 파일은 bzip2로 압축된 파일이다.


   # gzip/gunzip 명령어( 참조 )





  문제 해결



↑bzip2로 압축된 파일 data2.bin을 압축해제 하기위해 확장자를 .bz2로 두고 파일명을 변경했다.

   # data3.bin라는 파일명은 가독성을 위해 같이 변경했다.

   # data3.bin.bz2로 파일 이름을 변경하면 bzip2형태의 파일명이 붉게 변한다.

   # bunzip2을 통해 bzip2의 압축 해제 ( bzip2 -d 옵션으로 압축풀기 가능 )

   # 파일 data3.bin은 gzip으로 압축된 파일이고, data4.bin이 압축된 파일이다.



 이처럼 반복적으로 압축된 형식에 맞게 압축을 풀어 나가는것이 이번 문제의 해결 키 이다.




↑data3.bin은 tar로 압축된 파일이다.

   # 압축 해제를 위해 data4.bin.gz 로 파일명 변경

   # gunzip을 통한 압축 해제

   파일 data4.bintar로 압축된 파일이다. ( 묶였다 )




↑data4.bin은 tar로 압축된 파일이다.

   # 압축 해제를 위해 data5.bin.tar 로 파일명 변경

   # tar -xvf 명령을 통한 압축 해제

   파일 data5.bin은 tar로 압축된 파일이다. ( 묶였다 )


   # 파일 아카이브 ( archive ) 참조



↑data5.bin은 tar로 압축된 파일이다.

   # 불필요한 data5.bin.tar파일 삭제 

   # 압축 해제를 위해 data6.bin.tar 로 파일명 변경

   # tar -xvf 명령을 통한 압축 해제

   파일 data6.binbzip2로 압축된 파일이다. 



↑data6.bin은 bzip2로 압축된 파일이다.

   # 불필요한 data6.bin.tar파일 삭제 

   # 압축 해제를 위해 data7.bin.bz2 로 파일명 변경

   # bunzip2 명령을 통한 압축 해제

   파일 data7.bin은 tar로 압축된 파일이다. 




↑data7.bin은 tar로 압축된 파일이다.

   # 압축 해제를 위해 data8.bin.tar 로 파일명 변경

   # tar -xvf 명령을 통한 압축 해제

   파일 data8.bingzip로 압축된 파일이고 data9.bin이 압축된 파일이다.

 



↑data8.bin은 gzip로 압축된 파일이다.

   # 압축 해제를 위해 data9.bin.gz 로 파일명 변경

   # gunzip 명령을 통한 압축 해제

   # 원본 data.txt 파일의 최종 압축해제 형태인 data9.bin파일



↑문제 해결!






'War Game > [ OverTheWire ] Bandit' 카테고리의 다른 글

OverTheWire: bandit14  (1) 2017.05.22
OverTheWire: bandit13  (0) 2017.04.25
OverTheWire: bandit11  (0) 2017.03.10
OverTheWire: bandit10  (0) 2017.03.10
OverTheWire: bandit 9  (0) 2017.02.24