首頁 運維 安全 API的五個常見漏洞分別是什麼

API的五個常見漏洞分別是什麼

May 12, 2023 pm 08:40 PM
api

API的五個常見漏洞分別是什麼

API讓天下沒有難做的生意,駭客也是這麼認為的。在企業數位轉型如火如荼的今天,API已經遠遠超越了技術範疇,而網路商業創新和傳統企業數位轉型都離不開API經濟或API策略。 API連結的不僅是系統和數據,還包括企業職能部門、客戶和合作夥伴,甚至整個商業生態。同時,日益嚴峻的安全威脅,使得API正成為網路安全的下一個前線。 我們整理了安全專家們給企業提出的五大API安全弱點和修補建議。

API使一切都變得更加容易,從資料共享到系統連接到關鍵功能的交付,但API也使攻擊者(包括惡意機器人)更容易進行攻擊。 API的應用激增,正刺激網路犯罪分子越來越多地利用API安全漏洞進行詐欺和竊取資料。

以下,我們將探討容易被駭客利用的五個API漏洞,並分享安全專家給予的緩解和強化建議。

一、太容易被發現

假如你是駭客,準備攻擊一家企業,那麼首先要做的第一件事就是識別盡可能多的API 。我首先按常規方式使用目標應用程序,在瀏覽器中打開Web應用程式或在手機端下載安裝行動應用程序,然後使用攔截代理監視通訊。

攔截代理程式能夠擷取瀏覽器或行動應用程式對後端Web伺服器發出的所有請求,從而使攻擊者可以對所有可用的API端點進行分類。例如,大多數API都會將API/V1/login作為驗證端點。

如果目標也是行動應用程序,則將應用程式包拆開,並查看應用程式內部可用的API呼叫。考慮到所有可能的活動,攻擊者可以搜尋無法正確保護使用者資料的常見配置錯誤或API。

最後,攻擊者尋找API文件。有些組織會為第三方發布API文檔,但為所有使用者使用相同的API端點。

有了一個不錯的端點清單,攻擊者就可以測試標準使用者行為和異常行為測試,可以透過兩種方法找到有趣的漏洞。

解決方法:為了讓攻擊者更難發現API,請確保透過僅允許有效使用者存取的權限管理來控制對API文件的存取。雖然將憑證固定在行動應用程式上並不能完全隱藏API端點,而且也不完美,但確實為攻擊增加了額外的步驟。對Web伺服器的API請求應盡可能被混淆和控制。

二、過於詳細的錯誤訊息

最近,攻擊者接管帳號的嘗試不斷增加。錯誤訊息過於“詳細周到”,往往使此類攻擊更加容易。冗長的錯誤訊息會引導攻擊者了解他們需要進行哪些更改才能偽裝成合法請求。 API專為低負載下的高速交易而設計,使攻擊者可以使用高效能係統找出有效帳戶,然後嘗試登入並更改密碼進行利用。

解決方法:不要拿使用者體驗當作擋箭牌,有些看起來有利於使用者體驗的做法,未必有利於安全性。系統傳回的錯誤訊息不應該包括錯誤的使用者名稱或錯誤的密碼,甚至不能包含錯誤訊息的類別(使用者名稱還是密碼錯誤)。用於查詢資料的錯誤訊息也是如此,如果查詢/搜尋格式不正確或由於某種原因而無法執行,則應該傳回最「沒有營養」的錯誤訊息:「糟糕,哪裡出錯了」。

三、太多參數

當攻擊者透過API呼叫遍歷攻擊系統時,他們必須弄清楚可以發送些什麼來取得資料。攻擊者「信奉」這樣的一個事實:即越複雜的系統,出錯的地方越多。攻擊者識別出API後,他們將對參數進行分類,然後嘗試存取管理員(垂直特權升級)或另一個使用者(水平特權升級)的資料以收集其他資料。通常,太多不必要的參數被揭露給了使用者。

在最近的研究項目中,我們對目標服務的API呼叫返回了大量數據,很多都是不必要的數據信息,例如付款網關的處理器密鑰和可用的折扣信息等。這些「獎勵資訊」使攻擊者可以更好地理解這些API呼叫的上下文和語法。攻擊者不需要太多的想像力就能弄清楚下一步該怎麼做。這些額外的參數為攻擊者提供了豐富的攻擊資料集。

解決方法:如果將使用者看到的內容範圍限制為必需內容,限制關鍵資料的傳輸,並使資料查詢結構未知,那麼攻擊者就很難對他們知道的參數進行暴力破解。

四、資料過多

同樣地,由於可用的參數太多,收集資料將成為顯而易見的下一步行動。許多企業的系統支援匿名連接,並且傾向洩漏普通用戶不需要的額外數據。另外,許多企業傾向於儲存可以直接存取的資料。

安全專業人員正在努力應對API請求經常暴露資料儲存位置的挑戰。例如,當我查看安全攝影機中的影片時,可以看到該資訊來自Amazon S3儲存庫。通常,那些S3儲存庫的保護並不周全,任何人的資料都可以被檢索。

另一個常見的數據挑戰是資料過載,許多企業就像入冬前的花栗鼠,儲存的資料量遠遠超出了需求。許多過期用戶資料已經沒有商業價值和保存價值,但是如果發生洩露,就會為企業帶來巨大的品牌和合規風險。

解決方法:對於儲存使用者資料的企業,不僅是PII或PHI,都必須進行徹底的資料審查。在檢查了儲存的資料之後,應制定資料存取規則並進行測試。確保能夠匿名存取的資料不涉及任何敏感資料。

五、安全設計太少

多年來,應用程式設計總是優先考慮功能性和可用性,很少考慮安全性。很多CISO表示,API安全性尤其不被重視,甚至完全被排除在安全設計流程之外。通常都是開發人員開發部署完成後,在API投入生產且頻繁遭受攻擊後才亡羊補牢查找問題。 安全性(包括API安全性)需要成為產品設計的一部分,並且應作為首要考慮因素之一加以實現,而不是事後填坑。

解決方法:檢視應用程式的安全體系結構是邁向安全系統的重要第一步。請記住,API使攻擊者更有效率地攻擊或利用您的系統。設計安全性的目標是讓API成為使用者而非攻擊者的高效工具。

以上是API的五個常見漏洞分別是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1657
14
CakePHP 教程
1415
52
Laravel 教程
1309
25
PHP教程
1257
29
C# 教程
1229
24
PHP和Manticore Search開發指南:快速建立搜尋API PHP和Manticore Search開發指南:快速建立搜尋API Aug 07, 2023 pm 06:05 PM

PHP和ManticoreSearch開發指南:快速建立搜尋API搜尋是現代Web應用程式中不可或缺的功能之一。無論是電子商務網站、社交媒體平台還是新聞門戶,都需要提供一個高效、準確的搜尋功能來幫助用戶找到他們感興趣的內容。而ManticoreSearch作為一個效能卓越的全文搜尋引擎,為我們提供了一個強大的工具來創建出色的搜尋API。本文將向您介紹如何

如何在PHP專案中透過呼叫API介面來實現資料的爬取與處理? 如何在PHP專案中透過呼叫API介面來實現資料的爬取與處理? Sep 05, 2023 am 08:41 AM

如何在PHP專案中透過呼叫API介面來實現資料的爬取與處理?一、介紹在PHP專案中,我們經常需要爬取其他網站的數據,並對這些數據進行處理。而許多網站提供了API接口,我們可以透過呼叫這些接口來取得資料。本文將介紹如何使用PHP來呼叫API接口,實現資料的爬取與處理。二、取得API介面的URL和參數在開始之前,我們需要先取得目標API介面的URL以及所需的

Oracle API使用指南:探索資料介面技術 Oracle API使用指南:探索資料介面技術 Mar 07, 2024 am 11:12 AM

Oracle是一家全球知名的資料庫管理系統供應商,其API(ApplicationProgrammingInterface,應用程式介面)是一種強大的工具,可協助開發人員輕鬆地與Oracle資料庫互動和整合。在本文中,我們將深入探討OracleAPI的使用指南,向讀者展示如何在開發過程中利用資料介面技術,同時提供具體的程式碼範例。 1.Oracle

React API呼叫指南:如何與後端API互動和資料傳輸 React API呼叫指南:如何與後端API互動和資料傳輸 Sep 26, 2023 am 10:19 AM

ReactAPI呼叫指南:如何與後端API進行互動和資料傳輸概述:在現代的Web開發中,與後端API進行互動和資料傳輸是一個常見的需求。 React作為一個流行的前端框架,提供了一些強大的工具和功能來簡化這個過程。本文將介紹如何使用React來呼叫後端API,包括基本的GET和POST請求,並提供具體的程式碼範例。安裝所需的依賴:首先,確保在專案中安裝了Axi

如何處理Laravel API報錯問題 如何處理Laravel API報錯問題 Mar 06, 2024 pm 05:18 PM

標題:如何處理LaravelAPI報錯問題,需要具體程式碼範例在進行Laravel開發時,常會遇到API報錯的情況。這些報錯可​​能來自於程式碼邏輯錯誤、資料庫查詢問題或是外部API請求失敗等多種原因。如何處理這些報錯是一個關鍵的問題,本文將透過具體的程式碼範例來示範如何有效處理LaravelAPI報錯問題。 1.錯誤處理在Laravel

Oracle API整合策略解析:實現系統間無縫通信 Oracle API整合策略解析:實現系統間無縫通信 Mar 07, 2024 pm 10:09 PM

OracleAPI整合策略解析:實現系統間無縫通信,需要具體程式碼範例在當今數位化時代,企業內部系統之間需要相互通信和資料共享,而OracleAPI就是幫助實現系統間無縫通信的重要工具之一。本文將從OracleAPI的基本概念和原則入手,探討API整合的策略,最終給出具體的程式碼範例幫助讀者更好地理解和應用OracleAPI。一、OracleAPI基本

開發建議:如何利用ThinkPHP框架進行API開發 開發建議:如何利用ThinkPHP框架進行API開發 Nov 22, 2023 pm 05:18 PM

開發建議:如何利用ThinkPHP框架進行API開發隨著網際網路的不斷發展,API(ApplicationProgrammingInterface)的重要性也日益凸顯。 API是不同應用程式之間進行通訊的橋樑,它可以實現資料共享、功能呼叫等操作,為開發者提供了相對簡單且快速的開發方式。而ThinkPHP框架作為一款優秀的PHP開發框架,具有高效能、可擴展且易用

使用Python將API資料儲存為CSV格式 使用Python將API資料儲存為CSV格式 Aug 31, 2023 pm 09:09 PM

在資料驅動的應用程式和分析領域,API(應用程式介面)在從各種來源檢索資料方面發揮著至關重要的作用。使用API​​資料時,通常需要以易於存取和操作的格式儲存資料。其中一種格式是CSV(逗號分隔值),它允許有效地組織和儲存表格資料。本文將探討使用強大的程式語言Python將API資料儲存為CSV格式的過程。透過遵循本指南中概述的步驟,我們將學習如何從API中檢索資料、提取相關資訊並將其儲存在CSV檔案中以供進一步分析和處理。讓我們深入了解使用Python進行API資料處理的世界,並釋放CSV格式的潛

See all articles