零.简介
Metasploit(MSF)是一个免费的、可下载的框架,它本身附带数百个已知软件漏洞,是一款专业级漏洞攻击工具。当H.D. Moore在2003年发布Metasploit时,计算机安全状况也被永久性地改变了,仿佛一夜之间,任何人都可以成为黑客。
因为只要掌握MSF的使用方法,每个人都可以使用MSF来攻击那些未打过补丁或者刚刚打过补丁的漏洞。
也因此软件厂商再也不能推迟发布针对已公布漏洞的补丁了,因为Metasploit团队一直都在努力开发各种攻击工具,并将它们贡献给所有Metasploit用户。
一 . MSF安装介绍
MSF官网:Metasploit | Penetration Testing Software, Pen Testing Security | Metasploit
MSF有两个版本,Metaploit是开源免费的,Metaploit pro的商业收费的。
MSF下载地址:Nightly Installers · rapid7/metasploit-framework Wiki · GitHub
msf的两种安装方式
1、一键式安装
在Linux / macOS上安装Metasploit,这里有官方提供的脚本,可以一键式安装
curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall && \chmod 755 msfinstall && \./msfinstall
2、手动安装
Debian / Ubuntu软件包位于Directory Tree,而CentOS / Redhat / Fedora软件包位于Directory Tree
2.1 ubuntu安装
从Directory Tree下载MSF 的deb安装包。
在终端运行:dpkg -i metasploit-framework_6.0.7+20200916102431_1rapid7-1_amd64.deb
2.2 Centos安装
从https://rpm.metasploit.com下载 rpm安装包
二、安装postgresql数据库
msf使用的是postgresql数据库,如果没有的话需要先安装
安装数据库的时候会自动创建系统用户postgres,数据库用户postgres,数据库postgres ,安装步骤如下:
1、apt-get install postgresql //安装postgresql数据库
2、su - postgres //切换到postgres用户
3、psql //登陆postgresql数据库,首次登陆没有密码
4、\password postgres //修改数据库用户postgres的密码
5、更新数据库:sudo msfupdate
三、msf模块介绍
1、Auxiliary
(辅助模块)
为渗透测试信息搜集提供了大量的辅助模块支持。
2、Exploits
(攻击模块)
利用发现的安全漏洞或配置弱点对远程目标系统 进行攻击,从而获得对远程目标系统访问权的代码组件。
3、Payload
(攻击载荷模块)
攻击成功后促使靶机运行的一段植入代码。
4、Post
(后渗透攻击模块)
收集更多信息或进一步访问被利用的目标系统。
5、Encoders
(编码模块)
将攻击载荷进行编码,来绕过防护软件拦截。
四、msf使用介绍
4.1 调用nmap扫描 ip:30.50.36.0
和nmap直接扫描结果一样。
msf6 > nmap -v -sV 30.50.36.0
[*] exec: nmap -v -sV 30.50.36.0
Starting Nmap 7.92 ( https://nmap.org ) at 2022-09-01 09:57 CST
Happy 25th Birthday to Nmap, may it live to be 125!
NSE: Loaded 45 scripts for scanning.
Initiating Ping Scan at 09:57
Scanning 30.50.36.0 [2 ports]
Completed Ping Scan at 09:57, 0.00s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 09:57
Completed Parallel DNS resolution of 1 host. at 09:57, 0.01s elapsed
Initiating Connect Scan at 09:57
Scanning 30.50.36.0 [1000 ports]
Discovered open port 22/tcp on 30.50.36.0
Discovered open port 5900/tcp on 30.50.36.0
Discovered open port 3306/tcp on 30.50.36.0
Discovered open port 5000/tcp on 30.50.36.0
Discovered open port 7000/tcp on 30.50.36.0
Discovered open port 8081/tcp on 30.50.36.0
Discovered open port 88/tcp on 30.50.36.0
Discovered open port 49152/tcp on 30.50.36.0
Discovered open port 3283/tcp on 30.50.36.0
Completed Connect Scan at 09:57, 0.03s elapsed (1000 total ports)
Initiating Service scan at 09:57
Scanning 9 services on 30.50.36.0
Completed Service scan at 09:57, 28.57s elapsed (9 services on 1 host)
NSE: Script scanning 30.50.36.0.
Initiating NSE at 09:57
Completed NSE at 09:57, 0.02s elapsed
Initiating NSE at 09:57
Completed NSE at 09:57, 0.01s elapsed
Nmap scan report for 30.50.36.0
Host is up (0.000076s latency).
Not shown: 991 closed tcp ports (conn-refused)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 8.6 (protocol 2.0)
88/tcp open tcpwrapped
3283/tcp open netassistant?
3306/tcp open mysql MySQL (unauthorized)
5000/tcp open rtsp AirTunes rtspd 610.19.1
5900/tcp open vnc Apple remote desktop vnc
7000/tcp open rtsp AirTunes rtspd 610.19.1
8081/tcp open blackice-icecap?
49152/tcp open unknown
1 service unrecognized despite returning data. If you know the service/version, please submit the following fingerprint at https://nmap.org/cgi-bin/submit.cgi?new-service :
SF-Port8081-TCP:V=7.92%I=7%D=9/1%Time=63101191%P=arm-apple-darwin21.4.0%r(
SF:HTTPOptions,64,"HTTP/1\.1\x20404\x20Not\x20Found\r\nContent-Type:\x20te
SF:xt/plain;\x20charset=utf-8\r\nContent-Length:\x2013\r\n\r\n404\x20Not\x
SF:20Found");
Service Info: OS: Mac OS X; CPE: cpe:/o:apple:mac_os_x
Read data files from: /usr/local/bin/../share/nmap
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 28.82 seconds
以永恒之蓝为例:
漏洞编号:ms17-010
根据漏洞名称搜索:search ms17-010
1、应用辅助模块进行目标扫描
设置模块:use auxiliary/scanner/smb/smb_ms17_010
查看设置:options
设置目标地址:set RHOSTS 30.50.36.0
攻击:run或者exploit进行攻击
2、应用攻击模块进行攻击
设置模块:use exploit/windows/smb/ms17_010_eternalblue
五、端口扫描
六、smb扫描获取系统信息