iT邦幫忙

2024 iThome 鐵人賽

DAY 21
0
Security

資安新手的試煉之路系列 第 21

資安新手的試煉之路 Day 21

  • 分享至 

  • xImage
  •  

今天來介紹SSRF

什麼是 SSRF?

SSRF(Server-Side Request Forgery,伺服器端請求偽造)是一種安全漏洞,攻擊者利用應用程序發送的伺服器端 HTTP 請求來進行惡意操作。在這類攻擊中,攻擊者可以控制或篡改伺服器發出的請求,從而達到以下目的:

  • 訪問原本只能在伺服器內部或受信網段內存取的資源
  • 與內部系統(如數據庫、管理界面等)進行通信
  • 發起外部攻擊或進行間諜活動

SSRF 漏洞最常見於那些允許用戶指定資源 URL 或向外部資源發出請求的應用,例如文件上傳或下載功能、PDF 生成、圖片抓取等。


SSRF 攻擊的工作原理

  1. 應用程式發送伺服器端請求
    當應用程式允許用戶指定 URL(例如從 URL 中加載圖片),伺服器會根據該 URL 發出請求,取得內容並返回給用戶。

  2. 攻擊者控制 URL
    攻擊者通過篡改這個 URL,使伺服器向內部資源發送請求,這些資源通常只有伺服器內部或受信網絡可以訪問。

  3. 攻擊成果
    攻擊者可能使用 SSRF 來訪問內部網絡中的管理系統、數據庫服務、API 或是進一步攻擊其他系統。


常見的 SSRF 攻擊類型

  1. 訪問內部網絡資源
    通過 SSRF,攻擊者可以使伺服器訪問內部網絡(如 127.0.0.1 或其他內網 IP)。這種攻擊可能允許攻擊者:

    • 獲取伺服器本地服務的數據,如 Redis、Elasticsearch 等服務的數據
    • 訪問內部的管理介面,如 Kubernetes Dashboard、AWS EC2 Metadata Service
  2. 端口掃描
    攻擊者可以利用 SSRF 漏洞對內部網絡進行端口掃描,從而識別有哪些服務正在運行。通過發送一系列請求,攻擊者可以檢測伺服器的開放端口並推斷內部網絡結構。

  3. 訪問雲服務
    許多雲平台(如 AWS、GCP、Azure)提供的內部 API(例如 AWS 的 EC2 Metadata Service)會返回敏感信息,如憑證、密鑰等。攻擊者可以利用 SSRF 訪問這些 API,獲取憑證來控制虛擬機器或雲端資源。

  4. 對外攻擊
    伺服器可能被配置為受信的節點,能夠發出網絡請求。如果攻擊者能夠控制這些請求,他們可以利用伺服器發動 DDoS 攻擊、滲透攻擊或其他外部攻擊行為,並且難以追蹤到真實的攻擊者。


SSRF 攻擊的真實案例

  1. 2019年 Capital One AWS SSRF 攻擊
    這次攻擊利用了 AWS 的 EC2 Metadata Service 和 SSRF 漏洞,攻擊者成功訪問了 AWS 的內部 API,並竊取了超過 1 億條用戶資料。攻擊者利用 SSRF 漏洞來存取 EC2 Metadata Service,進而取得 AWS S3 儲存桶的憑證,下載了存儲在 S3 上的機密數據。

  2. Uber SSRF 漏洞
    2016 年,Uber 的一個子域名存在 SSRF 漏洞,允許攻擊者發送內部請求,進而訪問 Uber 的內部系統和私有 API。該漏洞後來被用於執行更複雜的攻擊,對 Uber 的資料系統造成威脅。


如何防範 SSRF 攻擊?

  1. 輸入驗證與過濾

    • 嚴格檢查並過濾用戶輸入的 URL,禁止對內部 IP 範圍(如 127.0.0.1localhost169.254.169.254 等)發送請求。
    • 限制 URL 協議(如只允許 HTTP/HTTPS,不允許 file://ftp://gopher:// 等)。
  2. 使用白名單

    • 設置 URL 白名單,僅允許對信任的域名或 IP 發出請求,防止攻擊者發送到不受控的服務。
  3. 禁用不必要的功能

    • 禁用伺服器中不需要的服務和端口,減少攻擊面。
    • 對雲端環境中的 Metadata Service 設置 IP 防護或使用代理服務來保護該服務。
  4. 網絡隔離

    • 使用網絡隔離策略,將應用程式與內部系統分離開來,確保攻擊者即便能控制伺服器,也無法訪問內部網絡。
  5. 防火牆與 ACL

    • 配置防火牆規則和訪問控制列表(ACL),限制內部資源的訪問範圍,防止 SSRF 漏洞被濫用來進行端口掃描或內部攻擊。

結論

SSRF 是一種高風險的漏洞,攻擊者可以利用它來訪問內部網絡資源、進行外部攻擊甚至竊取敏感信息。防範 SSRF 攻擊的關鍵在於輸入過濾、使用白名單、網絡隔離和限制不必要的功能。隨著應用程式愈發依賴第三方 API 和內部網絡,企業需要特別關注 SSRF 漏洞並採取適當的防護措施。


上一篇
資安新手的試煉之路 Day 20
下一篇
資安新手的試煉之路Day 22
系列文
資安新手的試煉之路30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言