Autoswagger 是一款免費的開源工具,用于掃描 OpenAPI 文檔中列出的 API,查找授權漏洞。
即使在擁有成熟安全團隊的大型企業中,這類漏洞仍然很常見,而且尤其危險,因為即使技術水平不高的人也能利用它們。
Autoswagger
Autoswagger 首先會檢測各種常見格式和位置的 API 模式,首先會列出組織的域名。
它會掃描 OpenAPI 和 Swagger 文檔頁面,并向每個主機發送請求以查找有效的模式。
一旦找到,它會解析 API 規范,并自動生成要測試的端點列表,其中會考慮每個端點的定義、所需參數和預期數據類型。
從那里,Autoswagger 執行有針對性的掃描,以通過以下方式識別損壞的授權缺陷:
? 使用從文檔中提取的有效參數向每個端點發送請求。
? 標記返回有效響應而不是預期的 HTTP 401 或 403 錯誤的端點,這通常表示正確的訪問控制。
? 突出顯示缺少身份驗證或身份驗證無效的端點。
? 對于更高級的用例,可以使用該--brute標志運行 Autoswagger 來模擬繞過驗證檢查。這有助于發現需要特定數據格式或值的端點中的缺陷,這些缺陷可能會拒絕通用輸入。
該工具會分析所有成功響應,查找敏感數據(例如 PII、憑證或內部記錄)泄露的跡象。
任何未進行正確身份驗證并返回敏感信息的端點都會包含在輸出報告中。
公開 API 文檔會有效增加攻擊面,作為一項縱深防御措施,除非業務需要,否則不應公開 API 文檔。
這方面的教訓是,除了每次開發迭代后定期進行 API 掃描外,除非萬不得已,否則不應公開 API 文檔。如果沒有‘地圖’,攻擊者將更難利用此類漏洞。
Autoswagger 可在GitHub上免費獲取。
https://github.com/intruder-io/autoswagger/