滲透測試-API接口測試
接口測試
API:Application Programming Interface,即應用程序編程接口。
接口就是一個位于復雜系統之上并且能簡化你的任務,它就像一個中間人讓你不需要了解詳細的所有細節。那我們今天要講的Web
API就是這么一類東西。像谷歌搜索系統,它提供了搜索接口,簡化了你的搜索任務。再像用戶登錄頁面,我們只需要調用我們的登錄接口,我們就可以達到登錄系統的目的。
一個API中通常包含的結構有:

本文記錄的是Postman(API 接口測試工具)學習,以及一些接口測試概念。幫助大家建立接口測試的整體概念,以及學會Postman工具的使用。

接口測試的作用:

接口測試的內容:

接口測試工具Postman的特點:
- 使用簡單,上手快,很適合調試;
- 但保存請求,批量運行時,執行速度慢,建議使用Jmeter工具。
Postman
Postman直接官網下載:https://www.postman.com/downloads/,雙擊自動安裝,打開注冊后即可運行。

Postman的界面如下:

Get請求
直接看一個Get請求類型的API接口測試實例,以下是接口開發文檔對接口參數的具體描述:

Postman新建請求后直接發送以下接口測試請求:

【注意】對于GET請求,可以直接點擊Params,輸入多個參數名稱及value(鍵對值),即可自動添加在URL鏈接上,如下圖所示

關于接口開發文檔,測試過程中可以找開發人員要。
【注意】進行API接口安全測試時,一般不需要安全人員自己構造數據包, 客戶會提供一個測試demo程序(HTML網頁形式的),demo中已包含所有功能已經構造好的數據包,只需在頁面上直接改請求參數內容然后點發送即可。因為客戶自己的測試人員平時做業務功能測試時,也都是有現成的測試 demo的,不可能在Postman中一個一個手動構造請求去測試。
Post請求
同樣直接看一個Post請求類型的API接口測試實例,以下是接口開發文檔對接口參數的具體描述:

Postman新建請求后直接發送以下接口測試請求:
【注意】上述請求頭是根據請求參數的形式自動生成的。請求頭中的Content-Type與請求參數的格式之間是有關聯關系,比如:

添加請求頭
對于某些API接口,可能需要添加特定的請求頭信息進行身份認證才能進行訪問,比如 Sign、Token、Cookie、Authorization 等。在Postman中可直接通過 Headers 添加(以下實例的sign值為“用戶名+密碼”的32位MD5值):
或者使用專門的 Authorization 模塊進行添加:

圖示的幾種身份認證方式簡述如下:

這里補充下摘要認證方式:消息摘要式身份認證在基本身份認證上面擴展了安全性,服務器為每一個連接生成一個唯一的隨機數,客戶端用這個隨機數對密碼進行MD5加密,然后返回服務器,服務器也用這個隨機數對密碼進行加密,然后和客戶端傳送過來的加密數據進行比較,如果一致就返回結果。