中国网络安全联盟吧 关注:9,751贴子:20,521
  • 0回复贴,共1

如何通过代理ip隐藏真实ip来进行防DDoS攻击?

只看楼主收藏回复

在如今互联网时代,所有业务场景都离不开互联网,每个品牌都有自己的网站,在网站经营中我们不可避免会遇到一些恶意或者流量异常造成的网站负载过高出现各种问题。在此我们如何能够避免这种情况呢?

首先网站进行攻击是根据频繁的访问一个ip域名造成流量超出所能承载的上限,从而达到让网络瘫痪的目的。
那么我们有什么办法可以有效避免这种情况的出现呢?
下面我们进行讲解分析:
目前常见的攻击手段有以下:
1.直接攻击:主要针对有重要缺陷的WEB应用程序,一般说来是程序写的有问题的时候,通过漏洞攻击才会出现这种情况,比较少见。
2.僵尸网络攻击:有点类似于DDOS攻击了,从WEB应用程序层面上已经无法防御。
3.代理攻击:CC攻击者一般会操作一批代理服务器,比方说100个代理,然后每个代理同时发出10个请求,这样WEB服务器同时收到1000个并发请求的,并且在发出请求后,立刻断掉与代理的连接,避免代理返回的数据将本身的带宽堵死,而不能发动再次请求,这时WEB服务器会将响应这些请求的进程进行队列,数据库服务器也同样如此,这样一来,正常请求将会被排在很后被处理,就象本来你去食堂吃饭时,一般只有不到十个人在排队,今天前面却插了一千个人,那么轮到你的机会就很小很小了,这时就出现页面打开极其缓慢或者白屏。
这些通过DNS解析,CDN(网站卫士)和PHP代码限制刷新的手段可以解决网站被攻击的解决方案。
一般我们遇到的情况,就是几个IP,不断的访问网站请求资源。随着技术的升级,现有的防护已经不能百分百的拦截,之前CC攻击的手段是攻击网站的任何一个页面,后来有了统计工具,攻击的时候IP就会被记录下来,于是做坏事的人就换了方法——去登陆页面或者管理后台这样没有统计代码的地方搞破坏。但是新的PHP代码解决方案出来了,通过SESSION来记录刷新的次数,然后针对超过在规定时间内访问次数的IP,进行页面重定向;只要是页面总会有代码,所以这个PHP的解决方案在当时也是很有效的。
然而事情并没有到此结束!最近我看了系统日志,才发现,攻击者开始不对页面进行CC攻击了,而是对着站点的favicon.ico进行CC攻击,这么个小文件几乎每个网站都有。而且这样的文件,根本防不胜防了。即使你用了诸如七牛CDN之类的CDN,访问源站的地址还是会访问到的。
升级版的解决方案
对于这样的攻击,我是无计可施了,我百度和谷歌了相应的解决方案,找到了以下几个比较靠谱的手法,供大家参考:
1.域名解析
暂时暂停一下域名的解析:本方法适合域名真实IP还没有暴露的朋友们,如果CC攻击者是通过域名攻击你的网站的,那么我们暂时让他们攻击失效,一会儿就会好起来。
或者你也可以把自己的域名解析到127.0.0.1上,让攻击你的CC狂魔来反攻击自己的服务器。
2.防火墙
安装防火墙:如果你是VPS用户,可以试试阿里云盾,或者CSF这款免费的防火墙程序。顺便附上一行CSF防火墙有效设置防止CC攻击的设置行:首先用vim命令打开csf.conf,然后修改一行命令:
vim /etc/csf/csf.confPORTFLOOD = "22;tcp;5;300,80;tcp;20;5"
3.设置IP黑名单
这个方法实际上也是最无奈,也是最有效的方案。我在寻找CC攻击的解决方案的时候看见了月光博客发的博文,虽然月光没有给出他的代码,但是他说了他的思路就是屏蔽IP黑名单。像月光博客这么大的网站,黑名单IP也只有100多条。于是我决定自己找出这些老鼠屎手动屏蔽之。
打开网站访客日志,查看异常IP,进行屏蔽。为了大家看的清楚,我这里用Cpanel面板截图:

点击最近访客就可以进去查看网站的访客和他们的浏览行为了。哪些IP是可疑的?
短时间内频繁访问网站的IP;
User Agent中包含MSIE 6.0的IP,这个年代,身为人类,用这个浏览器的人不多,经过我的观察,100%的恶意CC攻击的IP都是来自这个UA,其实我早就想把所有的IE6.0用户排除我的网站了,正常的访客,一个月里面也没有几个会用IE6.0浏览器的了;
访问favicon.ico次数频繁的IP,前面说了,不解释;
来自同一频段的IP,比如168.168.121.9和168.168.119.8这样相近的IP如果多次出现在你的访客中,显然都是一伙的来刷CC的,屏蔽掉。
在这里屏蔽掉!如图:

1.隐藏服务器真实IP是解决问题最好和最快的方法,但只针对小流量,大流量同样会扛不住。
服务器前端加CDN中转,比如阿里云、百度云加速、360网站卫士、加速乐、安全宝等,如果资金充裕的话,可以购买高防的盾机,用于隐藏服务器真实IP,域名解析使用CDN的IP,所有解析的子域名都使用CDN的IP地址。此外,服务器上部署的其他域名也不能使用真实IP解析,全部都使用CDN来解析。
另外防止服务器对外传送信息泄漏IP,最常见的是,服务器不使用发送邮件功能,如果非要发送邮件,可以通过第三方代理(例如代理ip:cg19920815)发送,这样对外显示的IP是代理的IP。
只要服务器的真实IP不泄露,10G以下小流量DDoS的预防花不了多少钱,免费的CDN就可以应付得了。如果攻击流量超过20G,那么免费的CDN可能就顶不住了,需要购买一个高防的盾机来应付了,而服务器的真实IP同样需要隐藏。
总结:
1、无论什么时候都要隐藏真实IP
2、购买CDN来抗DDoS不一定全程抗住,比较运营商会果断的屏蔽你的域名
3、DDoS是一个长久对抗的话题,尤其是应对大流量的攻击更是需要时间来磨,防守同样需要大量的资金注入,比如流量需要钱,盾机需要钱等等,主要看业务的损失来衡量需不需要投入大量的金钱去维护了。
4、以上观点只是从个人角度出发,如有其他见解评论区讨论。


1楼2022-09-22 14:02回复