<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    Netsparker Standard如何掃描RESTful API Web服務

    掃描RESTful API Web服務

    REST(代表性狀態轉移)是一種可用于與Web服務進行通信的體系結構樣式。REST與SOAP等協議有很多共同點。它用作兩個應用程序之間或應用程序與在線服務之間的通信機制。許多移動Web應用程序在后端與RESTful API通信,以便與在線服務通信。

    您可以在Netsparker Standard版本中掃描RESTful API Web服務。

    Web服務和REST API之間的差異

    許多Web服務依賴于復雜的通信機制,例如SOAP,RPC和CORBA。REST對所有四個CRUD(創建,讀取,更新,刪除)操作都使用標準的HTTP方法。

    REST API中的常用HTTP方法(動詞)

    下表列出了REST中常用的HTTP方法。

    方法 描述
    POST 創建資源
    GET 檢索資源
    PUT 更改資源狀態或更新資源
    DELETE 刪除或刪除資源

    掃描REST API接口的挑戰

    與RPC等不同,REST具有簡單的結構,因此很容易被用戶使用和理解。例如,許多基于REST的Web服務可以提供JSON或XML格式的響應。但是,同樣的好處是使自動化的Web漏洞掃描程序非常難以爬網和攻擊。

    缺乏REST標準

    REST API沒有統一的標準,WSDL和其他類似協議也沒有。大多數RESTful Web服務都有自己的文檔,對開發人員有用,但對自動化Web漏洞掃描程序沒有用。

    許多項目旨在標準化REST API:

    • Swagger
    • WADL(Web應用程序描述語言)
    • RAML
    • I/O文件

    在URL中使用參數

    自動掃描程序在掃描RESTful Web服務中的漏洞時遇到的另一個挑戰是REST API使用URL中的參數。

    例如,在下面的HTTP GET請求中,123是參數,而不是Web應用程序中的目錄:

    Netsparker使用啟發式URL重寫技術處理此問題,該技術可以自動識別和掃描URL中的參數。在REST API中,工作原理有所不同。

    掃描RESTful API Web服務中的漏洞

    有三種掃描RESTful API的方法。每個概述如下:

    • 手動導入定義文件(Swagger或WADL)
    • 在搜尋過程中自動發現RESTful API
    • 手動導入RAW HTTP請求

    手動導入定義文件

    當您導入Swagger,WADL或WordPress REST API定義文件時,Netsparker Web應用程序安全掃描程序將解析該定義文件并為API中可用的每個資源創建一個鏈接。要導入Swagger,WADL或WordPress REST API定義文件,您應該:

    如何在Netsparker Standard中手動導入SWAGGER,WADL或WordPress定義文件

    1. 打開Netsparker Standard。
    2. 在“ 啟動新網站或Web服務掃描” 對話框中,單擊“ 導入的鏈接”。顯示導入的鏈接選項。

    Netsparker Standard如何掃描RESTful API Web服務

    1. 從“ 從文件導入” 下拉列表中,選擇OpenAPI(以前稱為Swagger),Web應用程序描述語言 或WordPress REST API。顯示“導入鏈接”對話框。
    2. 選擇定義文件。
    3. 點擊保存。
    4. 掃描程序導入所有鏈接和參數后,您可以在“ 導入的鏈接 ”列表中看到它們, 如以下屏幕截圖所示。

    Netsparker Standard如何掃描RESTful API Web服務

    在導入過程中,將自動生成URL重寫規則,以便掃描RESTful API中的每個參數。

    Netsparker Standard如何掃描RESTful API Web服務

    在Netsparker Enterprise中導入RESTful Web服務定義文件時,URL重寫規則未顯示在“ 啟動新掃描” 對話框中,但是 一旦掃描完成,它們將在“ 知識庫” 節點中報告。

    在搜尋過程中自動發現RESTful API

    與掃描其他Web應用程序和服務時類似,可以從“身份驗證”選項卡配置身份驗證。

    如何在搜尋期間自動發現RESTful API

    如果在掃描過程中識別出Netsparker Web應用程序安全掃描程序,它將自動導入,爬網和掃描REST API Web服務。一旦掃描程序識別了定義文件,它將自動生成URL重寫規則,以便它可以掃描Web服務中的所有參數。

    當掃描程序在爬網過程中識別出RESTful API Web服務時,它還將在“ 知識庫” 節點中報告該服務。這就是Netsparker Enterprise中“技術報告”的“知識庫”部分中的REST API節點。

    Netsparker Standard如何掃描RESTful API Web服務

    這就是Netsparker Standard中“掃描摘要”儀表板中REST API的外觀。

    Netsparker Standard如何掃描RESTful API Web服務

    如果掃描程序在爬網階段(通過JavaScript或其他方式)識別出對RESTful API Web服務的引用,但隨后又未能識別定義文件,則一旦掃描儀具有必要的示例,它仍將嘗試試探性地創建URL重寫規則以進行掃描所有參數。

    手動導入RAW HTTP請求

    如果無法使用Swagger或WADL定義文件,或者在對Web應用程序進行爬網期間無法識別RESTful API,則可以通過RAW HTTP文件導入API的鏈接。

    您可以通過第三方代理工具(例如Fiddler)捕獲HTTP請求并在開始掃描之前將其導入。以下是受支持的代理文件的列表:

    • 打p日志文件(* .xml)
    • Fiddler會話存檔(* .saz)
    • HTTP存檔文件(* .har)
    • Paros日志文件(* .txt)

    請注意,使用此方法時,掃描程序不會自動生成URL重寫規則。 手動配置URL重寫規則。

    如何手動導入RAW HTTP請求

    手動導入這些工具的過程與導入SWAGGER或WALD的過程相同。

    本文章首發在 網安wangan.com 網站上。

    上一篇 下一篇
    討論數量: 0
    只看當前版本


    暫無話題~
    亚洲 欧美 自拍 唯美 另类