您的(de)位置: 新聞資訊 > 行(xíng)業(yè)動态 > 正文(wén)

網站(zhàn)出現(xiàn) 504 錯(cγ☆uò)誤:原因及與 DoS 攻擊的(de)關聯(圖文(wén)♠↑)


來(lái)源:mozhe 2024-10-21

HTTP 狀态碼中的(de) 504 代表網關超時(shí)。當服務器(qì↕→")作(zuò)為(wèi)網關或代理(lǐ)時(sh™→í),未能(néng)及時(shí)從(cóng)上>×α‍(shàng)遊服務器(qì)收到(dào)請(qǐng)求,就(jiù)會(↓​huì)出現(xiàn)這(zhè)種情♦≈π況。例如(rú),2024 年(nián) 4 月(yuè) 8Ω∏≥¥ 日(rì)下(xià)午,騰訊雲出現(xiàn)服務故障,網頁顯示β★​σ 504 錯(cuò)誤。此次故障一(yī)共持續了(∏γ≈<le)近(jìn) 87 分(fēn)鐘(zhōng¥©),期間(jiān)共有(yǒu) 1957 個(‍$gè)客戶報(bào)障。
504 錯(cuò)誤的(de)出現(xiàn)可(kě)能(néng)有(y ♣♠§ǒu)多(duō)種原因。一(yī)方面,可(kě)能(néng)是(sh™≠ì)網關超時(shí),即網關服務器(qì)在處理(lǐ)請​∏♦(qǐng)求時(shí),向上(shàng)遊服務±÷←器(qì)發送請(qǐng)求,但(dàn)在規定時≤≥(shí)間(jiān)內(nèi)沒有(yǒu)收到(dào£÷≤)響應,導緻超時(shí)。另一(yī)方面,上(shàng)遊‌ ≥服務器(qì)故障或負載過高(gāo)也(yě)可(kě)能(néng≤♣)引發 504 錯(cuò)誤。比如(rú)上(sh≤π÷​àng)遊服務器(qì)出現(xiàn)故障無法及時(shí)響應網關服務器('∞£qì)的(de)請(qǐng)求,或者流量過大(dà)導緻服務器(qìλσα≈)資源無法滿足需求,響應超時(shí)。此外(wài),網絡問(wèn)題、↕₹DNS 解析問(wèn)題、代理(lǐ)服務器(q₩≤≠φì)問(wèn)題以及網站(zhàn)代碼錯(cγσφuò)誤等也(yě)可(kě)能(néng)導緻 504 錯(cuò)誤®λ©。
504 錯(cuò)誤在客戶端和(hé)網絡服務器(qì)通(t≥¶ōng)訊的(de)最後一(yī)步生(shēng)成。客戶端®δ★φ在和(hé)服務器(qì)通(tōng)訊時(shí),首>Ω☆先從(cóng)站(zhàn)點的(de) IP 名稱獲得(de)一(y<✘®ī)個(gè) IP 地(dì)址,然後打開(kā₽λ"¥i)一(yī)個(gè) IP 套接字連接到(dào)該 IP 地(♣¶↔dì)址,通(tōng)過該套接字寫 H&$♦TTP 數(shù)據流,最後從(cóng) β♥Web 服務器(qì)接受響應的(de) HTTP∏&βφ 數(shù)據流。當客戶端收到(dào) HTTP 狀态編碼并識☆♦&'别其為(wèi)‘504’時(shí),就(jiù ←σγ)會(huì)出現(xiàn) 504 錯(©∏cuò)誤。這(zhè)個(gè)問(wèn)題完全是(shì)由後端¶×☆<電(diàn)腦(nǎo)之間(jiān) IP 通(tōng↔£$☆)訊緩慢(màn)而産生(shēng),可(kě)能(néng)包括 W₽₽'eb 服務器(qì)。如(rú)果 Web 服務δ←♥器(qì)由某一(yī)網站(zhàn)托管™→σ,隻有(yǒu)負責那(nà)個(gè)網站(zhàn)設置的(d₽®e)人(rén)員(yuán)才能(néng)解決這(zhα♥φφè)個(gè)問(wèn)題。

二、504 錯(cuò)誤的(de)産生(shēng)原因

(一(yī))服務器(qì)不(bù)穩定


當服務器(qì)不(bù)穩定,出現(xiàn)死機(j$↓ī)等異常情況時(shí),就(jiù)會(huì)導緻 504 錯(•↓ ₩cuò)誤的(de)出現(xiàn)。這(zhè)是(shì)因為←€♦σ(wèi)服務器(qì)無法正常響應客戶端的(de)請(qǐng$‌ )求,從(cóng)而使得(de)網關超時(shí)。一(yī)般情況下(​ φ>xià),重啓服務器(qì)可(kě)以暫時∏∑π(shí)解決問(wèn)題,但(dàn)如(rú£∏↔≠)果這(zhè)種情況經常發生(shēng),那(nà)就(jiù)需要×¶(yào)考慮更換服務器(qì)了(le)。據統計(jì),γ ✔∞約有(yǒu) 30% 的(de) 504 錯(cuò)誤是(shì ‍)由服務器(qì)不(bù)穩定引起的(de)。

(二)網站(zhàn)被攻擊


網站(zhàn)遭受 DoS 攻擊時(shí),也(yě)​>₩會(huì)造成服務器(qì)出現(xiàn) 504 錯(cuò)誤。Do"©←φS 攻擊會(huì)向服務器(qì)發送大(dà)量非法訪問(wèn)請(↑♥₩qǐng)求,使服務器(qì)負載過高(gāγ¶o),無法及時(shí)響應正常請(qǐng)求。例如(rú),2024¥♥ 年(nián) 8 月(yuè),火(huǒ)遍全球的(d♥≠e)遊戲平台 Stamen 慘遭 DDoS 攻擊,導緻£‌Ω許多(duō)玩(wán)家(jiā)無法登錄。為(wèi)了(lσ€→e)應對(duì)這(zhè)種情況,需要 ₩"★(yào)增加防禦措施,如(rú)設置 DNS 隐藏真實 IP,這(zhè)→ ∏$樣可(kě)以減少(shǎo)攻擊面;購∞π(gòu)買高(gāo)防服務器(qì),能(néng)夠抵禦大(dà ‌≈)量的(de)攻擊流量;安裝雲鎖,批量屏蔽攻擊者的(d±↔↕ e) IP 段,有(yǒu)效阻止攻擊。

(三)數(shù)據庫與服務器(qì)斷§¶"≤開(kāi)相(xiàng)應


服務器(qì)死機(jī)不(bù)一(yī)定是(shì)本機(jī)×♥×<異常,也(yě)可(kě)能(néng)是(shì) MySQL γ★'異常所導緻的(de)。當數(shù)據庫與服務器(qìγ>)斷開(kāi)連接時(shí),會(huì)造成無法連接或出現(xiàn→>) 504 錯(cuò)誤。為(wèi)了(♥λβ£le)保證服務器(qì)的(de)良性運行(xíng),建議(yìφ↓©)升級數(shù)據庫版本。這(zhè)樣可(kě)以修≈"複一(yī)些(xiē)已知(zhī)的(de)問(wèn)題,提高¥±γ​(gāo)數(shù)據庫的(de)穩定性和(hé)性能(néng)。

(四)PHP 環境配置問(wèn)題


當網站(zhàn)對(duì) php-fpm ←$♦和(hé) nginx 進行(xíng)配置修改時(shí),可(kě©"≥<)能(néng)會(huì)出現(xiàn) 504 錯φ™γ(cuò)誤。這(zhè)是(shì)因為(wèi)配置不(bù↑φδ↑)當可(kě)能(néng)導緻無法請(qǐng)求到(d✘ <¶ào)可(kě)以執行(xíng)的(de) PHP-CGI✘λ‍。解決方法是(shì)更改 php-fpm 的(de)配置,把 ma​®"↔x_children 由之前的(de) 10 改為(wèi)現∞>✘ (xiàn)在的(de) 30,保證有(y✘δ→σǒu)充足的(de) php-cgi 進程可(kě)以被使用(yòng);把& ∑ request_terminate_ti₽ελπmeout 由之前的(de) 0s 改為(wèi) 60s,提↓ ™高(gāo)處理(lǐ)腳本的(de)超時(shí)時(shíΩ→)間(jiān)。同時(shí),更改 nginx 的(de>♥)幾個(gè)配置項,減少(shǎo) Fast∏←πCGI 的(de)請(qǐng)求次數(shù),如(rú)₽✘将 fastcgi_buffers 由 4 64k 改為(wèi) 2 •‍∞ 256k,fastcgi_buffer_size↓✘π 由 64k 改為(wèi) 128K 等→ ♦♥。重新加載 php-fpm 和(hé) ng✘♦‍σinx 的(de)配置後,再次測試,如(rú)果沒有(yǒu)♦♣出現(xiàn) “504 Gateway T←‍ime-out” 錯(cuò)誤,問(wèn)題就(α←αjiù)解決了(le)。

三、如(rú)何判斷 504 是(shì)被攻擊導緻


(一(yī))異常現(xiàn)象
當網站(zhàn)顯示很(hěn)慢(màn)時(shí),用(yòng)‍★ 戶訪問(wèn)網站(zhàn)經常出現(xià ♦€→n) “504 網關時(shí)間(jiān)輸出&rdqu$≤✘o; 錯(cuò)誤信息,這(zhè)是(shì)服務器(q← ì)請(qǐng)求處理(lǐ)未能(néng)及時(shí)γ¶完成的(de)證據,很(hěn)可(kě¶↔​)能(néng)是(shì)受到(dào☆™")了(le) DoS 攻擊。據相(xiàng)關調查介紹,用(yòng)于 Dβ₹oS 攻擊的(de) 99% 的(de)訪問(wèn)來(lá™δi)自(zì)海(hǎi)外(wài)。如(rú)果沒有(yǒu)理(lǐ)由∑ε卻出現(xiàn)海(hǎi)外(wài)訪問(wèn)的(de)激增,就✔σ(jiù)需要(yào)懷疑有(yǒu)可÷←≠(kě)能(néng)是(shì) DoS 攻擊。此外(wài™Ω→'),不(bù)自(zì)然的(de)訪問(wèn♥λ↕α)增加也(yě)是(shì)一(yī)個(gè)迹象‍•¶,比如(rú)以 1 秒(miǎo)為(wèi)增量進行(x®πíng)頁面轉移,從(cóng)同一(yī) IP∏​β 地(dì)址以短(duǎn)間(jiān)隔多(duō)次訪問(wèn±♠♠÷)的(de) BOT 這(zhè)樣的(de)請(qǐng)£$∏求變多(duō),可(kě)能(néng)是(shì)初期階​✘ε&段的(de) DoS 攻擊。

(二)查看(kàn)資源監控和(hé)日(rì)志(zhì)


首先,查看(kàn)資源監控日(rì)志(♥∏↑zhì)可(kě)以了(le)解是(shì)否有(yǒu)資源耗盡的(de) ≈情況。如(rú)果有(yǒu)某些(xiē)資源被過度使用(yòn¥≥g),可(kě)能(néng)是(shì)受到(dào)攻擊或者 ×∞<存在其他(tā)問(wèn)題導緻的(de)。接著(zhe),查看(kà•δn) Nginx access 的(de)日(rì)志(zhì)或 error←↓∑& 日(rì)志(zhì),判斷是(shì)否有(‍ yǒu)攻擊行(xíng)徑。如(rú)果日(rì)志(zhì)中出•Ω現(xiàn)大(dà)量異常的(de)請(qǐ>✘‍<ng)求或者連接嘗試,可(kě)能(néng)是(shì)正在遭受攻擊。同♥>時(shí),查看(kàn) PHP 的(de)進程慢(màn)日(rì)志<±(zhì)也(yě)非常重要(yào)。一(yī≤↔✘π)般來(lái)說(shuō),配合 PHP 的(de)慢(màn)日(rì)> ≈志(zhì)以及 Nginx 的(de) er↓<ror 日(rì)志(zhì),可(kě)以₽β₩ 定位到(dào)具體(tǐ)是(shì)在執行(xíng)哪個(gè♣♠¶✔)文(wén)件(jiàn)、訪問(wèn)哪個(gè)路(lù)徑時(sh∞γí)引起了(le)資源耗盡的(de)問(wèn)題,從(cλπ‌βóng)而更精準地(dì)去(qù)定位£Ω問(wèn)題并進行(xíng)優化(huà)操作(zuò)。λ₹©δ例如(rú),在 WordPress 建站(zhΩ àn)中,系統報(bào)錯(cuò) 504/502 時(↑•≠shí),開(kāi)發工(gōng)程ββ☆師(shī)就(jiù)會(huì)先查≈≤&看(kàn)資源監控日(rì)志(zhì),再Ωγ₩根據這(zhè)個(gè)條件(jiàn)去(qù)查看(kàn) N¥≥ginx access 的(de)日(rì)志(zhì)或 err•∑φ₽or 日(rì)志(zhì),同時(shí)留意 PHP 的(d§$ §e)進程慢(màn)日(rì)志(zhì),以便更準确$‌¶地(dì)找到(dào)問(wèn)題所在并進行(x×σ♦íng)優化(huà)。

四、504 錯(cuò)誤與 DoS 攻擊的(de★​£)關系


(一(yī))DoS 攻擊的(de)手段和(hé)危害

  1. 攻擊手段
    • TCP SYN 泛洪攻擊:向服務器(qì)發送大(dà)量開(kāi≈σ♥)始 TCP 通(tōng)信所需的(de) SYN 數(shù)據包,但‍™(dàn)不(bù)回複 ACK 數(shù)據包,導緻服‍✔務器(qì)端口保持打開(kāi)狀态等待響應,可(kě)用(yòng)∞± ×端口逐漸消失,服務器(qì)無法正常工(gōng)作(zuòβ↔β★)。
    • HTTP 泛洪攻擊:向 web 應用(yòng)程序發送大(dà↑↕)量 HTTP 請(qǐng)求,以 APP 應用(yòng)層為(wèi™​'π)目标,增加 Web 服務器(qì)負荷,使其難以訪問(w×‍èn)。
    • Slow HTTP DoS 攻擊:向服務器(qì)發送請(qǐng)求速度很(hěn)慢(m&≤àn),幾乎達到(dào)即将超時(shíσΩ )的(de)程度,占用(yòng)資源降低(dī)服務器(qì)處理(lǐ)能©₹φλ(néng)力。
  1. 危害
    • 網站(zhàn)和(hé) Web 服務出現(≈ε$×xiàn)延遲和(hé)無法浏覽等故障,影(yǐng)響訪問(wènπγ♣)。例如(rú),2024 年(nián γ) 8 月(yuè),火(huǒ)遍全球↑★的(de)遊戲平台 Stamen 慘遭 DDoS 攻擊,奇安信 Xε×ε×Lab 實驗室觀察到(dào) 28 萬條攻擊指令,是(shì)平時(sh<✔ &í)的(de) 2 萬多(duō)倍。近(jìn) 60 個(≈®¶gè)僵屍網絡參與了(le)此次攻擊,其規模是ε∞ε≥(shì)之前某直播訪談遭受攻擊時(shí)的(de) 15 ✘ 倍。攻擊者集中火(huǒ)力攻擊了(le)全球 13 個(gè)國(guó)家¥£α(jiā)和(hé)地(dì)區(qū)的(d®®e) 107 個(gè) Steam 服務器(qì) β€₽IP,并且選擇在當地(dì)遊戲高(gāo)峰期發動攻擊,這↕∑β₩(zhè)次攻擊導緻許多(duō)玩(wán)家(jiā)無法登™∏φ錄 Steam 平台。
    • 影(yǐng)響安全系統,可(kě)能(néng)引發 SQL 注入、跨站★$ (zhàn)點腳本 (XSS) 等攻擊,導緻信息洩露和 ★‌↕(hé)網站(zhàn)篡改等損害。

(二)應對(duì) DoS 攻擊的(de)三種服務

  1. 防 DDoS 攻擊服務
    • 有(yǒu)專門(mén)針對(duì) DDoSγ→÷ 攻擊的(de)對(duì)策服務,如(rú)亞馬遜網絡>"φ服務 (AWS) 環境的(de) &ld≈∑÷quo;AWS Shield” 和(hé) Mi≤€‌↓crosoft Azure 的(de) &ld •φ©quo;azure DDOS 保護”。AWS S<•hield 是(shì) AWS 提供的φ€™₩(de)防 DDoS 攻擊服務,還(hái)提供免費(fèi)方案,可(kě)☆≈$輕松導入。
  1. WAF(Web 應用(yòng)程序防火(huǒ)牆)
    • 是(shì)一(yī)種安全服務,可(k↔×εě)以防止針對(duì)包括網站(zhàn)在內(nèi)的(de) web ∑★® APP 漏洞的(de)網絡攻擊。通(tōng)過逐個(gè)×↑£确認通(tōng)信內(nèi)容,屏蔽可(kě)疑通(tōng)信,保<↓♦≈護服務器(qì)。部署 DNS WAF 時(shí),WAF 中心€™位于服務器(qì)之前,用(yòng)于 DDoS 攻擊的(de)未授權₩λ訪問(wèn)将被 WAF 中心阻止,不(bù)會($&huì)到(dào)達服務器(qì),緩解 D₽"±DoS 攻擊。同時(shí),WAF 專門(φ‌mén)用(yòng)于防禦 web APP,可(kě)有(yǒu)效抵禦可≥Ω(kě)能(néng)導緻 SQL 注入和(hé)跨站(zh∑↓÷σàn)點腳本 (XSS) 等信息洩露和(hé)篡改的(de)網絡攻擊。
  1. 內(nèi)容分(fēn)發網絡 (CDN)
    • 由多(duō)個(gè)緩存服務器(qì)組成,網站(zhàn)內(™↓©nèi)容會(huì)暫時(shí)保存 (緩存) 在緩存服務器(qì)ε∞ε‌中。有(yǒu)請(qǐng)求時(shí),從(cóng)•♠離(lí)用(yòng)戶最近(jìn)的(de)緩存服務器(qì)進★÷¶行(xíng)分(fēn)發,實現(xiàn)內&λ‍‌(nèi)容高(gāo)速分(fēn)發。引入 CDN ™✔≈≠可(kě)以減少(shǎo)直接訪問(wèn)服務器(qì)的(de)次δ♥♠數(shù),從(cóng)而減少(shǎo) DDoS 攻擊。

五、總結與展望


網站(zhàn)出現(xiàn) 504 錯(cuò)≤£誤是(shì)一(yī)個(gè)複雜(zá)的(de)€ 問(wèn)題,可(kě)能(néng)由服務器(qì)不(b✔"☆ù)穩定、網站(zhàn)被攻擊、數(shù)據庫與服$♣務器(qì)斷開(kāi)相(xiàng)應以及 PHP₹π± 環境配置問(wèn)題等多(duō)種原因引起。其中,DoS 攻擊是(shì↕‍π)導緻網站(zhàn)出現(xiàn) 504 錯(cuò)誤的(₽♥φde)一(yī)個(gè)重要(yào)因素。通(tōng)過對®®↕₹(duì)異常現(xiàn)象的(de)觀察以及查看(kàn)♣"φ資源監控和(hé)日(rì)志(zhì),可(kπ∏ě)以判斷網站(zhàn)是(shì)否受到¥π∞←(dào) DoS 攻擊。
為(wèi)了(le)應對(duì) 504 錯©✔↕•(cuò)誤和(hé) DoS 攻擊,我們可(kě)以采←¶↓取多(duō)種措施。首先,要(yào)> ☆确保服務器(qì)的(de)穩定性,定期檢查服務器(qì)的(d✔λ±e)運行(xíng)狀态,及時(shí)處理(lǐ)服務器(qì)故障γ₩✔。其次,要(yào)加強網站(zhàn)的(de)安全防護,采取有✘‍→₽(yǒu)效的(de)防禦措施,如(rú)設置 ↔•DNS 隐藏真實 IP、購(gòu)買高↕₹®€(gāo)防服務器(qì)、安裝雲鎖等,防止網站(zhàn∞ ₹∞)被攻擊。此外(wài),還(hái)需要(yào)優化(huà)數(shβ ↔σù)據庫和(hé)服務器(qì)的(de)連接,保證數(shù)據庫的(de)¥¥≠穩定運行(xíng)。同時(shí),要(yào)合理(lǐ)配置 PHεγ$P 環境,避免因配置不(bù)當導緻 504 錯(cuò)誤π•的(de)出現(xiàn)。
在應對(duì) DoS 攻擊方面,可(kσ★≈↕ě)以采用(yòng)防 DDoS 攻擊服務✘ 、WAF 和(hé) CDN 等技(jì)術(§λ&shù)手段。這(zhè)些(xiē)服務可(kě)以有(yǒδ₽‍u)效地(dì)保護網站(zhàn)免受攻擊,提↔€Ω✘高(gāo)網站(zhàn)的(de)安全性和(hé§§$)穩定性。
展望未來(lái),随著(zhe)網絡技(jìσ♦)術(shù)的(de)不(bù)斷發展,網站(zhàn)面臨的(de)安全¶™威脅也(yě)将不(bù)斷增加。為(wèi)了(le)更好(hǎo)地(×¶dì)防範 504 錯(cuò)誤和(hé) DoS¥♥γ 攻擊,我們需要(yào)不(bù)斷加強技(jì)術(shù)研發≠₹,提高(gāo)安全防護水(shuǐ)平。同時(shí),也(yě)需要(y  ào)加強用(yòng)戶的(de)安全意識教育,提高(g←¥āo)用(yòng)戶對(duì)網絡安全的(de)認識和(δ✔hé)防範能(néng)力。隻有(yǒu)通(tōng)過綜合施策,才♣♣能(néng)有(yǒu)效地(dì)保©∏‌障網站(zhàn)的(de)安全穩定運行(xíng),為₩≤(wèi)用(yòng)戶提供更好(hǎ≥£Ωo)的(de)服務。
 

墨者安全 防護盾

墨者安全作(zuò)為(wèi)專業(y"→è)級别安全防護專家(jiā),在應對(duì) Webshell 風‍∞λ(fēng)險隐患方面展現(xiàn)出了(le)卓↕‍越的(de)能(néng)力。其擁有(yǒu)全面的(de)₩&檢測機(jī)制(zhì),能(néng)夠精準識别 Webshel"✘l 的(de)各種類型和(hé)變體(tǐ'σβ),無論是(shì)複雜(zá)的(de)大(dà)馬,還"♦↔(hái)是(shì)隐蔽的(de)內(nèi)存馬,都(dōu)難逃>β♦✘其敏銳的(de)監測。
墨者安全防護盾具備強大(dà)的(de)實時(shπ<í)監控功能(néng),對(duì)服務器(qì)的(de"α)各項活動進行(xíng) 7*24 小(xiǎ≠§¥o)時(shí)不(bù)間(jiān)斷的♠♠(de)監視(shì)。一(yī)旦發現(xiàn)任何可(kě)疑的(de)♥λ>♣ Webshell 活動迹象,立即發出警報(bào),并迅速采取隔離(λ↓ lí)和(hé)清除措施,将風(fēng)險扼殺在萌芽狀态。
在防護策略上(shàng),墨者安全防護盾采用("≈↔÷yòng)了(le)多(duō)層次的(de)防禦體(tǐ)系。不(bùΩ∑)僅能(néng)夠在網絡層面阻擋外(wài)部的(d®≠e)惡意訪問(wèn)和(hé)攻擊,還(hái)能(néng)深入系統內(n☆↓èi)部,對(duì)服務器(qì)的(de)文(wén)件π©δ(jiàn)系統、進程等進行(xíng)深度檢∞ ‍"查和(hé)保護,确保 Webshell 無法植入和(hé)×σε♦運行(xíng)。
同時(shí),墨者安全防護盾擁有(yǒu)快(kuài↔↔÷)速的(de)應急響應能(néng)力。當 Webshell 攻擊事₩÷(shì)件(jiàn)發生(shēng)時(shí),專業(yè)的(de)∑♥β∑安全團隊能(néng)夠迅速介入,進行(xíπ™ng)深入的(de)分(fēn)析和(hé)★∏處理(lǐ),最大(dà)程度減少(shǎo∑ )攻擊帶來(lái)的(de)損失,并幫助用(yòn★ ¥≈g)戶快(kuài)速恢複服務器(qì)的(de)正‍♥Ω常運行(xíng)。
墨者安全防護盾還(hái)注重用(yòng)¥↕戶教育和(hé)培訓,為(wèi)用(yòng)戶提供關于 Webshell↓‌€♥ 防範的(de)專業(yè)知(zhī)識和(hé)最佳實踐,&↑幫助用(yòng)戶提升自(zì)身(shēn)的(de)安全意識和(h≈"∑é)防範能(néng)力,共同構建堅實的(de)網絡安全≤ε∞∞防線。
  最新文(wén)章(zhāng)
X

7x24 小(xiǎo)時(shí)

免費(fèi)技(jì)術(shù)支持

15625276999


-->