对于这样的攻击措施是在ⅡS上取消这个域名的绑定,让CC攻击失去目标。具体操作步骤是:打开“ⅡS管理器”定位到具体站点右键“属性”打开该站点的属性面板,点击IP地址右侧的“高级”按钮,选择该域名项进行编辑,将“主机头值”删除或者改为其它的值(域名)。
攻击者借助代理服务器生成指向受害主机的合法请求,实现DDOS和伪装就叫:CC(ChallengeCollapsar)。
CC主要是用来攻击页面的。大家都有这样的经历,就是在访问论坛时,如果这个论坛比较大,访问的人比较多,打开页面的速度会比较慢,访问的人越多,论坛的页面越多,数据库压力就越大,被访问的频率也越高,占用的系统资源也就相当可观。
一个静态页面不需要服务器多少资源,甚至可以说直接从内存中读出来发给你就可以了,但是论坛就不一样了,我看一个帖子,系统需要到数据库中判断我是否有读帖子的权限,如果有,就读出帖子里面的内容,显示出来——这里至少访问了2次数据库,如果数据库的数据容量有200MB大小,系统很可能就要在这200MB大小的数据空间搜索一遍,这需要多少的CPU资源和时间?如果我是查找一个关键字,那么时间更加可观,因为前面的搜索可以限定在一个很小的范围内,比如用户权限只查用户表,帖子内容只查帖子表,而且查到就可以马上停止查询,而搜索肯定会对所有的数据进行一次判断,消耗的时间是相当的大。
CC就是充分利用了这个特点,模拟多个用户(多少线程就是多少用户)不停的进行访问(访问那些需要大量数据操作,就是需要大量CPU时间的页面).这一点用一个一般的性能测试软件就可以做到大量模拟用户并发。
防CC攻击:
CC攻击可以归为DDoS攻击的一种。他们之间的原理都是一样的,即发送大量的请求数据来导致服务器拒绝服务,是一种连接攻击。CC攻击又可分为代理CC攻击,和肉鸡CC攻击。代理CC攻击是黑客借助代理服务器生成指向受害主机的合法网页请求,实现DDoS,和伪装就叫:cc(Challenge Collapsar)。而肉鸡CC攻击是黑客使用CC攻击软件,控制大量肉鸡,发动攻击,相比来后者比前者更难防御。因为肉鸡可以模拟正常用户访问网站的请求。伪造成合法数据包。
一个静态页面不需要服务器多少资源,甚至可以说直接从内存中读出来发给你就可以了,但是论坛之类的动态网站就不一样了,我看一个帖子,系统需要到数据库中判断我是否有读帖子的权限,如果有,就读出帖子里面的内容,显示出来——这里至少访问了2次数据库,如果数据库的体积有200MB大小,系统很可能就要在这200MB大小的数据空间搜索一遍,这需要多少的CPU资源和时间?如果我是查找一个关键字,那么时间更加可观,因为前面的搜索可以限定在一个很小的范围内,比如用户权限只查用户表,帖子内容只查帖子表,而且查到就可以马上停止查询,而搜索肯定会对所有的数据进行一次判断,消耗的时间是相当的大。
CC攻击就是充分利用了这个特点,模拟多个用户(多少线程就是多少用户)不停的进行访问(访问那些需要大量数据操作,就是需要大量CPU时间的页面,比如asp/php/jsp/cgi)。很多朋友问到,为什么要使用代理呢?因为代理可以有效地隐藏自己的身份,也可以绕开所有的防火墙,因为基本上所有的防火墙都会检测并发的TCP/IP连接数目,超过一定数目一定频率就会被认为是Connection-Flood。当然也可以使用肉鸡发动CC攻击。肉鸡的CC攻击效果更可观。致使服务器CPU%100,甚至死机的现象。
使用代理攻击还能很好的保持连接,这里发送了数据,代理转发给对方服务器,就可以马上断开,代理还会继续保持着和对方连接(我知道的记录是有人利用2000个代理产生了35万并发连接)。
当然,CC也可以利用这里方法对FTP、游戏端口、聊天房间等进行攻击,也可以实现TCP-FLOOD,这些都是经过测试有效的。
参考资料:网页链接
你是什么的语言网站,我这边有ASP asp.net php的防CC攻击代码可以分享。如果你的网站是放在美国的可以搜索(红盾 免费对抗CC攻击),他们有提供免费的保护(对抗攻击)服务,网站被攻击时找他们免费帮忙,即简单又方便。
防cc攻击asp.net(c#)版
using System
using System.Collections
using System.ComponentModel
using System.Data
using System.Drawing
using System.Web
using System.Web.SessionState
using System.Web.UI
using System.Web.UI.WebControls
using System.Web.UI.HtmlControls
using System.IO
using System.Text
//中国红盾防御网 专业的防御技术,可以对抗110G的ddos攻击
namespace cc
{
/// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(Request.ServerVariables["HTTP_VIA"]!=null)
{
string user_IP=Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString()
if (Request.ServerVariables["HTTP_X_FORWARDED_FOR"]==null)
{
Response.Write("系统正在维护中")
Response.End()
}
if(Request.ServerVariables["HTTP_VIA"]==Request.ServerVariables["REMOTE_ADDR"])
{
Response.Write("系统正在维护中")
Response.End()
}
}
else
{
string user_IP=Request.ServerVariables["REMOTE_ADDR"].ToString()
if(Request.ServerVariables["Remote_Host"]!=Request.ServerVariables["REMOTE_ADDR"])
{
Response.Redirect("error.html")
}
}
System.IO.File.CreateText("CCLog.txt")
if(!System.IO.File.Exists("CCLog.txt"))
{
System.IO.File.CreateText("CCLog.txt")
}
StreamWriter w = File.AppendText("CCLog.txt")
w.WriteLine("user_IP &&DateTime.Now.ToLongTimeString()")
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent()
base.OnInit(e)
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load)
}
#endregion
}
}
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)