
構(gòu)建高效API的10個(gè)API設(shè)計(jì)最佳實(shí)踐
如果攻擊者嘗試修改刪除方法,將路徑中的用戶關(guān)鍵字更改為管理員,則攻擊者獲得管理員角色的訪問權(quán)限,并可以執(zhí)行刪除操作。
由于服務(wù)器端缺乏 API 訪問控制處理,攻擊成功。
假設(shè)有一個(gè)在線銀行應(yīng)用程序允許用戶在賬戶之間轉(zhuǎn)賬。該應(yīng)用程序具有不同的授權(quán)級別,普通用戶只能在自己的賬戶內(nèi)轉(zhuǎn)賬,而管理員可以在任何賬戶之間轉(zhuǎn)賬。在這種情況下,如果應(yīng)用程序在處理資金轉(zhuǎn)賬請求之前未能檢查用戶的角色或權(quán)限,則存在 BFLA 漏洞。例如,如果普通用戶試圖將資金從一個(gè)賬戶轉(zhuǎn)移到不屬于他們的另一個(gè)賬戶,應(yīng)用程序應(yīng)該拒絕該請求。然而,由于功能級別授權(quán)受損,應(yīng)用程序可能會忽略此檢查,從而允許未經(jīng)授權(quán)的交易繼續(xù)進(jìn)行。攻擊者可以通過操縱請求參數(shù)或使用代理工具攔截請求來利用此漏洞。通過將目標(biāo)帳號更改為另一個(gè)用戶的帳戶,他們可以誘騙應(yīng)用程序?qū)①Y金從受害者的帳戶轉(zhuǎn)移到自己的帳戶。
為了緩解 BFLA 漏洞,必須在每個(gè)功能或特性級別實(shí)施強(qiáng)大的授權(quán)檢查,確保用戶在嘗試執(zhí)行操作時(shí)得到正確的身份驗(yàn)證和授權(quán)。API 網(wǎng)關(guān)可以幫助實(shí)現(xiàn)這一點(diǎn)。
文章來源:The Risks of Broken Function Level Authorization(BFLA) and How to Mitigate Them with an API Gateway
構(gòu)建高效API的10個(gè)API設(shè)計(jì)最佳實(shí)踐
如何找到合適的API
8個(gè)最佳Swagger替代品
探索頂級PDF水印API:PDFBlocks(2024年更新)
API 安全 101:是什么、如何做、為什么做
探索SOAP API:深入了解其優(yōu)勢和戰(zhàn)略實(shí)施
一站式教程:使用Python、PHP和Ruby調(diào)用企業(yè)網(wǎng)站備案/ICP域名備案查詢API
開放API的優(yōu)勢、挑戰(zhàn)和戰(zhàn)略見解
探索智能化新境界:云知聲山海大模型API集成與應(yīng)用實(shí)踐