김승현

[OverTheWire] Bandit Level 14 → Level 15 본문

Linux/OverTheWire : Bandit

[OverTheWire] Bandit Level 14 → Level 15

kshind 2023. 2. 18. 18:07

문제

문제 원문

로컬 호스트의 port 30000에 현재 단계의 password를 입력해서 다음 단계로 갈 수 있다는 뜻인 것 같다.

 

여기 나와있는 ssh, nc, telnet 모두 사용해서 접속할 수 있다.

 

풀이

기본적인 명령어 사용 화면

ls -al 해보면 숨겨진 .ssh라는 디렉토리가 있는 것을 볼 수 있고 거기엔 authorized keys라는 파일이 있다.

file 명령어를 사용해보면 OpenSSH RSA public key라고 뜬다.

이 파일도 저번 13 -> 14단계의 sshkey.private 파일과 마찬가지로 힌트는 얻을 게 없어보인다.

문제에서 localhost의 30000포트로 가보라고 했으니 ssh, telnet, nc 명령어를 이용해서 접속해보겠다.

 

 

telnet : 다른 컴퓨터에서 특정 컴퓨터로 원격접속을 할 수 있도록 도와주는 표준 프로토콜이다. 
            사용예시) telnet [port] [hostname] 
nc : netcat의 줄임말로 telnet과 비슷하다. 
            사용예시) nc [port] [hostname]

차이점으로는 telnet은 한 줄 한 줄씩 보내는 반면 nc는 스트림으로 보내야 한다.

telnet과 nc 모두 보안상의 문제로 요즘에는 ssh로 교체되는 추세이다.

위의 내용은 아래 블로그를 참고했습니다!

https://velog.io/@hyungyoo42/telnet-netcat

 

telnet, netcat

OSI 7계층에서, Application 계층에 속한다.다른프로토콜: DHCP, DNS, FTP, HTTP, Telnet, SMTPPing과의 다른점: ping은 port를 사용하지않는다. 이유는, TCP/TP 계층에서 사용되고, 상위계층인TCP/UDP와는 상관이 없

velog.io

 

ssh에 대한 설명은 13 -> 14 level 문제에서 사용하는 게 나왔으니까 링크만 달아놓겠습니다! 

솔직히 대충 적은 거라 구글링해서 찾는 게 더 정확하긴 함미다....ㅎㅎ

 

[OverTheWire] Bandit Level 13 → Level 14

문제 비밀번호는 /etc/bandit_pass/bandit14에 있고 이 파일은 bandit14라는 유저만 읽을 수 있다. 우리는 private SSH key를 얻어야 된다고 한다. hostname은 localhost라고 한다. 문제에 ssh가 적혀있는 것과 사용할

kshind.tistory.com


 

(1) ssh 이용

ssh를 이용해서 접속하려고 했는데 되질 않는다.

 

(2) telnet 이용

telnet의 경우 정상적으로 접속할 수 있어서 password를 얻을 수 있다.

 

(3) nc 이용

nc의 경우 위와 같은 방식으로 하려고 했는데 이상하게 입력하는 창이 뜨질 않았다. 혹시 위에서 nc는 스트림 형식으로 한 번에 보내야 된다고 했던 거랑 관련이 있을까..? 자세하게는 모르겠다.

그래서 echo를 이용해서 한 번에 보냈더니 nc를 통해서도 password를 얻을 수 있었다.

 


다음 문제

https://kshind.tistory.com/17

 

[OverTheWire] Bandit Level 15 → Level 16

문제 다음 단계로 가기 위해서 localhost 포트 30001에 현재 레벨의 password를 입력해야 된다고 하며 SSL 암호화를 이용하라고 한다. 주어진 명령어를 보면 openssl이 있는데 딱봐도 이 명령어를 사용하

kshind.tistory.com