-
[Webhacking.kr] 31번 풀이Wargame/webhacking.kr (old) 2019. 5. 7. 03:10
31번 문제를 들어가보면, 10025에 연결할 수 없다는 에러가 출력된다.
페이지 새로고침을 하면 이번에는 포트 번호가 10073이다.
랜덤 함수에 의해 포트 번호는 계속 바뀐다.
fsockopen()
소켓 연결을 열기 위한 함수
fsockopen ("연결할 Domain / IP", "포트 번호", "에러", "에러 메시지", "연결 시도 시간")
소스 코드를 해석해보면, get 방식으로 나의 외부 IP를 전송해준다.
나의 외부 IP로 연결을 하면서 통신할 포트 번호는 10000~10100이고, 3초 내에 연결이 되지 않으면
에러가 발생한다.
포트포워딩을 통해 10000~10100의 포트를 열어주고, 연결시켜주면 될 것 같다.
포트포워딩 하는 방법은 다음과 같다.
(나는 ipTIME을 사용하기 때문에 192.168.0.1으로 접속하였다.)관리도구로 들어가면 포트포워드 설정을 할 수 있다.
규칙 이름을 web_31로 정해주고 포트 범위를 10000~10100으로 설정하고 추가한다.
이것으로 포트포워딩은 완료되었다.
포트포워딩이란?
외부에서 접속 시 어떤 호스트의 어떤 서비스 포트에 연결할지 설정해주는 것
포트포워딩을 완료한 후 연결되기를 기다리기 위해 NetCat을 이용하여 포트를 열고 대기하면서
연결을 시도해보았다.
NetCat이란?
Network Connection에서 raw-data read, write 할 수 있는 유틸리티 프로그램
[NetCat 다운로드] https://packetstormsecurity.com/files/31140/nc.exe.html
[nc 사용방법] http://kinosminordiary.blogspot.com/2017/12/ncnetcat.html
사용 명령어 : nc -nl -p 포트번호
(단, cmd 하나 당 하나만 대기할 수 있기 때문에 5개 정도를 켜서 대기하면서 새로고침하였다.)두 세번 새로고침하다보니 포트 번호 10032로 연결되었다.
연결되니 에러 메시지 대신 password가 날라왔다.
얻은 password를 Auth페이지에 인증하면 문제가 풀린다.
'Wargame > webhacking.kr (old)' 카테고리의 다른 글
[Webhacking.kr] 33번 풀이 (0) 2019.05.07 [Webhacking.kr] 32번 풀이 (0) 2019.05.07 [Webhacking.kr] 29번 풀이 (0) 2019.05.07 [Webhacking.kr] 27번 풀이 (0) 2019.05.07 [Webhacking.kr] 26번 풀이 (0) 2019.05.07 댓글