
常見的網(wǎng)站攻擊方式有哪些?
1. Dos拒絕服務(wù)攻擊
介 紹:Dos拒絕服務(wù)攻擊(Denial of Service attack)是一種能夠讓服務(wù)器呈現(xiàn)靜止?fàn)顟B(tài)的攻擊方式。其原理就是發(fā)送大量的合法請求到服務(wù)器,服務(wù)器無法分辨這些請求是正常請求還是攻擊請求,所以 會照單全收。海量的請求造成服務(wù)器進入停止工作或拒絕服務(wù)的狀態(tài)。
DDOS分布式拒絕服務(wù)攻擊 (Distributed Denial of Service)就是在DOS攻擊基礎(chǔ)上借助公共網(wǎng)絡(luò),將大數(shù)量的計算機設(shè)備聯(lián)合起來,向一個或多個目標發(fā)送大量請求使使服務(wù)器癱瘓。DDoS攻擊可以針 對網(wǎng)絡(luò)通訊協(xié)議的各層,大致有:TCP類的SYN Flood、ACK Flood,UDP類的Fraggle、Trinoo,DNS Query Flood,ICMP Flood,Slowloris類。CC攻擊也是DDOS攻擊的一種形式。
防 御:DDoS 防御的技術(shù)核心是檢測技術(shù)和清洗技術(shù)。檢測技術(shù)就是檢測網(wǎng)站是否正在遭受 DDoS 攻擊,而清洗技術(shù)就是清洗掉異常流量。而檢測技術(shù)的核心在于對業(yè)務(wù)深刻的理解,才能快速精確判斷出是否真的發(fā)生了 DDoS 攻擊。清洗技術(shù)對檢測來講,不同的業(yè)務(wù)場景下要求的粒度不一樣。
2. CSRF跨站點請求偽造
介 紹:CSRF跨站點請求偽造(Cross-Site Request Forgeries)是指攻擊者通過已經(jīng)設(shè)置好的陷阱,強制對已完成認證的用戶進行非預(yù)期的個人信息狀態(tài)更新,屬于被動攻擊。更簡單的理解就是攻擊者盜用 了你的名義,以你的名義發(fā)送了其他請求。JSON 劫持(JSON Hijacking)是用于獲取敏感數(shù)據(jù)的一種攻擊方式,也屬于 CSRF 攻擊的范疇。
防御:1)將cookie設(shè)置為HttpOnly。CSRF攻擊很大程度是利用了瀏覽器的cookie,為了防止站內(nèi)XSS漏洞,cookie設(shè)置HttpOnly屬性,JS腳本就無法讀取到cookie中的信息,避免攻擊者偽造cookie的情況出現(xiàn)。
2) 增加token。CSRF攻擊之所以成功,主要是攻擊中偽造了用戶請求,而用戶請求的驗證信息都在cookie中,攻擊者就可以利用cookie偽造請求 通過安全驗證。因此抵御CSRF攻擊的關(guān)鍵就是,在請求中放入攻擊者不能偽造的信息,并且信息不在cookie中。鑒于此,開發(fā)人員可以在http請求中 以參數(shù)的形式加一個token,此token在服務(wù)端生成,也在服務(wù)端校驗,服務(wù)端的每次會話都可以用同一個token。如果驗證token不一致,則認 為是CSRF攻擊,拒絕請求。
3)通過Referer識別。Http頭中有一個字段Referer,它記錄了Http請求來源地址。但是注意不要把Rerferer用在身份驗證或者其他非常重要的檢查上,因為Rerferer非常容易在客戶端被改變。
3. SOL注入攻擊
介紹:SOL注入攻擊是攻擊者成功地向服務(wù)器提交惡意的SQL查詢代碼,程序在接收后錯誤的將攻擊者的輸入作為查詢語句的一部分執(zhí)行,導(dǎo)致原始的查詢邏輯被改變,額外的執(zhí)行了攻擊者精心構(gòu)造的惡意代碼。
舉 例:’ OR ‘1’=‘1,這是最常見的 SQL注入攻擊。當(dāng)我們輸入用戶名 admin ,然后密碼輸入’ OR ‘1’=1=‘1的時候,我們在查詢用戶名和密碼是否正確的時候,本來要執(zhí)行的是SELECT * FROM user WHERE username=’’ and password=’’,經(jīng)過參數(shù)拼接后,會執(zhí)行 SQL語句 SELECT * FROM user WHERE username=’’ and password=’’ OR ‘1’=‘1’,這個時候1=1是成立,自然就跳過驗證。
防 御:對進入數(shù)據(jù)庫的特殊字符(’"
4. XSS跨站腳本攻擊
介 紹:XSS跨站腳本攻擊(Cross-Site scripting)是指在通過注冊的網(wǎng)站用戶的瀏覽器內(nèi)運行非法的HTML標簽或javascript,從而達到攻擊的目的,如盜取用戶的 cookie,改變網(wǎng)頁的DOM結(jié)構(gòu),重定向到其他網(wǎng)頁等。XSS攻擊分類包含反射性,存儲型,DOM型,F(xiàn)LASH。
防御:堅決不要相信用戶的任何輸入,并過濾掉輸入中的所有特殊字符。這樣就能消滅絕大部分的XSS攻擊。主要有兩種方式:過濾特殊字符和使用HTTP頭指定類型。
5.文件上傳漏洞
介紹:倘若web網(wǎng)站沒有對文件類型進行嚴格的校驗,導(dǎo)致可執(zhí)行文件上傳到了服務(wù)器,惡意程序就會執(zhí)行。
防御:客戶端檢測 :程序員一般使用 JavaScript 來拒絕非法文件上傳。
服務(wù)器端檢測:
1)白名單與黑名單驗證:定義不允許或允許上傳的文件擴展名;
2)MIME驗證:php 中通過 $_FILE[‘file’][‘type’] 來檢驗;
3)目錄驗證:在文件上傳時,程序通常允許用戶將文件放到指定的目錄中,如果指定的目錄存在,就將文件寫入目錄中。
6. DNS查詢攻擊
介紹:DNS查詢攻擊(DNS Query Flood)是向被攻擊的服務(wù)器發(fā)送海量的隨機生成的域名解析請求,大部分根本就不存在,并且通過偽造端口和客戶端IP,防止查詢請求被ACL過濾。
被攻擊的DNS服務(wù)器在接收到域名解析請求后,首先會在服務(wù)器上查找是否有對應(yīng)的緩存,當(dāng)沒有緩存并且該域名無法直接由該DNS服務(wù)器進行解析的時候,DNS服務(wù)器會向其上層DNS服務(wù)器遞歸查詢域名信息,直到全球互聯(lián)網(wǎng)的13臺根DNS服務(wù)器。
大量不存在的域名解析請求,給服務(wù)器帶來了很大的負載,當(dāng)解析請求超過一定量的時候,就會造成DNS服務(wù)器解析域名超時,這樣攻擊者便達成了攻擊目的。
防 御:根據(jù)域名 IP 自學(xué)習(xí)結(jié)果主動回應(yīng),減輕服務(wù)器負載(使用 DNS Cache);對突然發(fā)起大量頻度較低的域名解析請求的源 IP 地址進行帶寬限制;在攻擊發(fā)生時降低很少發(fā)起域名解析請求的源 IP 地址的優(yōu)先級;限制每個源 IP 地址每秒的域名解析請求次數(shù)。
7.暴力破解
介紹:這個一般針對密碼而言,弱密碼(Weak Password)很容易被別人猜到或被破解工具暴力破解。
防御:防御方法主要有兩種,其一密碼復(fù)雜度要足夠大也要足夠隱蔽,其二限制嘗試次數(shù)。
8.信息泄露
介紹:由于 Web 服務(wù)器或應(yīng)用程序沒有正確處理一些特殊請求,泄露 Web 服務(wù)器的一些敏感信息,如用戶名、密碼、源代碼、服務(wù)器信息、配置信息等。
防御:敏感信息加密傳輸;應(yīng)用程序報錯時,不對外產(chǎn)生調(diào)試信息;過濾用戶提交的數(shù)據(jù)與特殊字符;保證源代碼、服務(wù)器配置的安全。
9.業(yè)務(wù)漏洞
介紹:業(yè)務(wù)漏洞是跟具體的應(yīng)用程序相關(guān),比如參數(shù)篡改(連續(xù)編號 ID / 訂單、1 元支付)、重放攻擊(偽裝支付)、權(quán)限控制(越權(quán)操作)等。
防御:系統(tǒng)設(shè)計階段就需要考慮業(yè)務(wù)漏洞的問題,盡量避免連續(xù)編號、越權(quán)操作等。
10.后門程序
介 紹:后門程序一般是指那些繞過安全性控制而獲取對程序或系統(tǒng)訪問權(quán)的程序方法。在軟件的開發(fā)階段,程序員常常會在軟件內(nèi)創(chuàng)建后門程序以便可以修改程序設(shè)計 中的缺陷。但是如果這些后門被其他人知道,或是在發(fā)布軟件之前沒有刪除后門程序,那么它就成了安全風(fēng)險,容易被黑客當(dāng)成漏洞進行攻擊。
防御:使用非對稱后門接口進行軟件更新,避免對稱后門接口, 給后端程序加殼,更新去除后門的補丁程序。
北京星誠視野網(wǎng)絡(luò)科技有限公司 © 2008-2022 京ICP備09003513-1號 技術(shù)支持:北京網(wǎng)站建設(shè)公司 北京APP開發(fā)