1.1.1.2. 操作系統型 API

操作系統型 API 通常是操作系統層對外部提供的接口,開發者通過接口調用,完成對操作系統行為的操作。例如,應用程序調用 Windows APl 或 Linux 標準庫。

image

1.1.1.3. 遠程應用型 API

遠程應用型 API 是開發者通過標準協議的方式,將不同的技術結合在一起,不用關心所涉及的編程語言或平臺,來操縱遠程資源。例如,Java 通過 JDBC 連接操作不同類型的數據庫。

image

1.1.1.4. WEB 應用型 API

Web 應用型 API 通常使用 HTTP 協議,在企業與企業、企業內部不同的應用程序之間,通過 Web 開發過程中架構設計的方法,以一組服務的形式對外提供調用接口,以滿足不同類型、不同服務消費者的需求。例如,社交應用新浪微博的用戶登錄。

image

1.1.1.5. 總結

從上述介紹的 4 種 API 類型可以看出,API 并非新生事物,很早就存在著,只是隨著技術的發展,這個專有名詞的含義已經從當初單一的類庫型 API 或操作系統型 API 擴展到如今的 Web 應用型 API 接口,區是商業反展和業務多樣化驅動技術不斷改進的必然結果。同時,API 的存在對業務的意義也已經從單純的應用程序接口所定義的用于構建和集成應用程序軟件的一組定義和協議,變成了業務交互所在的雙方之間的技術約定。使用 API 技術的業務雙方,其產品或服務與另一方產品和服務在通信過程中,不必知道對方是如何實現的就像在生活中需要使用電,只要按照要求接上電源就會有電流,而不必知道電流的產生原理自己來發電。不同的行業應用可以獨立去構建自己的 API 能力再對外部提供服務,這樣做的好處是大大地節約了社會化服務能力的成本,簡化了應用程序開發的難度,節省了時間,為業務能力的快速迭代提供了可操作的機會。

1.1.2. API 接口類型

這里就是介紹簡單的一些常見的接口,可以擴展看書上的。

1.1.2.1. HTTP 類接口

基于 HTTP 協議的開發接口,這個并不能排除沒有使用其他的協議。

1.1.2.2. RPC 類接口

Remote Procedure Calls 遠程過程調用 (RPC) 是一種協議,程序可使用這種協議向網絡中的另一臺計算機上的程序請求服務。由于使用 RPC 的程序不必了解支持通信的網絡協議的情況,因此 RPC 提高了程序的互操作性。在 RPC 中,發出請求的程序是客戶程序,而提供服務的程序是服務器。 RPC(遠程過程調用)是一項廣泛用于支持分布式應用程序(不同組件分布在不同計算機上的應用程序)的技術。RPC 的主要目的是為組件提供一種相互通信的方式,使這些組件之間能夠相互發出請求并傳遞這些請求的結果。 沒有語言限制。

1.1.2.3. web service 類接口

Web service 是系統對外的接口,比如你要從別的網站或服務器上獲取資源或信息,別人肯定不會把數據庫共享給你,他只能給你提供一個他們寫好的方法來獲取數據,你引用他提供的接口就能使用他寫好的方法,從而達到數據共享的目的。

1.1.2.4. http service 與 web service 區別

本質上其實 http service 與 web service 差不多,但是 httpservice 通過 post 和 get 得到你想要的東西,而 webservice 就是使用 soap 協議得到你想要的東西,相比 httpservice 能處理些更加復雜的數據類型。同時 http 協議傳輸的都是字符串了,webservice 則是包裝成了更復雜的對象。

1.2. API 常見技術

這里只是指常見,同時側重于實戰教程中能夠參考的,至于更多的技術可能需要參考其它文章結合,這里無法將所有內容都涉及到,還請諒解。

1.2.1. SOAP

SOAP(Simple Object Access Protocol)簡單對象訪問協議是交換數據的一種協議規范,是一種輕量的、簡單的、基于 XML(標準通用標記語言下的一個子集)的協議,它被設計成在 WEB 上交換結構化的和固化的信息。SOAP 不是 Web Service 的專有協議。SOAP 使用 HTTP 來發送 XML 格式的數據,可以簡單理解為:SOAP = HTTP +XML。

1.2.2. REST

REST(Representational State Transfer)即表述性狀態傳遞,在三種主流的 Web 服務實現方案中,因為 REST 模式的 Web 服務與復雜的 SOAP 和 XML-RPC 對比來講明顯的更加簡潔,越來越多的 Web 服務開始采用 REST 風格設計和實現。例如,Amazon.com 提供接近 REST 風格的 Web 服務進行圖書查找;雅虎提供的 Web 服務也是 REST 風格的。

1.2.3. WSDL

WSDL(Web Services Description Language)即網絡服務描述語言,用于描述 Web 服務的公共接口。這是一個基于 XML 的關于如何與 Web 服務通訊和使用的服務描述;也就是描述與目錄中列出的 Web 服務進行交互時需要綁定的協議和信息格式。通常采用抽象語言描述該服務支持的操作和信息,使用的時候再將實際的網絡協議和信息格式綁定給該服務。

1.3. API 常見的安全漏洞類型

根據安全漏洞發生的機理和原因,對 API 安全漏洞做歸類分析,常見的類型如下。

1.4. OWASP API 安全漏洞類型

在 OWASP API 安全 Top 10 中,OWASP 延續了 Web 安全的傳統,收集了公開的與 API 安全事件有關的數據和漏洞獵人賞金平臺的數據,由安全專家組進行分類,最終挑選出了十大 API 安全漏洞的類型,以警示業界提高對 API 安全問題的關注。這十大 API 安全漏洞類型的含義分別如下。

1.5. 接口數據包中常見問題

2. WEB service 類—wsdl 測試

關于這個接口的測試,若不是很熟,不要輕易的測試,同時若全是英文的情況下,無法理解更不要隨便的嘗試,可能會導致數據刪除等情況的發生。同時由于這方面的環境不好搭建,只能在網上尋找相關的內容進行測試,不能保障測試過程中都會一定會遇到存在問題的接口,這里主要是了解測試手段即可。

2.1. 尋找接口頁面

關于尋找這個接口頁面,可以在前期對網站就是目錄掃描等方式進行獲取,例如這里使用 Google 查詢,這里不一定能百分比搜尋到哦!

語法:edu.cn inurl: asmx?wsdl  ##asmx是語言,但是我嘗試切換了一下語言,我發現反而內容更少了。

image

2.1.1. 查看頁面

一般來說看到這個界面,多數都是接口類的頁面。

image

2.1.2. 查看所有

這里如果想要一次性查看所有內容,可以在后面輸入?wsdl 即可查看 xml 語言,就會顯示所有內容。

?wsdl  ##查看xml語言

image

2.2. 安全測試

這里可以使用手動測試,也可以使用工具測試,手動測試走效率上來說肯定是沒有工具測試那么快的,當然我們也要先介紹一下如果使用手動測試。

2.2.1. 手動測試

所謂的手動測試就是在獲取頁面的信息后,點擊進去,然后手動輸入一些信息進行測試,這方面可能需要掌握一定的 API 接口技術能夠,否則很多測試都是在盲猜或盲測,有時候可能測半天都測錯了,自然就不會出現數據。

2.2.1.1. 選在測試內容

image

例如這里點擊登陸賬號驗證,我們在界面中的輸入框中輸入 admin 來進行測試,然后點擊下面的 invoke,點擊完會自動跳轉出現相關的提示信息。

image

2.2.1.2. 查看回顯

這里顯示數據處理異常,那么就證明沒有 admin 相關的數據,那么就是測試失敗了,那這個整個手動測試流程就是這樣的,admin 不行可以換成其它的,或者進入其它的輸入框中進行測試,均行。

image

2.2.2. SoapUI 工具測試

這個工具下載需要輸入聯系方式,這里直接給安裝包吧,如果確實需要下載最新的那么就去官網下載吧,安裝教程我就不說了,別一個軟件都不會安裝…..這個工具確實本質上也是手動測試,只是相比較于在網頁上測試,更為方便點。

2.2.2.1. 工具下載地址

SOapUI 官網下載地址[1]

2.2.2.2. 添加內容

下載好工具后,點擊工具欄 empty,彈出的內容關閉即可,然后再左側邊欄會出現一個 project1 即可。

image

2.2.2.3. 選在 wsdl

然后右擊 project1,選擇 add WSDL 即可。

image

image

2.2.2.4. 復制地址

在彈出的窗口中,將剛剛的地址復制進行即可,但是要注意一定要復制的是 xml 的鏈接,也就是在地址后面添加?wsdl 的 xml 狀態的結果。

image

2.2.2.5. 測試內容

然后再看左側邊欄就會出現相關的內容了,然后雙擊點進去,修改相關的內容,即可看到相關的結果,這個就是工具測試,當然這個工具有點類似于手工測試。

2.2.3. Ready API 工具測試

這個工具由于沒找到新版的破解版,都是老版的,同時雖然可以試用,但是在時間操作中,發現需要發送郵箱,但是不知道為何一直發送失敗。屬于這里也就不提供了,我這里大概截圖看一下如何使用吧,同時由于我這個找到的地址是國內了,也就不使用這個工具掃描了,畢竟有影響。這個工具會自動去分析是否存在一些安全漏洞,屬于全自動的,只需要將地址復制上去即可。

2.2.3.1. 創建安全測試

這里點擊工具欄選擇下方的創建安全測試。

image

2.2.3.2. 選擇類型

這里我們再選擇需要創建的類型,根據我們剛剛獲取到的是 wdsl,那么我們就選擇左邊這個。

image

2.2.3.3. 輸入地址

將剛剛獲取的地址輸入進去即可。

image

2.2.3.4. 安全漏洞

這里就是選擇你需要測試的安全漏洞,這里可以直接點擊默認。

image

2.2.3.5. 自動進行測試

添加完畢后,就會進行自動測試,這里只需要工具測試完畢即可,該工具會自動生成一個報告。

image

2.2.3.6. 查看報告

報告會在當前了下生成。

image

3. SOAP 類—Swagger 測試

關于 Swagger,其實是 java 中經常使用到的第三方軟件,類似于數據庫管理系統 phpMyadmin 一樣。專業的解釋就是 Swagger 是一款 RESTFUL 接口的文檔在線自動生成+功能測試功能軟件。Swagger 是一個規范和完整的框架,用于生成、描述、調用和可視化 RESTful 風格的 Web 服務。目標是使客戶端和文件系統作為服務器以同樣的速度來更新文件的方法,參數和模型緊密集成到服務器。這個解釋簡單點來講就是說,Swagger 是一款可以根據 resutful 風格生成的生成的接口開發文檔,并且支持做測試的一款中間軟件。

3.1. 尋找頁面

這里同樣都是可以采取很多種方式進行查找。

3.1.1. 尋找 Swagger

關于尋找 Swagger 其實可以使用目錄掃描,JS 資源探針,或者瀏覽器插件等,這里舉例子就使用瀏覽器插件來演示。

image

3.1.2. FOFA 搜索

"Swagger" && title=="Swagger UI"

image

3.2. 安全測試

同樣這里也是分為手動測試與自動化測試,至于手動測試,這里就簡單的演示一下吧,手動測試確實是比較麻煩的。

3.2.1. 手動測試

簡單來說,手動測試就是在這些框內插入一下相關的數據進行測試,可以是 sql 注入語句、xss 語句、xml 語句以及一些執行代碼或信息泄露等。

3.2.1.1. 英文參考

這里是找了一個其它國家的頁面,可以看到全部都是英文,有時候確實無從下手,就算有翻譯軟件,也不一定能夠翻譯準確。

image

3.2.1.2. 漢化參考

比如上圖都是英文,可能考翻譯軟件,也會出現不知道如何測試的情況,那么下面這個應該就能一目了然了,當然我不會去操作,僅僅的展示,由于都是國內網站。這里都很明顯告訴你是干嘛了,還能不知道怎么測試么,就是輸入相關的內容進行測試,當然手動測試比較慢,也可以借助工具來進行測試。

image

3.2.2. SoapUI 工具測試

這里需要獲取 josn 地址,然后將地址導入。

3.2.2.1. 獲取 josn 地址

在頁面中都會存在一個這個藍色鏈接,打開就是 josn 地址了。

image

3.2.2.2. 導入 josn 地址

這里將地址導入即可,可以看到下圖,先選在 Swagger,在彈出的對話框中輸入 josn 地址。

image

3.2.2.3. 輸入 josn 地址

這里輸入 josn 地址后,點擊 ok,但是會出現一種情況就是無法獲取到,主要原因就是由于有時工具無法訪問國外地址,就會導致測試國外地址的時候會出現無法訪問的情況。

image

3.2.2.4. 添加成功

這里費勁千辛萬苦終于找到一個能夠添加成功的,剩下的測試完全就是替換數據了,然后看內容。

image

3.2.3. 自動化工具

這里的自動化工具是源自于 github 上的工具。

3.2.3.1. 下載鏈接

swagger-exp[2]
swagger-hack[3]

3.2.3.2. swagger-hack 操作

該腳本需要 python3.0 的環境,加上-h 可以顯示相關的參數,通常直接使用-u 即可。

image

這里測試一定要加上 josn 的地址,而不是頁面地址。

image

在當前目錄下會生成一個結尾為 csv 的表格,在這里面重點關注響應 200 的一行,不過我這里翻了一下啥數據沒有,我也懶得再去尋找有內容的數據了。

image

4. HTTP 類—Webpack 測試

webpack 是一個模塊打包器(module bundler),webpack 視 HTML,JS,CSS,圖片等文件都是一種資源 ,每個資源文件都是一個模塊(module)文件,webpack 就是根據每個模塊文件之間的依賴關系將所有的模塊打包(bundle)起來。

4.1. 尋找頁面

這個尋找頁面我就不介紹了采用的方式和 SOAP 類尋找頁面的方式都是一樣的。

image

4.2. 安全測試

這里最好是工具測試,使用手動測試的話比較麻煩。

4.2.1. 工具下載

這個工具需要安全的庫挺多的,最好按照 GitHub 上描述進行操作。

Packer-Fuzzer[4]

4.2.2. Packer-Fuzzer 操作

這里需要提前測試是否成功,以免出現部分庫不正確的情況。

4.2.3. 導入地址

這里把我們尋找到的地址使用-u 添加地址進行掃描。

python PackerFuzzer.py -u 地址

image

4.2.4. 查看報告

在當前目錄下的 reports 中能夠看到的 word 版報告以及 html 版的報告,可以看到這里泄露了一個郵箱地址,以及手機號碼。

image

參考資料

[1] SOapUI 官網下載地址: https://www.soapui.org/downloads/soapui/

[2] swagger-exp: https://github.com/lijiejie/swagger-exp

[3] swagger-hack: https://github.com/jayus0821/swagger-hack

[4] Packer-Fuzzer: https://github.com/rtcatc/Packer-Fuzzer

原文轉載自:https://mp.weixin.qq.com/s/yEMr5iDEN_5u3_aJpIKHVA

熱門推薦
一個賬號試用1000+ API
助力AI無縫鏈接物理世界 · 無需多次注冊
3000+提示詞助力AI大模型
和專業工程師共享工作效率翻倍的秘密
返回頂部
上一篇
一文簡述,通過公眾號api接口發表文章
下一篇
程序員必備:C#對接釘釘API 實戰教程
国内精品久久久久影院日本,日本中文字幕视频,99久久精品99999久久,又粗又大又黄又硬又爽毛片
日韩一区二区在线观看视频 | 国产欧美一区二区在线观看| 一本色道久久综合亚洲精品按摩| 日韩午夜在线影院| 成人做爰69片免费看网站| 蜜桃传媒麻豆第一区在线观看| 国产精品资源站在线| 日韩视频一区二区三区| 天天色图综合网| 色综合天天性综合| 在线视频欧美精品| 国产视频视频一区| 麻豆精品在线观看| 国产麻豆精品在线观看| 91国产成人在线| 自拍偷拍亚洲综合| 一区二区欧美精品| 视频精品一区二区| 色哟哟在线观看一区二区三区| 日韩欧美的一区| 日本女人一区二区三区| 欧美第一区第二区| 国产一区二区在线看| 一区二区三区久久久| 在线观看91av| 国产精品毛片a∨一区二区三区| 国产精品国产三级国产aⅴ入口| 亚洲欧美色综合| 成人精品一区二区三区四区| xnxx国产精品| 国产成人精品aa毛片| 日韩三级视频在线观看| 亚洲一级二级在线| proumb性欧美在线观看| 国产精品剧情在线亚洲| 成人午夜av在线| 国产精品福利av| 欧美三级日韩三级| 中文一区在线播放| 理论电影国产精品| 一区二区成人在线视频| 日本二三区不卡| 91在线码无精品| 一本一道波多野结衣一区二区| 国产毛片精品一区| 天天色图综合网| 亚洲欧洲精品天堂一级 | 日韩精品一二三| 精品久久久久久亚洲综合网 | 午夜精品久久久久久久| 久久你懂得1024| 精品国产伦一区二区三区观看体验| 国产乱码精品1区2区3区| 亚洲bdsm女犯bdsm网站| 综合自拍亚洲综合图不卡区| 精品国产91洋老外米糕| 欧美日韩国产小视频| 成人久久久精品乱码一区二区三区| 蜜桃视频在线一区| 高清不卡一区二区在线| 亚洲激情图片小说视频| 日本一区二区三区高清不卡| 精品噜噜噜噜久久久久久久久试看 | 国产剧情一区二区三区| 欧美精品丝袜久久久中文字幕| 国产**成人网毛片九色 | 免费的成人av| 视频一区视频二区在线观看| 亚洲精品视频在线观看免费| 亚洲欧美日韩一区二区 | 亚洲男人的天堂在线观看| 亚洲婷婷在线视频| 亚洲在线视频免费观看| 日韩精品三区四区| 99久久夜色精品国产网站| 亚洲精品一区二区三区蜜桃下载| 国产永久精品大片wwwapp| 99精品视频在线免费观看| 中文天堂在线一区| 一本一道久久a久久精品| 午夜精品久久久| 色婷婷av一区二区三区之一色屋| 91尤物视频在线观看| 欧美一区二区三区播放老司机| 精品毛片乱码1区2区3区| 欧洲国产伦久久久久久久| 国产校园另类小说区| 亚洲女同一区二区| 成人爱爱电影网址| 欧美国产日韩亚洲一区| 国产一区二区h| 精品国产欧美一区二区| 中文字幕一区二区三区四区| 国产伦精品一区二区三区免费| 亚洲一区二区三区在线| 欧美综合视频在线观看| 亚洲18女电影在线观看| 宅男在线国产精品| 日韩专区欧美专区| 国产人妖乱国产精品人妖| 色综合久久综合网| 中文幕一区二区三区久久蜜桃| 成人一区二区在线观看| 中文字幕亚洲综合久久菠萝蜜| 日韩三级在线观看| 亚洲精品一区二区三区在线观看| 色素色在线综合| 亚洲高清中文字幕| 日韩无一区二区| 成人18精品视频| 成人黄页毛片网站| 日韩午夜在线播放| 激情综合色播激情啊| 一区二区在线免费观看| 精品国产欧美一区二区| 日韩精品亚洲专区| 国产呦萝稀缺另类资源| 综合色中文字幕| 中文字幕av不卡| 国产欧美一区二区精品婷婷| 成人av网站大全| av不卡在线播放| 91在线免费看| 91小宝寻花一区二区三区| 精品夜夜嗨av一区二区三区| 久久久激情视频| 7777精品伊人久久久大香线蕉经典版下载| 亚洲人成网站色在线观看| 欧美日韩久久一区| 欧美性生活久久| 自拍偷拍欧美精品| 久久国产婷婷国产香蕉| 91视频一区二区| 亚洲欧洲日本在线| 日韩不卡一区二区| 亚洲成年人网站在线观看| 午夜精品久久久久久久久久久 | 首页亚洲欧美制服丝腿| 国产日韩欧美激情| 国产精品乱人伦一区二区| 久久新电视剧免费观看| 久久影音资源网| 亚洲国产你懂的| 成人黄色电影在线 | 欧美三级电影精品| 欧美丝袜丝交足nylons图片| 精品av久久707| 亚洲婷婷综合色高清在线| 中文久久乱码一区二区| 久久亚洲一级片| 国产精品九色蝌蚪自拍| 天天亚洲美女在线视频| 在线一区二区三区四区五区| 一区二区三区久久| 韩国理伦片一区二区三区在线播放| 久久久精品影视| 欧美精品一区二区三区视频| 另类调教123区 | 欧美精品电影在线播放| 美女脱光内衣内裤视频久久网站| av一区二区三区四区| 久久久久久影视| 国产精品1区二区.| 欧美日韩视频在线观看一区二区三区| 欧美日本一道本| 国产一区二区三区四| 久久亚洲私人国产精品va媚药| 亚洲综合偷拍欧美一区色| 国产成人啪免费观看软件| 欧美日韩情趣电影| 亚洲乱码一区二区三区在线观看| 裸体在线国模精品偷拍| 在线看日本不卡| 国产jizzjizz一区二区| 亚洲一区二区三区小说| 欧美成人综合网站| 91美女精品福利| 不卡高清视频专区| 亚洲一区二区在线观看视频| av不卡免费在线观看| 免费成人小视频| 免费成人深夜小野草| 亚洲视频免费在线| 成人毛片在线观看| 一区二区成人在线观看| 欧美日韩国产免费| 一区二区三区在线免费观看| 久久精品亚洲国产奇米99| 欧美一区二区三区四区在线观看 | 五月综合激情婷婷六月色窝| 国产精品沙发午睡系列990531| 日本道免费精品一区二区三区| 国产一区二区视频在线| 国产一区二区三区视频在线播放| 天天综合网天天综合色| 亚洲欧美日韩国产综合| 一区二区三区精品在线| 亚洲二区在线视频| 九九在线精品视频| 99久久伊人精品|