溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

針對GraphQL安全測試的Burp擴展InQL是怎樣的

發(fā)布時間:2021-12-20 11:49:20 來源:億速云 閱讀:490 作者:柒染 欄目:網(wǎng)絡安全

針對GraphQL安全測試的Burp擴展InQL是怎樣的,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

InQL Scanner

   InQL Scanner是一款安全測試工具,也是一個Burp Suite擴展,在它的幫助下,廣大研究人員可以更好地對GraphQL技術進行安全審計。

InQL可以直接以腳本的方式單獨運行,或者以Burp Suite擴展的方式執(zhí)行任務。

工具下載

廣大研究人員可以使用下列命令將InQL項目源碼克隆至本地:

git clone https://github.com/doyensec/inql.git

InQL單獨運行-腳本

在你的主機環(huán)境中安裝好Python環(huán)境之后,運行inql,腳本將會向目標GraphQL節(jié)點發(fā)送一個自檢查詢請求,并嘗試獲取下列元數(shù)據(jù)信息:

1、Query/Mutation/Subscription;

2、字段和參數(shù);

3、對象和自定義對象類型;

InQL可以檢查自省查詢的結(jié)果,并以不同的數(shù)據(jù)格式生成干凈簡潔的文檔,支持的格式有HTML和JSON等。除此之外,InQL還可以根據(jù)所有已知基礎數(shù)據(jù)類型生成模板(可選占位符)。

最終的結(jié)果HTML文檔頁面中將包含關于全部有效Query/Mutation/Subscription的詳細信息,樣例如下:

針對GraphQL安全測試的Burp擴展InQL是怎樣的

在下面給出的樣例圖中,顯示的是模板生成的使用:

針對GraphQL安全測試的Burp擴展InQL是怎樣的

工具幫助信息

如需查看InQL支持的所有選項參數(shù),可以使用help命令查看:

usage: inql [-h] [-t TARGET] [-f SCHEMA_JSON_FILE] [-k KEY] [-p PROXY]            [--header HEADERS HEADERS] [-d] [--generate-html]            [--generate-schema] [--generate-queries] [--insecure]            [-o OUTPUT_DIRECTORY]InQL Scanneroptional arguments:  -h, --help            show this help message and exit  -t TARGET             Remote GraphQL Endpoint (https://<Target_IP>/graphql)  -f SCHEMA_JSON_FILE   Schema file in JSON format  -k KEY                API Authentication Key  -p PROXY              IP of web proxy to go through (http://127.0.0.1:8080)  --header HEADERS HEADERS  -d                    Replace known GraphQL arguments types with placeholder                        values (useful for Burp Suite)  --generate-html       Generate HTML Documentation  --generate-schema     Generate JSON Schema Documentation  --generate-queries    Generate Queries  --insecure            Accept any SSL/TLS certificate  -o OUTPUT_DIRECTORY   Output Directory

InQL Burp Suite擴展

從InQL的v1.0版本開始,InQL就已經(jīng)支持以Burp Suite擴展的方式執(zhí)行了。在這個模式下,該工具不僅擁有獨立腳本的全部功能,而且還可以借助Burp Suite來給廣大研究人員提供更加便捷的用戶接口來執(zhí)行查詢。

InQL的Burp Suite擴展模式有以下幾種功能特性:

1、搜索查詢已知的GraphQL URL路徑,工具降火搜索和匹配已知的值來在目標站點內(nèi)檢測GraphQL節(jié)點;

2、搜索暴露在外的GraphQL開發(fā)控制臺(GraphiQL、GraphQL Playground和其他常見控制臺);

3、使用自定義GraphQL標簽來顯示包含了GraphQL的每一個HTTP請求/響應;

4、通過向Burp的Repeater工具發(fā)送請求來生成模板;

5、通過使用自定義設置標簽來對工具進行配置; 

如果你想在Burp Suite中使用InQL,那么你就需要導入Python擴展:1、下載Jython Jar:【點我下載】;

2、開啟Burp Suite;

3、點擊Extender標簽 > 選項 > Python 環(huán)境 >設置Jython獨立Jar包地址;

4、點擊Extender標簽 > 擴展 > 添加 > 擴展類型 > 選擇Python;

5、下載最新版本的inql_burp.py:【點我下載】;

6、點擊擴展文件 > 設置inql_burp.py的地址 > 下一步;

7、如果一切配置妥當,此時的輸出結(jié)果應該為:InQL Scanner Started!;

注意:之后我們會考慮將InQL擴展整合進Burp的BApp Store之中。

Burp擴展使用

InQL Burp擴展的使用非常簡單,我們只需要按照下列步驟操作即可:

1、在頂部的輸入窗口中,加載一個GraphQL節(jié)點,或加載一個JSON文件;

2、點擊“加載”按鈕;

3、等待幾秒鐘之后,左側(cè)的面板將會刷新所選目標節(jié)點的目錄結(jié)構(gòu),該目錄結(jié)構(gòu)的參考樣例如下:

針對GraphQL安全測試的Burp擴展InQL是怎樣的

4、選擇Query/Mutation/Subscription中的任意一個,該工具將會在主文本域中顯示對應的模板。

看完上述內(nèi)容,你們掌握針對GraphQL安全測試的Burp擴展InQL是怎樣的的方法了嗎?如果還想學到更多技能或想了解更多相關內(nèi)容,歡迎關注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI