Vulnerability Detail Report
Vulnerability Overview
- ZDID: ZD-2026-00902
- Vendor: {臺中市體育總會田徑委員會}
- Title: 臺中市體育總會田徑委員會 SQL Injection
- Introduction: login.php 的登入功能存在 SQL Injection,可透過萬用密碼繞過身分驗證直接登入後台;另 index.php 亦存在 SQL Injection 可讀取資料庫與檔案。
處理狀態
目前狀態
-
新提交
-
已審核
-
已通報
-
已修補
-
未複測
-
公開
處理歷程
- 2026/07/03 14:46:34 : 新提交 (由 Bun_. 更新此狀態)
- 2026/07/03 15:33:37 : 新提交 (由 Bun_. 更新此狀態)
- 2026/07/03 15:38:15 : 新提交 (由 Bun_. 更新此狀態)
- 2026/07/07 13:44:24 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
- 2026/07/23 16:37:58 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
- 2026/07/23 16:37:58 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
- 2026/07/23 16:37:58 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
- 2026/08/26 11:12:05 : 複測申請中 (由 組織帳號 更新此狀態)
- 2026/09/02 12:27:13 : 未修補完成 (由 Bun_. 更新此狀態)
- 2026/09/03 03:00:19 : 公開 (由 HITCON ZeroDay 平台自動更新)
詳細資料
- ZDID:ZD-2026-00902
- 通報者:Superliverbun (Bun_.)
- 風險:嚴重
- 類型:資料庫注入攻擊 (SQL Injection)
參考資料
漏洞說明: OWASP - SQL Injection
https://www.owasp.org/index.php/SQL_Injection
漏洞說明: OWASP - Top 10 - 2017 A1 - Injection
https://www.owasp.org/index.php/Top_10-2017_A1-Injection
漏洞說明: CWE-89: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
https://cwe.mitre.org/data/definitions/89.html
防護方式: OWASP - SQL Injection Prevention Cheat Sheet
https://www.owasp.org/index.php/SQL_Injection_Prevention_Cheat_Sheet
相關網址
https://w2.athletics.org.tw/tctf/index.php
敘述
臺中市體育總會田徑委員會網站的 index.php,其 GET 參數 pagesize 未經過濾即帶入 SQL 查詢,存在 SQL Injection 漏洞。
重現方式:
登入功能 login.php 的 username 參數未經過濾即帶入 SQL 查詢,可透過萬用密碼(' OR 1=1 -- )使查詢條件恆真,繞過帳號密碼驗證,直接以資料庫中第一筆使用者身分登入後台。
登入身分為資料庫第一筆使用者「趙子文」
於 username 參數使用' OR 1=1 LIMIT 1,1 --指定登入資料表中第二筆使用者
LIMIT 1,1 表示跳過第一筆、取第二筆使用者。由於該站使用者資料表中第二筆為具最高權限之系統管理員帳號(Priv=root),此請求即可繞過帳號密碼驗證,直接以系統管理員身分登入後台。
使用 sqlmap 對 pagesize 參數進行注入測試:
sqlmap -u "https://w2.athletics.org.tw/tctf/index.php?pagesize=15&pages=12&pagesize=15&TpId=1&CtType=1" --random-agent --is-dba --dbs
確認注入成立:
可存取之資料庫:tctf
後端 DBMS:MySQL(MariaDB fork)/Linux CentOS 7/Apache 2.4.6/PHP 5.4.16
由於注入具備檔案讀取能力,可透過 LOAD_FILE() 讀取伺服器上的檔案(惟因採 time-based 盲注,讀取速度較慢)。
修補建議
1. 登入功能改用參數化查詢(Prepared Statements),勿將 username 直接拼接進 SQL 語句。
2. 密碼驗證應以雜湊比對進行,且不得僅依賴 SQL 查詢是否回傳資料列來判斷登入成功。
3. 對 username 等所有輸入參數進行嚴格驗證與跳脫。
4. 後台每個功能頁面應獨立進行 session 權限檢查,避免單一驗證點被繞過即完全淪陷。
5. 建議登入導入帳號鎖定、多因素驗證等機制,降低被自動化繞過與濫用的風險。