본문 바로가기
Linux/Bandit

[Bandit] Level 8 → Level 9

by 단월໒꒱ 2022. 1. 5.

 

 

문제를 읽어보니 비밀번호는 data.txt라는 파일에 있으며 딱 한번 나타나는 라인에 존재한다고 한다.

 

 

 

 

일단 이전 단계에서 얻은 비밀번호로 접속해준다.

 

 

 

 

ls 명령어로 파일과 디렉터리 목록을 확인한 후에 data.txt 파일을 cat 명령어로 읽어보았다.

위의 화면처럼 아주 복잡하고 긴 내용을 갖고 있음을 알 수 있다.

문제의 힌트로 돌아가서 명령어를 참고해보니 sort라는 명령어를 쓰기에 적합할 것 같았다.

 

 

$ sort [옵션] [파일]

     : 파일의 내용을 정렬하거나 정렬된 파일의 내용을 병합할 때 사용

    # -r, --reverse : 역순으로 정렬한다.

    # -k, --key=POS1 : 정해진 필드를 기준으로 정렬한다.

    # -u, --unique : 정렬 후 중복된 내용을 제거한다.

    # -t, --field-separator=SEP : 필드 구분자를 지정, -k 옵션으로 필드를 지정해서 사용할 때 좋다.

    # -f, --ignore-case : 대소문자를 구분하지 않고 정렬한다.

 

 

 

 

sort 명령어를 사용하니 길고 복잡했던 내용이 보기 편하게 정렬되었음을 확인할 수 있다.

하지만 그래도 우리가 원하는 것을 찾긴 힘들다.

문제에서 언급되어 있던대로 유일하게 존재한다는 점을 이용하여 uniq 명령어까지 알아보았다.

 

 

$ uniq [옵션] [파일]

     : 중복된 내용의 행이 연속으로 있으면 하나만 남기고 삭제한다.

    # -c : 같은 라인이 몇번 나오는지 표시

    # -d : 중복되어 나오는 라인 중 한 라인만 표시

    # -D : 중복되는 모든 라인을 보여준다.

    # -u : 중복 라인이 없는 것만 보여준다.

 

 

 

 

파이프를 이용하여 sort 명령어와 uniq 명령어를 합쳐서 해당되는 내용을 읽어보니 원하는 비밀번호가 나왔다.

'Linux > Bandit' 카테고리의 다른 글

[Bandit] Level 9 → Level 10  (0) 2022.01.05
[Bandit] Level 7 → Level 8  (0) 2022.01.05
[Bandit] Level 6 → Level 7  (0) 2022.01.05
[Bandit] Level 5 → Level 6  (0) 2022.01.05
[Bandit] Level 4 → Level 5  (0) 2022.01.01

댓글