MS08-067 漏洞利用与安全加固

文章目录

  • 环境说明
  • 1 MS08_067 简介
  • 2 MS08_067 复现过程
  • 3 MS08_067 安全加固

环境说明

  • 渗透机操作系统:2024.1
  • 漏洞复现操作系统: Windows XP Professional with Service Pack 2- VL (English)
  • 安全加固复现操作系统:Windows XP Professional with Service Pack 2 (Simplified Chinese)
  • 补丁版本 : KB958644

1 MS08_067 简介

攻击者利用受害者主机默认开发的SMB服务的端口445 发送特殊RPC(Remote Procedure Call,远程过程调用)请求,造成可被利用并可远程执行代码。MS08_067 漏洞的全程为 “WIndows Server 服务RPC请求缓冲区溢出漏洞”,如果用户在受影响的系统上收到特制的RPC请求。则该漏洞可能允许远程执行代码。

Ms08_067_netapi 是Metasploit 中的一款溢出攻击载荷。NetPathCanonicalize 函数在远程访问其他主机时会调用 NetpwCanonicalize 函数,对远程访问的路径进行规范化,而在NetpwPathCanonicalize 函数中发生栈缓冲内存错误,造成可被利用并远程执行代码,获得一个相对高的权限。

2 MS08_067 复现过程

在开始之前请关闭靶机的防火墙和查看445端口是否打开, 关于渗透机和靶机环境的搭建可自行Bing

步骤01、

打开网络拓补,单机 “启动”按钮,启动实现虚拟机,如图所示。

在这里插入图片描述

步骤02、

使用ifconfig ipconfig命令分别获取渗透机和靶机的IP的地址,使用ping 命令进行网络 连通性测试,确保网络可达。

渗透机的IP 地址为 192.168.254.134,如图所示。

在这里插入图片描述

靶机的IP地址为 192.168.254.129,如图所示。

在这里插入图片描述

步骤03、

Namp脚本扫描靶机,使用 nmap -O -n -T4 -p445 -script smb-vuln-ms08-067 192.168.254.129 (目标靶机IP) 命令扫描靶机操作系统,如图所示。

同时确认目标靶机是否存在SMB漏洞。

如下图:找到 State:VULNERABLE 表示存在漏洞

在这里插入图片描述

步骤04、

根据扫描得到的结果,靶机的操作系统为 Windows XP。通过脚本检测搭配该操作系统包含命令执行漏洞,漏洞编号为 MS08_067, 下面通过渗透机中的利用模块对该漏洞利用,通过msfconsole 命令来启动Metasploit 漏洞渗透平台,如图所示。

启动 Metasploit

在这里插入图片描述

步骤05、

使用search 命令搜索 SMB 溢出模块MS08_067 并进行利用,如图所示。

搜索 MS08_067 溢出模块

在这里插入图片描述

步骤06、

使用 use 命令选择 exploit/Windows/smb/ms08_067_netapi 模块进行利用,然后使用 show options 命令查看需要设置的参数,如图所示。

查看配置参数

在这里插入图片描述

设置 RHOST为靶机IP,如图所示。

设置靶机地址

在这里插入图片描述

步骤07、

使用set payload 命令设置回连至控制端的载荷模块并执行如下操作,如图所示。

设置载荷模块

在这里插入图片描述

使用 show options 命令查看Payload 中需要配置的参数,如图所示。

查看 Payload 中配置的参数

在这里插入图片描述

使用 set LHOST 命令设置渗透机监听的地址,即本次实验地址 192.168.253.134 如图所示。

设置监听地址

在这里插入图片描述

使用 show targets 命令显示漏洞溢出模块 exploit 所支持的目标类型 (操作系统,软件版本等),如图所示。

显示支持的目标类型

在这里插入图片描述

步骤08、

使用 check 命令检测目标靶机是否存在漏洞,如图所示。

运行检测脚本

在这里插入图片描述

步骤09、

使用 exploit 命令执行溢出攻击模块,如图所示。

运行溢出模块

在这里插入图片描述

步骤10、

使用 cmd命令,如 netstat -an 查看端口开发情况,如图所示。

查看开发端口

在这里插入图片描述

步骤11、

使用 net user 用户名密码/add 命令创建用户,如图所示。

创建后门用户

在这里插入图片描述

步骤12、

使用 net localgroup administrators 用户名 /add 命令将新用户添加到 administrator 分组(提升到管理员),如图所示。

添加用户到管理员分组

在这里插入图片描述

步骤13、

使用 REG ADD HKLM\SYSTEM\CurrentControSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f 命令设置注册表,如图所示。

设置注册表

在这里插入图片描述

步骤14、

在开始之前确保渗透机安装了rdesktop 一般都自带了,使用 rdesktop 软件远程连接目标靶机,输入用户名和密码,如图所示。

需要在远程桌面选项中,选择允许运行任意版本远程桌面的连接。

远程桌面连接,输入用户名和密码

在这里插入图片描述

连接成功

在这里插入图片描述

最后,我们还需要将新建的用户名theRavensea删除

3 MS08_067 安全加固

声明 : 上面漏洞复现使用的是 Windows XP Server Pack 2 英文版 作为靶机,使用Windows XP Server Pack 2 中文版 作为靶机最后exploit的时候出现错误Exploit completed, but no session was created. 。但MS08_067安全加固的时候 英文版的补丁找不到,下载了kb988644无法实现安全加固复现过程,所以安全加固的使用 Windows XP Server Pack 2 中文版,中文版存在漏洞,只是我现在复现不了攻击成功的过程。

使用 Windows XP Server Pack 2 实现MS08_067 安全加固

想要下载中文版补丁的点击此链接 KB958644

步骤15、

大多数用户启用了 ”自动更新“,他们不必采取任何操作,因为此安全更新将自动下载并安装。尚未启动 ”自动更新”的用户必须检查更新,并手动安装此更新。有关自动更新中特定配置选项的信息,对于管理员,企业安装或想要手动安装此安全更新的最终用户,MIcrosoft 建议使用更新管理软件来立即应用此更新或利用 Microsoft Update 服务检查更新,如图所示。

官方安全公告

在这里插入图片描述

步骤16、

在受影响的软件中,找到自己的操作系统,单击进入并下载相应的补丁安装包。本任务中使用的系统版本为 Windows XP Service Pack 2,如图所示。

下载漏洞补丁

在这里插入图片描述

上面的链接转跳可能不存在,KB958644 点击此链接下载。
在这里插入图片描述

步骤17、

选择系统的语言,单机 “下载” 按钮进行下载,然后在靶机系统中安装此补丁包,如图所示。

选择语言并下载

在这里插入图片描述

步骤18、

双击 Windows XP-KB958644-x86-CHS.exe 安装补丁,安装完成后重新启动系统,如图所示。

安装补丁

在这里插入图片描述

安装成功,注意打补丁使用的是Windows XP Server Pack 2 中文版

在这里插入图片描述

步骤19、

再次运行模块的 check 漏洞检测脚本,发现此时目标已经没有改漏洞了,运行exploit 溢出模块进行尝试,发现已无法对目标靶机进行利用,如图所示。

再次运行溢出模块

在这里插入图片描述

补丁打成功。实现结束,如有有问题可以在下面留言和私信我。

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

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

相关文章

C语言案例2,请编程序将“China“译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母,变为Glmre,持续更新~

一.题目 /* 请编程序将“China”译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母。 例如,字母“A”后面第4个字母是“E”,用“E”代替“A”。因此,“China”应译为“Glmre”。 请编一程序,用赋初值的方法使cl,c2,c3,c4,c5 这5个变量的值分…

YoloV5改进策略:下采样改进|HWD改进下采样

摘要 本文使用HWD改进下采样,在YoloV5的测试中实现涨点。 论文解读 在卷积神经网络(CNNs)中,极大池化或跨行卷积等下采样操作被广泛用于聚合局部特征、扩大感受野和最小化计算开销。然而,对于语义分割任务&#xff…

HTML_CSS练习:HTML注释

一、代码示例 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>HTML注释</title> </head> <body><marquee loop"1">马龙强<!--下面的输入框是可以滚动的&#x…

【Python】清理conda缓存的常用命令

最近发现磁盘空间不足&#xff0c;很大一部分都被anaconda占据了&#xff0c;下面是一些清除conda缓存的命令 清理所有环境的Anaconda包缓存 删除所有未使用的包以及缓存的索引和临时文件 conda clean --all清理某一特定环境的Anaconda包缓存 conda clean --all -n 环境名清…

【ansible】ansible的介绍和安装

前言运维自动化 云计算核心职能 搭建平台架构 日常运营保障 性能效率优化 相关工具 代码管理&#xff08;SCM&#xff09;&#xff1a;GitHub、GitLab、BitBucket、SubVersion 构建工具&#xff1a;maven、Ant、Gradle 自动部署&#xff1a;Capistrano、CodeDeploy 持续…

字符串函数(C语言详解)

1.字符串简介 字符串是一串连续的且以\0结尾的字符 char arr[]"zhangsan";//将字符串存到数组里面 char*a"lisi";//常量字符串 char arr1[]{z,h,a,n,g};//字符数组 注意&#xff1a; 1.以第一种形式初始化字符串时&#xff0c;计算机会自动在字符串末尾加…

GraspNet-baseline复现----Linux-Ubuntu

1.基本环境 Ubuntu 20.04Cuda 11.0 、cuDNN 80.0Python 3.7.16PyTorch 1.7.0 2.环境配置 PyTorch的版本对Cuda和Python的版本都有依赖&#xff0c;所以基本步骤是 确定需要安装的PyTorch版本 —> 通过 网站 确定对应的cuda版本和python版本 —> 创建虚拟环境配置环境。…

Node.js基础+原型链污染

Node.js基础 概述&#xff1a;简单来说Node.js就是运行在服务端的JavaScript&#xff0c;Node.js是一个基于Chrome JavaScript运行时建立的一个平台 大小写变换&#xff1a; toUpperCase&#xff08;&#xff09;&#xff1a;将小写字母转为大写字母&#xff0c;如果是其他字…

【C#】.net core 6.0 使用第三方日志插件Log4net,配置文件详细说明

欢迎来到《小5讲堂》 大家好&#xff0c;我是全栈小5。 这是《C#》系列文章&#xff0c;每篇文章将以博主理解的角度展开讲解&#xff0c; 特别是针对知识点的概念进行叙说&#xff0c;大部分文章将会对这些概念进行实际例子验证&#xff0c;以此达到加深对知识点的理解和掌握。…

使用FFmpeg源码配置程序configure查看所有支持的编码器/解码器/封装/解封装及网络协议

查看支持编码器: configure --list-encoders 查看支持编码器: configure --list-decoders 查看所有支持的封装: configure --list-muxers 查看所有支持的解封装: configure --list-demuxers 查看所有支持的网络通信协议: configure --list-protocols

解决jsp request.getParameter乱码问题(兼容Tomcat 6~8三个版本)

JSP页面写法&#xff1a; <% page contentType"text/html; charsetutf-8" language"java" %> <% page import"java.io.*" %> <%! int getServerVersion(HttpServletRequest request) {ServletContext application request.getS…

移远通信亮相AWE 2024,以科技力量推动智能家居产业加速发展

科技的飞速发展&#xff0c;为我们的生活带来了诸多便利&#xff0c;从传统的家电产品到智能化的家居设备&#xff0c;我们的居家生活正朝着更智能、更便捷的方向变革。 3月14日&#xff0c;中国家电及消费电子博览会&#xff08;Appliance&electronics World Expo&#xf…

【物联网】Modbus 协议及Qinghub物联网平台应用

Modbus 协议简介 QingHub设计器在设计物联网数据采集时不可避免的需要针对Modbus协议的设备做相关数据采集&#xff0c;这里就我们的实际项目经验分享Modbus协议 你可以通过QingHub作业直接体验试用&#xff0c;也可以根据手册开发相应的代码块。 qinghub项目已经全面开源。 …

sqllab第十九关通关笔记

知识点&#xff1a; 错误注入 最大长度为32位&#xff1b;如果目标长度>32时&#xff0c;需要利用截取函数进行分段读取referer注入 insert语句update语句 通过admin admin进行登录发现页面打印除了referer字段的信息 这应该是一个referer注入 首先进行测试一下 构造payl…

基于SpringBoot和Echarts的全国地震可视化分析实战

目录 前言 一、后台数据服务设计 1、数据库查询 2、模型层对象设计 3、业务层和控制层设计 二、Echarts前端配置 1、地图的展示 2、次数排名统计 三、最终结果展示 1、地图展示 2、图表展示 总结 前言 在之前的博客中基于SpringBoot和PotsGIS的各省地震震发可视化分…

C++提高笔记(四)---STL容器(stack、queue、list)

1、stack容器&#xff08;栈&#xff09; 1.1 栈stack基本概念 概念&#xff1a;stack是一种先进后出&#xff08;First In Last Out&#xff0c;FILO&#xff09;的数据结构&#xff0c;它只有一个出口 栈中只有顶端的元素才可以被外界调用&#xff0c;因此栈不允许有遍历行…

使用C#的winform控制数据库实例服务的运行状态

一、得到sqlserver的实例名 二、引用对应的程序集和命名空间 using System.ServiceProcess; C#操作服务要用的类 ServiceController 声明类 private ServiceController serviceController new ServiceController("MSSQLSERVER"); 三、判断服务状态 serviceCon…

上证指数000001行情数据API接口

# 测试&#xff1a;返回不超过10条数据&#xff08;2年历史&#xff09; https://tsanghi.com/api/fin/index/CHN/daily?tokendemo&ticker000001&order2Python示例 import requestsurl f"https://tsanghi.com/api/fin/index/CHN/daily?tokendemo&ticker000…

要将镜像推送到GitLab的Registry中的步骤

1、通过cli 模式登录gitlab &#xff08;命令行模式&#xff09; docker login git.asc-dede.de Username: haiyang Password: Login Succeeded 2、查看我的本地镜像&#xff1a; 3&#xff0c;推送镜像apollo_core到对应的gitlab项目的Registry 中 docker push registry.gi…

「Linux系列」Linux简介及常见的Linux系统

文章目录 一、Linux简介二、常见的Linux系统三、Linux 应用领域四、Linux对比Windows五、相关链接 一、Linux简介 Linux是一种自由和开放源代码的类Unix操作系统&#xff0c;它最初是作为Unix操作系统的替代品而开发的。Linux操作系统的内核由林纳斯托瓦兹在1991年首次发布&am…