OvertheWire:bandit:Level21

CTF수상까지...!!·2023년 11월 2일
0

OvertheWire:문제풀이

목록 보기
22/26

level20->level21

Level Goal

There is a setuid binary in the homedirectory that does the following: it makes a connection to localhost on the port you specify as a commandline argument. It then reads a line of text from the connection and compares it to the password in the previous level (bandit20). If the password is correct, it will transmit the password for the next level (bandit21).

NOTE: Try connecting to your own network daemon to see if it works as you think

이전 문제와 동일하게 setuid 바이너리 파일이 존재한다.

그러나 이를 실행시켜 보면 다음과 같은 문장이 나온다.

./suconnect

This program will connect to the given port on localhost using TCP. If it receives the correct password from the other side, the next password is transmitted back.

입력한 포트 번호는 localhost의 TCP 포트에 연결될 것이고, 다른 쪽에서 password를 입력하면 다음 레벨의 password를 줄 것이라고 한다.

먼저, 새로운 터미널을 열어서 bandit20에 로그인 한다.

그리고 새로운 터미널에서 nc -l -p 3000 명령으로 리스닝 모드로 동작하게 실행한다.

그리고, 원래 켜놓았던 터미널에서 ./suconnect 3000 를 실행하면 두 터미널이 연결된다.

이후

nc -l -p 3000 을 실행했던 터미널에서 bandit20의 비밀번호를 전송한다.

그러면 ./suconnect 3000을 실행한 터미널에서 매칭을 확인하고 다음 레벨의 password를 전송해준다.

비밀번호: NvEJF7oVjkddltPSrdKEFOllh9V1IBcq

profile
보안 공부...내 공부...

0개의 댓글