▼ Challenge 31은 다음과 같습니다.
php의 fsockopen()을 통해 socket을 생성하여 본인 ip로 10000 ~ 10100 사이의 임의적인 포트 번호로
데이터를 보낸다는 것을 짐작할 수 있습니다.
10000 ~ 10100번 포트를 포워딩하여 한 포트로 보내주면 문제가 풀릴 것 같습니다.
네트워크 소켓(network socket)은 컴퓨터 네트워크를 경유하는 프로세스 간 통신의 종착점이다. 오늘날 컴퓨터 간 통신의 대부분은 인터넷 프로토콜을 기반으로 하고 있으므로, 대부분의 네트워크 소켓은 인터넷 소켓이다. 네트워크 통신을 위한 프로그램들은 소켓을 생성하고, 이 소켓을 통해서 서로 데이터를 교환한다. 소켓은 RFC 147에 기술사항이 정의되어 있다. [참고] wikipedia.org |
▼ 포트 포워딩에 대한 순서를 간략히 설명하면,
1. Windows 방화벽에서 해당 포트 연결 허용
2. 포트 포워딩
3. 메시지 수신
하나씩 살펴보겠습니다.
1. 방화벽 포트 허용
이미 많은 블로그에 있는 것 같아 설명을 생략하겠습니다.
2. 포트 포워딩
공유기를 사용하시는 분들은 공유기에서 직접 설정하는 방법이 있고,
Vmware에서 포워딩하는 방법 등이 있지만
저는 윈도우 네트워크 설정을 변경할 수 있는 유틸리티인
▼ netsh (윈도우 서버 2000부터 포함) 를 사용하여 포워딩 하였습니다.
C:\Users\Administrator>netsh --> 포트포워딩 설정 주소 포트 주소 포트 --> 종료 [참고] http://blog.naver.com/PostView.nhn?blogId=11guddls&logNo=60187360842 |
3. 메시지 수신
netcat을 이용하는 방법 등이 있지만,
▼ 저는 Wireshark를 통해서 패킷 내용을 살펴 보았습니다.
Password 값이 보이는 군요.
'WarGame > webhacking.kr' 카테고리의 다른 글
[webhacking.kr] Challenge 47 :: Mail Header Injection (0) | 2015.11.18 |
---|---|
[webhacking.kr] Challenge 32 :: Cookie (0) | 2015.11.18 |
[webhacking.kr] Challenge 27 :: SQL Injection (like) (0) | 2015.11.18 |
[webhacking.kr] Challenge 25 :: LFI (Local File Inclusion) 취약점 (0) | 2015.11.17 |
[webhacking.kr] Challenge 19 :: Base64, MD5 (0) | 2015.11.17 |