Hacking APIs|剖析Web API漏洞攻擊技法

    資安人員與開發人員必須知道的 API 弱點

    收集中
    US$17.88

    內容簡介


    資安人員與開發人員必須知道的API弱點

    「這是一本關於API漏洞攻擊的重要礦脈。」
    -Chris Roberts, Vciso

    破解和網際網路緊密相連的功能鏈

    本書提供Web API安全測試的速成課程,讓讀者迅速備妥攻擊API的技巧、找出其他駭客經常錯過的缺陷,並讓自己的API更加安全。

    這是一本實作導向的教材,一開始會先訴告你有關真實世界裡的REST API之工作模式,以及它們所面臨的安全問題,接著教你如何建置一套簡化的API測試環境,以及Burp Suite、Postman和其他測試工具(如:Kiterunner和OWASP Amass),這些工具可用來執行偵察、端點分析和模糊測試。掌握這些基礎技能後,便有能力攻擊API 身分驗證機制、程式邏輯缺失、專屬於API的漏洞(如XAS和批量分配)及Web App裡常見的注入漏洞。

    研讀本書的過程中,讀者有機會攻擊特意安排的API漏洞,並學到下列技巧:
    ‧使用模糊測試技術枚舉API的使用者資訊和端點
    ‧利用Postman探索資料過度暴露的漏洞
    ‧針對API身分驗證過程執行JSON Web Token攻擊
    ‧結合多種API攻擊技巧來實現NoSQL注入
    ‧攻擊GraphQL API以找出不當的物件級授權漏洞
    ‧學習使用Postman對API進行逆向工程
    ‧從API提供的功能找出程式邏輯缺失

    本書深入探討規避真實世界API防護機制的方法、針對GraphQL的駭侵技法,以及API駭客在星巴克和Instagram等服務中找到的一系列真實漏洞。

    作者介紹


    Corey J. Ball 是Moss Adams的網路安全經理,負責領導滲透測試服務,擁有10年以上的IT和網路安全方面之工作經驗,並通過CISSP、OSCP和CCISO等專業認證。

    目錄


    序
    致謝

    引言
    本書亮點
    編排方式
    攻擊API餐廳
    翻譯風格說明
    公司名稱或人名的翻譯
    產品或工具程式的名稱不做翻譯
    縮寫術語不翻譯
    部分不按文字原義翻譯
    縮寫術語全稱中英對照表

    Part I 關於WEB API的安全性
    CH0 為滲透測試做好事前準備
    CH1 Web應用程式的運作方式
    CH2 Web API剖析
    CH3 API常見的漏洞

    Part II 建置測試API的實驗環境
    CH4 架設駭侵API的攻擊電腦
    實作練習一:枚舉REST API裡的使用者帳戶
    CH5 架設有漏洞的API靶機
    實作練習二:尋找要攻擊的API

    Part III 攻擊API
    CH6 偵察情資
    實作練習三:為黑箱測試執行主動偵察.
    CH7 端點分析
    實作練習四:組建crAPI集合及尋找過度暴露的資料
    CH8 攻擊身分驗證機制
    實作練習五:破解crAPI JWT簽章
    CH9 模糊測試
    實作練習六:以模糊測試尋找不當資產管理漏洞
    CH10 攻擊授權機制
    實作練習七:找出另一位使用者的車輛位置
    CH11 批量分配漏洞
    實作練習八:竄改網路商店的商品價格.
    CH12 注入攻擊
    實作練習九:利用NoSQL注入偽造優惠券

    Part IV 真實的API入侵事件
    CH13 應用規避技巧和檢測請求速率限制
    CH14 攻擊GraphQL
    CH15 真實資料外洩事件和漏洞賞金計畫

    總結
    APP A Web API駭侵查核清單
    APP B 參考文獻

    章节目录

    1-1封面
    1-2書名頁
    1-3目錄
    1-4序
    1-5致謝
    1-6引言
    1-7本書亮點
    1-8編排方式
    1-9攻擊API餐廳
    1-10翻譯風格說明
    1-11公司名稱或人名的翻譯
    1-12產品或工具程式的名稱不做翻譯
    1-13縮寫術語不翻譯
    1-14部分不按文字原義翻譯
    1-15縮寫術語全稱中英對照表
    1-16Part I 關於WEB API的安全性
    1-170 為滲透測試做好事前準備
    1-18取得授權
    1-19為API測試進行威脅塑模
    1-20該測試哪些API功能
    1-21測試API的身分驗證功能
    1-22Web應用程式防火牆
    1-23檢視API說明文件
    1-24測試行動APP
    1-25測試請求速率限制能力
    1-26限制和排除條款
    1-27測試DoS防禦能力
    1-28測試雲端API的注意事項
    1-29測試報告及複測服務
    1-30關於漏洞賞金
    1-31小結
    1-321 Web應用程式的運作方式
    1-33Web App概述
    1-34網址(URL)
    1-35HTTP請求
    1-36HTTP回應
    1-37HTTP的回應狀態碼
    1-38HTTP的請求方法
    1-39有狀態和無狀態的HTTP
    1-40Web伺服器所用的資料庫
    1-41SQL
    1-42NoSQL
    1-43API搭配Web APP
    1-44小結
    1-452 Web API剖析
    1-46Web API的作業方式
    1-47Web API的標準類型
    1-48RESTful API
    1-49GraphQL
    1-50REST API規範
    1-51API的資料交換格式
    1-52JSON
    1-53XML
    1-54YAML
    1-55API的身分驗證
    1-56基本型身分驗證
    1-57API金鑰
    1-58JSON Web Tokens
    1-59HMAC
    1-60OAuth 2.0
    1-61無身分驗證機制
    1-62API實戰:探索Twitter API
    1-63小結
    1-643 API常見的漏洞
    1-65資訊洩露
    1-66不當的物件授權
    1-67不當的使用者身分驗證機制
    1-68資料過度暴露
    1-69不當的功能授權
    1-70缺乏資源和速率限制
    1-71批量分配
    1-72不當的安全組態
    1-73注入漏洞
    1-74資產管理不當
    1-75程式邏輯缺失
    1-76小結
    1-77Part II 建置測試API的實驗環境
    1-784 架設駭侵API的攻擊電腦
    1-79Kali Linux
    1-80使用DevTools分析Web App
    1-81使用Burp Suite攔截和竄改請求內容
    1-82設置FoxyProxy
    1-83匯入Burp Suite的加密憑證
    1-84一覽Burp Suite功能模組
    1-85攔截流量
    1-86使用Intruder竄改請求
    1-87利用Postman編製API請求
    1-88請求建構器
    1-89環境
    1-90集合
    1-91集合執行器
    1-92測試面板
    1-93程式碼片段
    1-94讓Postman搭配Burp Suite作業
    1-95補充工具
    1-96使用OWASP Amass進行偵察
    1-97使用Kiterunner探索API端點
    1-98使用Nikto掃描漏洞
    1-99使用OWASP ZAP掃描漏洞
    1-100利用Wfuzz進行模糊測試
    1-101使用Arjun找出HTTP參數
    1-102實作練習一:枚舉REST API裡的使用者帳戶
    1-103小結
    1-1045 架設有漏洞的API靶機
    1-105建立Linux主機
    1-106安裝Docker和Docker Compose
    1-107安裝有漏洞的應用系統
    1-108OWASP crAPI
    1-109OWASP DevSlop的Pixi
    1-110OWASP Juice Shop
    1-111DVGA
    1-112其他有漏洞的應用系統
    1-113破解TryHackMe和HackTheBox上的API漏洞
    1-114實作練習二:尋找要攻擊的API
    1-115小結
    1-116Part III 攻擊API
    1-1176 偵察情資
    1-118被動式偵察
    1-119被動偵察的過程
    1-120Google Hacking
    1-121ProgrammableWeb的API搜尋目錄
    1-122Shodan
    1-123OWASP Amass
    1-124暴露於GitHub的資訊
    1-125主動偵察
    1-126主動偵察的過程
    1-127使用Nmap執行基礎掃描
    1-128從Robots.txt查找隱藏的路徑
    1-129以Chrome DevTools尋找機敏資訊
    1-130以Burp驗證API
    1-131以ZAP爬找URI
    1-132以Gobuster暴力猜測URI
    1-133以Kiterunner找出API的內容
    1-134實作練習三:為黑箱測試執行主動偵察
    1-135小結
    1-1367 端點分析
    1-137查找請求資訊
    1-138從說明文件查找可用資訊
    1-139匯入API規格
    1-140對API進行逆向工程
    1-141在Postman加入API身分驗證的需求
    1-142分析API的功能
    1-143測試預期的用法
    1-144執行特權操作
    1-145分析API的回應內容
    1-146尋找資訊洩露
    1-147尋找不當的安全組態
    1-148詳細的錯誤訊息
    1-149傳輸加密機制不佳
    1-150有問題的組態
    1-151尋找過度揭露的資料
    1-152尋找程式邏輯的缺失
    1-153實作練習四:組建crAPI集合及尋找過度暴露的資料
    1-154小結
    1-1558 攻擊身分驗證機制
    1-156典型的身分驗證攻擊
    1-157密碼暴力攻擊
    1-158對密碼重設和多因子身分驗證進行暴力攻擊
    1-159密碼噴灑
    1-160暴力攻擊Base64的身分驗證
    1-161編製身分符記
    1-162手動載入分析
    1-163即時擷取身分符記並分析
    1-164暴力破解可預測的身分符記
    1-165濫用JWT
    1-166尋找和分析JWT
    1-167None式攻擊
    1-168切換演算法攻擊
    1-169破解JWT
    1-170實作練習五:破解crAPI JWT簽章
    1-171小結
    1-1729 模糊測試
    1-173有效的模糊測試
    1-174選擇模糊測試的載荷
    1-175檢測異常情況
    1-176模糊測試的廣度與深度
    1-177使用Postman進行廣度模糊測試
    1-178使用Burp進行深度模糊測試
    1-179使用Wfuzz進行深度模糊測試
    1-180以廣度模糊測試找出不當的資產管理
    1-181使用Wfuzz測試請求方法
    1-182以更深度的模糊來繞過輸入資料清理
    1-183以模糊測試進行目錄遍歷
    1-184實作練習六:以模糊測試尋找不當資產管理漏洞
    1-185小結
    1-18610 攻擊授權機制
    1-187尋找不當的物件授權漏洞
    1-188查找資源ID
    1-189BOLA的A-B測試
    1-190側信道的BOLA漏洞
    1-191尋找不當的功能層級授權漏洞
    1-192BFLA的A-B-A測試
    1-193利用Postman檢測BFLA
    1-194授權漏洞的攻擊技巧
    1-195Postman的集合變數
    1-196Burp的Match和Replace功能
    1-197實作練習七:找出另一位使用者的車輛位置
    1-198小結
    1-19911 批量分配漏洞
    1-200尋找批量分配的攻擊目標
    1-201對機構進行未授權存取
    1-202帳戶註冊
    1-203尋找批量分配變數
    1-204從說明文件尋找變數
    1-205對未知變數執行模糊測試
    1-206盲眼批量分配攻擊
    1-207利用Arjun和Burp的Intruder自動執行批量分配攻擊
    1-208結合BFLA和批量分配漏洞
    1-209實作練習八:竄改網路商店的商品價格
    1-210小結
    1-21112 注入攻擊
    1-212尋找注入漏洞
    1-213跨站腳本(XSS)
    1-214跨API腳本(XAS)
    1-215SQL注入
    1-216手動提交元字符
    1-217SQLmap
    1-218NoSQL注入
    1-219作業系統命令注入
    1-220實作練習九:利用NoSQL注入偽造優惠券
    1-221小結
    1-222Part IV 真實的API入侵事件
    1-22313 應用規避技巧和檢測請求速率限制
    1-224規避API安全管控機制
    1-225安全管控機制的運作原理
    1-226偵測API安全管控機制
    1-227使用Burner帳戶
    1-228規避技巧
    1-229利用Burp自動規避
    1-230利用Wfuzz自動繞過WAF
    1-231在限速機制下執行測試
    1-232關於寬鬆的速率限制
    1-233利用路徑變化繞過速率限制
    1-234偽造來源標頭項
    1-235在Burp裡輪換IP位址
    1-236小結
    1-23714 攻擊GraphQL
    1-238GraphQL的請求和整合型開發環境
    1-239主動偵察
    1-240執行掃描
    1-241用瀏覽器檢視DVGA
    1-242使用開發人員工具
    1-243對GraphQL API進行逆向工程
    1-244以目錄暴力掃描找出GraphQL的端點
    1-245竄改Cookie來啟用GraphiQL IDE
    1-246對GraphQL請求進行逆向工程
    1-247使用自我披露功能對GraphQL集合進行逆向工程
    1-248分析GraphQL API
    1-249利用GraphiQL的Documentation Explorer編造請求
    1-250使用Burp的InQL插件
    1-251命令注入的模糊測試
    1-252小結
    1-25315 真實資料外洩事件和漏洞賞金計畫
    1-254資料外洩
    1-255Peloton
    1-256USPS的Informed Visibility API
    1-257T-Mobile API的資料外洩
    1-258漏洞賞金計畫
    1-259良好API金鑰的代價
    1-260私用API的授權問題
    1-261星巴克:前所未有的資料外洩事件
    1-262Instagram在GraphQL的BOLA弱點
    1-263小結
    1-264總結
    1-265A Web API駭侵查核清單
    1-266B 參考文獻
    1-267版權頁
    1-268封底

    常见问答

    您可以透過手機、平板或是電腦登入 HiSKIO 平台,在【我的學習】>【我的書籍】頁面,選擇想看的電子書。

    猜你喜欢

    用户评价

    | 收集中

    销售方案