帝國CMS(EmpireCMS) v7.5 前台XSS漏洞分析
一、漏洞描述
該漏洞是由於javascript獲取url的參數,沒有經過任何過濾,直接當作a標簽和img標簽的href屬性和src屬性輸出。
二、漏洞復現
1、需要開啟會員空間功能(默認關閉),登錄后台開啟會員空間功能。
2、漏洞出現的位置在/e/ViewImg/index.html,瀏覽代碼,發現如下代碼存在漏洞
分析代碼:通過Request函數獲取地址欄的url參數,並作為img和a標簽的src屬性和href屬性,然后經過document.write輸出到頁面。
3、跟進Request函數
分析代碼:通過window.location獲取當前url地址,根據傳入的url參數,獲取當前參數的起始位置和結束位置。
例如,地址是:index.html?url=javascript:alert(document.cookie),經過Request函數處理就變成javascript:alert(document.cookie)
4、url地址經過Request函數處理之后,然后把url地址中的參數和值部分直接拼接當作a標簽的href屬性的值和img標簽的src標簽的值。
5、通過上面的分析,可以發現代碼沒有對url的參數做過濾就直接拼接成a和img標簽的屬性的值,因此可以構造payload:? ?url=javascript:alert(/xss/)
6、瀏覽器訪問http://192.168.10.171/empirecms/e/ViewImg/index.html?url=javascript:alert(/xss/)
7、點擊圖片便可觸發
--------------------------------------------------------------------------------------------
參考:https://www.freebuf.com/vuls/177969.html