域名預(yù)訂/競(jìng)價(jià),好“米”不錯(cuò)過(guò)
百度站長(zhǎng)平臺(tái)今日測(cè)試漏洞檢測(cè)工具,并在資料區(qū)增加了漏洞監(jiān)測(cè)工具的幫助文件。關(guān)于漏洞類型說(shuō)明、漏洞危害、及漏洞解決方案做出如下解釋。
一、漏洞類型說(shuō)明
1.對(duì)外開(kāi)放服務(wù)
對(duì)外開(kāi)放服務(wù)是指網(wǎng)站服務(wù)器對(duì)外提供的各項(xiàng)服務(wù),每項(xiàng)服務(wù)對(duì)應(yīng)著一個(gè)端口號(hào)。常見(jiàn)的有:HTTP服務(wù)常用端口號(hào)為80/8080,F(xiàn)TP服務(wù)常用端口號(hào)為21,Telnet服務(wù)常用端口號(hào)為23。
2.SQL注入漏洞
SQL注入漏洞,是發(fā)生在應(yīng)用程序數(shù)據(jù)庫(kù)層面上的安全漏洞。在設(shè)計(jì)不良的程序中,由于忽略了對(duì)輸入字符串中夾帶SQL指令的檢查,使得夾帶進(jìn)去的SQL指令被數(shù)據(jù)庫(kù)誤認(rèn)為是合法的SQL指令而運(yùn)行,從而使數(shù)據(jù)庫(kù)受到攻擊,會(huì)導(dǎo)致網(wǎng)站數(shù)據(jù)被竊取、更改和刪除。
3.XSS跨站腳本漏洞
XSS跨站腳本漏洞發(fā)生在客戶端,可被用于進(jìn)行竊取隱私、釣魚(yú)欺騙、偷取密碼、傳播惡意代碼等攻擊行為。攻擊者將對(duì)客戶端有危害的代碼放到服務(wù)器上作為一個(gè)網(wǎng)頁(yè)內(nèi)容,網(wǎng)站用戶瀏覽此網(wǎng)頁(yè)時(shí),代碼會(huì)注入到用戶瀏覽器中執(zhí)行,使用戶受到攻擊。一般而言,XSS跨站腳本漏洞分為三類:反射型跨站腳本漏洞、存儲(chǔ)型跨站腳本漏洞和DOM型跨站腳本漏洞。
4.信息泄露漏洞
CGI漏洞
CGI是公用網(wǎng)關(guān)接口(Common Gateway Inerface)的簡(jiǎn)稱,并不特指一種語(yǔ)言。CGI漏洞包括:Web服務(wù)器軟件編寫(xiě)中的BUG和服務(wù)器配置的錯(cuò)誤。CGI漏洞分為以下幾類:配置錯(cuò)誤、邊界條件錯(cuò)誤、訪問(wèn)驗(yàn)證錯(cuò)誤、來(lái)源驗(yàn)證錯(cuò)誤、輸入驗(yàn)證錯(cuò)誤、策略錯(cuò)誤、使用錯(cuò)誤等。
內(nèi)容泄露漏洞
內(nèi)容泄露漏洞,是指網(wǎng)站內(nèi)容中出現(xiàn)比較敏感的可能危害網(wǎng)站安全的數(shù)據(jù),會(huì)增加攻擊者的攻擊手段和攻擊范圍。
文件泄露漏洞
文件泄露漏洞,是由于服務(wù)器配置或程序設(shè)計(jì)缺陷,而繞過(guò)目錄或權(quán)限的限制,使用戶可以訪問(wèn)到無(wú)權(quán)訪問(wèn)的文件,包括但不限于:各類配置文件,操作系統(tǒng)敏感文件,網(wǎng)站程序源碼,數(shù)據(jù)庫(kù)文件,備份文件,系統(tǒng)日志等。
5.HTTP方法
HTTP方法是指,使用HTTP協(xié)議來(lái)請(qǐng)求網(wǎng)站頁(yè)面時(shí)所使用到的請(qǐng)求方法。常見(jiàn)的HTTP方法有:
GET:請(qǐng)求指定的頁(yè)面信息,并返回實(shí)體主體。
HEAD:只請(qǐng)求頁(yè)面的首部。
POST:請(qǐng)求服務(wù)器接受所指定的文檔作為對(duì)所標(biāo)識(shí)的URI的新的從屬實(shí)體。
PUT:從客戶端向服務(wù)器傳送的數(shù)據(jù)取代指定的文檔的內(nèi)容。
DELETE:請(qǐng)求服務(wù)器刪除指定的頁(yè)面。
OPTIONS:允許客戶端查看服務(wù)器的性能。
TRACE:請(qǐng)求服務(wù)器在響應(yīng)中的實(shí)體主體部分返回所得到的內(nèi)容。
二、漏洞的危害
1.對(duì)外開(kāi)放服務(wù)
黑客必須借由網(wǎng)站服務(wù)器的對(duì)方開(kāi)放服務(wù),才能展開(kāi)攻擊行為。
若網(wǎng)站服務(wù)器存在不必要的對(duì)外服務(wù),會(huì)提高網(wǎng)站服務(wù)器的安全風(fēng)險(xiǎn),增加黑客成功入侵的機(jī)率。
2.SQL注入漏洞
SQL注入漏洞的危害不僅體現(xiàn)在數(shù)據(jù)庫(kù)層面,還有可能危及承載數(shù)據(jù)庫(kù)的操作系統(tǒng);如果SQL注入被用來(lái)掛馬,還可能用來(lái)傳播惡意軟件等,這些危害包括但不限于:
數(shù)據(jù)庫(kù)信息泄漏:數(shù)據(jù)庫(kù)中存儲(chǔ)的用戶隱私信息泄露。
網(wǎng)頁(yè)篡改:通過(guò)操作數(shù)據(jù)庫(kù)對(duì)特定網(wǎng)頁(yè)進(jìn)行篡改。
網(wǎng)站被掛馬,傳播惡意軟件:修改數(shù)據(jù)庫(kù)一些字段的值,嵌入網(wǎng)馬鏈接,進(jìn)行掛馬攻擊。
數(shù)據(jù)庫(kù)被惡意操作:數(shù)據(jù)庫(kù)服務(wù)器被攻擊,數(shù)據(jù)庫(kù)的系統(tǒng)管理員帳戶被竄改。
服務(wù)器被遠(yuǎn)程控制,被安裝后門(mén):經(jīng)由數(shù)據(jù)庫(kù)服務(wù)器提供的操作系統(tǒng)支持,讓黑客得以修改或控制操作系統(tǒng)。
破壞硬盤(pán)數(shù)據(jù),癱瘓全系統(tǒng)。
3.XSS跨站腳本漏洞
XSS跨站腳本漏洞的危害包括但不限于:
釣魚(yú)欺騙:最典型的就是利用目標(biāo)網(wǎng)站的反射型跨站腳本漏洞將目標(biāo)網(wǎng)站重定向到釣魚(yú)網(wǎng)站,或者注入釣魚(yú)Javascript以監(jiān)控目標(biāo)網(wǎng)站的表單輸入,甚至發(fā)起基于DHTML更高級(jí)的釣魚(yú)攻擊方式。
網(wǎng)站掛馬:跨站后利用IFrame嵌入隱藏的惡意網(wǎng)站或者將被攻擊者定向到惡意網(wǎng)站上,或者彈出惡意網(wǎng)站窗口等方式都可以進(jìn)行掛馬攻擊。
身份盜用:Cookie是用戶對(duì)于特定網(wǎng)站的身份驗(yàn)證標(biāo)志,XSS可以盜取用戶的Cookie,從而利用該Cookie獲取用戶對(duì)該網(wǎng)站的操作權(quán)限。如果一個(gè)網(wǎng)站管理員用戶Cookie被竊取,將會(huì)對(duì)網(wǎng)站引發(fā)巨大的危害。
盜取網(wǎng)站用戶信息:當(dāng)能夠竊取到用戶Cookie從而獲取到用戶身份時(shí),攻擊者可以獲取到用戶對(duì)網(wǎng)站的操作權(quán)限,從而查看用戶隱私信息。
垃圾信息發(fā)送:比如在SNS社區(qū)中,利用XSS漏洞借用被攻擊者的身份發(fā)送大量的垃圾信息給特定的目標(biāo)群體。
劫持用戶Web行為:一些高級(jí)的XSS攻擊甚至可以劫持用戶的Web行為,監(jiān)視用戶的瀏覽歷史,發(fā)送與接收的數(shù)據(jù)等等。
XSS蠕蟲(chóng):XSS 蠕蟲(chóng)可以用來(lái)打廣告、刷流量、掛馬、惡作劇、破壞網(wǎng)上數(shù)據(jù)、實(shí)施DDoS攻擊等。
4.信息泄露漏洞
CGI漏洞
CGI漏洞大多分為以下幾種類型:信息泄露、命令執(zhí)行和溢出,因此危害的嚴(yán)重程度不一。信息泄露會(huì)暴露服務(wù)器的敏感信息,使攻擊者能夠通過(guò)泄露的信息進(jìn)行進(jìn)一步入侵;命令執(zhí)行會(huì)對(duì)服務(wù)器的安全造成直接的影響,如執(zhí)行任意系統(tǒng)命令;溢出往往能夠讓攻擊者直接控制目標(biāo)服務(wù)器,危害重大。
內(nèi)容泄露漏洞
內(nèi)容泄露漏洞,會(huì)被攻擊者利用導(dǎo)致其它類型的攻擊,危害包括但不局限于:
內(nèi)網(wǎng)ip泄露:可能會(huì)使攻擊者滲透進(jìn)入內(nèi)網(wǎng)產(chǎn)生更大危害。
數(shù)據(jù)庫(kù)信息泄露:讓攻擊者知道數(shù)據(jù)庫(kù)類型,會(huì)降低攻擊難度。
網(wǎng)站調(diào)試信息泄露:可能讓攻擊者知道網(wǎng)站使用的編程語(yǔ)言,使用的框架等,降低攻擊難度。
網(wǎng)站目錄結(jié)構(gòu)泄露:攻擊者容易發(fā)現(xiàn)敏感文件。
絕對(duì)路徑泄露:某些攻擊手段依賴網(wǎng)站的絕對(duì)路徑,比如用SQL注入寫(xiě)webshell。
電子郵件泄露:郵件泄露可能會(huì)被垃圾郵件騷擾,還可能被攻擊者利用社會(huì)工程學(xué)手段獲取更多信息,擴(kuò)大危害。
文件泄露漏洞
敏感文件的泄露可能會(huì)導(dǎo)致重要信息的泄露,進(jìn)而擴(kuò)大安全威脅,這些危害包括但不局限于:
帳號(hào)密碼泄漏:可能導(dǎo)致攻擊者直接操作網(wǎng)站后臺(tái)或數(shù)據(jù)庫(kù),進(jìn)行一些可能有危害的操作。
源碼泄露:可能會(huì)讓攻擊者從源碼中分析出更多其它的漏洞,如SQL注入,文件上傳,代碼執(zhí)行等。
系統(tǒng)用戶泄露:可能會(huì)方便暴力破解系統(tǒng)密碼。
5.HTTP方法
若網(wǎng)站服務(wù)器支持不必要的HTTP方法,會(huì)增加黑客入侵網(wǎng)站服務(wù)器的手段和途徑。例如:若網(wǎng)站服務(wù)器支持PUT方法且允許匿名訪問(wèn),則黑客可以發(fā)布未經(jīng)授權(quán)的頁(yè)面,或者上傳二進(jìn)制文件并誘使服務(wù)器執(zhí)行,從而獲取網(wǎng)站服務(wù)器的控制權(quán)。
三、漏洞解決方案
1.對(duì)外開(kāi)放服務(wù)
關(guān)閉不必要的對(duì)外開(kāi)放服務(wù),以及相應(yīng)端口。
2.SQL注入漏洞
解決SQL注入漏洞的關(guān)鍵是對(duì)所有來(lái)自用戶輸入的數(shù)據(jù)進(jìn)行嚴(yán)格檢查、對(duì)數(shù)據(jù)庫(kù)配置使用最小權(quán)限原則。經(jīng)常使用的解決方案有:
所有的查詢語(yǔ)句都使用數(shù)據(jù)庫(kù)提供的參數(shù)化查詢接口,參數(shù)化的語(yǔ)句使用參數(shù)而不是將用戶輸入變量嵌入到SQL語(yǔ)句中。
對(duì)進(jìn)入數(shù)據(jù)庫(kù)的特殊字符('"\<>&*;等)進(jìn)行轉(zhuǎn)義處理,或編碼轉(zhuǎn)換。
確認(rèn)每種數(shù)據(jù)的類型,比如數(shù)字型的數(shù)據(jù)就必須是數(shù)字,數(shù)據(jù)庫(kù)中的存儲(chǔ)字段必須對(duì)應(yīng)為int型。
數(shù)據(jù)長(zhǎng)度應(yīng)該嚴(yán)格規(guī)定,能在一定程度上防止比較長(zhǎng)的SQL注入語(yǔ)句無(wú)法正確執(zhí)行。
網(wǎng)站每個(gè)數(shù)據(jù)層的編碼統(tǒng)一,建議全部使用UTF-8編碼,上下層編碼不一致有可能導(dǎo)致一些過(guò)濾模型被繞過(guò)。
嚴(yán)格限制網(wǎng)站用戶的數(shù)據(jù)庫(kù)的操作權(quán)限,給此用戶提供僅僅能夠滿足其工作的權(quán)限,從而最大限度的減少注入攻擊對(duì)數(shù)據(jù)庫(kù)的危害。
避免網(wǎng)站顯示SQL錯(cuò)誤信息,比如類型錯(cuò)誤、字段不匹配等,防止攻擊者利用這些錯(cuò)誤信息進(jìn)行一些判斷。
在網(wǎng)站發(fā)布之前建議使用一些專業(yè)的SQL注入檢測(cè)工具進(jìn)行檢測(cè),及時(shí)修補(bǔ)這些SQL注入漏洞。
3.XSS跨站腳本漏洞
經(jīng)常使用的解決方案有:
與SQL注入漏洞的方案一樣,假定所有輸入都是可疑的,必須對(duì)所有輸入中的script、iframe等字樣進(jìn)行嚴(yán)格的檢查。這里的輸入不僅僅是用戶可以直接交互的輸入接口,也包括HTTP請(qǐng)求中的Cookie中的變量,HTTP請(qǐng)求頭部中的變量等。
不要僅僅驗(yàn)證數(shù)據(jù)的類型,還要驗(yàn)證其格式、長(zhǎng)度、范圍和內(nèi)容。
不要僅僅在客戶端做數(shù)據(jù)的驗(yàn)證與過(guò)濾,關(guān)鍵的過(guò)濾步驟在服務(wù)端進(jìn)行。
對(duì)輸出的數(shù)據(jù)也要檢查,數(shù)據(jù)庫(kù)里的值有可能會(huì)在一個(gè)大網(wǎng)站的多處都有輸出,即使在輸入做了編碼等操作,在各處的輸出點(diǎn)時(shí)也要進(jìn)行安全檢查。
在網(wǎng)站發(fā)布之前建議測(cè)試所有已知的威脅。
4.信息泄露漏洞
CGI漏洞
針對(duì)不同類型的CGI漏洞有著不同的修復(fù)方法,最好的解決方案是在某CGI漏洞被披露之后,及時(shí)打上官方提供的補(bǔ)丁。站長(zhǎng)在平時(shí)維護(hù)服務(wù)器時(shí)也要定期檢查并更新相關(guān)CGI組件。
內(nèi)容泄露漏洞
解決內(nèi)容泄露漏洞經(jīng)常使用的解決方案有:
禁用WEB服務(wù)器和服務(wù)器端語(yǔ)言的調(diào)試和報(bào)錯(cuò)信息。
禁用WEB服務(wù)器的目錄瀏覽模式。
網(wǎng)站管理員和域名管理員郵箱請(qǐng)勿在SNS社交網(wǎng)絡(luò)場(chǎng)合使用。
網(wǎng)站內(nèi)容常檢查,發(fā)現(xiàn)敏感信息及時(shí)清理。
文件泄露漏洞
解決文件泄露漏洞的關(guān)鍵是對(duì)下載功能的參數(shù)檢驗(yàn)和用最小權(quán)限原則對(duì)系統(tǒng)服務(wù)做出合理的配置。經(jīng)常使用的解決方案有:
具備下載功能的程序,在接受傳入?yún)?shù)時(shí),過(guò)濾“..”,“/”,“C:”等能繞過(guò)目錄限制的特殊字符。
謹(jǐn)慎使用ftp,Windows文件共享等服務(wù),如無(wú)必要,請(qǐng)不要啟用匿名帳號(hào)。
若使用版本控制程序,發(fā)布代碼時(shí)請(qǐng)務(wù)必排除.svn和 .git等敏感目錄。
網(wǎng)站備份和數(shù)據(jù)庫(kù)備份文件請(qǐng)勿置于外部可訪問(wèn)的目錄中。
WEB服務(wù)器的動(dòng)態(tài)程序擴(kuò)展名的規(guī)則請(qǐng)注意大小寫(xiě)和特殊擴(kuò)展(如.pHp, .jsP, .php.gif, .php3, .asa,.inc 等等)
及時(shí)修補(bǔ)SQL注入漏洞,因?yàn)镾QL注入漏洞也可能會(huì)導(dǎo)致文件泄露。
避免*.bak, *.swp, *.swo等備份文件或臨時(shí)交換文件發(fā)布到服務(wù)器上。
5.HTTP方法
禁用不必要且存在安全風(fēng)險(xiǎn)的HTTP方法,例如:TRACE/PUT/DELETE等?;蚴褂眉铀贅?lè)保護(hù)您的網(wǎng)站。
百度站長(zhǎng)平臺(tái)的漏洞檢測(cè)工具推薦了解決方案供應(yīng)商,加速樂(lè)和Scanv。
申請(qǐng)創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!