Hacking/[System]Bandit

OverTheWire [Bandit Level 11]

양선규 2023. 3. 30. 02:17
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" 을 이용합니다.

 

 

password 획득

 

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