国产成人毛片毛片久久网_国产午夜激无码av毛片不_国产乱对白精彩在线播放_av资源站中文字幕_亚洲男人的天堂网站_国产成 人 综合 亚洲网_中国国产激情一区_少妇一级淫片免费放_亚洲一本大道av久在线播放_免费观看美女裸体网站

行業(yè)動(dòng)態(tài)

防御吧作為15年知名老牌域名服務(wù)商,CNNIC和CANN雙認(rèn)證域名注冊(cè)商,已經(jīng)
持續(xù)為500多萬個(gè)域名提供服務(wù),包括智能DNS/自由轉(zhuǎn)移/隱私保護(hù)等服務(wù)!
老站長(zhǎng)分享:電商平臺(tái)遭遇CC攻擊,我們是如何應(yīng)對(duì)的?
2020-10-16 13:02:35 【

幾年前,我們的電商平臺(tái)遭遇過一次CC攻擊(一種分布式網(wǎng)絡(luò)攻擊,后面有詳細(xì)介紹),當(dāng)時(shí)整個(gè)網(wǎng)站幾乎陷于癱瘓的狀態(tài)。期間很多PC網(wǎng)頁和APP頁面打不開或者持續(xù)報(bào)錯(cuò),下單流程也徹底跑不通了。

上圖是對(duì)網(wǎng)站流量的監(jiān)控。我們可以看到10:00時(shí)UV(訪問用戶)和client IP數(shù)量突然激增,翻了幾千倍。

從后臺(tái)監(jiān)控看(上圖),CPU資源也被耗盡了。由于CPU被耗盡,服務(wù)器慢得要命,所以當(dāng)時(shí)根本無法登入服務(wù)器查看CPU詳細(xì)的使用情況,只能根據(jù)監(jiān)控頁面查看CPU使用情況。

另外,出口帶寬也被打滿了。所以那段時(shí)間很多請(qǐng)求根本進(jìn)不來。用戶看到的就是空白頁面,請(qǐng)求錯(cuò)誤等情況。

經(jīng)過分析,我們發(fā)現(xiàn)這次攻擊是新品限量首發(fā)活動(dòng)引發(fā)的,是一次薅羊毛活動(dòng)。攻擊者專門針對(duì)限量的新品進(jìn)行了分布式網(wǎng)絡(luò)攻擊,目的就是搶到限量新品,然后再在市場(chǎng)上高價(jià)出售獲利。

攻擊者利用接碼平臺(tái)(接碼平臺(tái),通俗點(diǎn)講就是接收手機(jī)驗(yàn)證碼的平臺(tái))提前注冊(cè)好大量的賬號(hào)。然后提前準(zhǔn)備好腳本程序,利用一些攻擊工具(文末有工具列表)將這些腳本分發(fā)到大量的代理或者肉雞,并通過這些代理和肉雞對(duì)網(wǎng)站發(fā)起分布式攻擊 。攻擊步驟如下圖:

下面我們?cè)敿?xì)了解一下CC攻擊。了解CC攻擊之前我們先弄清下面幾個(gè)概念。

僵尸主機(jī)&僵尸網(wǎng)絡(luò)

僵尸主機(jī)是指感染僵尸程序病毒,從而被黑客程序控制的計(jì)算機(jī)設(shè)備。該計(jì)算機(jī)設(shè)備可以是終端設(shè)備,也可以是云端設(shè)備,例如個(gè)人電腦,手機(jī),云端主機(jī)等。一般情況下,僵尸主機(jī)已經(jīng)被人操控并和其他僵尸主機(jī)組成了一個(gè)僵尸網(wǎng)絡(luò)。例如,一個(gè)人非法控制了10000臺(tái)電腦,他可以同時(shí)調(diào)度這10000臺(tái)電腦發(fā)起網(wǎng)絡(luò)攻擊行為,那么其中任意一臺(tái)電腦就可以稱為僵尸主機(jī),而這10000臺(tái)電腦就組成了僵尸網(wǎng)絡(luò)(其實(shí)是每個(gè)電腦中被安裝了僵尸客戶端程序)。通常,一臺(tái)被侵占的電腦只是僵尸網(wǎng)絡(luò)里面眾多僵尸主機(jī)中的一個(gè),僵尸程序會(huì)默默在后臺(tái)運(yùn)行。一般電腦的擁有者很難察覺到自己的系統(tǒng)已經(jīng)被“僵尸化”,就仿佛是沒有自主意識(shí)的僵尸一般。你用的手機(jī)電腦表面上看起來正常,也可能是被感染僵尸程序的一員。

肉雞

肉雞泛指所有那些被別人控制的計(jì)算機(jī)設(shè)備(電腦和手機(jī)等),而不管其是否屬于某個(gè)僵尸網(wǎng)絡(luò),是否被統(tǒng)一調(diào)度。計(jì)算機(jī)設(shè)備一旦被別人控制,就成為了別人砧板上的肉,別人想怎么吃就怎么吃,肉雞(機(jī))一名由此而來,也被稱之為傀儡機(jī)。當(dāng)然在肉雞上安裝僵尸程序之后,也就變成一個(gè)僵尸主機(jī)了,即大家所說的僵尸電腦,也就成了僵尸網(wǎng)絡(luò)的一員。

DDos攻擊

DDos,全稱Distributed Denial of Service,中文意思為“分布式拒絕服務(wù)”,就是利用大量合法的分布式計(jì)算機(jī)設(shè)備對(duì)目標(biāo)服務(wù)器(網(wǎng)站等)發(fā)送請(qǐng)求,導(dǎo)致目標(biāo)服務(wù)器CPU、內(nèi)存、帶寬等資源耗盡,從而導(dǎo)致正常用戶無法訪問目標(biāo)服務(wù)器。通俗點(diǎn)講就是利用網(wǎng)絡(luò)節(jié)點(diǎn)資源,如:IDC服務(wù)器、個(gè)人PC、手機(jī)、智能設(shè)備、打印機(jī)、攝像頭等對(duì)目標(biāo)發(fā)起大量攻擊請(qǐng)求,從而導(dǎo)致服務(wù)器擁塞,進(jìn)而無法對(duì)外提供正常服務(wù)。

CC攻擊

CC攻擊(Challenge Collapsar)。其前身名為Fatboy攻擊。Collapsar(黑洞) 是綠盟科技的一款抗DDOS產(chǎn)品,在對(duì)抗拒絕服務(wù)攻擊的領(lǐng)域內(nèi)具有很高的影響力和口碑。因此,黑客們把攻擊更名為Challenge Collapsar,表示要向黑洞發(fā)起挑戰(zhàn)。

CC攻擊是DDOS(分布式拒絕服務(wù))的一種,是一種常見的網(wǎng)站攻擊方法,攻擊者通過代理服務(wù)器或者肉雞向受害主機(jī)不停訪問,造成服務(wù)器的內(nèi)存或CPU等資源耗盡或帶寬資源耗盡,直到網(wǎng)站無法訪問。


因?yàn)镃C攻擊的訪問流量來自成千上萬,幾十萬,甚至數(shù)百萬的電腦,手機(jī),云主機(jī)等客戶端。幾乎和正常的用戶訪問沒區(qū)別,這些攻擊請(qǐng)求不具備明顯的特征,很難和正常訪問區(qū)分開來,防御難度也很大。尤其是利用肉雞組成的僵尸網(wǎng)絡(luò)發(fā)起攻擊,動(dòng)輒是數(shù)以萬計(jì)的機(jī)器(其中很多機(jī)器可能都是普通用戶使用的電腦手機(jī)等),這種攻擊請(qǐng)求和正常用戶請(qǐng)求非常相似,防御難度就更大了。

慢速攻擊--CC攻擊的變異品種

慢速攻擊的基本原理如下:對(duì)任何一個(gè)開放了HTTP訪問的HTTP服務(wù)器,先建立了一個(gè)連接,指定一個(gè)比較大的Content-length,然后以非常低的速度發(fā)表,比如1-10s發(fā)一個(gè)字節(jié),然后維持住這個(gè)連接不斷開。如果客戶端持續(xù)建立這樣的連接,那么服務(wù)器上可用的連接將一點(diǎn)一點(diǎn)被占滿,從而導(dǎo)致拒絕服務(wù)。

HTTP協(xié)議在接收到request之前是不對(duì)請(qǐng)求內(nèi)容作校驗(yàn)的,所以即使你的Web應(yīng)用沒有可用的form表單,這個(gè)攻擊一樣有效。

在客戶端建立較大數(shù)量的無用連接,并保持持續(xù)發(fā)包的代價(jià)非常的低廉。實(shí)際試驗(yàn)中一臺(tái)普通PC可以建立的連接在3000個(gè)以上。這對(duì)一臺(tái)普通的Web服務(wù)器,將是致命的打擊。更不用說結(jié)合肉雞群做分布式攻擊了。

正因?yàn)槠浜?jiǎn)單易用,成本低廉,效果明顯的特性,慢速攻擊成為眾多攻擊者的研究和利用對(duì)象。

發(fā)展到今天,慢速攻擊也演變成了多種,典型的主要包括如下幾類:

Slow headers:Web應(yīng)用在處理HTTP請(qǐng)求之前都要先接收完所有的HTTP頭部,因?yàn)镠TTP頭部中包含了一些Web應(yīng)用可能用到的重要的信息。攻擊者利用這點(diǎn),發(fā)起一個(gè)HTTP請(qǐng)求,一直不停的發(fā)送HTTP頭部,消耗服務(wù)器的連接和內(nèi)存資源。攻擊客戶端與服務(wù)器建立TCP連接后,每10秒才向服務(wù)器發(fā)送一個(gè)HTTP頭部,而Web服務(wù)器在沒接收到2個(gè)連續(xù)的\r\n時(shí),會(huì)認(rèn)為客戶端沒有發(fā)送完頭部,而持續(xù)的等待客戶端發(fā)送數(shù)據(jù)。

下面是使用 slowhttptest 工具發(fā)起的 slow header 攻擊:

Slow body:攻擊者發(fā)送一個(gè)HTTP POST請(qǐng)求,該請(qǐng)求的Content-Length頭部值很大,使得Web服務(wù)器或代理認(rèn)為客戶端要發(fā)送很大的數(shù)據(jù)。服務(wù)器會(huì)保持連接準(zhǔn)備接收數(shù)據(jù),但攻擊客戶端每次只發(fā)送很少量的數(shù)據(jù),使該連接一直保持存活,消耗服務(wù)器的連接和內(nèi)存資源。攻擊客戶端與服務(wù)器建立TCP連接后,發(fā)送了完整的HTTP頭部,POST方法帶有較大的Content-Length,然后每10s發(fā)送一次隨機(jī)的參數(shù)。服務(wù)器因?yàn)闆]有接收到相應(yīng)Content-Length的body,而持續(xù)的等待客戶端發(fā)送數(shù)據(jù)。

Slow read:客戶端與服務(wù)器建立連接并發(fā)送HTTP請(qǐng)求,客戶端發(fā)送完整的請(qǐng)求給服務(wù)器端,然后一直保持這個(gè)連接,以很低的速度讀取Response,比如很長(zhǎng)一段時(shí)間客戶端不讀取任何數(shù)據(jù),通過發(fā)送Zero Window到服務(wù)器,讓服務(wù)器誤以為客戶端很忙,直到連接快超時(shí)前才讀取一個(gè)字節(jié),以消耗服務(wù)器的連接和內(nèi)存資源。

注:TCP通過滑動(dòng)窗口(Window)的概念來進(jìn)行流量控制。設(shè)想在發(fā)送端發(fā)送數(shù)據(jù)的速度很快而接收端接收速度卻很慢的情況下,為了保證數(shù)據(jù)不丟失,顯然需要進(jìn)行流量控制, 協(xié)調(diào)好通信雙方的工作節(jié)奏。所謂滑動(dòng)窗口,可以理解成接收端所能提供的緩沖區(qū)大小。顧名思義,Zero Window,零窗口,即當(dāng)發(fā)送方的發(fā)送速度大于接收方的處理速度,接收方的緩沖塞滿后,就會(huì)告訴發(fā)送方當(dāng)前窗口size=0,發(fā)送方此時(shí)會(huì)立即停止發(fā)送數(shù)據(jù)。

慢速攻擊主要利用的是thread-based(基于線程)架構(gòu)的服務(wù)器的特性,這種服務(wù)器會(huì)為每個(gè)新連接打開一個(gè)線程,它會(huì)等待接收完整的HTTP頭部才會(huì)釋放連接。比如Apache會(huì)有一個(gè)超時(shí)時(shí)間來等待這種不完全連接(默認(rèn)是300s),但是一旦接收到客戶端發(fā)來的數(shù)據(jù),這個(gè)超時(shí)時(shí)間會(huì)被重置。正是因?yàn)檫@樣,攻擊者可以很容易保持住一個(gè)連接,因?yàn)楣粽咧恍枰诩磳⒊瑫r(shí)之前發(fā)送一個(gè)字符,便可以延長(zhǎng)超時(shí)時(shí)間。而客戶端只需要很少的資源,便可以打開多個(gè)連接,進(jìn)而占用服務(wù)器很多的資源。

Apache、httpd都采用thread-based架構(gòu),很容易遭到慢速攻擊。而另外一種event-based(基于事件)架構(gòu)的服務(wù)器,比如 nginx 和 lighttpd 卻不容易遭受慢速攻擊。

如何防御慢速攻擊?

如果請(qǐng)求超過配置的超時(shí)時(shí)間或者傳輸速率低于最小速率,那么它就有可能是一個(gè)慢速攻擊?梢耘渲煤侠淼膹目蛻舳私邮誋TTP頭部和HTTP body的超時(shí)時(shí)間和最小速率,來避免連接長(zhǎng)時(shí)間等待。

周期地統(tǒng)計(jì)報(bào)文數(shù)量。一個(gè)TCP連接,HTTP請(qǐng)求的報(bào)文中,報(bào)文過多或者報(bào)文過少都是有問題的,如果一個(gè)周期內(nèi)報(bào)文數(shù)量非常少,那么它就可能是慢速攻擊,可以封禁對(duì)應(yīng)IP;如果一個(gè)周期內(nèi)報(bào)文數(shù)量非常多,那么它就可能是一個(gè)CC攻擊。

使用較多的慢速攻擊工具有:Slowhttptest和Slowloris。

CC等DDos攻擊的防御方法如下:

按IP限流

我們可以在網(wǎng)關(guān)層(Apache,Nginx,Zuul等),對(duì)IP限流,按分鐘級(jí)和秒級(jí)維度限制接口訪問次數(shù)。當(dāng)訪問次數(shù)超過指定閥值后對(duì)其他請(qǐng)求做拋棄處理。對(duì)訪問量過大的IP,放進(jìn)黑名單,限制訪問。將惡意請(qǐng)求的攔截前置到網(wǎng)關(guān)層處理,避免大量惡意請(qǐng)求打到后端服務(wù),對(duì)服務(wù)造成巨大壓力。

分組部署,按用戶限流

可以將新用戶和老用戶路由到不同的服務(wù)器群組。如果新用戶突然暴漲,很可能是混入了大量肉雞注冊(cè)的賬號(hào),可以將這些新用戶的請(qǐng)求路由到專門的新用戶服務(wù)器群組,保證老用戶所在的服務(wù)器群組不受影響。之后再找出異常的用戶進(jìn)行封禁和攔截處理。另外還可以按USERID對(duì)用戶進(jìn)行限流,如新用戶每分鐘請(qǐng)求上限為60次/分鐘,老用戶為45次/分鐘。這樣可以避免同一用戶在短時(shí)間內(nèi)發(fā)送大量請(qǐng)求到后端服務(wù)器。

更改訪問端口

很多情況下,Web Server通過80端口對(duì)外提供服務(wù),攻擊者也是針對(duì)目標(biāo)站點(diǎn)的對(duì)應(yīng)端口進(jìn)行攻擊的。發(fā)現(xiàn)被攻擊后,可以臨時(shí)改變?cè)摱丝趤響?yīng)對(duì)攻擊。但是這只是臨時(shí)策略,稍微懂點(diǎn)網(wǎng)絡(luò)知識(shí)的攻擊者會(huì)很快發(fā)現(xiàn)新改變的接口,改變攻擊腳本后即可發(fā)動(dòng)新一輪的攻擊。

購買高防IP服務(wù)

高仿IP服務(wù)算是終極抗D方案了。公司可以通過配置DDoS高防IP服務(wù),把自己的網(wǎng)站域名解析指向高防IP,并配置源站IP。所有公網(wǎng)流量都經(jīng)過高防IP服務(wù),在高防IP服務(wù)上進(jìn)行清洗過濾后再將正常流量轉(zhuǎn)發(fā)到源站IP,從而確保源站IP穩(wěn)定訪問。另外,高防IP服務(wù)往往擁有超大帶寬,一般的CC攻擊幾乎不可能耗盡高防IP服務(wù)的帶寬資源。高防IP防御效果非常好,不過價(jià)格也比較貴。我們當(dāng)時(shí)就是采用了這個(gè)方式,緊急采購了高防IP,并快速接入我們的網(wǎng)站。


高防IP服務(wù)會(huì)通過多種手段對(duì)請(qǐng)求進(jìn)行清洗。比如,會(huì)根據(jù)大數(shù)據(jù)分析結(jié)果,形成各種特征的IP名單。還會(huì)根據(jù)請(qǐng)求特征對(duì)攻擊工具進(jìn)行識(shí)別。

頁面靜態(tài)化

盡量將頁面靜態(tài)化,減少對(duì)后端服務(wù)的訪問。靜態(tài)頁面可以充分利用客戶端瀏覽器和反向代理的緩存能力。還可以上CDN,用CDN分擔(dān)絕大部分的流量?梢源蠓档凸袅髁康竭_(dá)后端服務(wù)的幾率。

避免IP泄漏

為了減少被DDos攻擊的可能性,我們需要隱藏真實(shí)IP,這可以讓攻擊者找不到攻擊目標(biāo),從而有效地保護(hù)網(wǎng)站。隱藏IP主要有兩種方式,利用CDN或者高防IP。雖然很多公司都接入了CDN,但是還有很多要注意的點(diǎn),一不留神就會(huì)泄漏真實(shí)IP。

盡量避免真實(shí)業(yè)務(wù)主機(jī)直接發(fā)起對(duì)外連接,不理解這句的同學(xué)可以想想以下場(chǎng)景:用戶注冊(cè)激活、找回密碼等業(yè)務(wù)需要發(fā)郵件,如果業(yè)務(wù)主機(jī)直接通過SMTP方式向外發(fā)郵件,絕大部分情況下郵件HEADER中會(huì)出現(xiàn)真實(shí)IP。

防止二級(jí)域名IP泄漏。主域名上了CDN,如果管理后臺(tái)的admin的二級(jí)域名沒有經(jīng)過CDN,就可以輕易解析到業(yè)務(wù)主機(jī)的IP,同樣泄漏了真實(shí)IP。郵件解析的MX,如果沒有經(jīng)過CDN,同樣會(huì)泄露真實(shí)IP。CDN如果只用了國(guó)內(nèi)的,則可以通過國(guó)外主機(jī)PING域名來獲取真實(shí)IP。諸如此類的情況比較多,要引起大家的注意。

注:MX即郵件交換記錄。用于將以該域名為結(jié)尾的電子郵件指向?qū)?yīng)的郵件服務(wù)器。例如用戶所用的郵件是以域名163.com為結(jié)尾,那么在MX解析時(shí)就要解析到163.com對(duì)應(yīng)的服務(wù)器IP。如果沒有經(jīng)過CDN,很容易獲取真實(shí)IP。

最后介紹幾款分布式網(wǎng)絡(luò)攻擊工具:

LOIC:LOIC是一款專注于web應(yīng)用程序的Dos/DDOS攻擊工具,它可以用TCP數(shù)據(jù)包、UDP數(shù)據(jù)包、HTTP請(qǐng)求對(duì)目標(biāo)網(wǎng)站進(jìn)行DDOS/DOS測(cè)試,不懷好意的人可能利用LOIC構(gòu)建僵尸網(wǎng)絡(luò)。LOIC是用C#語言寫的,這是一個(gè)C#新手的練手作品,靠GUI界面吸引了不明真相的小白們使用。由于程序設(shè)計(jì)上“有意或無意”留下的BUG導(dǎo)致一旦開始攻擊在退出進(jìn)程前無法真正停止攻擊,潛在增大了攻擊效果。攻擊手段主要是以無限循環(huán)方式發(fā)送大量數(shù)據(jù),并無其它特色。LOIC 程序主界面如下。


HULK:HULK是一種web的拒絕服務(wù)攻擊工具。它能夠在web服務(wù)器上產(chǎn)生許多單一的偽造流量,能繞開引擎的緩存,因此能夠直接攻擊服務(wù)器的資源池。hulk的特別之處在于:對(duì)于每一個(gè)請(qǐng)求都是獨(dú)特的,能夠繞開引擎的緩存直接作用于服務(wù)器的負(fù)載。

Darkddoser:Darkddoser通過僵尸網(wǎng)絡(luò)發(fā)起http攻擊,圖形界面如下。

Slowhttptest:Slowhttptest是一個(gè)可以靈活配置的應(yīng)用層攻擊工具,它能發(fā)起諸如slowloris、Slow http post、slow read、slow range等工具實(shí)現(xiàn)的慢速攻擊。

Zarp:Zarp是采用Python編寫的、類似MSF的一款網(wǎng)絡(luò)攻擊測(cè)試框架。工具采用模塊化設(shè)計(jì),集漏洞掃描、嗅探、DDoS壓力測(cè)試于一身。Zarp主要接口是一個(gè)CLI驅(qū)動(dòng)的圖形界面,采用多層菜單,使用起來相當(dāng)方便。

寫在最后

在計(jì)算機(jī)世界的攻與防的博弈中,作為防御者的我們,不可能把系統(tǒng)做到無懈可擊,沒有任何安全漏洞。我們能做的是,盡量考慮全面,不斷的發(fā)現(xiàn)問題,將已知的安全問題快速修復(fù)。沒有絕對(duì)安全的系統(tǒng),也沒有無法防御的黑客。只有不斷積累安全知識(shí),保持居安思危的意識(shí)才能讓我們從容應(yīng)對(duì)網(wǎng)絡(luò)攻擊。


】【打印關(guān)閉】 【返回頂部
分享到QQ空間
分享到: 
上一篇網(wǎng)站服務(wù)器受到DDoS攻擊該怎么做.. 下一篇服務(wù)器常見被攻擊和防御幾種方式?

立足首都,輻射全球,防御吧專注云防御及云計(jì)算服務(wù)15年!

聯(lián)系我們

服務(wù)熱線:13051179500 18910191973
企業(yè)QQ:1245940436
技術(shù)支持:010-56159998
E-Mail:xihedata.com
Copyright ? 2003-2016 fangyuba. 防御吧(完美解決防御與加速) 版權(quán)所有 增值許可:京B2-20140042號(hào)
售前咨詢
公司總機(jī):18910191973
24小時(shí)電話:010-56159998
投訴電話:18910191973
值班售后/技術(shù)支持
售后服務(wù)/財(cái)務(wù)
備案專員
緊急電話:18610088800