김승현
[OverTheWire] Bandit Level 12 → Level 13 본문
문제
data.txt에 다음 단계로 가는 password가 있는데 반복적으로 압축된 파일의 hexdump라고 한다. 이 단계에서 mkdir을 이용해서 /tmp 아래에 디렉토리를 만드는 게 작업하는데 좋다고 합니다.
디렉터리 제작 예시 mkdir /tmp/myname123.
위와 같이 만들고 파일을 cp명령어를 이용해서 복사하고 mv를 이용해서 이름을 고치라고 하는 것 같습니다.
- hexdump란? 컴퓨터의 저장장치에 있는 데이터를 16진법으로 출력하는 방법
xxd : 파일을 hexdump로 만드는 명령어 -r 옵션을 이용해서 16진수를 binary로 만드는 것도 가능함 mkdir : 디렉터리를 새롭게 생성하는 명령어 cp : copy의 줄임말로 파일을 복사하는 명령어 mv : move의 줄임말로 파일을 이동시키는 명령어 ex) mv data.txt new_data.txt와 같은 방식으로 이름을 바꾸는 데에도 사용함 # data.txt가 new_data.txt로 이름이 변경됨 |
풀이
들어가 보면 우리의 유저명, 그룹명은 bandit12로 data.txt에 대해서 read만 가능하고 ASCII text 형식이다.
cat 해보면 dump 형식으로 된 것도 확인할 수 있다.
지금 디렉터리에서 xxd -r을 통해 data.txt를 binary 형식으로 바꾸려고 해도 permission denied가 뜨면서 할 수 없다.
우리는 이때 문제에서 알려줬듯이 /tmp 디렉토리를 만들어 줘야 한다. /tmp 디렉토리는 임시 디렉토리라고 불리며 누구나 만들 수 있는 디렉토리라고 한다.
/tmp/kshind 디렉토리까지 만들고 data.txt를 cp를 이용하여 복사해서 이동시킨 것을 볼 수 있다.
/tmp/kshind 디렉토리에 xxd -r을 이용해서 data라는 파일로 새로 만들었고
file 명령어를 이용해서 확인해보니 gzip으로 압축된 파일임을 알 수 있다.
gzip 명령어를 통해 gzip으로 압축된 파일을 풀 수 있는데 이걸 하기 위해선 이름이 .gz로 끝나야 한다.
(1) gzip 해제와 bz2 등장
mv 명령어를 통해 data 파일을 data.gz로 이름을 변경하고 gzip 명령어를 통해 압축을 풀었다.
압축을 풀고 난 후엔 bzip2로 압축이 됐다고 하니까 한 번 더 압축을 풀어야 한다.
(2) bz2 해제와 gzip 등장
bzip2 압축을 풀기 위해 data.bz2로 이름을 바꾸고 bzip2 명령어를 통해 압축을 풀고 file 명령어를 통해 확인해보니까 또 gzip으로 압축되어 있다고 뜬다.
(3) gzip 해제와 tar 아카이브 등장
모자이크한 부분은 실수한 부분입니다....ㅜ 이번에는 POSIX tar archive라고 뜬다. 이번엔 tar 아카이브가 뜨는데 여러 파일이나 디렉토리를 담는 한 파일이라고 한다. tar archive 같은 경우에는 tar -vxf 명령어를 통해서 압축을 풀 수 있다.
(4) tar 아카이브 해제와 아카이브 재등장
압축을 해제하고 보면 data5.bin이라는 파일이 생기는데 이 파일도 아카이브이기 때문에 같은 방식으로 하면 된다.
(5) tar 아카이브 해제와 bzip2 등장
압축을 해제하면 이번엔 data6.bin이라는 파일이 나오는데 이건 bzip2로 압축이 되어있다. 그렇다면 이름 뒤에 .bz2를 붙이고 다시 bzip2 -d 명령어를 이용해서 풀면 압축이 풀릴 것이다.
(6) bzip2 해제와 아카이브 등장
bzip2를 풀게 되면 data6.bin이라는 파일이 한 번 더 생긴다.
data6.bin은 tar 아카이브이고 tar -xvf 명령어를 통해 해제를 할 수 있다.
(7) 아카이브 해제와 gzip 등장
data6.bin을 풀게 되면 이번엔 data8.bin이라는 파일이 생기고 이건 gzip으로 압축되어 있다고 한다. 한 번 더 이름에 .gz를 붙이고 압축을 풀어보자....
(8) gzip 해제와 끝
data8.bin.gz로 이름을 바꾸고 압축을 해제하면 data8.bin이라는 파일이 생기고
file로 확인해보면 ASCII text라고 적혀있다....
반가운 마음에 호다닥 cat 해보니까 password가 적혀있었다.
압축 푸는법은 너무 많이 해서 다른 건 까먹더라도 절대 잊을 것 같지가 않다.
해제할 때마다 설마설마 하면서 푸는데 풀어도 풀어도 끝이 없어,,,,, 그래도 드디어 끝났다 히히
다른 사람들도 끝까진 못 하더라도 꼭 여기까지는 문제를 풀어봤으면 좋겠다.
찾아보니까 directory 발음을 디렉토리라고 쓰는 것 같더라구요 지금까지 다 디렉터리라고 썼는데...
고치긴 귀찮으니까 여기부터 디렉토리로 쓰겠습니다. 제 탓 아님
다음 문제
'Linux > OverTheWire : Bandit' 카테고리의 다른 글
[OverTheWire] Bandit Level 14 → Level 15 (0) | 2023.02.18 |
---|---|
[OverTheWire] Bandit Level 13 → Level 14 (1) | 2023.02.18 |
[OverTheWire] Bandit Level 11 → Level 12 (0) | 2023.02.16 |
[OverTheWire] Bandit Level 10 → Level 11 (0) | 2023.02.16 |
[OverTheWire] Bandit Level 9 → Level 10 (0) | 2023.02.16 |