728x90
반응형
Bandit Level 11 입니다.
password는 data.txt에 저장되어 있다. 모든 영문 소문자와 대문자는 13자리씩 옮겨져 있다. 라네요.
시저 암호(카이사르 암호)를 얘기하는 것 같습니다.
예를 들어 암호키가 3이라면,
A -> D
G -> J
이런식으로 3칸씩 옮겨가는 거죠.
해당 문제는 13자리씩 옮겨져 있다고 하니 키는 13이고
A -> N
G -> T
이런 식으로 암호화가 되겠네요.
cat data.txt
password는 현재 암호화 되어있는 것 같습니다.
이것을 복호화해 봅시다.
리눅스 명령어 "tr" 을 이용합니다.
cat data.txt | tr 'A-Za-z' 'N-ZA-Mn-za-m'
tr : 문자열을 변경, 치환해주는 기능을 가진 명령어
'A-Z' : 영어 대문자를 의미함
'N-ZA-M' : N-Z 그리고 A-M 문자열로 치환한다. ( 즉, A-Z -> N-M 을 의미하는 것 입니다. )
A-Z N-M 으로 쓰지 않는 이유는, Z를 넘어갈 수 없기 때문입니다. tr명령어는 A에서 Z로 가는 순서만 이해할 수 있습니다.
따라서 N-ZA-M 으로 2번에 걸쳐, 순서를 맞추어 옵션을 설정해 주는 것입니다. 소문자도 이하동문 입니다.
이렇게 tr 명령어를 이용해 시저암호를 복호화하여 password를 획득할 수 있었습니다.
728x90
반응형
'Hacking > [System]Bandit' 카테고리의 다른 글
OverTheWire [Bandit Level 13] (0) | 2023.03.30 |
---|---|
OverTheWire [Bandit Level 12] (0) | 2023.03.30 |
OverTheWire [Bandit Level 10] (0) | 2023.03.30 |
OverTheWire [Bandit Level 9] (0) | 2023.03.30 |
OverTheWire [Bandit Level 8] (0) | 2023.03.30 |