桃園市立南崁高級中等學校 圖書館網頁搜尋欄XSS,疑似SQL Injection - HITCON ZeroDay

Vulnerability Detail Report

Vulnerability Overview

  • ZDID: ZD-2026-00093
  •  發信 Vendor: 桃園市立南崁高級中等學校
  • Title: 桃園市立南崁高級中等學校 圖書館網頁搜尋欄XSS,疑似SQL Injection
  • Introduction: 該單位圖書館系統之搜尋功能未落實輸入驗證,存在 SQL Injection 與 Reflected XSS 漏洞,攻擊者可竊取資料庫內容或進行用戶端攻擊,且報錯訊息洩露伺服器路徑。

處理狀態

目前狀態

公開
Last Update : 2026/02/06
  • 新提交
  • 已審核
  • 已通報
  • 已修補
  • 未複測
  • 公開

處理歷程

  • 2026/01/20 23:17:27 : 新提交 (由 Nolan 更新此狀態)
  • 2026/01/26 17:55:18 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2026/01/27 18:15:37 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2026/01/27 18:15:37 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2026/01/27 18:15:37 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2026/01/29 11:11:51 : 已修補 (由 組織帳號 更新此狀態)
  • 2026/02/06 03:00:20 : 公開 (由 HITCON ZeroDay 平台自動更新)

詳細資料

  • ZDID:ZD-2026-00093
  • 通報者:Nolan483 (Nolan)
  • 風險:中
  • 類型:資料庫注入攻擊 (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
(本欄位資訊由系統根據漏洞類別自動產生,做為漏洞參考資料。)

相關網址

http://163.30.79.5/Tycportal/
http://163.30.79.5/Tycportal/bulletin.cfm

敘述

漏洞詳情 (Vulnerability Details)

測試目標為貴校圖書館查詢系統 (bulletin.cfm),經手動測試與自動化腳本驗證,確認存在高風險的 SQL Injection 與 Reflected XSS 漏洞。

1. SQL Injection (Error-based & Boolean-based Blind)

  • 漏洞位置: bulletin.cfm 的 URL 參數 keyword

  • 驗證方式:

    1. 報錯測試 (Error-based): 輸入單引號 ' 時,系統回傳 ColdFusion Runtime Error,並直接洩露伺服器實體路徑 (/usr/local/tomcat_portal/...),證實輸入未經轉義直接進入資料庫查詢。
    2. 布林盲注測試 (Boolean-based Blind): 使用自動化腳本針對 keyword 參數進行邏輯測試,發現伺服器對 True/False 條件產生不同回應(長度與 Hash 值不同)。
  • 關鍵驗證數據 (PoC Log):
    根據 Python 腳本測試結果,不同邏輯判斷導致了回應內容的顯著差異,證實 SQL 語句已被執行:

    [測試目標] [http://163.30.79.5/Tycportal/bulletin.cfm](http://163.30.79.5/Tycportal/bulletin.cfm)
    
    [比較 1:永真條件 (True)]
    Payload: test' OR '1'='1
    回應長度: 18545 bytes
    Hash 值: 53172d4027d0e7fd9dca326a53b92a90
    
    [比較 2:永假條件 (False)]
    Payload: test' AND '1'='2
    回應長度: 18551 bytes
    Hash 值: d6e955a9e4a246c098349d36d27f55c4
    
    [結論]
    Hash 值不一致 (5317... vs d6e9...) 且長度不同,證明資料庫成功解析並執行了注入的布林邏輯。
  • 相關截圖: 請參見附件截圖 。

2. Reflected Cross-Site Scripting (Reflected XSS)

  • 漏洞位置: 搜尋結果頁面的 <input> 標籤 value 屬性。
  • 問題描述: 搜尋關鍵字未經 HTML Entity 編碼直接回顯。攻擊者可構造閉合 Payload (如 "><script>...) 執行惡意 JavaScript。
  • 相關截圖: 請參見附件截圖 。

影響評估 (Impact)

  1. 資料庫入侵: 已證實可透過 Error-based 獲取系統資訊,並可透過 Boolean Blind 方式逐字猜解資料庫內容(如管理員帳號密碼),造成嚴重個資外洩。
  2. 伺服器路徑洩露: 錯誤訊息暴露了 Tomcat 與 ColdFusion 的安裝路徑,增加系統被針對性攻擊的風險。
  3. 使用者攻擊: XSS 漏洞可用於釣魚或竊取使用者 Session。

擷圖

留言討論

聯絡組織

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