掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
mysql建議直接使用5.5.*版本的,高版本的會因為mysql的默認配置需要額外配置而遇見各種問題,雖然最后都能搭建成功,但是直接使用低版本的就無需額外配置。

目前創(chuàng)新互聯(lián)公司已為上千的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁空間、網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計、延吉網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
項目路徑建議直接使用 http://IP:port 形式,后面不要配置額外的路徑,加入額外項目配置后雖然可以部署成功,但是會導(dǎo)致一些頁面或者圖片加載不成功。
這是一個SSM(即Spring Framework、Spring MVC、MyBatis)架構(gòu)項目。
百科是這樣介紹的:
觀察到項目使用了log4j 且版本為1.2.17,此版本存在反序列化漏洞CVE-2019-17571(經(jīng)過分析,不存在此漏洞,因為本項目未使用產(chǎn)生此漏洞的類即SocketNode類)。
還使用了druid 1.0.1 組件,可以找一些未授權(quán)接口(經(jīng)過測試未發(fā)現(xiàn)此組件產(chǎn)生的未授權(quán))。
mybatis 3.2.7 組件存在反序列化漏洞CVE-2020-26945(經(jīng)過分析,不存在此漏洞,因為此項目未開啟mybatis二級緩存功能)。
直接在代碼中搜索關(guān)鍵字驗證碼,對相關(guān)代碼進行分析。
此處是找回密碼功能,先后獲取客戶端與服務(wù)端驗證碼進行校驗,校驗成功后進入校驗郵箱是否注冊,若未注冊則直接返回結(jié)果,未刪除服務(wù)端中的舊驗證碼,所以此處可對驗證碼重復(fù)使用來爆破出已經(jīng)注冊的郵箱。
繼續(xù)分析可知,郵箱存在且重置密碼之后才清除服務(wù)端中的驗證碼。因為前臺登錄處無驗證碼,所以此處可配合登錄處繼續(xù)密碼爆破。
但是經(jīng)過分析,后臺管理員登錄處就不存在驗證碼重復(fù)利用,因為驗證碼校驗正確后就會立馬進行清除。
開頭已經(jīng)分析未發(fā)現(xiàn)全局的XSS過濾器,所以直接注冊賬號進行登錄,見框就插入XSS payload。
在問答功能下的我要提問功能處發(fā)現(xiàn)存儲型XSS。
此處只有標題有XSS而內(nèi)容無XSS,找到對應(yīng)的入口進行分析原因,questionsService.addQuestions()為添加問答方法,追蹤此方法
QuestionsController-->QuestionsService-->QuestionsServiceImpl-->QuestionsDao-->QuestionsDaoImpl-->QuestionsMapper
根據(jù)追蹤過程分析未做字符過濾就直接保存到數(shù)據(jù)庫中。并且標題和內(nèi)容都保存數(shù)據(jù)庫中。
由此可知,存儲過程標題和內(nèi)容未做差異化處理,說明在輸出的時候?qū)?nèi)容進行了過濾,繼續(xù)分析輸出部分。由以上可知,存在XSS的url為http://127.0.0.1:8080/question/list。
直接在*.jsp文件中搜索question/list找到對應(yīng)的輸出點。很明顯標題處是直接拼接數(shù)據(jù)庫中的值并未使用標簽包裹,而內(nèi)容處則使用了
自此,產(chǎn)生XSS的來龍去脈都已經(jīng)知道了,所以輸出變量時,沒有使用
因為使用的時mybatis框架,所以直接在*Mapper.xml文件中搜索${即可。
發(fā)現(xiàn)存在多處使用${}進行拼接的地方,選擇一處進行分析
找到對應(yīng)的controller層入口。此處為后臺管理員用戶刪除文章功能處。
抓取請求包直接使用sqlmap爆破即可。
其他還有幾處也存在sql注入。類似分析即可。有幾處因為是直接拼接路徑中的字符作為參數(shù)的,所以這種情況即使使用${}也不會造成sql注入。
在用戶修改個人資料時,直接抓包修改 user.userId參數(shù)值即可越權(quán)登錄到其他存在的用戶。
分析代碼可知,未對用戶進行判斷就直接把用戶信息更新到數(shù)據(jù)庫中,更新數(shù)據(jù)庫中后直接使用userid進行自動重新登錄從而可導(dǎo)致直接登錄其他用戶界面。
后臺管理員創(chuàng)建用戶處存在CSRF漏洞,攻擊者可結(jié)合此系統(tǒng)的XSS漏洞構(gòu)造惡意代碼從而導(dǎo)致創(chuàng)建系統(tǒng)管理員用戶。
可用burpsuite自帶的CSRF工具生成payload進行測試。
從代碼處可知,未對請求體校驗Referer字段,也無token機制。因此可造成CSRF。
前置知識點
jspx:以xml語法來書寫jsp的文件,自定義的映射類型,jspx=jsp+xml;jspx文件本身符合xml的規(guī)范,但是它本質(zhì)又是一個jsp文件,所以在所有jsp里面能夠做到的事情在jspx里同樣可以做到。
tomcat的web.xml中org.apache.jasper.servlet.Jspservlet配置關(guān)于jsp服務(wù)的解析,默認是都會解析jsp和jspx。
此處漏洞發(fā)生在前臺用戶上傳頭像處。
直接找到源代碼進行分析,源碼在\src\main\webapp\WEB-INF\lib\inxedu-jar.jar包中。
此處的fileType即為前端傳入的文件類型后綴,分析代碼可知,此處只過濾了jsp文件其他文件可隨意上傳,可以上傳html文件造成XSS漏洞,由于此項目使用tomcat,所以可以上傳jspx文件getshell。
使用哥斯拉工具生成jspx木馬上傳文件,上傳成功。
連接成功。

我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流