【网络安全】Dos攻击科普文

目录

  • DOS攻击

    • 什么是DOS攻击
    • 攻击手段分类
    • 具体的攻击方式举例
    • 优秀博客参考
  • DDOS攻击

DOS攻击

什么是DOS攻击

DOS是Denial of Service的简称,用中文简单翻译就是拒绝服务。DOS攻击的目的是:通过耗尽服务器的CPU、内存和网络带宽等资源使服务器无法为用户提供正常服务或使得服务质量下降。总结下就是攻击服务器,使得服务器拒绝为正常的用户请求提供服务。(这样已解释,感觉DOS这个名字还取得挺形象的,哈哈~)

在网上找了个比较详细的解释:

作个形象的比喻来理解DoS。街头的餐馆是为大众提供餐饮服务,如果一群地痞流氓要DoS餐馆的话,手段会很多,比如霸占着餐桌不结账,堵住餐馆的大门不让路,骚扰餐馆的服务员或厨子不能干活,甚至更恶劣……相应的计算机和网络系统则是为Internet用户提供互联网资源的,如果有黑客要进行DoS攻击的话,可以想象同样有好多手段!今天最常见的DoS攻击有对计算机网络的带宽攻击和连通性攻击。带宽攻击指以极大的通信量冲击网络,使得所有可用网络资源都被消耗殆尽,最后导致合法的用户请求无法通过。连通性攻击指用大量的连接请求冲击计算机,使得所有可用的操作系统资源都被消耗殆尽,最终计算机无法再处理合法用户的请求。

攻击手段分类

DOS拒绝服务攻击根据攻击手段,主要可分为两类:

  • 洪泛攻击:向目标服务器发送大量超过其处理能力的无用数据包从而使目标服务器无法为合法用户提供服务;
  • 半开连接攻击:使系统中存在大量处于半连接的请求服务,服务器为了维护这些半开连接,需要耗费大量内存,而且一般的Web服务器都是有连接数量限制的。这个时候如果正常的请求过来就会被拒绝掉。

具体的攻击方式举例

1. SYN FLOOD(属于半开连接攻击)
利用服务器的连接缓冲区(Backlog Queue),利用特殊的程序,设置TCP的Header,向服务器端不断地成倍发送只有SYN标志的TCP连接请求。当服务器接收的时候,都认为是没有建立起来的连接请求,于是为这些请求建立会话,排到缓冲区队列中。

如果你的SYN请求超过了服务器能容纳的限度,缓冲区队列满,那么服务器就不再接收新的请求了。其他合法用户的连接都被拒绝掉。可以持续你的SYN请求发送,直到缓冲区中都是你的只有SYN标记的请求。

2. 带宽DOS攻击
如果你的连接带宽足够大而服务器又不是很大,你可以发送请求,来消耗服务器的缓冲区消耗服务器的带宽。这种攻击就是人多力量大了,配合上SYN一起实施DOS,威力巨大。不过是初级DOS攻击。

3. Hash碰撞攻击
这个安全弱点利用了各语言的Hash算法的“非随机性”可以制造出N多的value不一样,但是key一样数据,然后让你的Hash表成为一张单向链表,而导致你的整个网站或是程序的运行性能以级数下降(可以很轻松的让你的CPU升到100%)。关于Hash碰撞DOS攻击,这篇博客已经总结的很全面了,就不自己再造个轮子了。

我自己做了个简单的实验,写了下面这个Controller

@RequestMapping("/convertJSONAndValid")
public Object convertJSON(@RequestBody JSONObject jspan){
    Map<String,Object> map = new HashMap<>();
    map.put("key1","value");
    return map;
}

通过Postman向这个接口一次性发送1000000个"xx":"1"这样的键值对,通过任务管理器看到CPU瞬间就飙升到了88%。这个攻击还是非常恐怖的。下面代码用于生成1000000个键值对。

public static void main(String[] args) throws Exception {
    FileWriter fs = new FileWriter("D:\\json.txt");
    fs.write("{\r\n");
    int count = 1000000;
    for(int i=0;i<count;i++){
        if(i!=count-1){
            fs.write("\"xx\":\"1\",\r\n");
        }else {
            fs.write("\"xx\":\"1\"\r\n");
        }
    }
    fs.write("}");
    fs.close();
}

优秀博客参考

  • https://www.cnblogs.com/botoo/p/9583388.html

DDOS攻击

传统上,攻击者所面临的主要问题是网络带宽,由于较小的网络规模和较慢的网络速度的限制,攻击者无法发出过多的请求。虽然类似“the ping of death”的攻击类型只需要较少量的包就可以摧毁一个没有打过补丁的UNIX系统,但大多数的DoS攻击还是需要相当大的带宽的,而以个人为单位的黑客们很难使用高带宽的资源。为了克服这个缺点,DoS攻击者开发了分布式的攻击。攻击者简单利用工具集合许多的网络带宽来同时对同一个目标发动大量的攻击请求,这就是DDoS(Distributed Denial of Service)攻击。

无论是DoS攻击还是DDoS攻击,简单的看,都只是一种破坏网络服务的黑客方式,虽然具体的实现方式千变万化,但都有一个共同点,就是其根本目的是使受害主机或网络无法及时接收并处理外界请求,或无法及时回应外界请求。

总结下:
DDOS攻击就是控制多台分布广泛的机器对目标机器发起DOS攻击

原文地址:https://www.cnblogs.com/54chensongxia/p/11766347.html

时间: 2024-11-05 19:26:48

【网络安全】Dos攻击科普文的相关文章

Teensy HID攻击科普文

0x00 前言: 在2014年美国黑帽大会上,柏林SRLabs的安全研究人员JakobLell和独立安全研究人员Karsten Nohl展示了他们称为"BadUSB"(按照BadBIOS命名)的攻击方法.在认识BadUSB之前我们来先了解一种类似的攻击手法,使用Teensy芯片进行HID攻击,这种手法要古老的多,2010年左右,通过U盘伪装成为USB键盘输入恶意代码的攻击方式就已经相当成熟,并将这种攻击方式称为"Teensy HID攻击",Kautilya也是在20

DoS攻击给互联网络安全带来重大的威胁

自从互联网络诞生以来,DoS攻击就伴随着互联网络的发展而一直存在,也不断发展和升级.值得一提的是,要找DoS的工具一点不难,黑客群居的网络社区都有共享黑客软件的传统,并会在一起交流攻击的心得经验,可以很轻松地从互联网上获得这些工具,像以上提到的这些DoS攻击软件都是可从网上随意找到的公开软件. 所以任何一个上网者都可能构成网络安全的潜在威胁.DoS攻击给飞速发展的互联网络安全带来重大的威胁.然而从某种程度上可以说,DoS攻击永远不会消失而且从技术上目前还没有根本的解决办法. 从网络攻击的各种方法

常见的DoS攻击的原理和防御

1.SYN洪水攻击 要理解dos攻击,首先要理解TCP连接的三次握手过程(Three-wayhandshake). 在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接.   第一次握手:建立连接时,客户端发送SYN包((SYN=i)到服务器,并进入SYN SEND状态,等待服务器确认;  第二次握手:服务器收到SYN包,必须确认客户的SYN (ACK=i+1 ),同时自己也发送一个SYN包((SYN=j)}即SYN+ACK包,此时服务器进入SYN_RECV状态;[1]

DDOS、DRDOS、DOS攻击概念以及基本的防御方法

DoS攻击.DDoS攻击和DRDoS攻击相信大家已经早有耳闻了吧!DoS是 Denial of Service的简写就是拒绝服务,而DDoS就是Distributed Denial of Service的简写就是分布式拒绝服务,而DRDoS就是Distributed Reflection Denial of Service的简写,这是分布反射式拒绝服务的意思.不过这3中攻击方法最厉害的还是DDoS,那个DRDoS攻击虽然是新近出的一种攻击方法,但它只是DDoS攻击的变形,它的唯一不同就是不用占领

TCP/IP的三次握手和四次握手 Dos攻击

TCP连接的状态图 TCP建立连接的三次握手过程,以及关闭连接的四次握手过程 贴一个telnet建立连接,断开连接的使用wireshark捕获的packet截图. 1.建立连接协议(三次握手) (1)客户 端发送一个带SYN标志的TCP报文到服务器.这是三次握手过程中的报文1. (2) 服务器端回应客户端的,这是三次握手中的第2个报文,这个报文同时带ACK标志和SYN标志.因此它表示对刚才客户端SYN报文的回应:同时又标志SYN给客户端,询问客户端是否准备好进行数据通 讯. (3) 客户必须再次

RSNAKE 的 Slowloris DOS攻击工具初试

Slowloris 号称低带宽对服务器进行DDOS攻击 原理就是对WEB服务器发送 不完整的包并且以 单一  \r\n结尾,并不是 完整的HTTP包.造成WEB服务器堵塞达到最大连接数. 官网给出介绍,对以下几种服务器有效: Apache 1.x Apache 2.x dhttpd GoAhead WebServer WebSense "block pages" (unconfirmed) Trapeze Wireless Web Portal (unconfirmed) Verizo

Screen OS防火墙DoS攻击的检测和防御

一.拒绝服务攻击DoS 1. 拒绝服务攻击的目的是用极大量的虚拟信息流耗尽受害者的资源,使其无法处理合法的信息流.攻击的目标可以是防火墙.防火墙所保护的网络资源.个别主机的特定硬件平台或操作系统等.通常DoS攻击中的源地址是欺骗性的. 2. 发自多个源地址的DoS攻击称为分布式拒绝服务攻击(DDoS).DDoS攻击中的源地址可以是欺骗性地址,也可以是被损害过的主机的实际地址,或者是攻击者目前正用作"zombie代理"且从中发起攻击的主机实际地址. 3. NetScreen防火墙提供了九

真实案例:网站遭遇DOS攻击

网站遭遇DOS攻击 一.事件背景 长假对于IT人员来说是个短暂的休整时期,可IT系统却一时也不能停,越是节假日,越可能出大问题,下面要讲述的就是一起遭受DOS攻击的案例. 春节长假刚过完,小李公司的Web服务器就出了故障.下午1点,吃完饭回来,小李习惯性的检查了Web服务器.Web服务器的流量监控系统显示下行的红色曲线,与此同时收到了邮件报警,可以判断服务器出现了状况. 根据上述问题,小李马上开始核查Web服务器的日志,尝试发现一些关于引起中断的线索.正当查询线索过程中,部门经理告诉小李,他已经

linux下安装mod_evasitive模块(防止单一客户的DOS攻击)

安装步骤如下: 1. 前提条件 已经安装了Apache 2.2.x或以上版本,下载mod_evasitive. 下载地址: http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz 2. 安装 按照下列指令安装mod_evasitive. tar -xzvf mod_evasive_1.10.1.tar.gz cd mod_evasitive vim mod_evasive20.c #de