반응형

overthewire.org 문제 풀이 / Bandit Level 18 → Level 19

bandit18 계정을 가지고 ssh로 로그인하려고 하면 접속하지 못하도록 되어 있습니다. 

bandit17 계정으로 들어가 /home/bandit18로 이동하여 readme를 읽으려고 하면 권한이 없어 읽을 수 없습니다.

bandit18의 패스워드를 알고 있기 때문에 ssh 명령어를 사용하도록 합니다.

ssh 명령어의 -t 옵션을 주어 원격 호스트에서 명령을 실행하도록 하겠습니다. 

원격 호스트에서 명령은 cat 명령어로 readme 파일을 읽도록 하였습니다.

 

그 결과 아래와 같이 패스워드가 출력됩니다. 

반응형
반응형

overthewire.org 문제 풀이 / Bandit Level 17 → Level 18

 

bandit17로 접속해보면 아래와 같이 파일이 두개가 있고, passwords.new 파일을 열어보면 많은 코드가 보입니다. 

passwords.old 파일과 passwords.new 파일의 차이점을 보기 위해 diff 명령어를 사용하도록 하겠습니다.

diff 명령어를 통해 두개의 파일의 차이를 보면 아래와 같이 한줄이 나옵니다. 

하나는 passwords.new의 코드, 또 다른 하나는 passwords.old의 코드입니다. 

문제에서 본 것과 같이 passwords.new의 코드가 bandit18의 패스워드입니다.

반응형
반응형

overthewire.org 문제 풀이 / Bandit Level 16 → Level 17

 

먼저 nmap 명령어를 이용해 31000에서 32000까지에 열려 있는 포트를 찾겠습니다. 

nmap의 사용법을 확인하겠습니다. 

 

31000부터 32000까지의 열려있는 포트를 보면 아래와 같이 5개의 포트가 열려 있는 것을 볼 수 있습니다.

이 포트들에 nc 명령어를 이용해 간단한 메시지를 전달해 보겠습니다.

31046, 31691, 31960 포트는 간단하게 전달한 데이터를 echo back하는 것으로 보이고, 

다른 포트 31518과 31790은 echo back을 하지 않고, SSL을 사용하는 것으로 보입니다. 

이 두 포트에 현재 레벨의 패스워드를 openssl로 보내보도록 하겠습니다.

31518 포트에 현재 레벨의 암호를 전송하였을 때에는 그대로 echo back을 출력하고 있습니다. 

이는 우리가 원하던 포트가 아닌 것으로 보입니다.

31790 포트에 현재 레벨의 암호를 전송하였을 때, RSA private key가 생성된 것을 볼 수 있습니다. 

이는 우리가 찾고 있는 포트로 보입니다. 

/tmp/ 디렉터리에 새로운 파일을 만들고, rsa key 값을 복사해둡니다. 

rsa 키값이 들어있는 파일을 가지고, ssh 명령어를 사용하여 bandit17 계정으로 접속해보겠습니다.

접속을 시도했지만, /tmp/rsa_key 파일의 권한으로 오류가 발생하였습니다. private key는 다른 user에게 접근이 가능하지 않도록 해야된다고 합니다. 파일 권한을 변경하고 접속해보도록 하겠습니다. 

파일 권한을 변경한 후 다시 접속해보니 bandit17 계정으로 접속이 되었습니다. 

이제 bandit17 계정의 패스워드를 확인해보면 아래와 같이 출력되는 것을 확인할 수 있습니다.

반응형
반응형

overthewire.org 문제 풀이 / Bandit Level 15 → Level 16

다음 레벨의 패스워드는 SSL 암호화를 사용하여 localhost의 30001 포트에 현재 레벨의 패스워드를 제출하면 구해질 수 있다고 합니다. 

 

SSL 암호화를 사용하기 위해 openssl 명령어를 사용하여야 할 듯 하여, 해당 명령어의 help를 보겠습니다.

openssl 명령어의 표준 명령어 중 s_client가 있는데, 이것도 help로 한번 사용법을 알아보겠습니다.

s_client [options]를 사용하는데, 우리는 -connenct val 명령어로 localhost:30001에 접속하도록 하겠습니다. 

openssl s_client 명령어를 가지고 localhost:30001에 접속하여 인증서 정보를 확인하겠습니다.

계속 따라가 보면 마지막에 패스워드를 입력하는 부분이 있습니다. 

Level 15의 패스워드를 입력해보도록 하겠습니다.

입력하면 아래와 같이 level 16에 대한 패스워드를 확인할 수 있습니다.

반응형

+ Recent posts