当前位置: 首页 > article >正文

解决目标主机showmount -e信息泄露(CVE-1999-0554)

企业中,一般都会使用NFS网络文件系统。最近在项目上做等保测评的工作中,发现了一个“目标主机showmount -e信息泄露(CVE-1999-0554)“的问题。最终采取的解决措施如下:

1. 问题现状

目前,我有三台主机,分别为主机a,主机b和主机c,其中主机a为服务器,部署了nfs,只允许主机b使用,然而主机c可以通过showmount -e命令来浏览主机a的目录清单。

#主机a的nfs服务配置文件,其中10.28.7.210是主机b的IP地址
[root@a ~]# cat /etc/exports
/data  10.28.7.210/32(rw,sync)

#主机b使用showmount -e命令可以查看到的信息
[root@b ~]# showmount -e 10.28.7.253
Export list for 10.28.7.253:
/data 10.28.7.210/32
[root@b ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.28.7.210  netmask 255.255.255.0  broadcast 10.28.7.255

#主机c也可以使用showmount -e命令查看nfs服务器上共享出来的目录信息
[root@c ~]# showmount -e 10.28.7.253 
Export list for 10.28.7.253:
/data 10.28.7.210/32
[root@c ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:62:18:E8  
          inet addr:10.28.7.252  Bcast:10.28.7.255  Mask:255.255.255.0

2. 解决方法

在NFS服务器上的/etc/hosts.allow和/etc/hosts.deny文件添加以下内容即可解决该问题。 

编辑/etc/hosts.allow文件

[root@a ~]# cat /etc/hosts.allow
#
# hosts.allow    This file contains access rules which are used to
#        allow or deny connections to network services that
#        either use the tcp_wrappers library or that have been
#        started through a tcp_wrappers-enabled xinetd.
#
#        See 'man 5 hosts_options' and 'man 5 hosts_access'
#        for information on rule syntax.
#        See 'man tcpd' for information on tcp_wrappers
#
#
mountd:10.28.7.210    #<==添加客户端IP地址,相当于白名单

 编辑/etc/hosts.deny文件

[root@a ~]# cat /etc/hosts.deny 
#
# hosts.deny    This file contains access rules which are used to
#        deny connections to network services that either use
#        the tcp_wrappers library or that have been
#        started through a tcp_wrappers-enabled xinetd.
#
#        The rules in this file can also be set up in
#        /etc/hosts.allow with a 'deny' option instead.
#
#        See 'man 5 hosts_options' and 'man 5 hosts_access'
#        for information on rule syntax.
#        See 'man tcpd' for information on tcp_wrappers
#
#
mountd:all    #<==添加该行,相当于黑名单

在以上两个文件中添加对应内容之后,不需要重启nfs服务,即可生效

3. 结果测试

#主机c使用showmount -e命令,无法查看相关信息
[root@c ~]# showmount -e 10.28.7.253 
rpc mount export: RPC: Authentication error; why = Failed (unspecified error)
[root@c ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:62:18:E8  
          inet addr:10.28.7.252  Bcast:10.28.7.255  Mask:255.255.255.

#主机b使用正常
[root@b ~]# showmount -e 10.28.7.253
Export list for 10.28.7.253:
/data 10.28.7.210/32
[root@b ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.28.7.210  netmask 255.255.255.0  broadcast 10.28.7.255

http://www.kler.cn/news/326336.html

相关文章:

  • 开创远程就可以监测宠物健康新篇章
  • C++ | Leetcode C++题解之第432题全O(1)的数据结构
  • Centos 8安装VNC及多用户配置详细教程
  • java socket bio 改造为 netty nio
  • 【算法业务】基于Multi-Armed Bandits的个性化push文案自动优选算法实践
  • 电商搜索效率飞跃:阿里巴巴搜索API返回值的力量
  • 零工市场小程序如何提高找兼职的效率?
  • FFmpeg源码:avio_feof函数分析
  • 源代码保密技术的升级:模块化沙箱
  • 介绍Java中的反射并举例至少5个反射中常用的API-----Java基础相关面试题分享
  • 经典文献阅读之--WiROS(用于机器人的WiFi感知工具箱)
  • 百分点科技再获多项数据智能领域奖项
  • 骨架油封对于置放环境的要求
  • 【1分钟学会】Sass
  • SpringBoot项目请求不中断动态更新代码
  • 宝塔部署vue项目出现的各种问题
  • PostgreSQL的扩展(extensions)-常用的扩展-pgstattuple
  • Pygame中Sprite实现逃亡游戏5
  • 如何使用ssm实现基于SpringMVC网上选课系统的设计与实现
  • 基于Springboot+Vue的网上书店(含源码数据库)
  • C++-list使用学习
  • 前端工程化之vite
  • 从零开发操作系统
  • 【Unity基础】Unity中跨平台使用SQLite
  • php-cgi漏洞利用
  • php 平滑重启 kill -SIGUSR2 <PID> pgrep命令查看进程号
  • SpinalHDL之结构(八)
  • 记一次pycharm在使用git提交时需要输入ssh key的密码的问题
  • 第十一届蓝桥杯嵌入式省赛程序设计题解析(基于HAL库)(大学组)
  • HTTPS协议详解:从原理到流程,全面解析安全传输的奥秘