(文章來源:碼源網(wǎng))
Web應用程序通常是指通過HTTP / HTTPS協(xié)議共同提供服務的B / S體系結(jié)構(gòu)。 隨著Internet的發(fā)展,Web應用程序已集成到我們?nèi)粘I畹母鱾€方面。 在當前的Web應用程序中,大多數(shù)應用程序不是靜態(tài)Web瀏覽,而是涉及服務器的動態(tài)處理。 如果開發(fā)人員的安全意識不強,將導致無休止的Web應用程序安全問題。
我們通常指的Web應用程序攻擊是指攻擊者通過瀏覽器或其他攻擊工具向URL或其他輸入?yún)^(qū)域(例如表單)中的Web服務器發(fā)送特殊請求,以發(fā)現(xiàn)Web應用程序的存在。 反過來,通過操作和控制網(wǎng)站來達到入侵者的目的。SQL注入(SQL Injection)是最常見的漏洞,具有多種影響。 攻擊者將SQL命令插入Web表單以提交或輸入域名或頁面請求的查詢字符串,并最終誘使服務器執(zhí)行惡意SQL命令,從而入侵數(shù)據(jù)庫以執(zhí)行任意查詢。
SQL注入可能造成的危害是:篡改了網(wǎng)頁和數(shù)據(jù),竊取了核心數(shù)據(jù),攻擊了數(shù)據(jù)庫所在的服務器,并使之成為a主機。例如,某些網(wǎng)站不使用預編譯的SQL,并且用戶在界面上輸入的某些字段將添加到SQL。 這些字段可能包含一些惡意SQL命令。 例如:password =“ 1'OR'1'='1”; 即使您不知道用戶密碼,也可以正常登錄。
測試方法:在需要查詢的頁面上,輸入簡單的SQL語句,例如正確的查詢條件和1 = 1,然后檢查響應結(jié)果。如果結(jié)果與正確的查詢條件相符,則表明該應用程序尚未篩選用戶輸入,并且可以初步判斷它存在。 SQL注入漏洞。SS(跨站點腳本)類似于SQL注入,XSS通過網(wǎng)頁插入惡意腳本。使用的主要技術是前端HTML和JavaScript腳本。當用戶瀏覽網(wǎng)頁時,將實施一種控制用戶瀏覽器行為的攻擊方法。
成功的XSS可以獲取用戶的cookie,并使用該cookie竊取用戶在網(wǎng)站上的操作權限。它還可以獲取用戶的聯(lián)系人列表,并使用攻擊者的身份將大量垃圾郵件發(fā)送到特定的目標組。 ,還有很多。XSS分為三類:存儲(持久XSS),反射(非持久XSS)和DOM。測試方法:在數(shù)據(jù)輸入界面上,輸入:保存成功后,彈出對話框,提示存在XSS漏洞?;蚋膗rl請求中的參數(shù)。如果頁面上彈出對話框,則表明存在XSS漏洞。
CSRF(Cross Site Request Forgery),利用已登錄的用戶身份,以用戶的名義發(fā)送惡意請求,完成非法操作。例如,如果用戶瀏覽并信任具有CSRF漏洞的網(wǎng)站A,則瀏覽器會生成相應的cookie,并且用戶訪問危險的網(wǎng)站B而不退出網(wǎng)站。
危險網(wǎng)站B要求訪問網(wǎng)站A并提出要求。 瀏覽器使用用戶的cookie信息訪問網(wǎng)站A。 由于網(wǎng)站A不知道是用戶自身發(fā)出的請求還是危險網(wǎng)站B發(fā)出的請求,因此將處理危險網(wǎng)站B的請求,從而完成了用戶操作目的的模擬。 這是CSRF攻擊的基本思路。
測試方法:同個瀏覽器打開兩個頁面,一個頁面權限失效后,另一個頁面是否可操作成功,如果仍然能操作成功即存在風險。2.使用工具發(fā)送請求,在http請求頭中不加入referer字段,檢驗返回消息的應答,應該重新定位到錯誤界面或者登錄界面。文件上傳攻擊是指攻擊者將可執(zhí)行文件上傳到服務器并執(zhí)行該文件時。
這種攻擊方法是最直接,最有效的。 上載的文件可以是病毒,特洛伊木馬,惡意腳本或Webshell。
Webshell是Web文件(例如asp,php,jsp或cgi)形式的命令執(zhí)行環(huán)境。 也可以說是Web后門。 攻擊者阻止或在受影響的系統(tǒng)上插入Web Shell之后,他可以輕松地通過Web Shell訪問系統(tǒng)以控制Web服務器。測試方法:嚴格檢查上傳文件的類型和大小,禁止上傳帶有惡意代碼的文件。檢查相關目錄的執(zhí)行權限。 您可以通過瀏覽器訪問Web服務器上的所有目錄,并檢查是否返回了目錄結(jié)構(gòu)。 如果顯示目錄結(jié)構(gòu),則可能存在安全問題。
URL跳轉(zhuǎn)漏洞,即未經(jīng)驗證的重定向漏洞,是指Web程序直接跳轉(zhuǎn)到參數(shù)中的URL,或者在頁面中引入了任意開發(fā)者的URL,將程序引導到不安全的第三方區(qū)域,從而導致安全問題。測試方法:1.使用數(shù)據(jù)包捕獲工具捕獲請求。2.抓住302 URL,修改目標地址,然后查看它是否可以跳轉(zhuǎn)。ps:但是現(xiàn)在很多跳轉(zhuǎn)都添加了引薦來源驗證,這導致攻擊者無法跳轉(zhuǎn)。
以上是一些常見的Web安全漏洞和測試方法。 隨著對網(wǎng)絡安全性的日益重視,Web安全性測試在測試過程中的重要性日益突出。 盡管也有諸如AppScan之類的漏洞掃描工具,但測試人員還需要具有一些常見的安全漏洞的知識。