白帽子学习——Metasploit渗透测试指南

这篇具有很好参考价值的文章主要介绍了白帽子学习——Metasploit渗透测试指南。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

根据pdf,总结自己认为比较重要的,欢迎大佬指错。

1.Metasploit基础

1.1专业术语

1.1.1渗透攻击(Exploit)

由攻击者或渗透测试者利用一个系统、应用或服务中心的安全漏洞进行的攻击行为。往往会造成开发者所没有预期到的一种特殊结果。

1.1.2攻击载荷(Payload)

目标系统在被渗透攻击之后去执行的代码,在Metasploit框架中可以自由地选择、传送和植入。

1.1.3Shellcode

渗透攻击时作为攻击载荷运行的一组机器指令,通常用汇编语言编写。

1.1.4模块(Module)

Metasploit框架里面包含了许多软件组件,代表的就是模块,比如渗透攻击模块、辅助模块等。

1.1.5监听器(Listener)

Metasploit框架中用来等来接入网络连接的组件,比如目标主机被渗透攻击之后,通过互联网进行连接。

1.2用户接口

Metasploit为用户提供了多种接口,包含终端、命令行、图形化界面等。

1.2.1 MSF终端

目前最流行的接口,灵活且功能丰富,后续的操作都基于此。启动命令:[msfconsole]
白帽子学习——Metasploit渗透测试指南

1.2.2MSF命令行

主要用于脚本和其他命令行工具的互操作性。在明确渗透工具和参数时,使用这个将会效率翻倍。(目前好像被废弃了emmm)

1.2.3Armitage

一个界面交互系统,不比命令那么酣畅淋漓,简单介绍下(以后补)。

#启动程序
armitage

1.3功能程序

1.3.1MSF攻击载荷生成器

简单就是把shellcode加入到各种文件中,js、html、py等等。

1.3.2 MSF编码器

简单来说就是加壳,给shellcode加点料,让别人(杀毒软件)看不懂。

1.3.3Nasm Shell

目前的理解就是把指令操作转化成汇编的工具。

2.情报收集

安全专家们都说是最重要的环节,用尽手段收集信息当然前提不能犯罪。比如渗透网站,就在网站的界面来回点,google该网站所属公司等碎片化信息,要想获取root权限,这些步骤必不可少。

2.1被动信息收集

不直接接触目标的情况下挖掘目标信息。比如接触运维人员,了解服务器的型号和系统等,也可以用whois工具在公开渠道获取情报。

2.1.1 whois查询

简单查询了下某个域名,发现这些游泳信息:①域名服务器:grs-whois.hichina.com(阿里云)②注册地址www.net.cn(阿里云)③更新时间,创建时间,创建者,注册商IANA编号④DNS服务器就是Name Server(ps:往往dns服务器部署在公司内部,解析域名和ip,所以看到很多对应关系)
白帽子学习——Metasploit渗透测试指南

2.1.2 Netcraft

这个网站是在线的直接搜索即可https://sitereport.netcraft.com/
白帽子学习——Metasploit渗透测试指南
这里查到了ipv4的地址信息,我们直接whois查询ip地址,获取了一些信息(emmm好像没啥用)。
白帽子学习——Metasploit渗透测试指南

2.1.3 NSLookup

获取服务器附加信息的工具。有比较多的命令行,这里简单介绍几个。

A:指的是用来指定主机名或域名对应的IPv4记录
AAAA:指的是用来指定主机名或域名对应的IPv6记录
MX:邮件交换记录,它指向一个邮件服务器,用于电子邮件系统
NS:用来指定该域名由那个DNS服务器来进行解析
SOA:起始授权机构记录,SOA记录说明了在众多NS记录里那一台才是主要的服务器
CNAME:别名记录,也称为规范名字。这种记录允许将多个名字映射到同一台计算机
TXT:一般指为某个主机名或域名设置的说明

白帽子学习——Metasploit渗透测试指南
白帽子学习——Metasploit渗透测试指南
白帽子学习——Metasploit渗透测试指南
Non-authoritative answer:表示未证实回答,说明是缓存读来的,不是向服务商请求获得的。

2.2主动信息收集

2.2.1 Namp端口扫描
#ping扫描,主机存活就扫描
nmap -sP <域名或ip>

#Tcp扫描,与扫描端口建立TCP连接(缺点会在目标主机留下日志溯源)
nmap -sT <域名或ip>

#半开扫描,SYN扫描需要要root(只建立第一次握手,失败就放弃一般不会被留痕)
nmap -sS <ip地址>

#路由追踪扫描,了解网络通行情况,各个节点花费的时间
nmap -traceroute <域名或ip>

#扫描网段下的ip(会根据地址搜索当前网段)
nmap ip地址/24 

#扫描一个目标列表
nmap -iL [ip地址列表文件]

#非ping扫描不执行主机发现,可以跳过防火墙(-PA:ACK方式,-PS:SYN方式,-PU:UDP方式,-PY:SCTP INIT)
nmap -Pn <域名或ip>

#脚本扫描
nmap --script=[指令] [ip]
auth:绕过鉴权扫描
broadcast:在局域网探查更多服务开启情况
brute:对常见http/smtp提供暴力破解
dos:用于拒绝服务攻击
vuln:用于检查目标主机是否有常见漏洞
version:负责增强服务与版本扫描的功能的脚本
malware:探测目标机是否感染了病毒,开启后门等信息
fuzzer:模糊测试脚本,发送异常的包到目标机,探测出潜在漏洞

#附加参数
-p:指定扫描端口
-A:全面系统检测,花费时间长
-vv:对扫描结果详细输出
-sV:探测打开对应的服务版本信息
-O:操作系统检测
-n:不进行域名解析
2.2.2 使用数据库

在实际的渗透场景中,可能需要多个主机,多个端口,所以比较好的方式就是将收集到的信息存入数据库统一管理。这里使用PostrgeSQL,因为这个是Metasploit默认的。

2.2.2.1 连接数据库
#启动数据库服务
service postgresql start

#初始化数据库
msfdb init

#启动msfconsole
msfconsole

#检测连接状态
db_status

#手动连接数据库
db_connect msf:admin@127.0.0.1/msf

#数据库配置文件
vi /usr/share/metasploit-framework/config/database.yml

白帽子学习——Metasploit渗透测试指南
白帽子学习——Metasploit渗透测试指南

连接成功
白帽子学习——Metasploit渗透测试指南

2.2.2.2 将nmap输出结果导入Metasploit
#扫描虚拟机网段(oX表示输出位xml格式,Subnet1就是文件名)
nmap -Pn -sS -A -oX Subnet1 192.168.48.0/24

白帽子学习——Metasploit渗透测试指南
白帽子学习——Metasploit渗透测试指南

#连接数据库
db_connect msf:admin@127.0.0.1/msf

#导入数据
db_import Subnet1

#显示数据库主机信息
db_hosts -C address

白帽子学习——Metasploit渗透测试指南

2.2.2.3 TCP空闲扫描

高级扫描,冒充内网中另一台电脑的ip地址对目标主机进行探测。递增ip帧标志理解成一个数值,如果局域网内的某台主机是空闲的,那么这个数值将可以预测,高级扫描就是找到这样一台主机来进行伪装扫描。

#使用scanner/ip/ipidseq框架
use auxiliary/scanner/ip/ipidseq
#参数说明
show options

白帽子学习——Metasploit渗透测试指南
该列表展示了执行扫描所需要的参数
RHOSTS被扫描的目标,可以使用ip地址段(192.168.1.110-192.168.1.212)、CIDR地址块(192.168.1.48.0/24)、使用逗号分隔的多个CIDR地址块(192.168.1.0/24,192.168.5.0/24)、以及每行包含一个IP地址的IP列表文本文件

THREAD所有扫描模块的默认线程数为1,增加参数可以提高扫描速度,一般windows平台不超过16,unix平台不超过128。

#指定cidr地址块
set RHOSTS 192.168.48.0/24
#线程数设置
set THREADS 50

白帽子学习——Metasploit渗透测试指南
白帽子学习——Metasploit渗透测试指南

这里捕获到两台空闲主机,133是我的xp,2就不知道是啥了,这里打算用空闲主机(192.168.1.2)对目标主机(192.168.1.133)进行扫描。这样我们就不需要通过自身ip发送任何数据包,就可以获取目标主机的端口信息。

nmap -PN -sI 192.168.1.2 192.168.1.133

白帽子学习——Metasploit渗透测试指南

2.2.2.4 在MSF客户端运行nmap

连接数据库后采用db_nmap,不仅可以扫描,还能把扫描到的数据存库。我这里只演示单主机,当然可以攻击多台。

db_nmap -sS -A 192.168.48.133

白帽子学习——Metasploit渗透测试指南

2.2.3 Metasploit进行端口扫描

metasploit不仅可以用第三方扫描器,还内建了一些扫描端口工具,搭配框架使用相得益彰。接下来会展示跳板攻击(内建工具和已攻陷主机,获取内网的访问通道并进行攻击)

SYN端口扫描器对单主机进行简单扫描

#搜索端口扫描模块
search portscan

#使用syn扫描
use auxiliary/scanner/portscan/syn

#设置目标ip
set rhosts 192.168.48.133

#设置线程数
set threads 50

#启动攻击
run

这个扫描有点慢,这里可以看到目前135端口是开放的。
白帽子学习——Metasploit渗透测试指南

2.3针对性扫描

如果有捷径肯定是要走的,没什么要羞愧的,所以针对性扫描是很有必要的,假如市场告诉你大部分机子都存在一个漏洞,你肯定优先扫描,比如MS08-067(著名的远程溢出漏洞,影响范文是Windows 2000/XP/Server 2003/Vista/Server 2008的各个版本,甚至还包括测试阶段的Windows 7 Pro-Beta)

2.3.1 服务器消息块协议扫描

SMB协议是微软和英特尔1987年制定的通信协议,大多运行在Windows系统上。Metasploit可以利用它的smb_version模块来遍历一个网络,并获取Windows系统的版本号。

#搜索端口扫描模块
search smb_version

#使用smb_version
use auxiliary/scanner/smb/smb_version

#设置目标ip
set rhosts 192.168.48.133

#启动
run

这里可以看到我靶机的版本xp sp3、中文、用户名等信息。
白帽子学习——Metasploit渗透测试指南

2.3.2 搜寻配置不当的Microsoft SQL Server(MS SQL)

这个数据库软件,很多系统因为装了Microsoft Visual Studio而被安装,因为SQL Server是先决条件。SQL Server一般不被使用和配置所以被忽视了,但是其存在安全隐患。
MS SQL安装后,默认监听在TCP端口1443或者使用随机的动态TCP端口。如果是随机的动态端口,只要简单的对1434(MS SQL开放的)这个udp端口进行查询,就能知道随机的tcp端口号,metasploit有一个mssql_ping模块可以帮我们完成。

#使用mssql_ping
use auxiliary/scanner/mssql/mssql_ping

#设置目标网段
set rhosts 192.168.48.0/24


#设置线程数(255提高扫描速度)
set threads 255

#启动
run

这里我没有安装,直接用书中的截图了。
白帽子学习——Metasploit渗透测试指南

2.3.3 SSH服务器扫描

识别ssh安全协议的版本,ssh很多版本中被发现存在漏洞,这是一种安全协议,这里的安全仅代表数据安全。

#使用ssh_version
use scanner/ssh/ssh_version
#设置线程数
set threads 50
#设置目标
set rhosts 192.168.48.0/24
#查看配置
show optitons
#启动扫描
run

我的虚拟机中有一台windows,一台kali,一台centos7。这里132是kali自身(连自己都不放过),128是centos7。
白帽子学习——Metasploit渗透测试指南

2.3.4 FTP扫描

FTP是一个复制且缺乏安全性的应用侧协议,其实就是个文件传输协议,在很多机房中采用光闸进行数据摆渡很多依靠的都是ftp协议。这里可以用ftp_version对xp虚拟机进行扫描。

准备:这里我没有这个服务,就只能连接iso进行安装,在添加程序里先把iis勾上,再点详细信息勾上ftp,安装完后重启。然后【控制面板-管理工具-internet信息服务】里面找到ftp

白帽子学习——Metasploit渗透测试指南

use scanner/ftp/ftp_version
set threads 50
set rhosts 192.168.48.133
run

白帽子学习——Metasploit渗透测试指南

成功识别到ftp服务器,接下来使用scanner/ftp/anonymous模块检查下是否允许匿名登陆。

use scanner/ftp/anonymous
set threads 50
set rhosts 192.168.48.133
run

结果可以看到允许匿名登陆,但是只有读的权限,没有写入权限。
白帽子学习——Metasploit渗透测试指南

2.3.5 简单网管协议扫描扫描

SNMP称为简单网管协议,设计之初是用来报告带宽利用率、冲突率以及其他一些信息。然而一些操作系统中也包含SNMP服务器软件,主要用来提供类似cpu利用率、空闲内存及其他系统信息。

书中介绍可访问的snmp服务器可以造成路由器的配置被下载,RO/RW的团体字符串将对设备信息的提取发挥重要作用。

我这里先部署一个snmp服务,跟ftp一样找到简单网管协议的服务,然后装完开启。

use scanner/snmp/snmp_enum
set rhosts 192.168.48.133
set threads 50
run

扫描完之后获取了非常庞大的信息,主机名、描述、端口开放情况、服务情况等。

白帽子学习——Metasploit渗透测试指南

3.漏洞扫描

这一章节主要就是介绍市面上常见的一些漏洞扫描工具,书比较旧了工具应该还不算旧。这里我以工具会单位介绍使用。

3.1NeXPose

这个工具通过对网络进行扫描,然后找到正在运行的设备,最终识别操作系统和应用程序上的安全漏洞,生成各种类型的报告。

3.1.1安装

可以直接在windows上安装,建议去官网下载,因为最后还是要用到官网的授权密钥。我这里蛮提供个下载链接 下载传送门
白帽子学习——Metasploit渗透测试指南
白帽子学习——Metasploit渗透测试指南
然后双击打开输入之前发到邮箱的密钥即可使用
白帽子学习——Metasploit渗透测试指南
注意事项:
1.安装的时候要注意,记得输入的账号和密码,后续登陆软件要用。
2.需要有个企业邮箱,要不然官网密钥没地方发,去zoho注册一个就好
3.去官网登陆网站注册一步步往下

3.1.2使用


先设置个中文,右上角点击账户选择用户偏好
白帽子学习——Metasploit渗透测试指南
白帽子学习——Metasploit渗透测试指南

创建扫描站点
白帽子学习——Metasploit渗透测试指南


这里输入要扫描的设备段或者单台ip,右侧的排除主要用于对网段扫描时,可能造成服务的正常运行(比如打印机,可能会自己抽风),就把这些设备排除在外
白帽子学习——Metasploit渗透测试指南

认证就是指你被授权扫描时,可以通过对方提供的部分服务的账户和密码在此处进行输入。
白帽子学习——Metasploit渗透测试指南

模版一般用默认的就好
白帽子学习——Metasploit渗透测试指南


最后右上角直接保存扫描,然后就开始扫描了
白帽子学习——Metasploit渗透测试指南

扫描还是要耐心等待的,扫描完成点击资产就可以看到扫描结果
白帽子学习——Metasploit渗透测试指南

资产评分,我这里是自己xp sp3 的靶机
白帽子学习——Metasploit渗透测试指南
这是扫描出来的漏洞,有Metasploit 标记的就说明可以被msf利用,点开有链接点进去甚至教你怎么用攻击载荷,因为这两个软件是同一款公司研发的所以十分友好。
白帽子学习——Metasploit渗透测试指南
这里算是对漏洞的描述。
白帽子学习——Metasploit渗透测试指南

3.1.2.1生成报告

白帽子学习——Metasploit渗透测试指南
还挺有模有样的
白帽子学习——Metasploit渗透测试指南

3.1.2.1导入

导入xml数据异常,以后再填坑。

3.1.3总结

这软件扫描动静非常大,开启了目标就会警觉所以适合授权扫描,感觉适合做等保。

3.2Nessus

说是当前世界上使用最广泛的扫描漏洞工具,安装很简单就是直接下载无脑下一步就好了(我挂了科学上网,好像被墙了) ,这个软件跟nexpose一样要激活码,提前自取哈。
下载传送门
激活码获取选最右边的会发到邮箱

3.2.1安装

白帽子学习——Metasploit渗透测试指南
白帽子学习——Metasploit渗透测试指南
又踩坑了,没有科学上网插件会一直编译非常慢,记得科学上网开起来。

3.2.2使用

之后就是输入激活码开始部署了,如果之前没有申请,在下一个界面也可以申请,申请了就直接跳过。
白帽子学习——Metasploit渗透测试指南
自己选一个要扫描的模块,这是针对性扫描,有的扫描需要输入目标主机的凭证,跟nexpose类似。
白帽子学习——Metasploit渗透测试指南

3.2.3总结

这软件相比于nexpose感觉差不多,可能就是专业一点受众大一点,做安服的或许会用到这里就不深入研究了。

3.3专用漏洞扫描器

本书的这个章节后续的还是介绍漏洞扫描工具

3.3.1验证SMB登陆

这就是个文件共享,比如windows系统是可以局域网共享文件的,还有nas系统群辉也有很多共享服务,我们可以针对进行扫描。

use auxiliary/scanner/smb/smb_login
set RHOSTS 192.168.48.133
set SMBUSER Administrator
set SMBPASS s3cr3t
run

白帽子学习——Metasploit渗透测试指南

这里直接引用书中的案例,懒得搭建环境,说是很多公司的系统都是镜像克隆安装的,所以拿到一个账号密码每个电脑都能smb访问了。

3.3.2VNC空口令

这是一个基于linux和unix的远程开源控制软件

use auxiliary/scanner/vnc/vnc_none_auth
set RHOSTS 192.168.48.128

4.子标题

正文文章来源地址https://www.toymoban.com/news/detail-400686.html

在这里插入代码片

番外

#更新软件列表
apt-get update

#更新软件
apt-get upgrade 

#更新内核
apt-get dist-upgrade

到了这里,关于白帽子学习——Metasploit渗透测试指南的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Kali Linux渗透测试小实践——Metasploit与后门木马

    目录 一、环境和工具准备 1.Metasploit 2.Kali Linux与靶机 二、实践过程 1.打开Kali Linux,进入终端 2.输入生成木马的命令,并配置相关参数 Metasploit是一款开源的安全漏洞检测工具,可以帮助安全和IT专业人士识别安全性问题,验证漏洞的缓解措施,并管理专家驱动的安全性进行评

    2024年02月13日
    浏览(42)
  • [课业] | 软件安全 | 使用渗透性工具Metasploit进行漏洞测试

    1.1 渗透测试技术的核心思想 渗透测试(Penetration Test)技术的核心思想是模仿黑客的特定攻击行为,也就是尽可能完整地模拟黑客使用的漏洞发现技术和攻击手段,对目标的安全性做深入的探测,发现系统最脆弱环节的过程。 渗透测试可以选择使用自动化测试工具,测试人员的

    2024年02月04日
    浏览(59)
  • 进入黑客的世界:Kali Linux 中的 Metasploit 渗透测试利器

    数据来源   本文仅用于信息安全学习,请遵守相关法律法规,严禁用于非法途径。若观众因此作出任何危害网络安全的行为,后果自负,与本人无关。  得到ip地址我们能干嘛?         首先进行端口扫描 为什么要进行端口扫描?         端口扫描的作用就是发现目

    2024年02月06日
    浏览(49)
  • 【2023最新版】超详细Metasploit安装保姆级教程,Metasploit渗透测试使用,看完这一篇就够了

    Metasploit 官方介绍 Metasploit是一个渗透测试框架,可以帮助您发现和利用漏洞。 Metasploit还为您提供了一个开发平台,您可以编写自己的安全工具或利用代码。 今天,我将指导您了解如何使用Metasploit的基础知识:如何安装Metasploit,使用框架以及利用漏洞。 下载地址:https://

    2024年02月13日
    浏览(70)
  • metasploit(MSF)渗透超细解说 -- 小黑渗透工具

    metasploit Framework(msf)里带数千个已知的软件漏洞,并保持持续更新,Metasploit可以用来信息收集、漏洞探测、漏洞利用等渗透测试的全流程,采用Ruby语言编写。黑掉整个宇宙的称号!!! 初心:    记录msfconsole的渗透测试流程,以及每个流程点常用到的一些命令,其中还有

    2024年01月20日
    浏览(43)
  • Kali最强渗透工具-metasploit

    msf是一款开源安全漏洞利用和测试工具,集成了各种平台上常见的溢出漏洞和流行的shellcode,并持续保持更新。 metasploit让复杂的漏洞攻击流程变的非常简单,一个电脑小白经过几小时的学习,就能对操作系统等主流漏洞发起危害性攻击 metasploit 攻击 windows 操作系统 msfconsol

    2024年02月15日
    浏览(45)
  • Kali最强渗透工具- metasploit

    数据来源   本文仅用于信息安全学习,请遵守相关法律法规,严禁用于非法途径。若观众因此作出任何危害网络安全的行为,后果自负,与本人无关。  得到ip地址我们能干嘛?         首先进行端口扫描 为什么要进行端口扫描?         端口扫描的作用就是发现目

    2023年04月16日
    浏览(44)
  • Metasploit——渗透攻击模块(Exploit)

    Metasploit常用命令、技术功能模块   Metasploit——辅助模块(Auxiliary)  目录 1.Exploit模块 2.生成Payload  3.Meterpreter常用命令 4.弱点扫描 Active exploits主动:攻击者主动向目标发起漏洞利用代码,触发漏洞             目标开放一个端口(服务),允许外界计算机连接这个端口(访问

    2024年02月11日
    浏览(48)
  • 【kali-漏洞利用】(3.4)Metasploit渗透攻击应用:MySQL渗透过程

    目录 一、渗透攻击MySQL 1.1、第一步:信息收集 db_nmap扫描(内置、外置都可) Metasploit模块 sqlmap 1.2、第二步:获取服务器权限(爆破) MySQL 口令爆破 哈希值爆破 泄露的源码中寻找数据库密码 向服务器写WebShell 1.3、第三步:提权 UDF提权(UDF提权) Mof提权 MySQL启动项提权 1

    2024年02月08日
    浏览(44)
  • 内网渗透 Metasploit(MSF)基础使用

    ​ Metasploit 是一款开源的安全漏洞检测工具,可以帮助安全和IT专业人士识别安全性问题,验证漏洞的缓解措施,并管理专家驱动的安全性进行评估,提供真正的安全风险情报。这些功能包括智能开发,代码审计,Web应用程序扫描,社会工程。团队合作,在 Metasploit 和综合报

    2024年01月16日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包