天天看點

常見的Web安全漏洞及測試方法介紹

背景介紹

Web應用一般是指B/S架構的通過HTTP/HTTPS協定提供服務的統稱。随着網際網路的發展,Web應用已經融入了我們的日常生活的各個方面。在目前的Web應用中,大多數應用不都是靜态的網頁浏覽,而是涉及到伺服器的動态處理。如果開發者的安全意識不強,就會導緻Web應用安全問題層出不窮。

我們一般說的Web應用攻擊,是指攻擊者通過浏覽器或者其他的攻擊工具,在URL或者其他的輸入區域(如表單等),向Web伺服器發送特殊的請求,從中發現Web應用程式中存在的漏洞,進而操作和控制網站,達到入侵者的目的。

常見安全漏洞

一、SQL注入

SQL注入(SQL Injection),是最常見影響非常廣泛的漏洞。攻擊者通過把SQL指令插入到Web表單遞交或輸入域名或頁面請求的查詢字元串,最終達到欺騙伺服器執行惡意的SQL指令,進而入侵資料庫來執行未授意的任意查詢。

SQL注入可能造成的危害有:網頁、資料被篡改,核心資料被竊取,資料庫所在的伺服器被攻擊,變成傀儡主機。

例如有些網站沒有使用預編譯sql,使用者在界面上輸入的一些字段被添加到sql中,很有可能這些字段包含一些惡意的sql指令。如:password = "1' OR '1'='1";即使不知道使用者密碼,也能正常登入。

測試方法:

在需要進行查詢的頁面,輸入正确查詢條件 and 1=1等簡單sql語句,檢視應答結果,如與輸入正确查詢條件傳回結果一緻,表明應用程式對使用者輸入未進行過濾,可以初步判斷此處存在SQL注入漏洞

二、XSS跨站腳本攻擊

SS(Cross Site Script),與SQL注入相似,XSS是通過網頁插入惡意腳本,主要用到的技術也是前端的HTML和JavaScript腳本。當使用者浏覽網頁時,實作控制使用者浏覽器行為的攻擊方式。

一次成功的XSS,可以擷取到使用者的cookie,利用該cookie盜取使用者對該網站的操作權限;也可以擷取到使用者聯系人清單,利用被攻擊者的身份向特定的目标群發送大量的垃圾資訊,等等。

XSS分為三類:存儲型(持久性XSS)、反射型(非持久性XSS)、DOM型。

在資料輸入界面,輸入:,儲存成功後如果彈出對話框,表明此處存在一個XSS 漏洞。

或把url請求中參數改為,如果頁面彈出對話框,表明此處存在一個XSS 漏洞。

三、CSRF跨站僞造請求攻擊

CSRF(Cross Site Request Forgery),利用已登入的使用者身份,以使用者的名義發送惡意請求,完成非法操作。

例如:使用者如果浏覽并信任了存在CSRF漏洞的網站A,浏覽器産生了相應的cookie,使用者在沒有退出該網站的情況下,通路了危險網站B 。

危險網站B要求通路網站A,發出一個請求。浏覽器帶着使用者的cookie資訊通路了網站A,因為網站A不知道是使用者自身發出的請求還是危險網站B發出的請求,是以就會處理危險網站B的請求,這樣就完成了模拟使用者操作的目的。這就是CSRF攻擊的基本思想。

  1. 同個浏覽器打開兩個頁面,一個頁面權限失效後,另一個頁面是否可操作成功,如果仍然能操作成功即存在風險。

2.使用工具發送請求,在http請求頭中不加入referer字段,檢驗傳回消息的應答,應該重新定位到錯誤界面或者登入界面。

四、檔案上傳漏洞

檔案上傳攻擊是指攻擊者上傳了一個可執行檔案到伺服器上,并執行。

這種攻擊方式是最直接有效的。上傳的檔案可以是病毒、木馬、惡意腳本或者是webshell等等。

Webshell是以asp、php、jsp或者cgi等網頁檔案形式存在的一種指令執行環境,也可以說是一種網頁後門。攻擊者在受影響系統防止或插入webshell後,可以通過webshell友善進入系統,達到控制網站伺服器的目的。

對上傳的檔案類型、大小等進行嚴格校驗,禁止上傳惡意代碼的檔案。

對相關目錄的執行權限進行校驗,可以通過浏覽器通路Web 伺服器上的所有目錄,檢查是否傳回目錄結構,如果顯示的是目錄結構,則可能存在安全問題。

五、URL跳轉漏洞

URL跳轉漏洞,即未經驗證的重定向漏洞,是指Web程式直接跳轉到參數中的URL,或者在頁面中引入了任意開發者的URL,将程式引導到不安全的第三方區域,進而導緻安全問題。

1.使用抓包工具抓取請求。

2.抓取302的url,修改目标位址,檢視是否能跳轉。

ps:不過現在很多跳轉都加了referer的校驗導緻攻擊者跳轉失敗。

總結

以上便是一些常見的Web安全漏洞及測試方法,在當下網絡安全越來越被重視的情況下,Web安全測試在測試流程中的重要性也日益凸顯,雖然也存在AppScan等漏洞掃描工具,測試人員對常見的安全漏洞也需要有一定的認知。

作者簡介:張斌,6年測試工作經驗,精通自動化測試、性能測試、持續傳遞以及整體産品品質提升。