歡迎光臨
我們一直在努力

How to bypass filter_var(), preg_match() and parse_url()

#Web 滲透與漏洞研究

乾貨! 這篇很重要! 一定要看 !
PHP SSRF Techniques
How to bypass filter_var(), preg_match() and parse_url() ?

原文出處:https://medium.com/secjuice/php-ssrf-techniques-9d422cb28d51

波波觀點:URL 驗證最怕解析差異

SSRF 防禦常會用 filter_var、preg_match 或 parse_url 檢查 URL,但不同函式、代理、DNS 與後端 HTTP client 對同一字串的解析可能不同。只靠字串規則很容易出現繞過,尤其是在跳轉、混合編碼、IPv6、內網位址與 DNS 解析場景。

防禦檢查

  • 使用明確白名單,不接受任意 URL 由伺服器代抓。
  • 解析後再檢查 scheme、host、port,並在連線前後都驗證 IP。
  • 封鎖內網、metadata、localhost、link-local 與保留位址。
  • 限制跳轉、timeout、回應大小與可使用的 HTTP method。

實務建議

SSRF 的影響取決於伺服器所在網路。雲端環境要特別保護 metadata service;內網環境要避免讓 Web 應用成為掃描內網的跳板。日誌中也應能追蹤伺服器代發出的請求。

站內延伸閱讀

贊(0) 贊助
未經允許不得轉載:波波的寂寞世界 » How to bypass filter_var(), preg_match() and parse_url()

波波的寂寞世界

Facebook聯繫我們

覺得文章有幫助,歡迎贊助支持本站

感謝你的支持,我會持續整理資安筆記、實務經驗與有價值的技術內容。

贊助本站