1、使用 Metasploit 中的 nmap 和 arp_sweep 收集主机信息
Metasploit中也有nmap
db_nmap -sV 192.168.0.103
-sV 探测打开的端口以确定服务
这里我们可以看到目标开启的服务以及目标的MAC地址和操作系统
2、使用arp_sweep模块探查局域网内主机
use auxiliary/scanner/discovery/arp_sweep
通过“show options”来查看需要设置哪些选项
这里我们只设置RHSOTS和THREADS,SHOST与SMAC用于伪造IP和MAC地址
set rhosts 192.168.0.0/24
set threads 10
run
这里检测到4台主机,具体的MAC地址可通过wireshark抓包得到,这里更建议使用nmap得到信息更加直接
3、使用半连接方式扫描 TCP 端口
use auxiliary/scanner/portscan/syn
通过“show options”来查看需要设置哪些选项
set rhosts 192.168.0.103
set ports 80
set threads 10
run
这里显示不明确,使用wireshark抓包
这里80端口没有反应,判断80端口并没有开启
4、使用 auxiliary /sniffer 下的 psnuffle 模块进行密码嗅探
psnuffle和dsniff一样是一个网络嗅探工具,用于监听局域网内大多数协议(FTP, Telnet, SMTP, HTTP, POP, poppass, NNTP, IMAP, SNMP, LDAP, Rlogin, RIP, OSPF, PPTP MS-CHAP, NFS, VRRP, YP/NIS, SOCKS, X11, CVS, IRC, AIM, ICQ, Napster, PostgreSQL, Meeting Maker, Citrix ICA, Symantec pcAnywhere, NAI Sniffer, Microsoft SMB, Oracle SQL*Net, Sybase and Microsoft SQL;),并获取相对应的密码。
这里使用ftp为例
use auxiliary/sniffer/psnuffle
通过“show options”来查看需要设置哪些选项
没有需要设置的,直接run
我们使用lftp连接 metasploitable2
lftp并非系统自带,需要自行安装
apt install -y lftp
已经抓取到用户名和密码
使用exit断开ftp连接,psnuffle会创建后台运行程序,关闭时记得kill
jobs
kill 1直接结束进程
简单网络管理协议(SNMP,Simple Network Management Protocol),由一组网络管理的标 准组成,包含一个应用层协议(application layer protocol)、数据库模型(database schema)和一 组资源对象。该协议能够支持网络管理系统,用以监测连接到网络上的设备是否有任何引起管理上关注的 情况。
由于SNMP涉及敏感信息所以一般并不会主动开放,我们需要手动开启SNMP服务
这里我们修改metasploitable2上的配置文件
使用root账号登录
vim /etc/default/snmpd
修改第11行
改为
/etc/init.d/snmpd restart
然后在kali上使用
use auxiliary/scanner/snmp/snmp_enum
通过“show options”来查看需要设置哪些选项
这里只需设置RHOSTS
set rhosts 192.168.0.101
会出现大量敏感信息,可以查看系统及系统版本,还可以查看已经运行的进程已经MAC地址等等
SMB 概述:服务器消息块(Server Message Block,缩写为 SMB),又称网络文件共享系统 (Common Internet File System,缩写为 CIFS),一种应用层网络传输协议,由微软开发,主要功能 是使网络上的机器能够共享计算机文件、打印机、串行端口和通讯等资源。
1、使用smb_version信息收集
use auxiliary/scanner/smb/smb_version
通过“show options”来查看需要设置哪些选项
set rhosts 192.168.0.106
可以精确地探测到smb版本与系统信息
2、使用 smb_enumshares 基于 SMB 协议扫共享文件(账号、密码)
首先在Win7下添加共享文件,建议将文件夹以英文命名,不然会出现乱码
直接点“共享”
然后确认关闭即可。
我们在创建一个新用户
在右框中右键,选中“新用户”
设置成如下后点击“创建”,便创建完成。
这里创建的新用户在后面仍将用到
打开kali
use auxiliary/scanner/smb/smb_enumshares
通过“show options”来查看需要设置哪些选项
set rhosts IP地址
set smbuser 用户名
set smbpass 密码
如果不设置用户名和密码就无法查看
“create a new file”即为我们创建的共享文件夹,同时我们也可以查看到平时不可见的共享文件夹
2、使用 smb_lookupsid 扫描系统用户信息(SID 枚举)
sid即为Windows中用户名的id
use auxiliary/scanner/smb/smb_lookupsid
通过“show options”来查看需要设置哪些选项
set rhosts IP地址
set smbuser 用户名
set smbpass 密码
从中我们便可得到管理员和其它账号的信息
1、探测ssh版本
use auxiliary/scanner/ssh/ssh_version
通过“show options”来查看需要设置哪些选项
set rhosts 192.168.0.101
可以获得ssh精确的版本号
2、对 SSH 暴力破解
use auxiliary/scanner/ssh/ssh_login
set rhosts IP地址
set userpass_file /usr/share/metasploit-framework/data/wordlists/root-userpass.txt
这里已经识别出了我设置的两个弱口令密码
1、查看 ftp 服务的版本信息
use auxiliary/scanner/ftp/ftp_version
通过“show options”来查看需要设置哪些选项
设置目标IP
这里扫出了版本号,可以尝试版本是否存在漏洞
search vsFTPd 2.3.4
use 0
set rhosts IP地址
已拿到root权限
2、ftp 匿名登录扫描
use auxiliary/scanner/ftp/anonymous
设置目标IP
说明允许匿名连接
3、ftp 暴力破解
与ssh类似
use auxiliary/scanner/ftp/ftp_login
设置也与ssh相同,然后就可以run了,但是ftp暴力破解速度远远慢于ssh需要耐心等待