您好,登錄后才能下訂單哦!
針對GraphQL安全測試的Burp擴展InQL是怎樣的,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
InQL Scanner
InQL Scanner是一款安全測試工具,也是一個Burp Suite擴展,在它的幫助下,廣大研究人員可以更好地對GraphQL技術進行安全審計。
InQL可以直接以腳本的方式單獨運行,或者以Burp Suite擴展的方式執行任務。
廣大研究人員可以使用下列命令將InQL項目源碼克隆至本地:
git clone https://github.com/doyensec/inql.git
在你的主機環境中安裝好Python環境之后,運行inql,腳本將會向目標GraphQL節點發送一個自檢查詢請求,并嘗試獲取下列元數據信息:
1、Query/Mutation/Subscription;
2、字段和參數;
3、對象和自定義對象類型;
InQL可以檢查自省查詢的結果,并以不同的數據格式生成干凈簡潔的文檔,支持的格式有HTML和JSON等。除此之外,InQL還可以根據所有已知基礎數據類型生成模板(可選占位符)。
最終的結果HTML文檔頁面中將包含關于全部有效Query/Mutation/Subscription的詳細信息,樣例如下:
在下面給出的樣例圖中,顯示的是模板生成的使用:
如需查看InQL支持的所有選項參數,可以使用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的v1.0版本開始,InQL就已經支持以Burp Suite擴展的方式執行了。在這個模式下,該工具不僅擁有獨立腳本的全部功能,而且還可以借助Burp Suite來給廣大研究人員提供更加便捷的用戶接口來執行查詢。
InQL的Burp Suite擴展模式有以下幾種功能特性:
1、搜索查詢已知的GraphQL URL路徑,工具降火搜索和匹配已知的值來在目標站點內檢測GraphQL節點;
2、搜索暴露在外的GraphQL開發控制臺(GraphiQL、GraphQL Playground和其他常見控制臺);
3、使用自定義GraphQL標簽來顯示包含了GraphQL的每一個HTTP請求/響應;
4、通過向Burp的Repeater工具發送請求來生成模板;
5、通過使用自定義設置標簽來對工具進行配置;
如果你想在Burp Suite中使用InQL,那么你就需要導入Python擴展:1、下載Jython Jar:【點我下載】;
2、開啟Burp Suite;
3、點擊Extender標簽 > 選項 > Python 環境 >設置Jython獨立Jar包地址;
4、點擊Extender標簽 > 擴展 > 添加 > 擴展類型 > 選擇Python;
5、下載最新版本的inql_burp.py:【點我下載】;
6、點擊擴展文件 > 設置inql_burp.py的地址 > 下一步;
7、如果一切配置妥當,此時的輸出結果應該為:InQL Scanner Started!;
注意:之后我們會考慮將InQL擴展整合進Burp的BApp Store之中。
InQL Burp擴展的使用非常簡單,我們只需要按照下列步驟操作即可:
1、在頂部的輸入窗口中,加載一個GraphQL節點,或加載一個JSON文件;
2、點擊“加載”按鈕;
3、等待幾秒鐘之后,左側的面板將會刷新所選目標節點的目錄結構,該目錄結構的參考樣例如下:
4、選擇Query/Mutation/Subscription中的任意一個,該工具將會在主文本域中顯示對應的模板。
看完上述內容,你們掌握針對GraphQL安全測試的Burp擴展InQL是怎樣的的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。