Level Goal
The password for the next level is stored in the file data.txt, where all lowercase (a-z) and uppercase (A-Z) letters have been rotated by 13 positions
Rot 13 인코딩이 적용된 파일 해독하기
들어가기 전
Rot 13 인코딩이란?
기존의 문자를 13자리 뒤의 문자로 치환하는 방법이다.
예를 들어 a라는 문자가 있으면 a,b,c,d... n 13번째 문자인 n으로 치환이 된다.
자세한 설명은 https://en.wikipedia.org/wiki/ROT13 에 들어가면 알 수 있다.
처음 접속을 하고 cat 명령어를 통해 data.txt를 확인하면
해당 문자열을 확인 할 수 있다.
우리는 이 문자열들이 13자리 뒤의 문자들인 것을 알고 있으니 다시 원래의 문자로 되돌려 주면 된다.
예시에서 a가 n으로 치환이 된다고 했으니 우리는 n을 다시 a로 치환시켜야 한다
리눅스에서 문자열 치환은 tr 명령어를 사용하면 된다.
cat data.txt | tr "n-za-mN-ZA-M" "a-zA-Z"
tr [치환 될 문자] [치환 할 문자]
코드 설명
"n-za-m" : 알파벳은 a로 시작해 z로 끝나기에 치환 될 문자의 시작 자리에 a 대신 n을 넣고 z까지 포함을 시키고 z 다음에 오는 자리는 a임을 알렸다 그리고 a부터 남은 문자인 m까지 포함을 해줬다
"N-ZA-M" : 위의 설명과 동일하지만 대문자를 포함시키는 의미이다
"a-zA-z" : a 부터 z까지의 소문자와 대문자를 포함한다는 의미이다.
해당 명령어를 입력하면 정답을 확인할 수 있다.
정답: JVNBBFSmZwKKOP0XbFXOoW8chDz5yVRv
'Bandit' 카테고리의 다른 글
[Bandit] Level 12 (0) | 2023.07.19 |
---|---|
[Bandit] Level 10 (0) | 2023.07.16 |
[Bandit] Level 9 (1) | 2023.07.16 |
[Bandit] Level 8 (0) | 2023.07.16 |
[Bandit] Level 7 (0) | 2023.07.14 |