网络安全系列之1 SYN洪水***

网络安全系列之1 SYN洪水***

近期又在准备参加网络安全比赛,将相关的内容整理一下,也请多提宝贵意见。

 

在之前的博文中曾提到“死亡之ping“,如“ping IP地址 –l 65500 –t”,通过该命令可以连续地向某一台主机发送最大数据包,这样就有可能导致对方的系统资源耗尽或是网络堵塞。由于目前的电脑硬件配置以及网络带宽都非常高,因而“死亡之ping”已很难发挥作用,但这类***的方式有一个统一的名字——拒绝服务***“DoS(Denial of Service)”。

所谓的拒绝服务,就是使目标主机无法提供正常的服务,死亡之ping虽然已不好用,但好用的工具并非没有,比如下面这个SYN***器。通过这个软件可以发起SYN洪水***,***原理是利用了TCP的三次握手过程,但最终的目的跟死亡之ping一样,都是为了让对方“拒绝服务”。

下面先介绍这个工具的使用方法,然后再说明原理。

 

实现过程

在一台安装有Win2003系统的虚拟机中运行该软件(为保证实验效果,建议将Win2003系统的防火墙关闭),输入要***的目标计算机的IP地址和端口号(端口号可以是任意一个开放的TCP端口,比如Windows系统默认开放的端口号445),然后点击“start”按钮开始***。

wKioL1Qjh2Tg0AETAABfZrCCbPY650.jpg

***开始后,到目标计算机上(XP系统)打开Windows任务管理器,可以看到CPU使用率立刻达到了100%,拒绝服务***成功。

wKiom1Qjh5rTzUsbAAHyN9wPnhQ861.jpg

无论目标计算机上是否启用了防火墙,都无法阻挡住SYN***,而且此种***方式对Win7系统也同样有效。只不过目标主机的CPU性能很强的话,占用率会小一些,但是仍会有明显的效果。

需要注意的是,这还只是由单一***方发起的DoS***,如果由众多***方同时向一个目标展开***,那么威力将更加强大,这种***方式也就是目前互联网上最难防御的DDoS(Distribution Denial of Service)分布式拒绝服务***。

 

SYN***原理

 SYN***的原理很简单,我们知道互联网中的大多数应用都是基于连接的,通信双方在正式传输数据之前要通过TCP三次握手过程来建立连接。

SYN***时,***方向目标方发起连接请求,收到对方的响应,之后立马闪人,即只完成前两次的握手过程,然后就把目标主机晾在那里,白白耗费它的一个连接。***方在短时间内可以使目标主机上产生大量的半连接,通过这种方式来把对方的资源耗尽,从而“拒绝服务”。

例如***过程中,在目标主机上执行“netstat -an”命令可以看到大量的半连接:

wKiom1QjimajRJpWAAGP-sOWTvg601.jpg

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109725.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python-人像转漫画

    python-人像转漫画

    2021年9月18日
    272
  • Proteus仿真–51单片机最小系统

    Proteus仿真–51单片机最小系统1.单片机的最小系统是由组成单片机系统必需的一些元件构成的,除了单片机之外,还需要包括电源供电电路、时钟电路、复位电路。下面着重介绍时钟电路和复位电路。1)时钟电路单片机工作时,从取指令到译码再进行微操作,必须在时钟信号控制下才能有序地进行,时钟电路就是为单片机工作提供基本时钟的。单片机的时钟信号通常有两种产生方式:内部时钟方式和外部时钟方式。内部时钟方式的原理电路如图所示。在单片机XTAL1和XTAL2引脚上跨接上一个晶振和两个稳频电容,可以与单片机片内的电路构成一个稳定的自激振荡器。晶振的取值

    2022年6月23日
    28
  • fastjson和Apache报错解决整理,以及编译时minSdkVersion的值设定

    fastjson和Apache报错解决整理,以及编译时minSdkVersion的值设定

    2021年9月30日
    41
  • 【Python 基础篇】Python代码 之 三目表达式总结

    【Python 基础篇】Python代码 之 三目表达式总结Python 中的三元表达式 result 为真时的结果 if 判断条件 else 为假时的结果 示例 gt gt gt x 1 gt gt gt y 2 gt gt gt result xifx gt yelsey 如果条件成立 将 x 的值赋给 result gt gt gt result2 上面的三元表达式等价于 gt gt gt x 1 gt gt gt y 2 gt gt gt ifx

    2025年6月19日
    5
  • java.lang.string cannot be cast to java.sql.timestamp

    java.lang.string cannot be cast to java.sql.timestampjava.lang.stringcannotbecastto java.sql.timestamp 此错误如果不是代码原因,则有可能是数据库的字段类型不对,即,数据库字段类型为varchar之类的,二实际应该是datatime类型的,由此类推,也可能出现其他类似不能转换的错误

    2022年7月16日
    45
  • iOS—-SIGPIPE信号终止进程[通俗易懂]

    iOS—-SIGPIPE信号终止进程[通俗易懂]#概念:SIGPIPE,当一个程序a调用send函数向一个服务A发送信号的数据,服务A在接收数据的时候突然挂掉、无法接收数据、没有接收者,那么内核就会发送一个SIGPIPE信号,从而中断进程,导致程序退出。#调用signal(SIGPIPE,SIG_IGN);对一个已经收到FIN包的socket调用read方法,如果接收缓冲已空,则返回0,这就是常说的表示连接关闭.但第一次对其调用…

    2022年7月17日
    13

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号