2025年10月4日 星期六

[研究]Google reCAPTCHA 不支援 SRI (子資源完整性,Subresource Integrity) 佐證

[研究]Google reCAPTCHA 不支援 SRI (子資源完整性,Subresource Integrity) 佐證

2025-10-04

SRI 本身不是一個可直接利用的漏洞,它是可以強化安全的方法。

也不是所有第三方元件都支援SRI。

********************************************************************************

一、未找到Google官方直接公告不支援 SRI 的佐證。

********************************************************************************

二、Google 官方討論區上的佐證

https://groups.google.com/g/recaptcha/c/BFY3TZ-2g3w?pli=1

********************************************************************************

三、實務上的佐證,讓系統癱瘓掉,證明 Google reCAPTCHA 不支援 SRI

當瀏覽器偵測到 SRI 驗證失敗:

  • 不會載入該資源(例如 JS、CSS)。
  • 不會執行該資源(避免惡意程式碼執行)。

如果對 Google reCAPTCHA  的 api.js 強行設定 SRI,因為 CAPTCHA 一般是放在「登入」畫面,等到某天 Google reCAPTCHA  的 api.js 改版,就會導致 SRI 驗證失敗,瀏覽器會拒絕 Google reCAPTCHA  的 api.js 拒絕載入,所有使用者就無法登入,就證明了 Google reCAPTCHA 不支援 SRI。

明事理 or 懂 SRI 的開發人員或長官是不需要到這種佐證。

不明事理 or 不懂 SRI 的長官或業主,給這種佐證要當心最後還是說這是你的錯。

********************************************************************************

說實在話,Google reCAPTCHA 是很著名的 CAPTCHA,「弱點掃描工具」應該去判斷當引用的檔案是 Google reCAPTCHA 的檔案時,就應該考慮把它從 SRI 名單中排除。

(完)

相關

Subresource integrity
https://groups.google.com/g/recaptcha/c/BFY3TZ-2g3w?pli=1

Google recaptcha fails SRI
https://github.com/mozilla/http-observatory/issues/364

[研究]ASP.NET WebForm 網站【檢查是否有 SRI(子資源完整性)支援】弱點處理
https://shaurong.blogspot.com/2025/07/aspnet-webform-sri.html

[研究]Google reCAPTCHA 不支援 SRI (子資源完整性,Subresource Integrity) 佐證https://shaurong.blogspot.com/2025/10/google-recaptcha-sri-subresource.html

沒有留言:

張貼留言