目录
- 任务 1 — Metasploit 简介
- 任务 2 — Metasploit 的主要组件
- 任务 3 — Msfconsole
- 任务 4 — 使用模块
任务 1:Metasploit 简介:
Metasploit 是主要的漏洞利用框架,在网络安全领域发挥着巨大的影响力。作为一个强大的工具,它可以无缝地完成渗透测试的所有阶段,从初始信息收集到开发后作。
Metasploit 生态系统包括两个主要版本。Metasploit Pro 是商业版本,通过其用户友好的图形界面简化了任务自动化和管理。相比之下,开源 Metasploit 框架从命令行运行,并广泛用于 AttackBox 和流行的渗透测试 Linux 发行版。
Metasploit 框架是一套全面的工具,包括信息收集、扫描、利用、利用开发和利用后技术等功能。虽然它的主要应用在于渗透测试,但它也被证明对漏洞研究和漏洞利用开发很有价值。
Metasploit 框架的关键组件包括用作主要命令行界面的 msfconsole、支持漏洞利用、扫描程序和有效负载的模块,以及 msfvenom、pattern_create 和 pattern_offset 等独立工具。此探索深入研究了 msfvenom,为有效导航和使用 Metasploit 的命令行提供了基础。在本模块结束时,用户将具备熟练发现漏洞、配置参数和利用目标系统内漏洞的技能。
回答以下问题
任务 2:Metasploit 的主要组件:
使用 msfconsole 命令从 终端启动它。控制台将是与 Metasploit 框架的不同模块进行交互的主界面。模块是 Metasploit 框架中的小组件,用于执行特定任务,例如利用漏洞、扫描目标或执行暴力攻击。
Auxiliary
任何支持模块,例如扫描程序、爬网程序和模糊测试程序,都可以在此处找到。 - root@ip-10-10-135-188:/opt/metasploit-framework/embedded/framework/modules# tree -L 1 auxiliary/
- auxiliary/
- ├── admin
- ├── analyze
- ├── bnat
- ├── client
- ├── cloud
- ├── crawler
- ├── docx
- ├── dos
- ├── example.py
- ├── example.rb
- ├── fileformat
- ├── fuzzers
- ├── gather
- ├── parser
- ├── pdf
- ├── scanner
- ├── server
- ├── sniffer
- ├── spoof
- ├── sqli
- ├── voip
- └── vsploit
- 20 directories, 2 files
复制代码
Encoders
编码器将允许您对漏洞利用和有效负载进行编码,希望基于签名的防病毒解决方案可能会错过它们。
基于签名的防病毒和安全解决方案具有已知威胁数据库。它们通过将可疑文件与此数据库进行比较来检测威胁,并在匹配时发出警报。因此,编码器的成功率可能有限,因为防病毒解决方案可以执行额外的检查。 - root@ip-10-10-135-188:/opt/metasploit-framework/embedded/framework/modules# tree -L 1 encoders/
- encoders/
- ├── cmd
- ├── generic
- ├── mipsbe
- ├── mipsle
- ├── php
- ├── ppc
- ├── ruby
- ├── sparc
- ├── x64
- └── x86
复制代码
Evasion
虽然编码器将对有效负载进行编码,但不应将其视为逃避防病毒软件的直接尝试。另一方面,“闪避”模块会尝试这一点,或多或少会成功。 - root@ip-10-10-135-188:/opt/metasploit-framework/embedded/framework/modules# tree -L 2 evasion/
- evasion/
- └── windows
- ├── applocker_evasion_install_util.rb
- ├── applocker_evasion_msbuild.rb
- ├── applocker_evasion_presentationhost.rb
- ├── applocker_evasion_regasm_regsvcs.rb
- ├── applocker_evasion_workflow_compiler.rb
- ├── process_herpaderping.rb
- ├── syscall_inject.rb
- ├── windows_defender_exe.rb
- └── windows_defender_js_hta.rb
复制代码
Exploits
漏洞利用,按目标系统整齐地组织。 - root@ip-10-10-135-188:/opt/metasploit-framework/embedded/framework/modules# tree -L 1 exploits/
- exploits/
- ├── aix
- ├── android
- ├── apple_ios
- ├── bsd
- ├── bsdi
- ├── dialup
- ├── example_linux_priv_esc.rb
- ├── example.py
- ├── example.rb
- ├── example_webapp.rb
- ├── firefox
- ├── freebsd
- ├── hpux
- ├── irix
- ├── linux
- ├── mainframe
- ├── multi
- ├── netware
- ├── openbsd
- ├── osx
- ├── qnx
- ├── solaris
- ├── unix
- └── windows
- 20 directories, 4 files
复制代码
NOP
NOPs (No OPeration) 从字面上看什么也不做。它们在 Intel x86 CPU 系列中表示,具有 0x90,之后 CPU 在一个周期内将不执行任何作。它们通常用作缓冲区,以实现一致的有效载荷大小。 - root@ip-10-10-135-188:/opt/metasploit-framework/embedded/framework/modules# tree -L 1 nops/
- nops/
- ├── aarch64
- ├── armle
- ├── cmd
- ├── mipsbe
- ├── php
- ├── ppc
- ├── sparc
- ├── tty
- ├── x64
- └── x86
复制代码
Payloads
有效负载是将在目标系统上运行的代码。
漏洞利用将利用目标系统上的漏洞,但要实现预期的结果,我们需要有效负载。例子可以是;获取 shell、将恶意软件或后门程序加载到目标系统、运行命令或启动 calc.exe 作为概念验证以添加到渗透测试报告中。通过启动 calc.exe 应用程序在目标系统上远程启动计算器是一种良性的方式,可以表明我们可以在目标系统上运行命令。
在目标系统上运行命令已经是一个重要的步骤,但拥有一个交互式连接,允许您键入将在目标系统上执行的命令,效果更好。这种交互式命令行称为 “shell”。Metasploit 提供了发送不同有效负载的能力,这些有效负载可以在目标系统上打开 shell。
回答以下问题
利用目标系统上的缺陷的代码名称是什么?
在目标系统上运行的用于实现攻击者目标的代码名称是什么?
什么是自包含负载?
Is "“windows/x64/pingback_reverse_tcp” 是单个有效负载还是暂存有效负载?
任务 3:Msfconsole
回答以下问题
您将如何搜索与 Apache 相关的模块?
谁提供了 auxiliary/scanner/ssh/ssh_login 模块?
任务 4 :使用模块
回答以下问题
如何将 LPORT 值设置为 6666?
如何将 RHOSTS 的全局值设置为 10.10.19.23 ?
您将使用什么命令来清除设置的有效负载?
您使用什么命令来继续开发阶段? |