名師學院 SQL Injection Vulnerability - HITCON ZeroDay

Vulnerability Detail Report

Vulnerability Overview

  • ZDID: ZD-2018-01553
  •  發信 Vendor: 寰宇知識科技股份有限公司
  • Title: 名師學院 SQL Injection Vulnerability
  • Introduction: SQL Injection Vulnerability

處理狀態

目前狀態

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

處理歷程

  • 2018/10/11 20:57:45 : 新提交 (由 Hzllaga 更新此狀態)
  • 2018/10/13 00:52:47 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2018/10/14 21:48:18 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2018/10/14 21:48:18 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2018/12/11 03:00:03 : 公開 (由 HITCON ZeroDay 平台自動更新)

詳細資料

  • ZDID:ZD-2018-01553
  • 通報者:haihai (Hzllaga)
  • 風險:嚴重
  • 類型:資料庫注入攻擊 (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.kut.com.tw/ 相關鏈接(包括子站)都有

http://www.qask.com.tw/Answer.aspx?id={sqli}

敘述

本來想要bypass看看ZD-2018-01530,結果文件是被刪除的,不過漏洞詳情可以看到資料庫是sa帳號登入的,就想要看看SQLi,看到主站在未登入狀況下url會多一個?c=c1,用瀏覽器是沒發現什麼問題的,不過無聊就用curl提交單引號,竟然出現可愛的SqlException,就把封包丟到burp測試,不過不清楚網頁到底怎麼執行SQL的,導致怎麼弄都沒辦法出數據,遂放棄之。
圖片

後來爬了一下同伺服器的網站,大多是用了同一套cms,url後面都多了?c=c1,沒辦法,只好挑其中一個網站 http://www.qask.com.tw/ 註冊一個帳號,登入後竟然看到了cookie存了SQL語句??

SELECT top {0} titleIcon,titleColor,IsBest,keyword,goodCount,NogoodCount,ANScount,ANSName,ASKName,ASKQuestion.bonus,ASKKind,title,ASKQuestion.id,readCount,CreateDate,lastANSDate,ASKSubjectCode.name,MemberID %0d%0a            FROM ASKQuestion INNER JOIN ASKSubjectCode ON ASKQuestion.SubjectCode = ASKSubjectCode.Code INNER JOIN tb_member ON  ASKQuestion.MemberID = tb_member.ID  where  ASKquestion.IsValid<>0 and  ASKKind='AA' And  (ASKQuestion.isPrivate = 0 Or ASKQuestion.MemberID=77695) and  ASKQuestion.id not in(select top {1} askquestion.id from ASKQuestion INNER JOIN ASKSubjectCode ON ASKQuestion.SubjectCode = ASKSubjectCode.Code INNER JOIN tb_member ON  ASKQuestion.MemberID = tb_member.ID  where  ASKquestion.IsValid<>0 and  ASKKind='AA' And  (ASKQuestion.isPrivate = 0 Or ASKQuestion.MemberID=77695)  ORDER BY  ASKQuestion.Istitle DESC,  ASKQuestion.lastANSDate Desc) ORDER BY  ASKQuestion.Istitle DESC,  ASKQuestion.lastANSDate Desc

想說修改一下搞不好能直接執行,結果好像讓網頁爆錯,具體怎麼運行的我也不清楚=-=

後來隨手測試一下單引號,竟然直接跳一個SqlException =-=,有點可怕
運氣不好的鏈接:http://www.qask.com.tw/Answer.aspx?id=36921
圖片

available databases [19]:
[*] Aircate              
[*] AndroidReg           
[*] bigplat              
[*] EngC                 
[*] EngKing              
[*] EngSchool            
[*] iQSchool             
[*] kut                  
[*] kut_1on1             
[*] KutLog               
[*] kutStudyLog          
[*] master               
[*] model                
[*] msdb                 
[*] Northwind            
[*] pubs                 
[*] ReportServer         
[*] ReportServerTempDB   
[*] tempdb               

可以用xp_cmdshell,不過被降權:
圖片

主站部分數據計數

Database: kut
+------------------------------------------------------+---------+
| Table                                                | Entries |
+------------------------------------------------------+---------+
| dbo.AskWebCounter                                    | 7495186 |
| dbo.WebCounter                                       | 3418760 |
| dbo.nStudyLog                                        | 3345973 |
| dbo.tb_studylog                                      | 3070791 |
| dbo.QuizWebCounter                                   | 2626884 |
| dbo.QuizStudentAns                                   | 1734421 |
| dbo.QuizPaperDetail_New                              | 1718959 |
| dbo.BonusLog                                         | 1414253 |
| dbo.BonusLog_20181002                                | 1401149 |
| dbo.HDSNLog                                          | 1347085 |
| dbo.QuizSplitImg                                     | 1328406 |
| dbo.QuizStudentAns_New                               | 1246721 |
| dbo.tb_LoginLog                                      | 1117984 |
| dbo.ASKMemberLog                                     | 1014941 |

各個子站會員加起來差不多12萬吧,影響也不小了

應該是蠻多地方都有SQLi的,這邊只提交一部份,剩下的要麻煩企業自己檢查了

擷圖

留言討論

聯絡企業

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