• 大小: 1.17MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-08-12
  • 语言: 其他
  • 标签: HACK  破解  

资源简介

《HACK编程实例精讲》教材的Word电子版,好不容易才从网上搜集到的。

资源截图

代码片段和文件信息


#include  
#include  
#define  MAXBUFLEN  20480 
#define  HTTPADDLEN 50 
#define  TIMEWAIT   2000 
#pragma comment(lib“ws2_32.lib“)
SOCKET   Global[1000]; 

DWORD WINAPI  Proxy( LPVOID pSocket); 
int   ParseHttpRequest(char * SourceBufint DataLenvoid * ServerAddr); 


int main(int argcchar * argv[]) 

   SOCKET  MainSocketClientSocket; 
   struct  sockaddr_in HostClient; 
   WSADATA WsaData; 
   int  AddLeni; 

   //初始化 
   
   if(WSAStartup(MAKEWORD(22)&WsaData) < 0) 
   { 
       printf(“初始化失败\n“); 
       return 1; 
   } 
   //创建socket端口 
   MainSocket = socket(AF_INETSOCK_STREAMIPPROTO_TCP); 
   if(MainSocket == SOCKET_ERROR) 
   { 
       printf(“端口创建错误\n“);
   return 1;
   } 
   Host.sin_family = AF_INET; 
   Host.sin_port = htons(8080); 
   Host.sin_addr.s_addr = inet_addr(“127.0.0.1“); 
   printf(“正在工作\n“); 
   //绑定socket
   if(bind(MainSocket(SOCKADDR *)&Hostsizeof(Host)) != 0) 
   { 
       printf(“绑定错误\n“);
   } 
   i = 0; 
   //监听 
   if(listen(MainSocket5) == SOCKET_ERROR) 
   { 
       printf(“监听错误\n“); 
   } 
   AddLen = sizeof(Client); 

   //连接新的客户 
   i = 0; 
   for(;;) 
   { 
       ClientSocket = accept(MainSocket(SOCKADDR *)&Client&AddLen); 
       if(ClientSocket == SOCKET_ERROR) 
       { 
           printf(“接受客户请求错误!\n“); 
       } 
       printf(“.“); 
       i ++ ; 
       if( i >= 1000) 
           i = 0; 
       Global[i] = ClientSocket; 

       //对于每一个客户启动不同的线程程进行控制 
       //这个地方在使用ClientSocket的时候,要不要保证在某一时刻内只能有一个进程使用?     

   CreateThread(NULL0Proxy(LPVOID)Global[i]0NULL);

        
   } 

    
return 0;

DWORD WINAPI Proxy( LPVOID pSocket) 

   SOCKET ClientSocket; 
   char  ReceiveBuf[MAXBUFLEN]; 
   int  DataLen; 
   struct sockaddr_in  ServerAddr; 
   SOCKET  ProxySocket; 
   int i = 0; 
   int time = TIMEWAIT; 

   //得到参数中的端口号信息 
   ClientSocket = (SOCKET)pSocket; 
//接受第一次请求信息 
   memset(ReceiveBuf0MAXBUFLEN); 
   DataLen = recv(ClientSocketReceiveBufMAXBUFLEN0); 

   if(DataLen == SOCKET_ERROR) 
   { 
       printf(“错误\n“); 
       closesocket(ClientSocket); 
      return 0;
   } 
   if(DataLen == 0) 
   { 
       closesocket(ClientSocket); 
      return 0;
   }     
   //处理请求信息,分离出服务器地址 
   if( ParseHttpRequest(ReceiveBufDataLen(void *)&ServerAddr) < 0) 
   { 
       closesocket(ClientSocket); 
       goto error; 
   } 
   //创建新的socket用来和服务器进行连接 
   ProxySocket = socket(AF_INETSOCK_STREAMIPPROTO_TCP); 
   //设置超时时间 
   setsockopt(ProxySocketSOL_SOCKETSO_RCVTIMEO(char *)×izeof(time)); 
   if(ProxySocket == SOCKET_ERROR) 
   { 
       printf(“端口创建错误\n“); 
       return 0;
   } 
   if(connect(ProxySocket(SOCKADDR *)&ServerAddrsizeof(ServerAddr)) == SOCKET_ERROR) 
   { 
       //printf(“连接服务器错误“); 
       goto error; 
   } 
   //开始进行数据传输处理 
   //发送到服务器端 
   if(send(ProxySocketReceiveBufDataLen0) == SOCKET_ERROR) 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件         77  2008-10-14 08:46  HACK编程实例精讲\Desktop.ini

     文件       5912  2004-11-13 23:22  HACK编程实例精讲\本书代码\实例收录\http代理原码.cpp

     文件       5745  2003-08-17 15:21  HACK编程实例精讲\本书代码\实例收录\ICMP后门\client\icmpsend.cpp

     文件       2007  2003-08-17 15:02  HACK编程实例精讲\本书代码\实例收录\ICMP后门\client\icmpsend.dsp

     文件        541  2003-08-17 15:02  HACK编程实例精讲\本书代码\实例收录\ICMP后门\client\icmpsend.dsw

     文件      41984  2003-08-17 15:21  HACK编程实例精讲\本书代码\实例收录\ICMP后门\client\icmpsend.ncb

     文件      48640  2003-08-17 15:21  HACK编程实例精讲\本书代码\实例收录\ICMP后门\client\icmpsend.opt

     文件        870  2003-08-17 15:21  HACK编程实例精讲\本书代码\实例收录\ICMP后门\client\icmpsend.plg

     文件      19060  2003-08-17 15:23  HACK编程实例精讲\本书代码\实例收录\ICMP后门\server\icmpsrv.cpp

     文件       1999  2003-08-17 15:05  HACK编程实例精讲\本书代码\实例收录\ICMP后门\server\icmpsrv.dsp

     文件        539  2003-08-17 15:05  HACK编程实例精讲\本书代码\实例收录\ICMP后门\server\icmpsrv.dsw

     文件      27648  2004-06-30 22:17  HACK编程实例精讲\本书代码\实例收录\ICMP后门\server\icmpsrv.ncb

     文件      48640  2003-08-17 15:23  HACK编程实例精讲\本书代码\实例收录\ICMP后门\server\icmpsrv.opt

     文件        862  2003-08-17 15:23  HACK编程实例精讲\本书代码\实例收录\ICMP后门\server\icmpsrv.plg

     文件       1128  1999-09-29 00:13  HACK编程实例精讲\本书代码\实例收录\ICMP后门\server\StdAfx.h

     文件       1567  2004-08-05 12:04  HACK编程实例精讲\本书代码\实例收录\winsock代码\client.cpp

     文件     155710  2004-08-05 12:04  HACK编程实例精讲\本书代码\实例收录\winsock代码\Debug\client.exe

     文件     155710  2004-08-05 12:01  HACK编程实例精讲\本书代码\实例收录\winsock代码\Debug\server.exe

     文件       1774  2004-08-05 11:58  HACK编程实例精讲\本书代码\实例收录\winsock代码\server.cpp

     文件       3657  2004-09-03 13:26  HACK编程实例精讲\本书代码\实例收录\一个简单嗅探软件的实现\sniff.cpp

     文件      40960  2008-12-13 13:41  HACK编程实例精讲\本书代码\实例收录\一个简单嗅探软件的实现\sniff.exe

     文件       5494  2004-08-27 15:15  HACK编程实例精讲\本书代码\实例收录\信息刺探工具\snmp.cpp

     文件      40960  2008-12-13 13:41  HACK编程实例精讲\本书代码\实例收录\信息刺探工具\snmp.exe

     文件      40960  2004-08-29 14:49  HACK编程实例精讲\本书代码\实例收录\多线程dos攻击程序\Release\synflood.exe

     文件       6135  2004-08-27 00:16  HACK编程实例精讲\本书代码\实例收录\多线程dos攻击程序\synflood.cpp

     文件        603  2004-08-18 23:00  HACK编程实例精讲\本书代码\实例收录\多线程例子.cpp

     文件       1517  2004-08-16 12:12  HACK编程实例精讲\本书代码\实例收录\扫描器代码\单线程tcp扫描器\tcpscan.cpp

     文件       3681  2004-08-26 12:59  HACK编程实例精讲\本书代码\实例收录\扫描器代码\多线程tcp扫描器\gscan.cpp

     文件      36864  2004-08-21 18:20  HACK编程实例精讲\本书代码\实例收录\扫描器代码\多线程tcp扫描器\gscan.exe

     文件       1479  2004-08-20 13:24  HACK编程实例精讲\本书代码\实例收录\扫描器代码\打造极速SYN扫描器代码\getallIP.cpp

............此处省略159个文件信息

评论

共有 条评论