关闭

DDOS攻击囊括了OSI第三层、第四层、以及第七层,此文将介绍OSI Layer7 又称作应用程式层的攻击手法,并提供相对应的应对方式。

 

Http Flood

定义:

Http为通常用于浏览网站页面的网路协议,而Http洪水攻击主要是通过伪装成正常的http Request来攻击网站页面,并占据Web Server的运算资源,从而瘫痪网站的连线Session,导致真正流量无法正常取得网站资源;也有人会称此攻击为CC攻击 (Challenge Collapsar Attack)

Http Request在Restful架构中的定义有两种拿取网站资源的方式,也分别是Http Flood最主要的伪装手法:

  1. Http GET:向指定的网站要求资料,主要是拿取图像、影片档、文字等等资料的请求,攻击者透过多台Zombie同时拿取,来耗尽网页伺服器的资源。
  2. Http POST:在网站上点选会员申请、帐号送出等等需要安全传送资料的动作,都是透过Http POST的方式。另外,通常此动作会与后端资料库做联系,攻击者持续或者一瞬间发出大量的POST请求,同样也会导致服务饱和、甚至有拒绝服务的情况产生。

另外,透过http GET的方式,也有一种缓慢且低流量的攻击模式,有别于传统攻击手法是一次性、大量的传入封包,是透过缓慢占据机器多个执行绪的方式,来造成主机无法服务正常流量;通常是透过R.U.D.Y. (R-U-Dead-Yet)的工具,来达成攻击。

应对方法:
  1. 架设WAF(Web Application Firewall)。
    如AWS Cloud Shield、GCP Cloud Armor、Alibaba Anti-DDOS。
  2. 在进行POST的动作前,透过各种方式来验证使用者,例如图片辨识等。
  3. 架设如Load Balance等等的反向代理,透过Reverse Proxy的机制来防止供应服务的主机被攻击。
  4. 流量清洗,透过判别IP来源,比对自家的白名单库,来确认是否放行。
  5. 低速缓慢攻击可透过扩大主机执行绪的方式来阻止,但不可避免的是仍会造成回应速度减低,因此还是建议透过上述方式来进行防御。
 

DNS Hijacking (DNS劫持)

定义:

DNS劫持的攻击手法通常是透过DNS重新定向,使真实上网的使用者连结到攻击者所架设的假网站。

一般DNS查询的模式,使用者发出查询讯息,到所在网域内的DNS Server,DNS Server再返回正确的IP给使用者。

而DNS劫持是攻击者透过各种方式更改DNS设定,让正常的使用者存取到错误的IP。

例:使用者存取 google.com,正确网站的IP位置为8.8.8.8,然而DNS server已遭受攻击,使用者查询google.com,返回的是错误IP:192.168.3.4。

DNS劫持共分为四种攻击模式:
  1. 本机端劫持:
    恶意攻击者会在使用者的电脑上安装木马程式,更改本机端的DNS设定,造成使用者联线到恶意网站。
  2. 中间人攻击(Man in the Middle attack)简称MITM 攻击:
    攻击者截取使用者端到DNS server的封包进行修改,造成使用者连线到错误的IP位置。
  3. 路由器劫持:
    通过攻击路由器,修改其中的DNS设定,造成错误的IP响应。
  4. 恶意DNS Server (Rogue DNS Server):
    攻击者直接攻击DNS Server,并修改其中的DNS设定,比较难以成功,但是造成的影响与危害最大。
应对方式:
DNSSEC (Domain Name System Security Extensions,域名安全系统扩充)

-由于DNS Server通常使用UDP的通讯方式,并不会检查来源,因而形成诸多透过DNS的攻击手法,为了保护 DNS  Server,使伪造的 DNS 记录不造成影响,因而发展出DNSSEC的技术。

通过DNSSEC的技术,所有的 DNS 回覆都必须要有数位签章。

以此来确保DNS的纪录没有受到伪造。
 

DNS 污染 (DNS cache pollution - DNS Spoofing)

定义:

通过DNS Spoofing(DNS伪造)的方式,来使DNS快取伺服器纪录错误的IP位置。

现今网路都有可靠且可信赖的DNS Server供网路使用者查询,但有些时候为了分担这些伺服器的压力,就会透过其他的DNS Server来进行查询,通常这些DNS Server会快取住第一次查询,以便使用者第二次查询时能快速存取。

攻击透过此机制,利用DNS Spoofing的方式去将DNS Server的纪录污染,同时也会连带影响到其他邻近的DNS Server,造成严重的后果。有些案例是政府机构为了避免自己的国民连线至某些网站,特意进行DNS污染,严重时有可能会连带影响到网际网路上的其他国家的使用者。

应对方式:
DNSSEC (Domain Name System Security Extensions,域名安全系统扩充)

-由于DNS Server通常使用UDP的通讯方式,并不会检查来源,因而形成诸多透过DNS的攻击手法,为了保护 DNS  Server,使伪造的 DNS 记录不造成影响,因而发展出DNSSEC的技术。
通过DNSSEC的技术,所有的 DNS 回覆都必须要有数位签章。

以此来确保DNS的纪录没有受到伪造。
 

Memcached 攻击

定义:

Memcached是一种分散式物件快取系统,用于协助减轻网站资料库的负担,并提升网站效能。

而Memcached 攻击之手法类似于NTP、DNS放大攻击,是透过网路上多个处理Memcached的UDP Server去响应更大的封包,并藉由IP Spoofing的方式,使这些放大后的封包被传送到受害者的网域,造成受害者端服务中断。

应对方式:
  1. 确认自身业务是否需要UDP Port,若不需要则关闭UDP Port,防止自身成为放大封包的帮凶,并只监听内网IP。
  2. 架设防火墙于Memcached Server前。
  3. 验证IP来源。
  4. 云原生的防御服务。
 

小结

现今网际网路的时代,从OSI第四层到第七层的攻击手法越来越多变,但恶意骇客的目的都不会改变 - 阻挡服务正常运作。基于这个目的,我们可以知道,判别正常流量将会是所有防御模式的核心。

幸运的是新世代的IT人员可以选择的防御模式也越来越多元,但多元化的服务与产品,往往也造成技术单位的负担与混淆。

因此海尔云端的使命即为协助客户打造高可用性且完整的整体服务架构,且海尔具备多位专业工程师,能够整合多云优点,来帮助不同需求的客户。

请根据您的问题与需求,来与我们联系,让海尔云端协助您的云端之路,Higher Cloud,Higher than YOU think。