什么是CC攻击,如何防止网站被CC攻击?
CC主要是用来攻击页面的。就是在访问论坛时,如果这个论坛比较大,访问的人比较多,打开页面的速度会比较慢,对不?!一般来说,访问的人越多,论坛的页面越多,数据库就越大,被访问的频率也越高,占用的系统资源也就相当可观,现在知道为什么很多空间服务商都说大家不要上传论坛,聊天室等东西了吧。
一个静态页面不需要服务器多少资源,甚至可以说直接从内存中读出来发给你就可以了,但是论坛就不一样了,我看一个帖子,系统需要到数据库中判断我是否有读读帖子的权限,如果有,就读出帖子里面的内容,显示出来——这里至少访问了2次数据库,如果数据库的体积有200MB大小,系统很可能就要在这200MB大小的数据空间搜索一遍,这需要多少的CPU资源和时间?如果我是查找一个关键字,那么时间更加可观,因为前面的搜索可以限定在一个很小的范围内,比如用户权限只查用户表,帖子内容只查帖子表,而且查到就可以马上停止查询,而搜索肯定会对所有的数据进行一次判断,消耗的时间是相当的大。
CC就是充分利用了这个特点,模拟多个用户(多少线程就是多少用户)不停的进行访问(访问那些需要大量数据操作,就是需要大量CPU时间的页面)。很多朋友问到,为什么要使用代理呢?因为代理可以有效地隐藏自己的身份,也可以绕开所有的防火墙,因为基本上所有的防火墙都会检测并发的TCP/IP连接数目,超过一定数目一定频率就会被认为是Connection-Flood。
使用代理攻击还能很好的保持连接,我们这里发送了数据,代理帮我们转发给对方服务器,我们就可以马上断开,代理还会继续保持着和对方连接(我知道的记录是有人利用2000个代理产生了35万并发连接)。
可能很多朋友还不能很好的理解,我来描述一下吧。我们假设服务器A对Search.asp的处理时间需要0.01S(多线程只是时间分割,对结论没有影响),也就是说他一秒可以保证100个用户的Search请求,服务器允许的最大连接时间为60s,那么我们使用CC模拟120个用户并发连接,那么经过1分钟,服务器的被请求了7200次,处理了6000次,于是剩下了1200个并发连接没有被处理。有的朋友会说:丢连接!丢连接!问题是服务器是按先来后到的顺序丢的,这1200个是在最后10秒的时候发起的,想丢?!还早,经过计算,服务器满负开始丢连接的时候,应该是有7200个并发连接存在队列,然后服务器开始120个/秒的丢连接,我们发动的连接也是120个/秒,服务器永远有处理不完的连接,服务器的CPU 100%并长时间保持,然后丢连接的60秒服务器也判断处理不过来了,新的连接也处理不了,这样服务器达到了超级繁忙状态。
蝴蝶:我们假设服务器处理Search只用了0.01S,也就是10毫秒(这个速度你可以去各个有开放时间显示的论坛看看),我们使用的线程也只有120,很多服务器的丢连接时间远比60S长,我们的使用线程远比120多,可以想象可怕了吧,而且客户机只要发送了断开,连接的保持是代理做的,而且当服务器收到SQL请求,肯定会进入队列,不论连接是否已经断开,而且服务器是并发的,不是顺序执行,这样使得更多的请求进入内存请求,对服务器负担更大。
当然,CC也可以利用这里方法对FTP进行攻击,也可以实现TCP-FLOOD,这些都是经过测试有效的。
防范方法
说了攻击原理,大家肯定会问,那么怎么防御?使用硬件防火墙我不知道如何防范,除非你完全屏蔽页面访问,我的方法是通过页面的编写实现防御。
1. 使用Cookie认证。这时候朋友说CC里面也允许Cookie,但是这里的Cookie是所有连接都使用的,所以启用IP+Cookie认证就可以了。
2. 利用Session。这个判断比Cookie更加方便,不光可以IP认证,还可以防刷新模式,在页面里判断刷新,是刷新就不让它访问,没有刷新符号给它刷新符号。给些示范代码吧,Session:
%if session(“refresh”) 1 then
Session(“refresh”)=session(“refresh”)+1
Response.redirect “index.asp”
End if
%
这样用户第一次访问会使得Refresh=1,第二次访问,正常,第三次,不让他访问了,认为是刷新,可以加上一个时间参数,让多少时间允许访问,这样就限制了耗时间的页面的访问,对正常客户几乎没有什么影响。
3. 通过代理发送的HTTP_X_FORWARDED_FOR变量来判断使用代理攻击机器的真实IP,这招完全可以找到发动攻击的人,当然,不是所有的代理服务器都发送,但是有很多代理都发送这个参数。详细代码:
%
Dim fsoObject
Dim tsObject
dim file
if Request.ServerVariables("HTTP_X_FORWARDED_FOR")="" then
response.write "无代理访问"
response.end
end if
Set fsoObject = Server.CreateObject("Scripting.FileSystemObject")
file = server.mappath("CCLog.txt")
if not fsoObject.fileexists(file) then
fsoObject.createtextfile file,true,false
end if
set tsObject = fsoObject.OpenTextFile(file,8)
tsObject.Writeline Request.ServerVariables("HTTP_X_FORWARDED_FOR")"["Request.ServerVariables("REMOTE_ADDR")"]"now()
Set fsoObject = Nothing
Set tsObject = Nothing
response.write "有代理访问"
%
这样会生成CCLog.txt,它的记录格式是:真实IP [代理的IP] 时间,看看哪个真实IP出现的次数多,就知道是谁在攻击了。将这个代码做成Conn.asp文件,替代那些连接数据库的文件,这样所有的数据库请求就连接到这个文件上,然后马上就能发现攻击的人。
4. 还有一个方法就是把需要对数据查询的语句做在Redirect后面,让对方必须先访问一个判断页面,然后Redirect过去。
5. 在存在多站的服务器上,严格限制每一个站允许的IP连接数和CPU使用时间,这是一个很有效的方法。
CC的防御要从代码做起,其实一个好的页面代码都应该注意这些东西,还有SQL注入,不光是一个入侵工具,更是一个DDOS缺口,大家都应该在代码中注意。举个例子吧,某服务器,开动了5000线的CC攻击,没有一点反应,因为它所有的访问数据库请求都必须一个随机参数在Session里面,全是静态页面,没有效果。突然发现它有一个请求会和外面的服务器联系获得,需要较长的时间,而且没有什么认证,开800线攻击,服务器马上满负荷了。
代码层的防御需要从点点滴滴做起,一个脚本代码的错误,可能带来的是整个站的影响,甚至是整个服务器的影响,慎之!
什么是DDoS攻击?面对DDOS攻击的处理方式
你好!
DDoS攻击是什么:
DDoS攻击全名为分布式拒绝服务攻击,是攻击者将多台受控制的计算机联合起来向目标计算机同时发起攻击,让目标主机系统资源耗尽,使其停止服务甚至崩溃。同时还可阻塞目标网络,使其无法为用户提供服务。
DDoS攻击常见处理办法:
1、预防:隐藏服务器或目标主机的真实IP地址,避免真实IP直接暴露在互联网,成为不法分子的攻击目标;
2、自建:架设专业防护DDoS攻击的网络安全设备,通过设置防护策略对发生的DDoS攻击进行处置,主要通过设置异常流量清洗阈值、源认证、攻击特征匹配、首包校验重传等方式实现安全防护;
3、购买服务:根据线网流量的情况,可以考虑选购国内某些运营商或云清洗供应商提供的抗DDoS服务,借助服务提供商既有的DDoS攻击防护能力,保护自身业务稳定可靠运行。
如何检测网站服务器的漏洞?
查找Web服务器漏洞
在Web服务器等非定制产品中查找漏洞时,使用一款自动化扫描工具是一个不错的起点。与Web应用程序这些定制产品不同,几乎所有的Web服务器都使用第三方软件,并且有无数用户已经以相同的方式安装和配置了这些软件。
在这种情况下,使用自动化扫描器发送大量专门设计的请求并监控表示已知漏洞的签名,就可以迅速、高效地确定最明显的漏洞。Nessus 是一款优良的免费漏洞扫描器,还有各种商业扫描器可供使用,如 Typhon 与 ISS。
除使用扫描工具外,渗透测试员还应始终对所攻击的软件进行深入研究。同时,浏览Security Focus、邮件列表Bugtrap和Full Disclosure等资源,在目标软件上查找所有最近发现的、尚未修复的漏洞信息。
还要注意,一些Web应用程序产品中内置了一个开源Web服务器,如Apache或Jetty。因为管理员把服务器看作他们所安装的应用程序,而不是他们负责的基础架构的一部分,所以这些捆绑服务器的安全更新也应用得相对较为缓慢。而且,在这种情况下,标准的服务标题也已被修改。因此,对所针对的软件进行手动测试与研究,可以非常有效地确定自动化扫描工具无法发现的漏洞。
如何查找网络爆破记录
1、账号密码安全检测
首先需要检查服务器的管理员账号密码安全,查看服务器是否使用弱口令,包括administrator账号密码,Mysql数据库密码,网站后台的管理员密码,都需要逐一的排查,检查密码安全是否达标。
在检查一下服务器系统是否存在恶意账号,以及新添加的账号,像admin,admin$这样的账号一般都是由攻击者创建,可以采用运行,输入cmd命令,netuser查看,再看注册表里的账号。
2、服务器端口,系统进程安全检测
打开CMDnetstat-an检查当前系统的链接情况,查看是否存在一些恶意的IP链接,比如开放了一些不常见的端口,正常是用到80网站端口,8888端口,21ftp端口,3306数据库的端口,443SSL证书端口,9080java端口,22SSH端口,3389默认的远程管理端口,1433SQL数据库端口,除以上端口要正常开放,其余开放的端口都需要仔细检查。
3、服务器启动项,计划任务安全检测
查看服务器的启动项,输入msconfig命令,看一下是否有多余的启动项目,如果有检查该启动项是否正常,然后再查看服务器的计划任务,通过控制面板。组策略查看,服务自启动,查看系统有没有自己主动启动一些进程。
4、服务器的后门木马查杀
下载360杀毒,并更新病毒库,对服务器进行全面的安全检测与扫描,修复系统补丁,对网站代码进行人工安全检测,对网站漏洞的检测,网站木马后门的检测,也可以使用webshell查杀工具来进行查杀,*重要的木马规则库。
我公司的服务器最近老提示网络攻击!!!!!!!!!!!!!!!
建议同时查一下毒
然后实在不行就重新给服务器装系统或者干脆装个硬件防火墙
如何把受网络攻击的服务器等设备从网络中隔离出来
1、外部来的DoS攻击会造成网络掉线,判别方法是从路由器的系统日志文件中可以看出,Qno侠诺的路由器会显示遭受攻击,而且路由器持续在工作。其它品牌的路由器,有些也有相关的功能,用户可以查看使用手册。DoS病毒攻击,如SYN攻击,因为发出大量数据包导致系统资源占用过多,使路由器损耗效能造成网络壅塞,达到瘫痪网吧网络对于广域网来的攻击,路由器能作的不多,也无法反击。此时,网吧管理者或网管应直接联系对应的运营商,请求更换WAN IP。
2、内网遭受DoS攻击时,也会造成掉线或壅塞。网吧管理者或网管可以从被激活的告警日志中,查找到内网攻击源头的中毒机器,第一时间先拔除PC机网络线,阻止DoS攻击影响扩大,并进行杀毒或重新安装系统。
3、内网遭受冲击波攻击是另一个原因,冲击波攻击,是针对网络特定服务端口(TCP/UDP 135~139,445)发出大量数据包导致系统资源占用过多,使路由器损耗效能造成网络壅塞,以达到瘫痪网吧网络的目的。同样网吧管理者或网管可以从Qno侠诺被激活的告警日志中,发现问题。 网吧管理者或网管可以针对特定服务端口(TCP/UDP 135~139,445)设置网络存取条例,并从被激活的防火墙日志中,查找到内网攻击源头的中毒机器,第一时间先拔除PC机网络线,阻止冲击波攻击影响扩大,并进行杀毒或重新安装系统。
4、内网遭受ARP攻击是最近常发生的原因,ARP病毒攻击以窜改内网PC机或路由器 IP或MAC地址,来达到盗取用户账号/密码,进一步进行网络盗宝等犯罪行为,或是恶意瘫痪网吧网络。ARP病毒攻击会造成内网IP或MAC冲突,出现短时间内部份断线。网吧要确定网吧已做好Qno侠诺路由器及内网PC机端双向绑定IP/MAC地址的防制工作,内网所有的PC机与路由器IP/MAC地址对应关系都被保存到路由器的ARP缓存表中,不能被轻易更改。此时ARP攻击虽然并不会扩及其它PC机,但网吧管理者或网管还是必须立即查找出内网攻击源头的中毒机器,进行杀毒或重新安装系统。路由器内建ARP病毒来源自动检测工具,系统日志中可提供攻击源的IP或MAC地址,帮助网吧进行查找攻击源机器。有些高阶路由器也都有相仿的设计。
网络遭受攻击,可从路由器相关功能找出遭受攻击类型,网吧管理者或网管查找、直击攻击源加以隔离与排除,在攻击发起时即能迅速加以解决,无需等到客人反应受到影响。
另外网络的雍堵也可能造成掉线.
1、短暂网络壅塞,有可能是网吧内突发的带宽高峰,网吧管理员或网管应关注路由器的带宽统计,可先持续关注状况。若是尖峰时段,网吧客人较多,带宽也会比较吃紧,或是有用户使用BT、P2P软件做大量上传,占用大量带宽,造成网络卡。网吧管理员或网管此时应设置QoS流量管理规范内网用户最大使用带宽,才能让网络联机恢复正常,解决壅塞情况。
2、尖峰时段持续性壅塞,是有用户使用BT、P2P 软件进行大量下载,或在线观看电影、视讯等占用大量带宽行为。若是用户观看电影人数很多,网吧应考虑于内网安装电影服务器供用户使用,才不致因观看影片人多占用对外带宽。对于大量下载,则应考虑建置内部私服加以改善。
3、若是长时间从路由器看到带宽占用率高,有可能表示网吧根本带宽不足,线路带宽过小,不足以提供目前在线众多人数使用,应考虑加大线路带宽。这时就可利用多WAN口特性进行带宽的升级,解决带宽不足的问题。
措施:基于路由器的防范方法
一.内部PC基于IP地址限速
现在网络应用众多,BT、电驴、迅雷、FTP、在线视频等,都是非常占用带宽,以一个200台规模的网吧为例,出口带宽为10M,每台内部PC的平均带宽为50K左右,如果有几个人在疯狂的下载,把带宽都占用了,就会影响其他人的网络速度了,另外,下载的都是大文件,IP报文最大可以达到1518个BYTE,也就是1.5k,下载应用都是大报文,在网络传输中,一般都是以数据包为单位进行传输,如果几个人在同时下载,占用大量带宽,如果这时有人在玩网络游戏,就可能会出现卡的现象。
一个基于IP地址限速的功能,可以给整个网吧内部的所有PC进行速度限制,可以分别限制上传和下载速度,既可以统一限制内部所有PC的速度,也可以分别设置内部某台指定PC的速度。速度限制在多少比较合适呢?和具体的出口带宽和网吧规模有关系,不过最低不要小于40K的带宽,可以设置在100-400K比较合适。
二:内部PC限制NAT的链接数量
NAT功能是在网吧中应用最广的功能,由于IP地址不足的原因,运营商提供给网吧的一般就是1个IP地址,而网吧内部有大量的PC,这么多的PC都要通过这唯一的一个IP地址进行上网,如何做到这点呢?
答案就是NAT(网络IP地址转换)。内部PC访问外网的时候,在路由器内部建立一个对应列表,列表中包含内部PCIP地址、访问的外部IP地址,内部的IP端口,访问目的IP端口等信息,所以每次的ping、QQ、下载、WEB访问,都有在路由器上建立对应关系列表,如果该列表对应的网络链接有数据通讯,这些列表会一直保留在路由器中,如果没有数据通讯了,也需要20-150秒才会消失掉。(对于RG-NBR系列路由器来说,这些时间都是可以设置的)
现在有几种网络病毒,会在很短时间内,发出数以万计连续的针对不同IP的链接请求,这样路由器内部便要为这台PC建立万个以上的NAT的链接。
由于路由器上的NAT的链接是有限的,如果都被这些病毒给占用了,其他人访问网络,由于没有NAT链接的资源了,就会无法访问网络了,造成断线的现象,其实这是被网络病毒把所有的NAT资源给占用了。
针对这种情况,不少网吧路由器提供了可以设置内部PC的最大的NAT链接数量的功能,可以统一的对内部的PC进行设置最大的NAT的链接数量设置,也可以给每台PC进行单独限制。
同时,这些路由器还可以查看所有的NAT链接的内容,看看到底哪台PC占用的NAT链接数量最多,同时网络病毒也有一些特殊的端口,可以通过查看NAT链接具体内容,把到底哪台PC中毒了给揪出来。
三:ACL防网络病毒
网络病毒层出不穷,但是道高一尺,魔高一丈,所有的网络病毒都是通过网络传输的,网络病毒的数据报文也一定遵循TCP/IP协议,一定有源IP地址,目的IP地址,源TCP/IP端口,目的TCP/IP端口,同一种网络病毒,一般目的IP端口是相同的,比如冲击波病毒的端口是135,震荡波病毒的端口是445,只要把这些端口在路由器上给限制了,那么外部的病毒就无法通过路由器这个唯一的入口进入到内部网了,内部的网络病毒发起的报文,由于在路由器上作了限制,路由器不加以处理,则可以降低病毒报文占据大量的网络带宽。
优秀的网吧路由器应该提供功能强大的ACL功能,可以在内部网接口上限制网络报文,也可以在外部王接口上限制病毒网络报文,既可以现在出去的报文,也可以限制进来的网络报文。
四:WAN口防ping功能
以前有一个帖子,为了搞跨某个网站,只要有大量的人去ping这个网站,这个网站就会跨了,这个就是所谓的拒绝服务的攻击,用大量的无用的数据请求,让他无暇顾及正常的网络请求。
网络上的黑客在发起攻击前,都要对网络上的各个IP地址进行扫描,其中一个常见的扫描方法就是ping,如果有应答,则说明这个ip地址是活动的,就是可以攻击的,这样就会暴露了目标,同时如果在外部也有大量的报文对RG-NBR系列路由器发起Ping请求,也会把网吧的RG-NBR系列路由器拖跨掉。
现在多数网吧路由器都设计了一个WAN口防止ping的功能,可以简单方便的开启,所有外面过来的ping的数据报文请求,都装聋作哑,这样既不会暴露自己的目标,同时对于外部的ping攻击也是一个防范。
五:防ARP地址欺骗功能
大家都知道,内部PC要上网,则要设置PC的IP地址,还有网关地址,这里的网关地址就是NBR路由器的内部网接口IP地址,内部PC是如何访问外部网络呢?就是把访问外部网的报文发送给NBR的内部网,由NBR路由器进行NAT地址转发后,再把报文发送到外部网络上,同时又把外部回来的报文,去查询路由器内部的NAT链接,回送给相关的内部PC,完成一次网络的访问。
在网络上,存在两个地址,一个是IP地址,一个是MAC地址,MAC地址就是网络物理地址,内部PC要把报文发送到网关上,首先根据网关的IP地址,通过ARP去查询NBR的MAC地址,然后把报文发送到该MAC地址上,MAC地址是物理层的地址,所有报文要发送,最终都是发送到相关的MAC地址上的。
所以在每台PC上,都有ARP的对应关系,就是IP地址和MAC地址的对应表,这些对应关系就是通过ARP和RARP报文进行更新的。
目前在网络上有一种病毒,会发送假冒的ARP报文,比如发送网关IP地址的ARP报文,把网关的IP对应到自己的MAC上,或者一个不存在的MAC地址上去,同时把这假冒的ARP报文在网络中广播,所有的内部PC就会更新了这个IP和MAC的对应表,下次上网的时候,就会把本来发送给网关的MAC的报文,发送到一个不存在或者错误的MAC地址上去,这样就会造成断线了。
这就是ARM地址欺骗,这就是造成内部PC和外部网的断线,该病毒在前一段时间特别的猖獗。针对这种情况,防ARP地址欺骗的功能也相继出现在一些专业路由器产品上。
六:负载均衡和线路备份
举例来说,如锐捷RG-NBR系列路由器全部支持VRRP热备份协议,最多可以设定2-255台的NBR路由器,同时链接2-255条宽带线路,这些NBR和宽带线路之间,实现负载均衡和线路备份,万一线路断线或者网络设备损坏,可以自动实现的备份,在线路和网络设备都正常的情况下,便可以实现负载均衡。该功能在锐捷的所有的路由器上都支持。
而RG-NBR系列路由器中的RG-NBR1000E,更是提供了2个WAN口,如果有需要,还有一个模块扩展插槽,可以插上电口或者光接口模块,同时链接3条宽带线路,这3条宽带线路之间,可以实现负载均衡和线路备份,可以基于带宽的负载均衡,也可以对内部PC进行分组的负载均衡,还可以设置访问网通资源走网通线路,访问电信资源走电信线路的负载均衡。
0条大神的评论