본문 바로가기
Linux/bandit

Level 20 → Level 21

by ㅇㅅㅇ.. 2024. 1. 10.

 

  • login PW: VxCazJaVykI6W36BkBU0mJTCM8rR95XT
  • 문제설명: home dir에 setuid 바이너리가 있다. 이것은 지정한 포트(localhost에서)를 연결해서 한 줄의 텍스트를 읽어 온다. 텍스트가 이전 레벨의 비밀번호 (bandit20)이면 다음 레벨 (bandit21)의 비밀번호를 전송한다.

 

터미널을 하나 더 열어 포트를 열어 두 터미널을 연결한 후 현재 PW를 입력하면 될 것 같습니다.

 

 

현재 경로의 파일을 확인하니 suconnect 라는 바이너리 파일을 확인할 수 있습니다.

 

 

# nc -nlvp 8888

nc 명령어로 새로운 터미널에  8888번 포트를 열어겠습니다.

Listening on 0.0.0.0 8888이라고 하며 port가 열린 것을 알 수 있습니다.

포트를 열었으니 바이너리 파일의 사용법을 확인해 보겠습니다.

 

 

# ./suconnect

해당 바이너리 파일은 ./suconnect 뒤에 포트 번호를 입력하여 사용할 수 있습니다.

# ./suconnect 8888

원래의 터미널과 새로 열었던 터미널을 바이너리 파일과 8888번 포트를 이용해서 연결합니다.

Connection recevied on 127.0.0.1 52242 => 원래의 터미널과 연결이 되었습니다.

 

 

새로 만든 터미널에 현재의 로그인 PW를 입력하니

원래의 터미널에서 이를 읽어들이고 확인한 뒤 bandit21의 PW를 전송해줍니다.

'Linux > bandit' 카테고리의 다른 글

Level 22 → Level 23  (0) 2024.01.11
Level 21 → Level 22  (0) 2024.01.10
Level 19 -> Levle 20  (0) 2024.01.05
Level 18 → Level 19  (0) 2024.01.04
Level 17 → Level 18  (0) 2024.01.04