힌트틀 확인해보면 

 

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!)

 

data.txt 파일안에 패스워드가 있기는 한데 Hex로 덤프가 되어있고, 여러번의 압축이되었다고 한다.

그리고 새로 디렉터리를 만든 다음 해당 디렉터리에 복사해서 문제를 푸는 것이 유용하다고 한다.

그럼 힌트의 취지의 맟춰서 문제를 풀어보았다.

 

일단 들어가면 data.txt가 보인다.

 

그리고 실행해보면 힌트에서 말 했듯이 hex로 덤프가 되어있다.

 

힌트의 의도대로 여기서 디렉터리를 새로 만든다음,  data.txt 파일을 복사를 해보았다.

mkdir /tmp/test_bandit12
cp data.txt /tmp/test_bandit12

 

그리고 hex로 덤프된 파일을 바이너리로 바꾸기 위해서 xxd 명령어를 사용하였다.

xxd -r data.txt data

 

data 파일이 만들어졌고,  분명히 힌트에서는 여러번의 압축이 진행되었다고 했다. 

그래서 압축의 여부를 확인하기 위해서 file 명령어로 해당 파일의 형식과 정보를 알아보았다.

 

gzip으로 압축이 되어있는 것을 볼 수 있다

gzip은 확장자가 .gz로 압축 되어있는 것을 합축 해제 할 수 있기 때문에 확장자를 data -> data.gz로 변경해야 된다.

mv data data.gz

 

확장자가 변경되었으니 압축을 풀어보도록 하겠다. (gzip은 압축해제를 할때  gunzip을 사용한다.)

gunzip -d data.gz

 

다시 압축이 해제 되었는데, 그럼 이대로 실행해도 되는지 아니면 여러번 압축이 되었는지 확인을 해 보았다.

 

이번엔 bzip2로 압축이 되었다. 그럼 해당 압축파일에 맟춰서 확장자를 또 변경해줘야 할 것이다. 

bzip2는 확장자가 .bz2인 압축파일을 해제 할 수 있다.

mv data data.dz2
bzip -d data.bz2

 

다시 해제가 되었는데 파일 형식을 다시 확인해 보았다.

 

이번엔 gzip으로 압축이 되어있었기에 전과 같이 확장자를 바꿔준 다음 해제 해주었다.

 

해제를 해보니 이번에는 tar로 압축이 된 파일이라서 tar로 확장자를 변경 후 해제를 하면 될 거 같다.

mv data data.tar
tar -xvf data.tar

 

압축을 해제 해보니 새로운 파일이 생성되었는데 data5.bin이라는 파일이 생성되었다. 

그럼 bin이라는 확장자는 무엇일까 찾아봐야 하는데 일단 file 명령어로 특징을 확인해보았다.

file data5.bin

 

전과 같이 tar로 압축이 되어있는 것을 확인했으니 전과 같이 tar로 압축된 파일을 해제 하면 될 것이다.

 

똑같이 새로운 파일이 생성되었는데, 전과 같이 계속 진행을 해보았다.

 

계속 진행하다보면 더이상 tar 압축이 풀리지가 않는데 파일을 확인 해 보았다.

file data.tar

 

이번에는 gzip으로 압축이 되어있다. 그래서 gunzip을 통해 압축을 해제 해 주었다.

mv data.tar data.gz
gunzip -d data.gz

 

압축해제를 진행해보니 이제는 압축이 되어있지 않고 text파일로 저장이 되어있는 것 같다. 

그래서 한번 cat으로 실행을 해 보았다.

 

압축풀기와 확장자 변경을 하는 방법에 대해서 숙지하는지 물어보는 문제인거 같다.

사실 지금 생각해보면 그냥 생 노가다였다. 

+ Recent posts