接口安全&SOAP&OpenAPI&RESTful&分类特征导入&项目联动检测
1、API分类特征
SOAP - WSDL ---XML
以下是 SOAP 使用的一些標準:
Web Services Security (WS-Security) 指定安全措施,例如使用稱為 tokens 的不重複識別符
Web Services Addressing (WS-Addressing) 需要包含路由資訊做為中繼資料
WS-ReliableMessaging 會標準化 SOAP 訊息中的錯誤處理
Web Services Description Language (WSDL) 描述 SOAP Web 服務的適用範圍和功能
當您將請求傳送至 SOAP API 時,必須將 HTTP 請求封裝在 SOAP 封套中。這是修改具有 SOAP 請求要求之基礎 HTTP 內容的資料結構。由於採用封套,您還可以使用其他傳輸協定,例如 TCP 或網際網路控制訊息通訊協定 (ICMP),將請求傳送至 SOAP Web 服務。不過,SOAP API 和 SOAP Web 服務一律會在其回應中傳回 XML 文件。
OpenApi - Swagger
RESTful - /v1/api/
以下是 REST API 遵循的六項原則:
用戶端-伺服器架構。傳送者和接收者在技術、平台化、程式設計語言等方面彼此獨立。
分層。伺服器可以有多個中繼協作完成用戶端請求,但它們對客戶來說是不可見的。
統一介面。API 會以完整且可完全使用的標準格式傳回資料。
無狀態。API 會完成每個新要求,與之前的請求無關。
可快取。所有 API 回應都可以快取。
隨需編碼。如有需要,API 回應可包含程式碼片段。
您可以使用 GET 和 POST 等 HTTP 動詞來傳送 REST 請求。Rest API 回應通常採用 JSON 格式,但也可以是不同的資料格式。
2、API常见漏洞
OWASP API Security TOP 10 2023
3、API检测流程
接口发现,遵循分类,依赖语言,V1/V2多版本等
Method:请求方法
攻击方式:OPTIONS,PUT,MOVE,DELETE
效果:上传恶意文件,修改页面等
URL:唯一资源定位符
攻击方式:猜测,遍历,跳转
效果:未授权访问等
Params:请求参数
攻击方式:构造参数,修改参数,遍历,重发
效果:爆破,越权,未授权访问,突破业务逻辑等
Authorization:认证方式
攻击方式:身份伪造,身份篡改
效果:越权,未授权访问等
Headers:请求消息头
攻击方式:拦截数据包,改Hosts,改Referer,改Content-Type等
效果:绕过身份认证,绕过Referer验证,绕过类型验证,DDOS等
Body:消息体
攻击方式:SQL注入,XML注入,反序列化等
效果:提权,突破业务逻辑,未授权访问等
4、API检测项目
工具自动化:
SOAP - WSDL 测试 InfoSystem
Postman 联动xray.BP
SoapUI ReadyAPI ----- 都是比较老的工具不推荐使用
OpenApi - Swagger 测试
Postman 联动
https://github.com/lijiejie/swagger-exp
https://github.com/jayus0821/swagger-hack
RESTful - /v1/api/ 测试
Postman 联动
APIKit 联动
手工发包测:vapi
API1-身份越权
ID值更改遍历用户信息
API4-验证枚举
验证逻辑可持续提交
API5-接口枚举
更改URL地址尝试获取
API8-数据库注入
API9-V1/2多版本
V2无法爆破/V1爆破1655
部分项目下载:
https://github.com/SmartBear/soapui
https://github.com/API-Security/APIKit
https://github.com/lijiejie/swagger-exp
https://github.com/jayus0821/swagger-hack
靶场和资源总结:
https://github.com/roottusk/vapi
https://github.com/API-Security/APISandbox
https://github.com/arainho/awesome-api-security