【THM】Metasploit: Exploitation(利用)-初级渗透测试

介绍

在这个房间里,我们将学习如何使用Metasploit进行漏洞扫描和利用。我们还将介绍数据库功能如何使管理更广泛范围的渗透测试活动变得更容易。最后,我们将研究使用msfvenom生成有效负载以及如何在大多数目标平台上启动Meterpreter会话。

更具体地说,我们将讨论的主题是:

  • 如何使用Metasploit扫描目标系统。
  • 如何使用Metasploit数据库功能。
  • 如何使用Metasploit进行漏洞扫描。
  • 如何使用Metasploit来利用目标系统上的易受攻击的服务。
  • 如何msfvenom 用于创建有效负载并在目标系统上获取Meterpreter会话。

请注意,对于所有需要使用单词列表的问题(例如暴力攻击),我们将使用位于 以下路径的 AttackBox 上的单词列表:

/usr/share/wordlists/MetasploitRoom/MetasploitWordlist.txt 

如果您选择使用自己的机器,请单击右侧的“下载任务文件”按钮下载单词表。

启动 AttackBox 并使用该房间中的命令运行Metasploit 。msfconsole

扫描

端口扫描

Metasploit有许多模块来扫描目标系统和网络上的开放端口。您可以使用该命令列出可用的潜在端口扫描模块search portscan 。

搜索端口扫描

msf6 > search portscan

Matching Modules

================

   #  Name                                              Disclosure Date  Rank    Check  Description

   -  ----                                              ---------------  ----    -----  -----------

   0  auxiliary/scanner/http/wordpress_pingback_access                   normal  No     Wordpress Pingback Locator

   1  auxiliary/scanner/natpmp/natpmp_portscan                           normal  No     NAT-PMP External Port Scanner

   2  auxiliary/scanner/portscan/ack                                     normal  No     TCP ACK Firewall Scanner

   3  auxiliary/scanner/portscan/ftpbounce                               normal  No     FTP Bounce Port Scanner

   4  auxiliary/scanner/portscan/syn                                     normal  No     TCP SYN Port Scanner

   5  auxiliary/scanner/portscan/tcp                                     normal  No     TCP Port Scanner

   6  auxiliary/scanner/portscan/xmas                                    normal  No     TCP "XMas" Port Scanner

   7  auxiliary/scanner/sap/sap_router_portscanner                       normal  No     SAPRouter Port Scanner

Interact with a module by name or index, for example use 7 or use auxiliary/scanner/sap/sap_router_portscanner

msf6 >

 端口扫描模块将要求您设置一些选项:        

端口扫描选项

msf6 auxiliary(scanner/portscan/tcp) > show options

Module options (auxiliary/scanner/portscan/tcp):

   Name         Current Setting  Required  Description

   ----         ---------------  --------  -----------

   CONCURRENCY  10               yes       The number of concurrent ports to check per host

   DELAY        0                yes       The delay between connections, per thread, in milliseconds

   JITTER       0                yes       The delay jitter factor (maximum value by which to +/- DELAY) in milliseconds.

   PORTS        1-10000          yes       Ports to scan (e.g. 22-25,80,110-900)

   RHOSTS                        yes       The target host(s), range CIDR identifier, or hosts file with syntax 'file:'

   THREADS      1                yes       The number of concurrent threads (max one per host)

   TIMEOUT      1000             yes       The socket connect timeout in milliseconds

msf6 auxiliary(scanner/portscan/tcp) >

  • CONCURRENCY:同时扫描的目标数量。
  • PORTS:要扫描的端口范围。请注意,此处的 1-1000与使用默认配置的Nmap不同。 Nmap将扫描最常用的 1000 个端口,而Metasploit将扫描从 1 到 10000 的端口号。
  • RHOTS:要扫描的目标或目标网络。
  • THREADS:将同时使用的线程数。更多线程将导致更快的扫描。

您可以直接从 msfconsole 提示符执行Nmap扫描,如下所示,速度更快:

使用地图从 Msfconsole 提示符

msf6 > nmap -sS 10.10.12.229

[*] exec: nmap -sS 10.10.12.229

Starting Nmap 7.60 ( https://nmap.org ) at 2021-08-20 03:54 BST

Nmap scan report for ip-10-10-12-229.eu-west-1.compute.internal (10.10.12.229)

Host is up (0.0011s latency).

Not shown: 992 closed ports

PORT      STATE SERVICE

135/tcp   open  msrpc

139/tcp   open  netbios-ssn

445/tcp   open  microsoft-ds

3389/tcp  open  ms-wbt-server

49152/tcp open  unknown

49153/tcp open  unknown

49154/tcp open  unknown

49158/tcp open  unknown

MAC Address: 02:CE:59:27:C8:E3 (Unknown)

Nmap done: 1 IP address (1 host up) scanned in 64.19 seconds

msf6 >

至于信息收集,如果您的参与需要更快的端口扫描方法,Metasploit可能不是您的首选。然而,许多模块使Metasploit成为扫描阶段的有用工具。

UDP服务识别

scanner/discovery/udp_sweep 模块将允许您快速识别通过UDP(用户数据报协议)运行的服务。如下所示,该模块不会对所有可能的UDP服务进行广泛扫描,但确实提供了一种快速方法来识别DNS​​ 或 NetBIOS等服务。

UDP扫描

msf6 auxiliary(scanner/discovery/udp_sweep) > run

[*] Sending 13 probes to 10.10.12.229->10.10.12.229 (1 hosts)

[*] Discovered NetBIOS on 10.10.12.229:137 (JON-PC::U :WORKGROUP::G :JON-PC::U :WORKGROUP::G :WORKGROUP::U :__MSBROWSE__::G :02:ce:59:27:c8:e3)

[*] Scanned 1 of 1 hosts (100% complete)

[*] Auxiliary module execution completed

msf6 auxiliary(scanner/discovery/udp_sweep) >

SMB扫描

Metasploit 提供了几个有用的辅助模块,使我们能够扫描特定的服务。以下是SMB的示例。在企业网络中尤其有用 smb_enumshares ,smb_version 但请花一些时间来识别系统上安装的Metasploit版本提供的扫描仪。

中小企业扫描

msf6 auxiliary(scanner/smb/smb_version) > run

[+] 10.10.12.229:445      - Host is running Windows 7 Professional SP1 (build:7601) (name:JON-PC) (workgroup:WORKGROUP ) (signatures:optional)

[*] 10.10.12.229:445      - Scanned 1 of 1 hosts (100% complete)

[*] Auxiliary module execution completed

msf6 auxiliary(scanner/smb/smb_version) >

执行服务扫描时,重要的是不要忽略更多“奇异”服务,例如 NetBIOS。 NetBIOS(网络基本输入输出系统)与SMB类似,允许计算机通过网络进行通信以共享文件或将文件发送到打印机。目标系统的 NetBIOS 名称可以让您了解其角色甚至重要性(例如 CORP- DC、DEVOPS、SALES 等)。您还可能会遇到一些无需密码即可访问或受简单密码保护的共享文件和文件夹(例如 admin、administrator、root、toor 等)。

请记住,Metasploit有许多模块可以帮助您更好地了解目标系统,并可能帮助您发现漏洞。执行快速搜索总是值得的,看看是否有任何模块可以根据您的目标系统提供帮助。

2.1目标系统上打开了多少个端口?5

提示:您可以在 Metasploit 上使用 portscanner 模块。,nmap运行结果

用portscan模块

search portscan

use 5(use auxiliary/scanner/portscan/tcp)

show options

set rhosts 10.10.116.149

set THREADS 4

show options

run

 

2.2使用相关扫描仪,您可以看到什么 NetBIOS 名称?ACME IT SUPPORT

use auxiliary/scanner/discovery/udp_sweep

set rhosts 10.10.116.149

run

因为前面提到scanner/discovery/udp_sweep 模块能扫描部分UDP服务,还提供快速方法来识别DNS​​ 或 NetBIOS等服务。

方法2提示:使用 netbios/nbname 模块

search netbios/nbname

use 0

show options

set RHOSTS 10.10.43.5

run

2.2 8000端口上正在运行什么?提示:使用 http_version 模块。答案:webfs/1.21

search http_version

use 0

show options

set rhosts 10.10.152.168

set rport 8000

show options

run

或者用nmap

nmap -sC -sV -p8000 10.10.43.5

 

2.4“penny”用户的 SMB 密码是什么?使用上一个任务中提到的单词表。 提示:使用 smb_login 模块。

search smb_login
use 0
show options
set PASS_FILE /usr/share/wordlists/MetasploitWordlist.txt  #此处文件路径 对应的是TryHackMe提供的攻击机中的字典文件路径
set SMBUser penny
set RHOSTS 10.10.43.5
run

Metasploit 数据库

虽然在 TryHackMe 上与单个目标交互时不需要这样做,但实际的渗透测试活动可能会有多个目标。 

Metasploit具有数据库功能,可以简化项目管理并避免设置参数值时可能出现的混乱。 

您首先需要启动 PostgreSQL 数据库,Metasploit将通过以下命令使用该数据库: 

systemctl start postgresql

然后您需要使用该命令初始化Metasploitmsfdb init数据库。

启动 Postgresql

root@attackbox:~# systemctl start postgresql

root@attackbox:~# msfdb init

[i] Database already started

[+] Creating database user 'msf'

[+] Creating databases 'msf'

[+] Creating databases 'msf_test'

[+] Creating configuration file '/usr/share/metasploit-framework/config/database.yml'

[+] Creating initial database schema

/usr/share/metasploit-framework/vendor/bundle/ruby/2.7.0/gems/activerecord-4.2.11.3/lib/active_record/connection_adapters/abstract_adapter.rb:84: warning: deprecated Object#=~ is called on Integer; it always returns nil

root@attackbox:~#

您现在可以 msfconsole使用该命令启动并检查数据库状态db_status

检查数据库状态

msf6 > db_status

[*] Connected to msf. Connection type: postgresql.

msf6 >

数据库功能将允许您创建工作区来隔离不同的项目。首次启动时,您应该位于默认工作区中。您可以使用该命令列出可用的工作区workspace 。 

列出工作空间

msf6 > workspace

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何实现OpenHarmony的OTA升级?

OTA简介 随着设备系统日新月异,用户如何及时获取系统的更新,体验新版本带来的新的体验,以及提升系统的稳定性和安全性成为了每个厂商都面临的严峻问题。OTA(Over the Air)提供对设备远程升级的能力。升级子系统对用户…

字母大小写转换(C语言)

一、运行结果&#xff1b; 二、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>int main() {//初始化变量值&#xff1b;char c1 A;char c2 0;//实现大小写转换&#xff1b;c2 c1 32;//输出结果&#xff1b;printf("c2的编码是&…

Springboot实现OCR(文字识别),最新教程!linux版

前言 不用引入什么dll&#xff0c;以及各种乱七八糟的东西。不废话&#xff0c;直接开始教程&#xff01;没有过多讲解里面的知识点&#xff0c;如有需要详细了解请加Qq:1101165230 1、Linux下安装与使用 1.1 安装tesseract&#xff08;复制粘贴敲回车&#xff0c;中间输入Y&…

SOLIDWORKS图像品质设置对文件大小和系统性能的影响

SOLIDWORKS图像品质设置对文件大小和系统性能的影响非常大。不同的模型外形对整体性能是否也会有影响呢&#xff1f;因此我们会使用4种基本形状&#xff1a;立方体、圆柱体、球体和圆环来进行一系列的测试。 这个测试内容&#xff0c;就是通过调整“图像品质”选项设置中的不同…

iOS:如何安全且优雅地操控数组元素

前言 在 iOS 开发的世界里&#xff0c;数组(Array)的操作频率高得令人咋舌。数组贯穿于我们每一个功能的实现和每一行代码的编写之中&#xff0c;一手托起了数据结构的半边天。但这位工具之王&#xff0c;有时候也会变身为导致程序崩溃的罪魁祸首。当访问越界&#xff0c;当插…

Mysql主键优化之页分裂与页合并

主键设计原则 满足业务需求的情况下&#xff0c;尽量降低主键的长度。因为如果主键太长&#xff0c;在多个二级索引中&#xff0c;主键索引值所占用的空间就会过大。 插入数据时&#xff0c;尽量选择顺序插入&#xff0c;选择使用AUTO_INCREMENT自增主键。因为乱序插入会导致页…

STM32 F401/411外设内部互联矩阵摘要

STM32 F401/411外设内部互联矩阵摘要 &#x1f4cd;参考文档AN4646&#xff1a;https://www.stmcu.com.cn/Designresource/detail/localization_document/709908(中译) -&#x1f4cc; 相关工程案例《HAL STM32主从定时器联级使用》、《STM32G4 TIM1触发ADC转换》 &#x1f4d…

Qt+VS2019中使用QAxObject时的环境配置

在纯Qt中 在.pro中添加axcontainer模块即可 而VSqt中&#xff1a; 特别傻的是&#xff1a;我运行的是release&#xff0c;但配置的是debug的属性页&#xff0c;一直报错&#xff0c;人都傻了。 最后发现果然是人傻。

金蝶BI方案的报表,主打做得快、易理解

金蝶做数据分析报表慢、步骤多、数据不够直观&#xff1f;但奥威-金蝶BI方案的报表就不一样了&#xff0c;不仅做得快&#xff0c;还十分好理解&#xff0c;因为它做出来的是随时可以按需自助的BI智能数据可视化分析报表。 有多快&#xff1f; 注册奥威BI SaaS平台&#xff0…

python数据可视化(总结版)

1 基本图形 1.1 折线图 x np.arange(4,19) y_max np.array([32,33,34,34,33,31,30,29,30,29,26,23,21,25,31]) y_min np.array([19,19,20,22,22,21,22,16,18,18,17,14,15,16,16]) plt.title("20200806903013") plt.plot(x,y_max) plt.plot(x,y_min) plt.show()1…

14届蓝桥杯省赛 C/C++ B组 T4 飞机降落 (DFS)

记录此题提醒自己&#xff0c;此类时间轴问题可以通过DFS解决 DFS不是能解决所有题吗 对于此题&#xff0c;我们将降落的飞机的个数和时间轴作为DFS的形参&#xff0c;这样可以节省手动回溯的过程。 并且在DFS的过程中我们要加入一些贪心策略&#xff0c;否则直接爆搜有可能搜…

linux通配符

通配符&#xff0c;它是一种用于匹配文件名的特殊字符。通配符在Linux中可以帮助我们更加方便和快捷地查找和操作文件。

解决VM报错:不支持虚拟化的 amd-v/rvi

安装了VMware之后&#xff0c;想测试一下虚拟机嵌套。在勾选虚拟机CPU的虚拟化AMD-V/RVI之后&#xff0c;竟然无法启动&#xff0c;提示“此平台不支持虚拟化的 amd-v/rvi”。 上网找了一下资料&#xff0c;发现是因为Hyper-V与VMware冲突以及Windows Defender的内核隔离导致的…

rsync+inotify组合实现及时远程同步

目录 Rsync&#xff08;Remote Sync&#xff09;简介&#xff1a; Rsync 主要特点&#xff1a; Rsync 常用命令选项&#xff1a; Inotify 简介&#xff1a; Inotify 的主要功能&#xff1a; 结合 Rsync 和 Inotify 实现实时同步&#xff1a; 操作步骤&#xff1a; 配置…

算法刷题Day24 | 回溯算法基础理论、 77. 组合

目录 0 引言1 回溯算法基础理论1.1 回溯算法模板1.2 2 组合2.1 我的解题2.2 剪枝操作 &#x1f64b;‍♂️ 作者&#xff1a;海码007&#x1f4dc; 专栏&#xff1a;算法专栏&#x1f4a5; 标题&#xff1a;算法刷题Day23 | 回溯算法基础理论、 77. 组合❣️ 寄语&#xff1a;书…

HarmonyOS实战开发-使用OpenGL实现2D图形绘制和动画。

介绍 基于XComponent组件调用Native API来创建EGL/GLES环境&#xff0c;从而使用标准OpenGL ES进行图形渲染。本项目实现了两个示例&#xff1a; 使用OpenGL实现2D的图形绘制和动画&#xff1b;使用OpenGL实现了在主页面绘制两个立方体&#xff0c;光源可以在当前场景中移动&…

智能电网将科技拓展至工厂之外的领域

【摘要/前言】 物联网已然颠覆我们日常生活的许多层面。在家居方面&#xff0c;家电变成连网设备&#xff0c;不仅让我们能控制灯光与上网购物&#xff0c;甚至在出门时提供安全功能。在工业领域&#xff0c;智能工厂改变产品制造的方式。工业物联网(IIoT)不仅让制造商更加敏捷…

启明智显M4核心板驱动17寸屏 为您打造无与伦比的视觉盛宴

近日&#xff0c;启明智显推出M4核心板驱动17寸屏&#xff0c;8 Link LVDS接口下1280*1024分辨率为用户展现了超强的视觉体验。 M4核心板采用纯国产架构&#xff0c;内置了16位DDR内存&#xff0c;为设备提供强大的数据处理能力和高效的运行速度。无论是处理复杂的任务还是进…

关于create table as

create table as这个语句的不熟悉&#xff0c;这个语句建表导致的表主键、索引、auto_increment的丢失。 该语句对"列结构"是可以正常复制的&#xff0c;只有索引、主键等信息会丢失&#xff0c;原以为"AUTO_INCREMENT"是属于id这一列的列信息&#xff0c;…

JSON字符串中获取一个特定字段的值

JSON字符串中获取一个特定字段的值 一、方式一&#xff0c;引用gson工具二、方式二&#xff0c;使用jackson三、方式三&#xff0c;使用jackson转换Object四、方式四&#xff0c;使用hutool&#xff0c;获取报文数组数据 一、方式一&#xff0c;引用gson工具 测试报文&#xf…