月度归档:2021年02月

apache缓慢的http拒绝服务攻击修改办法

在httpd.conf中添加 LoadModule reqtimeout_module modules/mod_reqtimeout.so

查看是否存在mod_reqtimeout.so模块

[root@localhost ~]# rpm -ql httpd |grep .so

/usr/lib64/httpd/modules/mod_reqtimeout.so

添加配置

[root@localhost ~]# vi /etc/httpd/conf/httpd.conf

    RequestReadTimeout header=5-40,MinRate=500 body=20,MinRate=500

LoadModule reqtimeout_module modules/mod_reqtimeout.so

重启apache

service httpd restart

2021年超级巨惠买阿里云服务器攻略(全新阿里云小站篇)

本文首要讲经过阿里云小站便宜购买阿里云服务器的攻略,力求将可获取的优惠完好清晰的列出来,以供阿里云新老用户参考。云小站所提供的优惠包含代金券优惠、今天限时秒杀、新用户专享1折起、企业新用户特惠、心选建站以及其他抢手活动引荐。

地址:阿里云小站

一:代金券优惠
首要,有一张金额为20元的云服务器ECS代金券,虽然金额比较小,可是假如你是购买1核1G 1核2G这种装备比较低的阿里云服务器还是很有用的,这张20元的代金券是只需订单金额满100元即可运用,云小站上有一款1核2G5M带宽的云服务器,优惠价格是197.47元,运用这张代金券就能够抵扣20元,实际购买只需177.47元。
要留意的是:20元的代金券只能是新用户才能收取,并且有效期是7天,因此,收取了之后请赶快运用哦。

假如你需要购买的阿里云服务器装备比较高,那么这张20元的代金券作用就不是很大了,订单金额比较高的,就需要用到其他几张代金券了,别的几张可用于购买阿里云服务器运用的代金券金额分别是:100元云服务器专用代金券、300元云产品通用代金券、800元云产品通用代金券,小编现已收取过了,根据小编了解的方针,这几张代金券的运用订单限制是:100元的订单满1000元可运用,300元的订单满3000元可运用,800元的订单满8000元可运用。
需要留意的是:这几张代金券的有效期是30天,咱们能够收取了今后运用,可是这几张代金券仅限产品新购才能用,假如咱们是老用户,想用这个代金券去续费阿里云服务器运用,是用不了的。
代金券.png

二、今天限时秒杀
限时秒杀所推出的这几款阿里云服务器,小编觉得是最经济实惠的,详细装备和秒杀价额如下下图所示:
限时秒杀.png
假如你是个人用户,放的网站流量不是很高,也没有在线视频这些吃带宽比较高的内容,引荐购买秒杀价格只需320.20元的这款同享型s6实例2核4G1M带宽的秒杀云服务器。假如您是企业用户,对云服务器性能要求高一点,引荐购买秒杀价格为636.72元一年的这款装备为同享型s6实例4核8G5M带宽的云服务器,这个装备能够满意绝大部分企业用户的上云需求了。

三、新用户专享1折起
新用户1折起专区所展现的优惠云产品,首要汇集了当下阿里云其他优惠活动中所推出的一些爆款云产品及装备,也就是用户购买最多的一些阿里云服务器装备和其他云产品,目前现已上架了27款云产品,除了阿里云服务器之外,还有云数据库MySQL高可用版、国内通用短信套餐包、云数据库SQL Server、SSL证书等云产品。

小编比较引荐的是活动价格为1166.40元起,实例标准为核算型c5的这款2核4G1M带宽的阿里云服务器,放一些干流的网站是没问题的,比如企业官网之类的。
详细云服务器产品及价格如下表:

实例标准装备带宽云小站报价
同享型 s62核8G2M460.80元/1年 1209.60元/3年
同享型 s64核8G5M1910.16元/3年
通用型 g52核8G1-5M可选1576.80元/1年起
通用型 g62核8G1-5M可选1495.80元/1年起
通用型 g64核16G1-5M可选2791.80元/1年起
核算型 c62核4G1-5M可选1209.60元/1年起
核算型 c64核8G1-5M可选2219.40元/1年起
核算型 c52核4G1M1166.40元/1年
核算型 c54核8G5M2954.88元/1年

四、企业新用户特惠
企业新用户特惠是阿里云最近才在云小站上推出的全新板块,扣头低至2.6折,只需是企业认证且初次购买ECS的新用户均能够购买此版块的云服务器。这个专区所推出的云服务器首要以核算型c5 核算型c6和通用型g5 通用型g6为主,装备包含了2核4G、4核8G、2核8G、4核16G等,这些装备都是企业用户最常购买的一些装备。
别的,企业新用户特惠专区所推出的云服务器带宽均为1-10M带宽可选,这就给了企业用户在挑选带宽上很大的灵活空间,由于企业用户的网站一般来说流量都比较高,最高10M足能够敷衍网站的流量顶峰了。
详细云服务器产品及价格如下表:

实例标准装备带宽云小站报价
同享型 s62核4G1-10M可选301.44元/1年起
同享型 s62核8G1-10M可选572.88元/1年起
同享型 s64核8G1-10M可选731.28元/1年起
核算型 c52核4G1-10M可选699.84元/1年起 2021.76元/3年起
核算型 c54核8G1-10M可选1279.80元/1年起 3697.20元/3年起
同享型 s62核4G1-10M可选904.32元/3年起
同享型 s62核8G1-10M可选1484.28元/3年起
同享型 s64核8G1-10M可选2094.12元/3年起
通用型 g52核8G1M946.08元/1年
核算型 c52核4G1-10M可选1166.40元/1年起 2954.88元/3年起
核算型 c54核8G1-10M可选2133.00元/1年起 5403.60元/3年起
核算型 c58核16G1-10M可选4066.20元/1年起
核算型 c62核4G1-10M可选1209.60元/1年起
核算型 c64核8G1-10M可选2219.40元/1年起
核算型 c68核16G1-10M可选4239.00元/1年起
通用型 g62核8G1-10M可选1495.80元/1年起 3789.36元/3年起
通用型 g64核16G1-10M可选2791.80元/1年起
通用型 g68核32G1-10M可选5383.80元/1年起
通用型 g52核8G1-10M可选1576.80元/1年起
通用型 g54核16G1-10M可选2953.80元/1年起
通用型 g58核32G1-10M可选5707.80元/1年起

五、爆款云产品5折起
这个专区是阿里云专为老用户开设的优惠购买通道,虽然整体价格还是没有新用户那么便宜,可是提供优惠的产品还是比较丰富的,包含云服务器ECS、云数据库Mysql、CDN流量包、Web使用防火墙、短信套餐包,这些应该都是老用户经常用到的产品,别的还提供了商标注册、企业工商注册等服务。
详细云服务器产品及价格如下表:

实例标准装备带宽云小站报价
核算网络增强型sn1ne2核4G1M2386.80元/1年
核算网络增强型sn1ne4核8G1M4396.20元/1年
核算网络增强型sn1ne8核16G1M8415.00元/1年
内存网络增强型se1ne2核16G1M3671.40元/1年
内存网络增强型se1ne4核32G1M6965.40元/1年
内存网络增强型se1ne8核64G1M13553.40元/1年
通用网络增强型sn2ne2核8G1M2951.40元/1年
通用网络增强型sn2ne4核16G1M5525.40元/1年
通用网络增强型sn2ne8核32G1M10673.40元/1年

六、心选建站
心选建站是阿里云最近上架的建站产品专区,产品包含模板站根底版、模板站标准版、模板站企业版、定制站标准版、定制站高级版、定制站尊贵版。目前首要的优惠为云·企业官网类建站产品能够享受买一年送半年,下单抽iphone11奖品的优惠。

七、抢手活动引荐
这儿汇总了阿里云全站一切抢手的优惠活动,假如云小站上所展现的云产品或者装备不是自己想要的,你能够经过该板块了解阿里云当下正在进行哪些抢手活动,经过其他抢手活动去选购自己想要的阿里云服务器或者其他云产品。

[渗透]缓慢的HTTP拒绝服务攻击原理、利用和防范

漏洞等级:中

Slow HTTP Denial of Service Attack 缓慢的HTTP拒绝服务攻击

TCP三次握手:

攻击原理:
对任何一个开放了http访问的服务器,先建立一个连接,指定一个比较大的content-length,然后以非常低的速度发包,比如1-10s发一个字节,然后维持这个连接不断开。如果客户端持续建立这样的连接,那么服务器的可用连接将一点一点被占满,从而导致拒绝服务。

和CC攻击一样,只要Web服务器开放了Web服务,那么它就可以是一个靶子,HTTP协议在接收到request之前是不对请求内容作校验的,所以即使你的Web应用没有可用的form表单,这个攻击一样有效。

在客户端以单线程方式建立较大数量的无用连接,并保持持续发包的代价非常的低廉。实际试验中一台普通PC可以建立的连接在3000个以上。这对一台普通的Web server,将是致命的打击。更不用说结合肉鸡群做分布式DoS了。

鉴于此攻击简单的利用程度、拒绝服务的后果、带有逃逸特性的攻击方式,这类攻击一炮而红,成为众多攻击者的研究和利用对象。

慢速攻击的分类:
Slow headers:Web应用在处理HTTP请求之前都要先接收完所有的HTTP头部,因为HTTP头部中包含了一些Web应用可能用到的重要的信息。攻击者利用这点,发起一个HTTP请求,一直不停的发送HTTP头部,消耗服务器的连接和内存资源。抓包数据可见,攻击客户端与服务器建立TCP连接后,每30秒才向服务器发送一个HTTP头部,而Web服务器再没接收到2个连续的\r\n时,会认为客户端没有发送完头部,而持续的等等客户端发送数据。
Slow body:攻击者发送一个HTTP POST请求,该请求的Content-Length头部值很大,使得Web服务器或代理认为客户端要发送很大的数据。服务器会保持连接准备接收数据,但攻击客户端每次只发送很少量的数据,使该连接一直保持存活,消耗服务器的连接和内存资源。抓包数据可见,攻击客户端与服务器建立TCP连接后,发送了完整的HTTP头部,POST方法带有较大的Content-Length,然后每10s发送一次随机的参数。服务器因为没有接收到相应Content-Length的body,而持续的等待客户端发送数据。
Slow read:客户端与服务器建立连接并发送了一个HTTP请求,客户端发送完整的请求给服务器端,然后一直保持这个连接,以很低的速度读取Response,比如很长一段时间客户端不读取任何数据,通过发送Zero Window到服务器,让服务器误以为客户端很忙,直到连接快超时前才读取一个字节,以消耗服务器的连接和内存资源。抓包数据可见,客户端把数据发给服务器后,服务器发送响应时,收到了客户端的ZeroWindow提示(表示自己没有缓冲区用于接收数据),服务器不得不持续的向客户端发出ZeroWindowProbe包,询问客户端是否可以接收数据。
慢速攻击的利用工具:
Slowhttptest https://github.com/shekyan/slowhttptest
Slowloris
测试工具SlowHttpTest:
安装方法1:

安装openssl和libssl-dev
sudo apt-get install openssl
sudo apt-get install libssl-dev
安装libssl如果失败,执行apt-get update,然后再执行sudo apt-get install libssl-dev
安装slowhttptest
git clone https://github.com/shekyan/slowhttptest.git
cd slowhttptest
./configure
make
make install
安装方法2:
sudo apt-get install slowhttptest

使用:
参数:

-g 在测试完成后,以时间戳为名生成一个CVS和HTML文件的统计数据
-H SlowLoris模式
-B Slow POST模式
-R Range Header模式
-X Slow Read模式
-c number of connections 测试时建立的连接数
-d HTTP proxy host:port 为所有连接指定代理
-e HTTP proxy host:port 为探测连接指定代理
-i seconds 在slowrois和Slow POST模式中,指定发送数据间的间隔。
-l seconds 测试维持时间
-n seconds 在Slow Read模式下,指定每次操作的时间间隔。
-o file name 使用-g参数时,可以使用此参数指定输出文件名
-p seconds 指定等待时间来确认DoS攻击已经成功
-r connections per second 每秒连接个数
-s bytes 声明Content-Length header的值
-t HTTP verb 在请求时使用什么操作,默认GET
-u URL 指定目标url
-v level 日志等级(详细度)
-w bytes slow read模式中指定tcp窗口范围下限
-x bytes 在slowloris and Slow POST tests模式中,指定发送的最大数据长度
-y bytes slow read模式中指定tcp窗口范围上限
-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
1
哪些服务器易被慢速攻击
慢速攻击主要利用的是thread-based架构的服务器的特性,这种服务器会为每个新连接打开一个线程,它会等待接收完整个HTTP头部才会释放连接。比如Apache会有一个超时时间来等待这种不完全连接(默认是300s),但是一旦接收到客户端发来的数据,这个超时时间会被重置。正是因为这样,攻击者可以很容易保持住一个连接,因为攻击者只需要在即将超时之前发送一个字符,便可以延长超时时间。而客户端只需要很少的资源,便可以打开多个连接,进而占用服务器很多的资源。

经验证,Apache、httpd采用thread-based架构,很容易遭受慢速攻击。而另外一种event-based架构的服务器,比如nginx和lighttpd则不容易遭受慢速攻击。

如何防护慢速攻击
Apache服务器现在使用较多的有三种简单防护方式。
第一种:
mod_reqtimeout :Apache2.2.15后,该模块已经被默认包含,用户可配置从一个客户端接收HTTP头部和HTTPbody的超时时间和最小速率。如果一个客户端不能在配置时间内发送万头部或body数据,服务器会返回一个408REQUEST TIME OUT错误。配置文件如下:

< IfModule mod_reqtimeout.c >
RequestReadTimeout header=20-40,MinRate=500 body=20,MinRate=500
< /IfModule >


第二种:
mod_qos:Apache的一个服务质量控制模块,用户可配置各种不同粒度的HTTP请求阈值,配置文件如下:

< IfModule mod_qos.c >
/# handle connections from up to 100000 different IPs
QS_ClientEntries 100000
/# allow only 50 connections per IP
QS_SrvMaxConnPerIP 50
/# limit maximum number of active TCP connections limited to 256
MaxClients 256
/# disables keep-alive when 180 (70%) TCP connections are occupied
QS_SrvMaxConnClose 180
/# minimum request/response speed (deny slow clients blocking the server, keeping connections open without requesting anything
QS_SrvMinDataRate 150 1200
< /IfModule >

第三种:
mod_security:一个开源的WAF模块,有专门针对慢速攻击防护的规则,配置如下:

SecRule RESPONSE_STATUS “@streq 408” “phase:5,t:none,nolog,pass, setvar:ip.slow_dos_counter=+1, expirevar:ip.slow_dos_counter=60, id:’1234123456′”
SecRule IP:SLOW_DOS_COUNTER “@gt 5” “phase:1,t:none,log,drop,
msg:’Client Connection Dropped due to high number of slow DoS alerts’, id:’1234123457′”
1
2
3
传统的流量清洗设备针对CC攻击,主要通过阈值的方式来进行防护,某一个客户在一定的周期内,请求访问量过大,超过了阈值,清洗设备通过返回验证码或者JS代码的方式。这种防护方式的依据是,攻击者们使用肉鸡上的DDoS工具模拟大量http request,这种工具一般不会解析服务端返回数据,更不会解析JS之类的代码。因此当清洗设备截获到HTTP请求时,返回一段特殊JavaScript代码,正常用户的浏览器会处理并正常跳转不影响使用,而攻击程序会攻击到空处。

而对于慢速攻击来说,通过返回验证码或者JS代码的方式依然能达到部分效果。但是根据慢速攻击的特征,可以辅助以下几种防护方式:1、周期内统计报文数量。一个TCP连接,HTTP请求的报文中,报文过多或者报文过少都是有问题的,如果一个周期内报文数量非常少,那么它就可能是慢速攻击;如果一个周期内报文数量非常多,那么它就可能是一个CC攻击。2、限制HTTP请求头的最大许可时间。超过最大许可时间,如果数据还没有传输完成,那么它就有可能是一个慢速攻击。
————————————————

apache缓慢的http拒绝服务攻击修改办法

在httpd.conf中添加 LoadModule reqtimeout_module modules/mod_reqtimeout.so

查看是否存在mod_reqtimeout.so模块

[root@localhost ~]# rpm -ql httpd |grep .so

/usr/lib64/httpd/modules/mod_reqtimeout.so

添加配置

[root@localhost ~]# vi /etc/httpd/conf/httpd.conf

    RequestReadTimeout header=5-40,MinRate=500 body=20,MinRate=500

LoadModule reqtimeout_module modules/mod_reqtimeout.so

重启apache

service httpd restart