http://maj3sty.tistory.com/594
위 주소에서 소개한 바 있는 프로그램 소스를 공개합니다.
위 글에서 알려드렸던 취약점이 패치된 듯 하여 공개하게 됬습니다.
제작언어 : C
환경 : Window XP SP3
참고사항 : 다운로드 프로그램이 아닌 주소 확인 프로그램이며, 동영상 링크가 온전한지 아닌지 판단 기능은 없습니다.
위 주소에서 소개한 바 있는 프로그램 소스를 공개합니다.
위 글에서 알려드렸던 취약점이 패치된 듯 하여 공개하게 됬습니다.
제작언어 : C
환경 : Window XP SP3
참고사항 : 다운로드 프로그램이 아닌 주소 확인 프로그램이며, 동영상 링크가 온전한지 아닌지 판단 기능은 없습니다.
#include <stdio.h> #include <string.h> #include <stdlib.h> #include <winsock2.h> #define BUFSIZE 1024 int main(int argc, char **argv) { WSADATA wsaData; char getHead[]={"GET http://news.naver.com/vod/mms.nhn?office_id="}; char getHead2[]={"&article_id="}; char getFoot[]={" HTTP/1.1\r\n"\ "Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */*\r\n"\ "Accept-Language: ko\r\n"\ "UA-CPU: x86\r\n"\ "User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)\r\n"\ "Host: news.naver.com\r\n"\ "Proxy-Connection: Keep-Alive\r\n"\ "Cookie: nvad_lc=LD,4215000000; NB=G4ZDQOJQGM2DGNZZ; NNB=4UV3GRHN3B7UU; npic=1AjjNYpfgvTZELF1iY62HOuQX7Kfldi8mSfFK3fdbQL5Zdd3gEDM8o6JNyN3ur2+CA==\r\n\r\n"}; char recvms[BUFSIZE]=""; int i, recvlen; int headLen, footLen, headLen2; char *test; SOCKET c_socket; struct hostent *host; SOCKADDR_IN servAddr; if(argc!=3) { printf("Usage : *.exe <office_id> <article_id>\n"); exit(1); } printf("네이버 뉴스 동영상 주소 확인 프로그램\n"); if(WSAStartup(MAKEWORD(2, 2), &wsaData)!=0) printf("WSAStartup error!!\n"); host=gethostbyname("news.naver.com"); if(!host) { printf("host() error\n\n"); exit(1); } memset(&servAddr, 0, sizeof(servAddr)); servAddr.sin_family=AF_INET; servAddr.sin_addr.s_addr=((IN_ADDR*)host->h_addr_list[0])->s_addr; servAddr.sin_port=htons(80); headLen = strlen(getHead); footLen = strlen(getFoot); headLen2 = strlen(getHead2); for(i=0; i<=0; i++) { c_socket=socket(PF_INET, SOCK_STREAM, 0); if(c_socket == -1) { printf("socket() error\n\n"); i--; continue; } if(connect(c_socket, (SOCKADDR*)&servAddr, sizeof(servAddr))==-1) { printf("connect error()\n\n"); i--; continue; } test = (char*)malloc(headLen+footLen+headLen2+strlen(argv[1])+strlen(argv[2])+1); strcpy(test,getHead); strcat(test,argv[1]); strcat(test,getHead2); strcat(test,argv[2]); strcat(test,getFoot); send(c_socket, test, strlen(test), 0); recvlen=recv(c_socket, recvms, BUFSIZE-1, 0); recvms[BUFSIZE] = 0; system("cls"); printf("%s\n\n",recvms); printf("\n\n"); printf("mms주소를 복사하여 넷 트랜스포트와 같은 프로그램으로 동영상을 다운 받으시면 됩니다.\n"); printf("made by MaJ3stY\n"); free(test); closesocket(c_socket); } return 0; } /* 네이버 뉴스 동영상 주소 확인 프로그램. 네이버 뉴스위에 있는 office_id, article_id 값을 프로그램에 입력해주면 그 기사에 해당하는 동영상 주소가 나온다. 예 : n.c 052 0000194373 */
다른곳으로 가져가실 때는 출처를 꼭 밝혀주시기 바랍니다.
'[+] Information > [-] Network' 카테고리의 다른 글
TCP 헤더 flag에 관하여.. (0) | 2011.12.16 |
---|---|
와이어샤크에서 파일 추출을 해보자! (2) | 2011.07.19 |
Winpcap을 처음 사용하다. (2) | 2009.12.25 |
UDP Foolder~ (8) | 2009.11.11 |