CTF SSRF(服務器端偽造請求)


概念

SSRF(Server-Side Request Forgery),服務器端請求偽造,利用漏洞偽造服務器端發起請求,從而突破客戶端獲取不到數據的限制

對外發起網絡請求的地方都可能存在SSRF漏洞

危害

  • 1、可以對外網、服務器所在內網、本地進行端口掃描,獲取一些服務的banner信息
  • 2、攻擊運行在內網或本地的應用程序(比如溢出)
  • 3、對內網Web應用進行指紋識別,通過訪問默認文件實現
  • 4、攻擊內外網的Web應用,主要是使用Get參數就可以實現的攻擊(比如Struts2漏洞利用,SQL注入等)
  • 5、利用file協議讀取文件

漏洞挖掘與判斷

  • 從WEB功能上尋找
    • 分享:通過URL地址分享網頁內容
    • 轉碼服務:通過URL地址吧原地址的網頁內容調優使其適合手機屏幕瀏覽
    • 在線翻譯:通過URL地址翻譯對應文本的內容。
    • 圖片加載與下載:通過URL地址加載或下載圖片
    • 未公開的api實現以及其他調用URL的功能
  • 從URL關鍵字中尋找
    • share、wap、url、link、src、source、target、u、3g、display、sourceURL、imageURL、domain
  • 基本判斷
    • 回顯
      • 直接觀察
      • 抓包
      • 用vps監聽
    • 延時
    • DNS請求

相關函數

  • file_get_contents

  • fsockopen

  • curl_exec

bypass

misc

  • 添加端口
    例如:192.168.200.9:80
  • 短網址
    利用302跳轉到目標網址
  • 指向任意IP的域名xip.io
    例如:10.0.0.1.xip.io resolves to 10.0.0.1
  • IP限制繞過
    • 十進制
    • 八進制
    • 十六進制
    • 不同進制組合轉換
  • 302跳轉
  • 結合dict://file://gopher://
    - file://file:/file: /
  • http://A.com@10.10.10.10
    相當於以http://A.com的身份訪問10.10.10.10
  • http://A.com?xxx=xx
    后跟無用參數繞過

cURL/parse_url解析差異、DNS重綁定、0三種繞過方式及例題

刷題記錄:[網鼎杯 2020 玄武組]SSRFMe

CRLF注入

Gopher協議

gopher是一個互聯網上使用過的分布型的文件搜索獲取網絡協議
gopher協議支持發出GET、POST請求:可以先截獲get請求包和post請求包,再構成符合gopher協議的請求,POST包中要注意Content-length,注意url編碼的次數。gopher協議是ssrf利用中最強大的協議
利用 Gopher 協議拓展攻擊面

使用限制


(圖片來源見水印)

  • phpinfo中查看curl支持的協議
  • 數據庫無密碼

構造payload

https://github.com/tarunkant/Gopherus
https://github.com/swisskyrepo/SSRFmap

ssrf與redis安全

ssrf與redis安全


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM