久艹视频免费看,亚洲成av人综合在线观看,51久久夜色精品国产水果派解说,gogo全球大胆高清人体444

知識學(xué)堂
  • ·聯(lián)系電話:+86.023-75585550
  • ·聯(lián)系傳真:+86.023-75585550
  • ·24小時(shí)手機(jī):13896886023
  • ·QQ 咨 詢:361652718 513960520
當(dāng)前位置 > 首頁 > 知識學(xué)堂 > 常見技術(shù)問題
杰奇CMS (<=1.7) SQL注入漏洞分析
更新時(shí)間:2012-05-06 | 發(fā)布人:本站 | 點(diǎn)擊率:426
杰奇CMS ( Jieqi CMS) 是一套以小說系統(tǒng)為主的CMS,目前的最新版本是1.7,在小說類的站中使用率還是比較高的,這幾天花了點(diǎn)時(shí)間看了一下他的代碼,覺得挺有意思的,跟大家分享一下。
 
整個(gè)系統(tǒng)核心代碼是zend加密的,dezend之后看了一下。先從最幾率最大的select型注入看起,但是發(fā)現(xiàn)所有地方GET過去的參數(shù),最后都會帶入\lib\database\database.php中組合SQL語句,再帶入到j(luò)ieqimysqldatabase類(\lib\database\mysql\db.php)的query方法進(jìn)行最后的執(zhí)行。
 
仔細(xì)查看后發(fā)現(xiàn)不可利用,因?yàn)槿绻菙?shù)字型的變量,帶入到database.php時(shí)會進(jìn)行is_numeric檢查;如果是字符串型會進(jìn)行\(zhòng)轉(zhuǎn)義,嘗試了寬字節(jié)注入,但很可惜的是dp.php中有一句“character_set_client=binary”,也就是說php程序在與mysql交互的時(shí)候使用二進(jìn)制字符集查詢,瞬間絕望了。
 
再留意了一下,發(fā)現(xiàn)程序中并沒有轉(zhuǎn)碼的操作,所以寬字節(jié)注入這條路就徹底不行了。
 
這是一個(gè)不好的信號,因?yàn)槌绦蛑谢旧纤械淖址投紩M(jìn)行轉(zhuǎn)義操作,我就不可能跳出魔術(shù)引號了。
 
又黑盒看了一下,后臺的一個(gè)地方會顯示用戶留言時(shí)的IP,IP是插在數(shù)據(jù)庫中的,于是考慮了一下能不能偽造IP,看看能否利用來注入或者xss。
 
分析之后得出獲取IP函數(shù)是jieqi_userip (/global.php) www.2cto.com ,采用HTTP_CLIENT_IP的方式來獲取的,可以偽造,但很蛋疼的是jieqi_userip在獲取了IP之后會把小數(shù)點(diǎn)替換為空,再進(jìn)行is_numeric判斷- - || ,又白高興了。
 
接著找了一下xss,1.7沒有找到xss,1.6有幾個(gè)反射型xss。
 
再接再厲,又看了一下其他一些地方,但都沒太大的突破,最后看到注冊那一塊的時(shí)候,發(fā)現(xiàn)了一些問題。
 
處理注冊的頁面是/register.php,post過去的參數(shù)有username、password、repassword、email、sex、qq、url、action,跟了一下,發(fā)現(xiàn)是這樣一個(gè)流程:依次帶入到/regcheck.php中檢查username是否合法,username是否重復(fù),password是否等于repassword,email是否合法,email是否重復(fù)。也就是說sex、qq、url并沒有進(jìn)行檢查,但是qq和url在數(shù)據(jù)庫中是varchar型,cms會把這兩個(gè)參數(shù)當(dāng)字符串處理,也就是說如果出現(xiàn)單引號的話會進(jìn)行轉(zhuǎn)義,前面已經(jīng)說過了,無法跳出魔術(shù)引號。
 
很幸運(yùn)的是,程序猿百密一疏,天真的認(rèn)為sex在前臺是以單選框顯示出來的,只有0、1、2這三種可能性,所以沒進(jìn)行is_numeric判斷,直接帶入到數(shù)據(jù)庫中,那么就可以利用了。
 
總結(jié)一下,通過這幾天的審計(jì),我覺得其實(shí)那個(gè)作者安全意識挺高的,對于常見安全性問題都做了相應(yīng)的防范,在一次次發(fā)現(xiàn)我想到的地方作者也想到了而失望的同時(shí),也挺佩服作者的安全意識的,希望作者在看到本文時(shí)能及時(shí)修補(bǔ)。另外,以上的個(gè)人分析如果有什么不足的地方還望各位大牛補(bǔ)充,如果大家發(fā)現(xiàn)了1.7版本其他的一些問題或者是其他更好的后臺get webshell的方法,請告訴我一聲,共同交流,共同進(jìn)步,thx :)