国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

不可思議但又無處不在的漏洞,WEB安全基礎(chǔ)入門—業(yè)務(wù)邏輯漏洞

這篇具有很好參考價值的文章主要介紹了不可思議但又無處不在的漏洞,WEB安全基礎(chǔ)入門—業(yè)務(wù)邏輯漏洞。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

歡迎關(guān)注訂閱專欄!
WEB安全系列包括如下三個專欄:

  • 《WEB安全基礎(chǔ)-服務(wù)器端漏洞》
  • 《WEB安全基礎(chǔ)-客戶端漏洞》
  • 《WEB安全高級-綜合利用》

知識點全面細(xì)致,邏輯清晰、結(jié)合實戰(zhàn),并配有大量練習(xí)靶場,讓你讀一篇、練一篇,掌握一篇,在學(xué)習(xí)路上事半功倍,少走彎路!
歡迎關(guān)注訂閱專欄!

  • 專欄文章追求對知識點的全面總結(jié),邏輯嚴(yán)密,方便學(xué)習(xí)掌握。力求做到看完一篇文章,掌握一類漏洞知識。讓讀者簡潔高效的掌握WEB安全知識框架,推開入門深造的大門。
  • 絕不為了追求文章數(shù)量,彰顯內(nèi)容豐富而故意拆散相關(guān)知識點。避免讀者沉迷在無盡的技巧中而迷失進(jìn)階的道路!本系列的目標(biāo)是授之以漁,而不僅僅是技巧的堆砌。
  • 每篇文章均配有大量靶場,點擊文章中靶場名即可跳轉(zhuǎn)練習(xí)(靶場在網(wǎng)站注冊即可免費使用)。
  • 歡迎訂閱專欄!建議學(xué)完兩個基礎(chǔ)專欄,再學(xué)習(xí)高級哦~

1. 什么是業(yè)務(wù)邏輯漏洞

是業(yè)務(wù)邏輯在設(shè)計或具體實現(xiàn)上的缺陷導(dǎo)致攻擊者可以利用的漏洞。攻擊者通常使程序處于不尋常的“狀態(tài)”,導(dǎo)致業(yè)務(wù)邏輯不能正確處理,在這種情況下利用現(xiàn)成的邏輯或函數(shù)達(dá)成惡意的目標(biāo)。
該類漏洞使用自動漏洞掃描器檢測很難發(fā)現(xiàn)。因此,邏輯缺陷通常是測試人員的一個很好的目標(biāo)。

業(yè)務(wù)邏輯漏洞,往往對技術(shù)要求不高,但是需要測試人員有異想天開的腦洞,本文可重點看4.漏洞實例,拓寬下腦洞,見識下一個個不可思議,不可理喻的業(yè)務(wù)邏輯漏洞。
業(yè)務(wù)邏輯漏洞、業(yè)務(wù)邏輯漏洞實戰(zhàn)、業(yè)務(wù)邏輯漏洞滲透、業(yè)務(wù)邏輯漏洞技巧、業(yè)務(wù)邏輯,WEB安全0基礎(chǔ)入門系列,web安全,安全,業(yè)務(wù)邏輯,授權(quán)認(rèn)證,系統(tǒng)安全

2. 漏洞產(chǎn)生的原因

  • 設(shè)計和開發(fā)人員錯誤的預(yù)估用戶的行為,導(dǎo)致用戶實際操作與程序設(shè)計邏輯偏離。

簡單舉例:開發(fā)人員認(rèn)為用戶都是通過瀏覽器進(jìn)行交互訪問,很多驗證可能僅依靠客戶端的驗證。而沒有考慮很多“用戶”使用攔截代理進(jìn)行各種操作。這就造成了大量驗證被繞過,數(shù)據(jù)報文內(nèi)容可能被任意篡改的情況。

  • 程序功能過于復(fù)雜,沒有一個團(tuán)隊能完整了解所有功能具體實現(xiàn),導(dǎo)致了錯誤的預(yù)估其他功能,從而產(chǎn)生偏差,易被攻擊者利用。

一個開發(fā)小組錯誤的認(rèn)為另一功能產(chǎn)生的輸入數(shù)據(jù)是可靠的而未進(jìn)行全面驗證。而那個功能開發(fā)團(tuán)隊卻以為后續(xù)處理會進(jìn)行驗證和過濾…

3. 漏洞實際利用

1. 錯誤的信任客戶端驗證

一個根本性的錯誤假設(shè)是,用戶只會通過提供的Web界面與應(yīng)用程序交互。這就像一眼看到未來的“美女老婆”,作為優(yōu)質(zhì)青年怎么可能旁觀呢,早就各種套路深入交流了?,F(xiàn)實如此,網(wǎng)絡(luò)世界更是這般。

例題1、2

2. 非常規(guī)輸入數(shù)據(jù)不能被正確處理

應(yīng)用程序往往在管理庫存、應(yīng)用預(yù)算限制、觸發(fā)供應(yīng)鏈階段對用戶數(shù)據(jù)的內(nèi)容進(jìn)行驗證,判斷是否符合各項規(guī)則條件限制,最終決定能否接受。開發(fā)人員要針對各種可能的輸入類型和場景進(jìn)行驗證功能的實現(xiàn)。
比如,對數(shù)量類型的輸入,有沒有考慮負(fù)數(shù)的情況呢。比如下面的驗證邏輯代碼

$transferAmount = $_POST['amount'];
$currentBalance = $user->getBalance();

if ($transferAmount <= $currentBalance) {
  // Complete the transfer
} else {
  // Block the transfer: insufficient funds
}

負(fù)數(shù)造成的影響將是災(zāi)難性的。特別是前端有了過濾,而后端恰巧缺失了這一類過濾,會造成問題難以在測試階段被盡早發(fā)現(xiàn)出來。
測試輸入數(shù)據(jù)三問,這有助于盡早發(fā)現(xiàn)漏洞:

  • 數(shù)據(jù)限制條件是什么
  • 到達(dá)極限條件后,會發(fā)生什么
  • 輸入的數(shù)據(jù)有被替換或者標(biāo)準(zhǔn)化嗎

例題3、4、5

3. 設(shè)計時錯誤預(yù)測用戶操作

  1. 受信任用戶永遠(yuǎn)受信任,不再進(jìn)行后續(xù)驗證。

例題6

  1. 用戶可以繞過前端強(qiáng)制必填字段,而后端對此沒有驗證

刪除參數(shù)查看系統(tǒng)有無任何異常響應(yīng),力爭跳轉(zhuǎn)至不同的判斷路徑中

  • 一次只刪除一個參數(shù),確保每個代碼路徑都能觸發(fā)到
  • 分別刪除參數(shù)名和值,服務(wù)器通常會產(chǎn)生不同的處理方式
  • 遵循多流程的處理直至完成,有時一個環(huán)節(jié)的參數(shù)(或cookie)改變,會極大影響到后續(xù)步驟。

例題 7、8

  1. 用戶操作未按流程順序執(zhí)行

正常用戶會按照程序指引一步一步順序完成,但是攻擊者往往會跳過某些步驟,程序若未驗證,則造成漏洞。

例題 9、10、11

  1. 特定領(lǐng)域的業(yè)務(wù)漏洞

網(wǎng)站某一項特定領(lǐng)域的業(yè)務(wù)邏輯漏洞,

  • 營銷促銷領(lǐng)域,打折劵的使用或湊單價格滿足條件金額會突然變化的情況,都是漏洞高發(fā)區(qū)
  • 社交媒體粉絲和點贊數(shù),社交媒體業(yè)務(wù)邏輯衍生的漏洞等

例題12、13

  1. 功能實現(xiàn)明文-加密輸出途徑

當(dāng)用戶可控制的輸入被加密,然后以某種方式向用戶提供所產(chǎn)生的密文時,可能會發(fā)生危險的情況。攻擊者可以使用此輸入來使用正確的算法和非對稱密鑰加密任意數(shù)據(jù)。
攻擊者可定制攻擊荷載內(nèi)容,利用此處功能點,生成符合網(wǎng)站要求的加密cookie

例題 14

4. 漏洞實例

1. 對客戶端控件的過度信任(Excessive trust in client-side controls)

  • 目標(biāo)

      購買價格昂貴的Lightweight l33t leather jacket
    

測試賬戶:wiener:peter

  • 解題思路

添加產(chǎn)品到購物車環(huán)節(jié),數(shù)據(jù)包中發(fā)現(xiàn),可任意更改價格

POST /cart HTTP/1.1
Host: ac081f251eda4b10c0583dbc00470032.web-security-academy.net

productId=1&redir=PRODUCT&quantity=1&price=1

2. 雙因素認(rèn)證邏輯缺陷(2FA broken logic)

  • 目標(biāo)

      登陸目標(biāo)賬戶carlos
    

測試賬戶:wiener:peter

  • 解題思路

此題正常登陸邏輯為(攻擊思路見注釋框)

  1. 輸入賬號密碼,通過后生成驗證碼發(fā)到登錄人郵箱`POST /login`  `GET /login2`

修改數(shù)據(jù)包verity值,確保系統(tǒng)已為carlos賬戶生成有效的驗證碼。

GET /login2 HTTP/1.1
Host: ac9f1fea1f713b13c0ca44ec0086002c.web-security-academy.net
Cookie: session=afxODj6T2amYajgf2qNNCB6gKQLSaI0G; verify=carlos
  2. 輸入驗證碼        `POST /login2`

使用Burp爆破模塊 對驗證碼進(jìn)行爆破(規(guī)則很簡單,0000~9999遍歷爆破)

  3. 完成登陸

3. 高級邏輯漏洞(High-level logic vulnerability)

  • 目標(biāo)

      購買價格昂貴的Lightweight l33t leather jacket
    

測試賬戶:wiener:peter

  • 解題思路

此題開發(fā)人員忘記設(shè)計驗證數(shù)量為負(fù)的情況,只是驗證了總金額不能為負(fù)數(shù)。本人賬戶有100.所以最終結(jié)賬金額控制在(0~100)即可。其他一樣修改數(shù)據(jù)包即可

業(yè)務(wù)邏輯漏洞、業(yè)務(wù)邏輯漏洞實戰(zhàn)、業(yè)務(wù)邏輯漏洞滲透、業(yè)務(wù)邏輯漏洞技巧、業(yè)務(wù)邏輯,WEB安全0基礎(chǔ)入門系列,web安全,安全,業(yè)務(wù)邏輯,授權(quán)認(rèn)證,系統(tǒng)安全

4. 低級邏輯缺陷(Low-level logic flaw)

  • 目標(biāo)

      購買價格昂貴的Lightweight l33t leather jacket
    

測試賬戶:wiener:peter

  • 解題思路

改題思路很簡單,購買總金額在超過極限大之后,突然反轉(zhuǎn),從負(fù)數(shù)開始,需要利用爆破模式,回到0。再搭配其他產(chǎn)品控制100以內(nèi)。

5. 對異常輸入的處理不一致(Inconsistent handling of exceptional input)

  • 目標(biāo)

獲取administrator的權(quán)限,并刪除carlos

  • 解題思路

這道題思路比較巧妙,可記錄下來備用。

  1. 注冊時郵箱長度不設(shè)限,但是注冊成功后數(shù)據(jù)庫記錄的有限長度僅為255位。
  2. 同時發(fā)現(xiàn)admin狀態(tài)只有單位郵箱注冊的人員才能訪問@dontwannacry.com
  3. 所以構(gòu)造一個長度遠(yuǎn)超255位的郵箱,此郵箱為攻擊者能收到郵件的郵箱。

many_string@dontwannacry.com.攻擊者郵箱后綴保證在m處正好是255字節(jié)。
這樣注冊時攻擊者能正常收到郵件獲取驗證連接。應(yīng)用數(shù)據(jù)庫卻已單位郵箱形式存到數(shù)據(jù)庫。從而使攻擊者獲取了單位admin權(quán)限

6. 不一致的安全控制(Inconsistent security controls)

  • 目標(biāo)

獲取administrator的權(quán)限,并刪除carlos

  • 解題思路

此題問題出現(xiàn)在賬戶頁更換郵箱未做驗證,正常用戶可更換為特定單位郵箱,導(dǎo)致獲取admin權(quán)限

7. 兩用終端上的弱隔離(Weak isolation on dual-use endpoint)

  • 目標(biāo)

獲取administrator的權(quán)限,并刪除carlos
測試賬戶wiener:peter

  • 解題思路
    1. 熟悉流程,發(fā)現(xiàn)賬戶頁有修改密碼的功能,抓取數(shù)據(jù)包如下
POST /my-account/change-password HTTP/1.1
Host: ac8d1ff71e005690c0010f4300f00032.web-security-academy.net

csrf=6WiavlTndiXBzv8zpE13UM4R6lGUzCy6&username=wiener&current-password=peter&new-password-1=123&new-password-2=123
  1. 修改username=administrator 刪除&current-password=peter,新設(shè)密碼為123
  2. 再次發(fā)送數(shù)據(jù)包,登陸administrator,密碼已成功修改

8. 密碼重置邏輯缺陷(Password reset broken logic)

  • 目標(biāo)

重置賬戶carlos的密碼,并登錄其賬戶
測試賬戶wiener:peter

  • 解題思路

此題用測試賬號走一遍流程,經(jīng)測試發(fā)現(xiàn)數(shù)據(jù)包

POST /forgot-password?temp-forgot-password-token=AmG0hPiLCdYdTKba5le0Ywfdt9M7o3MW HTTP/1.1

temp-forgot-password-token=AmG0hPiLCdYdTKba5le0Ywfdt9M7o3MW&username=wiener&new-password-1=123&new-password-2=123

經(jīng)測試去掉token的值,處理依然成功

POST /forgot-password?temp-forgot-password-token= HTTP/1.1

temp-forgot-password-token=&username=wiener&new-password-1=123&new-password-2=123

再次正常啟動流程,用戶名發(fā)起carlos密碼重置。使用上述數(shù)據(jù)包完成重置

9. 雙因素驗證繞過(2FA simple bypass)

  • 目標(biāo)

已經(jīng)獲得目標(biāo)賬戶密碼:carlos:montoya,但是需繞過雙因素驗證,訪問carlos首頁
測試賬戶wiener:peter

  • 解題思路

賬號密碼驗證后,可在輸入驗證碼環(huán)節(jié),直接更改url到主頁,跳過此環(huán)節(jié)。

10. 工作流驗證不足(Insufficient workflow validation)

  • 目標(biāo)

購買商品"Lightweight l33t leather jacket"
測試賬戶wiener:peter

  • 解題思路

經(jīng)測試流程發(fā)現(xiàn),流程各環(huán)節(jié)中,最后一步購買確認(rèn)可以單獨發(fā)起。

11. 通過特殊狀態(tài)繞過身份驗證(Authentication bypass via flawed state machine)

  • 目標(biāo)

購買商品"Lightweight l33t leather jacket"
測試賬戶wiener:peter

  • 解題思路

該題在嘗試跳過一個步驟時采用,直接攔截數(shù)據(jù)包,初始/GET就攔截,然后丟棄。瀏覽器URL欄直接改為首頁。

12. 業(yè)務(wù)規(guī)則的執(zhí)行存在缺陷(Flawed enforcement of business rules)

  • 目標(biāo)

購買商品"Lightweight l33t leather jacket"
測試賬戶wiener:peter

  • 解題思路

    此題最下方還可以填寫任意郵箱得到驗證碼,所以是兩個驗證碼。發(fā)現(xiàn)可以交替提交無報錯。

13. 無限貨幣的邏輯缺陷(Infinite money logic flaw)

  • 目標(biāo)

購買商品"Lightweight l33t leather jacket"
測試賬戶wiener:peter

  • 解題思路

網(wǎng)站有兌換幣(相當(dāng)于10元充值卡)購買時花費十元,但是若使用優(yōu)惠劵后,可多賺3元。重復(fù)這個流程指導(dǎo)金額可以購買目標(biāo)商品即可。(另,自動化可使用Burp的插件)

14. 通過加密-明文繞過身份驗證(Authentication bypass via encryption oracle)

  • 目標(biāo)

獲取admin權(quán)限,刪除賬戶carlos
測試賬戶wiener:peter

  • 解題思路

暫略文章來源地址http://www.zghlxwxcb.cn/news/detail-786897.html

到了這里,關(guān)于不可思議但又無處不在的漏洞,WEB安全基礎(chǔ)入門—業(yè)務(wù)邏輯漏洞的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 不可思議!Vue拖拽插件的實戰(zhàn)大揭秘,竟然驚人拋棄了常規(guī)選擇!

    不可思議!Vue拖拽插件的實戰(zhàn)大揭秘,竟然驚人拋棄了常規(guī)選擇!

    大家好,我是程序視點的小二哥 因為項目上有一個在規(guī)定區(qū)域內(nèi)自由拖拽的小需求,自己純js寫又有點小麻煩,就花了點時間尋找到這個小組件。 vue-drag-resize是一個用于拖拽,縮放的組件 根據(jù)網(wǎng)上搜索到的使用教程,都是照著文檔翻譯了一遍,根本解決不了我想要的問題花了

    2024年02月14日
    瀏覽(17)
  • 一鍵同步,無處不在的書簽體驗:探索多電腦Chrome書簽同步插件

    一鍵同步,無處不在的書簽體驗:探索多電腦Chrome書簽同步插件

    平時大家都是怎么管理自己的瀏覽器書簽數(shù)據(jù)的呢?有沒有過公司和家里的電腦瀏覽器書簽不同步的情況?有沒有過電腦突然壞了但書簽數(shù)據(jù)沒有導(dǎo)出,導(dǎo)致書簽數(shù)據(jù)丟失了?解決這些問題的方法有很多,我選擇自己寫個chrome插件來做書簽同步。 通過 gitee 來做存取 建一個私

    2024年02月08日
    瀏覽(21)
  • 【觀察】Akamai:向分布式云邁出堅實一步,讓云和邊緣“無處不在”

    【觀察】Akamai:向分布式云邁出堅實一步,讓云和邊緣“無處不在”

    近年來,云正如同日常生活中的水、電那樣,融入到社會的各個層面,它不再是一種單純的架構(gòu)或者技術(shù),而是千行百業(yè)走向數(shù)字化的核心基礎(chǔ)設(shè)施;云也正在變成一種融合劑,無論是大數(shù)據(jù)、人工智能、物聯(lián)網(wǎng)等,這些新的技術(shù)也正在加速融入云中;同樣,今天“萬物皆云

    2024年02月02日
    瀏覽(25)
  • 【開發(fā)工具】 我居然可以使用Office Tool Plus 安裝上Office 真的是太不可思議了

    【開發(fā)工具】 我居然可以使用Office Tool Plus 安裝上Office 真的是太不可思議了

    ?? 個人主頁 極客小俊 ??? 作者簡介:web開發(fā)者、設(shè)計師、技術(shù)分享博主 ?? 希望大家多多支持一下, 我們一起進(jìn)步!?? ?? 如果文章對你有幫助的話,歡迎評論 ??點贊???? 收藏 ??加關(guān)注 Office Tool Plus (簡稱OTP)是一款微軟 Office 辦公軟件 下載、安裝、管理 的按照部

    2024年02月02日
    瀏覽(51)
  • [小塵送書-第二期]《從零開始讀懂量子力學(xué)》由淺入深,解釋科學(xué)原理;從手機(jī)到超導(dǎo),量子無處不在;從微觀到宏觀,遐想人生的意義!

    [小塵送書-第二期]《從零開始讀懂量子力學(xué)》由淺入深,解釋科學(xué)原理;從手機(jī)到超導(dǎo),量子無處不在;從微觀到宏觀,遐想人生的意義!

    大家好,我是小塵,歡迎關(guān)注,一起交流學(xué)習(xí)!歡迎大家在CSDN后臺私信我!一起討論學(xué)習(xí),討論如何找到滿意的工作! 從微小的原子到浩瀚的宇宙,從每一滴水到閃亮的鉆石,從劃破夜空的激光到你身邊的手機(jī)……所有事物的背后都有量子力學(xué)在主宰!你看過世界級暢銷書

    2024年02月15日
    瀏覽(23)
  • (下)蘋果有開源,但又怎樣呢?

    (下)蘋果有開源,但又怎樣呢?

    ?一開始,因為 MacOS X ,蘋果與 FreeBSD 過往從密,不僅挖來 FreeBSD 創(chuàng)始人 Jordan Hubbard,更是在此基礎(chǔ)上開源了 Darwin。但是,蘋果并沒有給予 Darwin 太多關(guān)注,作為蘋果的首個開源項目,它算不上成功。(詳情請戳:《(上)蘋果有開源,但又怎樣呢? 》) 再后來,蘋果攻堅瀏

    2024年02月06日
    瀏覽(13)
  • 讓二叉樹無處可逃

    讓二叉樹無處可逃

    志不立,天下無可成之事。 ——王陽明 樹也是屬于一種 數(shù)據(jù)結(jié)構(gòu) ,它是一種 非線性的 數(shù)據(jù)結(jié)構(gòu),與棧,隊列和鏈表是不同的存在。 由n(n=0)個有限的結(jié)點組成的具有層次關(guān)系的集合。 至于為什么是樹呢?其實按照結(jié)構(gòu)圖來看,把一顆二叉樹的結(jié)構(gòu)圖倒過來就像一顆樹了。

    2024年01月23日
    瀏覽(16)
  • 10 個冷門但又非常實用的 Docker 使用技巧

    10 個冷門但又非常實用的 Docker 使用技巧

    jwilder/nginx-proxy????????????????Automated?Nginx?reverse?proxy?for?docker?con…???1846????????????????????????????????????[OK] richarvey/nginx-php-fpm????????????Container?running?Nginx?+?PHP-FPM?capable?of…???780???????????????????????????????

    2024年04月23日
    瀏覽(71)
  • Pytest:單元測試的寵兒,讓 Bug 無處藏身!

    Pytest:單元測試的寵兒,讓 Bug 無處藏身!

    在軟件開發(fā)中,確保代碼的質(zhì)量和穩(wěn)定性是至關(guān)重要的。單元測試作為保障代碼質(zhì)量的重要手段之一,為開發(fā)者提供了在開發(fā)過程中驗證代碼邏輯的有效方式。而在眾多的單元測試框架中,Pytest 憑借其簡潔靈活的語法和強(qiáng)大的功能逐漸成為了開發(fā)者們的寵兒。本文將深入探討

    2024年01月17日
    瀏覽(13)
  • 前端調(diào)試時不改代碼但又想打印變量信息怎么辦?

    前端調(diào)試時不改代碼但又想打印變量信息怎么辦?

    我們都知道, Chrome的控制臺可以在調(diào)試的時候打斷點。程序運行到這的時候會停止 但有時候我們不希望程序斷點執(zhí)行,我們只是想看一些變量的信息。 按照以前的方式,我們只能去修改源碼增加打印日志的語句, 這樣既浪費時間, 又需要在調(diào)試完成后清理掉我們打印的日

    2024年02月08日
    瀏覽(14)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包