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