美国伦理〈欲女春潮〉|美国伦理〈欲奴3〉|美国伦理巜交换做爰|宝贝腿开大点我添添你下边美国|美国色情巜春药2|美国A片巜禁忌5

鑒源實驗室

Jianyuan Lab

Web應(yīng)用程序常見漏洞淺析

發(fā)布時間:2024-01-26 作者:上海工業(yè)控制安全創(chuàng)新科技有限公司 點擊次數(shù):


引言:在如今的數(shù)字化時代,Web應(yīng)用程序已經(jīng)滲透到我們生活的每個角落。從購物平臺、社交媒體到企業(yè)級系統(tǒng),無論是用戶還是組織,都依賴于這些應(yīng)用程序來滿足各自的業(yè)務(wù)需求。然而,隨著Web應(yīng)用程序的蓬勃發(fā)展,與之而來的網(wǎng)絡(luò)攻擊也日益復(fù)雜、防不勝防。這些攻擊不僅對用戶的隱私和數(shù)據(jù)構(gòu)成威脅,還可能對企業(yè)造成金融損失、聲譽受損等嚴(yán)重危害。因此,理解和防范Web應(yīng)用程序的常見漏洞變得尤為重要。


01

OWASP Top 10


為了幫助開發(fā)者、安全專業(yè)人員和組織更好地了解Web應(yīng)用程序的主要風(fēng)險,全球網(wǎng)絡(luò)安全專業(yè)組織OWASP(Open Web Application Security Project)制定了OWASP Top 10,包括了當(dāng)前Web應(yīng)用程序面臨的最重要的十大漏洞。

本文將聚焦于近年來OWASP Top 10中的若干漏洞,深入淺出地探討它們的原理、危害以及防范策略。


02

SQL注入


注入漏洞被認為是最嚴(yán)重的漏洞之一,SQL注入漏洞是一種典型的注入漏洞,它允許攻擊者通過構(gòu)造SQL語句,繞過應(yīng)用程序的身份驗證和授權(quán)機制,訪問、修改甚至刪除數(shù)據(jù)庫中的敏感信息。下面用一個例子具體說明SQL注入的原理。

2.1 SQL注入實例

在購物網(wǎng)站點擊種類為“Accessories”的商品:

圖片

此時跳轉(zhuǎn)到該種類的商品頁面,url參數(shù)為“/filter?category=Accessories”

圖片


上述url參數(shù)將轉(zhuǎn)化成SQL語句,用于查詢數(shù)據(jù)庫中的信息:SELECT * FROM products WHERE category = 'Accessories',即從數(shù)據(jù)庫全部內(nèi)容中查詢類別為“Accessories”的商品,并將結(jié)果返回到頁面中。

在理解url參數(shù)和SQL語句作用后,對url參數(shù)稍作更改即可實施SQL注入攻擊。

將url參數(shù)更改為“/filter?category=Accessories'or+1=1--”。其中:

單引號“'”用于閉合原始的 SQL 查詢;

“or”為邏輯運算符,用于連接兩個條件,若其中一個條件為真,整個條件就為真;

“+”為url參數(shù)的連接符;

“1=1”為始終為真的條件;

“--”為SQL 中的注釋符,它會注釋掉后面的所有內(nèi)容,從而防止查詢語句因為被閉合的引號而變得不完整。

上述url參數(shù)最終將轉(zhuǎn)化成SQL語句:SELECT * FROM products WHERE category = 'Accessories' or 1=1--,由于第二個條件始終為真,故整個條件為真,達到了跳過第一個條件的目的。從頁面返回結(jié)果可知,本次查詢繞過了類別過濾,從而獲取到了所有商品的信息。

圖片


2.2 SQL注入小結(jié)

上述結(jié)果得知網(wǎng)站并未對SQL注入做防御措施,而進一步的SQL注入攻擊可能導(dǎo)致更嚴(yán)重的后果,如讀取、修改或刪除敏感數(shù)據(jù),繞過身份驗證,破壞數(shù)據(jù)完整性,執(zhí)行拒絕服務(wù)攻擊,甚至獲取操作系統(tǒng)級別的權(quán)限。這可能導(dǎo)致泄露用戶隱私、系統(tǒng)崩潰、服務(wù)不可用、甚至整個系統(tǒng)被入侵,因此對SQL注入進行防御是必要的。

上述網(wǎng)站是Burpsuite官方實驗室提供的SQL注入安全練兵場(下文XSS攻擊使用的網(wǎng)站是XSS安全練兵場),因此未對SQL注入做任何防御措施。所幸目前絕大部分網(wǎng)站不存在這樣的漏洞,已通過各種方式進行防御,如:驗證過濾用戶輸入、使用參數(shù)化查詢等。例如在對百度網(wǎng)使用相同的注入方式時,無法繞過過濾。

圖片


03

XSS攻擊


XSS(Cross-Site Scripting)是另一種常見的web應(yīng)用安全漏洞,它允許攻擊者向網(wǎng)頁注入惡意腳本代碼,使這些腳本在用戶瀏覽器中執(zhí)行,從而達到攻擊的目的。XSS可分為反射型XSS、存儲型XSS和DOM型XSS。

3.1反射型XSS

反射型XSS指惡意腳本通過URL參數(shù)傳遞,被目標(biāo)服務(wù)器反射回響應(yīng),并在用戶瀏覽器中執(zhí)行。常見于具有輸入?yún)?shù)功能(如搜索功能)的頁面,如下所示:

圖片


在搜索欄內(nèi)輸入“<script>alert(‘hello’)</script>”,執(zhí)行該javascript語句將在用戶瀏覽器內(nèi)彈出內(nèi)容為“hello”的對話框:

圖片


3.2 存儲型XSS

存儲型XSS指惡意腳本被存儲在目標(biāo)服務(wù)器上,當(dāng)其他用戶訪問包含惡意腳本的頁面時,腳本被執(zhí)行。常見于具有存儲輸入功能(如評論功能)的頁面,如下所示:

圖片

在評論區(qū)輸入“<script>alert(‘hello’)</script>”,顯示提交成功后回到原頁面,用戶瀏覽器內(nèi)彈出內(nèi)容為“hello”的對話框:

圖片


也就是說,任意用戶只要瀏覽到該評論,均會彈出該對話框。存儲型XSS比反射型XSS更容易產(chǎn)生危害,因為它無需用戶主動進行操作,在瀏覽頁面時無意識中被攻擊。

3.3 DOM型XSS

DOM型XSS指惡意腳本直接影響瀏覽器的 DOM,通過修改頁面的結(jié)構(gòu)來執(zhí)行攻擊。DOM(Document Object Model)即文檔對象模型,可簡單理解為網(wǎng)頁內(nèi)容。DOM型XSS與前兩類XSS攻擊的最大區(qū)別在于不會被插入到服務(wù)器響應(yīng)中,而是通過修改頁面現(xiàn)有DOM結(jié)構(gòu)來觸發(fā),這一特點使得DOM型XSS難以被服務(wù)端檢測。

如下所示,在輸入“1”后點擊搜索:

圖片

出現(xiàn)搜索結(jié)果后通過開發(fā)者工具查看網(wǎng)頁結(jié)構(gòu):

圖片

在DOM中發(fā)現(xiàn)用戶輸入的參數(shù)“1”被包裹在img標(biāo)簽內(nèi)部。根據(jù)此信息,可在搜索框內(nèi)輸入“"><svg onload=alert(1)>”,該參數(shù)在截斷img標(biāo)簽后,新增一個svg標(biāo)簽,并在該標(biāo)簽內(nèi)部通過“onload”事件屬性觸發(fā)彈窗事件:

圖片


點擊搜索后出現(xiàn)了彈窗“1”,此時再通過開發(fā)者工具查看網(wǎng)頁結(jié)構(gòu):

圖片


發(fā)現(xiàn)原本的img標(biāo)簽已被截斷,出現(xiàn)了新增的svg標(biāo)簽且標(biāo)簽內(nèi)部包含彈窗事件。

3.4 XSS總結(jié)

以上三類XSS示例均為攻擊者展開攻擊的第一步,攻擊者通過該步驟判斷網(wǎng)站是否進行了XSS防護。若攻擊成功,可實施進一步攻擊,如竊取用戶信息、會話劫持等。

網(wǎng)站可通過輸入驗證、輸出編碼、CSP(Content Security Policy)等方式進行防御。


04

失效的身份認證


失效的身份認證指攻擊者利用網(wǎng)站應(yīng)用程序中的身份認證缺陷獲取高權(quán)限并對應(yīng)用服務(wù)進行攻擊。通俗來說,攻擊者能夠破譯密碼等信息,繞過身份驗證機制,暫時或永久地冒用其他用戶身份從而進行攻擊。

可能導(dǎo)致失效身份認證的因素包括:

弱密碼策略:使用弱密碼或允許用戶設(shè)計弱密碼,使攻擊者更容易猜測或破解;

會話管理問題:Web應(yīng)用程序中,會話指一種交互性的通信期間,即客戶端和服務(wù)端進行通信的一段時間。若會話管理不當(dāng),如未設(shè)置會話過期時長或會話標(biāo)識泄露時,攻擊者將輕而易舉地獲取權(quán)限進行攻擊;

不安全的密碼重置:若密碼重置功能不安全,攻擊者可能通過恢復(fù)或繞過此功能來獲取對用戶賬戶的訪問權(quán)限。

4.1 失效的身份認證實例

如下所示,在某FOTA平臺利用低權(quán)限賬戶進行登錄(該賬戶無賬戶管理功能),并通過抓包工具BurpSuite獲取該網(wǎng)絡(luò)請求的詳細信息,記錄低權(quán)限賬戶的令牌信息Authorization:

圖片

再以高權(quán)限賬戶進行登錄(該賬戶擁有賬戶管理功能),同樣獲取網(wǎng)絡(luò)請求的詳細信息,此時將高權(quán)限賬戶的令牌信息替換為低權(quán)限用戶的令牌信息,并重新發(fā)送該請求:

圖片

發(fā)現(xiàn)仍能成功獲取相關(guān)信息,攻擊者通過低權(quán)限賬號直接獲取了系統(tǒng)內(nèi)敏感數(shù)據(jù)。

在上述實例中,將高權(quán)限令牌替換為低權(quán)限令牌,相當(dāng)于模擬使用一個已登錄的低權(quán)限賬戶去訪問高權(quán)限接口。從實際攻擊的角度出發(fā),攻擊者可通過一個普通賬戶(如游客賬戶),去訪問一個高權(quán)限賬戶(如管理員賬戶)接口,進而使用超出自身權(quán)限的功能。

4.2 失效的身份認證小結(jié)

失效的身份認證是一種常見的安全漏洞,主要涉及到身份驗證機制的不足或不正確使用,導(dǎo)致攻擊者有可能通過不同的手段繞過身份驗證,獲得未經(jīng)授權(quán)的訪問權(quán)限。為防范此類漏洞,可采用實施強密碼策略、設(shè)置會話過期時間、采用安全會話標(biāo)識等措施。


05

小結(jié)


本文介紹了三種常見的Web應(yīng)用程序漏洞:SQL注入、XSS攻擊和失效的身份認證。

SQL注入允許攻擊者通過在輸入字段中注入惡意SQL代碼來繞過驗證,執(zhí)行未經(jīng)授權(quán)的數(shù)據(jù)庫操作。為了防范SQL注入,Web應(yīng)用程序應(yīng)采用驗證過濾用戶輸入、使用參數(shù)化查詢等安全措施。

XSS攻擊通過在網(wǎng)頁中注入惡意腳本來在用戶瀏覽器上執(zhí)行惡意代碼。分為存儲型、反射型和DOM型XSS。為了預(yù)防XSS,Web應(yīng)用程序應(yīng)采用輸入驗證、輸出編碼和CSP(Content Security Policy)等關(guān)鍵措施。

失效的身份認證允許攻擊者繞過已有的身份認證機制,獲取未經(jīng)授權(quán)的訪問權(quán)限。為預(yù)防該攻擊可加強會話管理,同時在密碼強度上進行一定強制要求。

總體而言,通過綜合使用這些安全措施,可以有效保護Web應(yīng)用程序免受部分攻擊的影響。


閱讀原文

祁东县| 溧水县| 金阳县| 浏阳市| 临高县| 乌兰浩特市| 丰镇市| 吴堡县| 淳安县| 贡觉县| 泉州市| 灌云县| 邛崃市| 深州市| 禹州市| 斗六市| 颍上县| 邵阳市| 吉安县| 莱芜市| 贵溪市| 温州市| 新民市| 博湖县| 富源县| 衡山县| 得荣县| 葫芦岛市| 绥江县| 明溪县| 钦州市| 本溪市| 苍山县| 宝鸡市| 临沭县| 田林县| 玛纳斯县| 广丰县| 武平县| 常熟市| 牙克石市|