반응형

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 계정의 패스워드를 확인해보면 아래와 같이 출력되는 것을 확인할 수 있습니다.

반응형

+ Recent posts