202222313 2024-2025-1 《网络与系统攻防技术》实验六实验报告

news/2024/11/18 16:34:59/文章来源:https://www.cnblogs.com/20222313rhn/p/18551707

1. 实验内容

1.1 实验要求

(1)掌握metasploit、nmap的用法。

(2)学习前期渗透的方法。

(3)利用4个漏洞,实现对靶机的攻击。

1.2 学习内容

(1)metasploit的用法:可以简单总结为“Search-Use-Show-Set-Exploit/run”。

(2)四种漏洞的原理。

  • Vsftpd源码包后门漏洞:在特定版本的vsftpd服务器程序中,当FTP客户端连接到Vsftpd服务器,并且登录时使用的用户名以“😃"结尾时,这个后门会被触发。一旦触发,Vsftpd会在6200端口上创建一个新的监听进程,该进程允许未经身份验证的远程攻击者执行任意命令。

  • SambaMS-RPC Shell命令注入漏洞:Samba中负责在SAM数据库更新用户口令的代码未经过滤便将用户输入传输给了/bin/sh。Samba中的某个组件在处理用户密码更改请求时,没有充分地对输入数据进行净化处理,而是直接将未经过滤的输入传递给了/bin/sh shell。这意味着,如果攻击者能够构造特定的输入(例如,通过精心设计的密码更改请求),他们就有可能执行任意shell命令。

  • Java RMI SERVER命令执行漏洞:Java RMI Server的RMI注册表和RMI激活服务的默认配置存在安全漏洞,如果RMI Server的RMI注册表和激活服务的配置不当,可能会暴露出安全风险。攻击者可以利用这些配置错误来远程调用恶意对象的方法,从而在目标机器上执行任意代码。

  • PHP CGI参数执行注入漏洞:当PHP以CGI方式运行时,如果对传入的请求参数处理不当,可能会导致命令注入。具体来说,如果PHP脚本没有正确地转义或验证用户输入,攻击者可以通过操纵HTTP请求中的查询参数来插入恶意命令,这些命令随后可能被执行。

2. 实验过程

2.1 前期渗透

输入ifconfig查询靶机ip地址,可以看到ip为192.168.58.132。

在kali中输入msfconsole打开msfconsole

输入以下命令:search arp_sweepuse 0set RHOSTS 192.168.58.0/24run

可以看到,扫描到了靶机的ip地址。

输入nmap -p 1-2048 192.168.58.132扫描靶机的开放端口。

输入nmap -script=vuln 192.168.58.132扫描靶机的靶机的漏洞。

2.2 Vsftpd源码包后门漏洞(21端口)

漏洞原理:在特定版本的vsftpd服务器中,若用户名以“😃”结尾,服务器将在6200端口监听并允许执行任意代码,存在严重安全漏洞。

在msfconsole中输入以下命令:use exploit/unix/ftp/vsftpd_234_backdoorset RHOSTS 192.168.58.132run

再输入pwd,ls等命令,可以看到已经获取靶机的shell,攻击成功。

2.3 SambaMS-RPC Shell命令注入漏洞(端口139)

漏洞原理:Samba中负责在SAM数据库更新用户口令的代码未经过滤便将用户输入传输给了/bin/sh。如果在调用smb.conf中定义的外部脚本时,通过对/bin/sh的MS-RPC调用提交了恶

意输入的话,就可能允许攻击者以nobody用户的权限执行任意命令。

在msfconsole中输入以下命令:use exploit/multi/samba/usermap_scriptset RHOSTS 192.168.58.132exploit

再输入pwd,ls等命令,可以看到已经获取靶机的shell,攻击成功。

2.4 Java RMI SERVER命令执行漏洞(1099端口)

漏洞原理:Java RMI Server的RMI注册表和RMI激活服务的默认配置存在安全漏洞,可被利用导致代码执行。

在msfconsole中输入以下命令:use exploit/multi/misc/java_rmi_serveruse 0set RHOSTS 192.168.58.132exploit

执行攻击后,使用指令sessions -i 1进入线程。

输入命令pwd,ls,发现攻击成功。

2.5 PHP CGI参数执行注入漏洞(80端口)

漏洞原理:CGI脚本没有正确处理请求参数,导致源代码泄露,允许远程攻击者在请求参数中插入执行命令。

在msfconsole中输入:use exploit/multi/http/php_cgi_arg_injectionset RHOSTS 192.168.58.132exploit

输入pwd,ls,help等命令,发现攻击成功。

3. 问题及解决方案

问题:无法执行shell、whoami等指令。

解决方案:使用ls /bin/指令查询可知,靶机内没有shell whoami等指令,可能是下载的靶机版本过低导致。

4. 学习感悟、思考等

在这次Metasploit的实践过程中,我学会了如何操作Metasploit进行基本的安全测试,通过Metasploit的辅助模块完成了主机发现和端口扫描的工作,这是任何一次渗透测试的基础。随着对这些模块的熟悉,更加高效地定位到目标主机上的开放端口和服务,为后续的攻击实验打下了坚实的基础。接下来,针对Metasploitable2靶机上存在的多个具体漏洞,我进行了针对性的攻击尝试。其中,Vsftpd源码包后门漏洞的利用给我留下了深刻的印象。通过简单的用户名字符串就能触发服务器在非标准端口上开启监听,并允许执行任意代码,这一过程既展示了漏洞的危险性,也凸显了软件安全审查的重要性。

在探索Samba MS-RPC Shell命令注入漏洞和Java RMI SERVER命令执行漏洞的过程中,我进一步认识到,即使是看似安全的服务也可能因为编程失误或配置不当而成为攻击者的突破口。这两个案例都强调了一个关键点——输入验证的重要性。无论是通过网络接口接收的数据还是用户直接提供的信息,都应经过严格的检查和过滤,以防止恶意输入导致的安全问题。

最后,我在PHP CGI参数执行注入漏洞的实验中体验到了Web应用安全的脆弱性。当CGI脚本未能妥善处理请求参数时,不仅可能导致敏感信息的泄露,还会为攻击者提供执行任意命令的机会。这再次警示我们,在开发Web应用程序时,安全性应该是首要考虑的因素之一,开发者需要采取多种措施来确保应用的安全,比如输入验证、输出编码等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/836220.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

创建表(1)

1.切换操作的数据库,默认是在MySQL中进行操作2.创建表,遵循固定格式,枚举可用enum(‘’,‘’)限制条件可用notnull 默认可设置default‘ ’3.修改表:可以用alter table进行修改 alter table 表名 add 列名 数据类型 列级约束条件; alter table 表名 drop column 列名 …

Flutter项目实战(1):通用项目框架搭建

下面介绍 Flutter 最基本的通用项目框架搭建,同时实现了一个登录界面图标和登录界面。 先看下效果图:使用ScreenUtilInit自适应界面大小; 使用Stack支持多个子界面在同一个全屏主界面上选择显示; 使用 Get 插件实现界面之间的跳转和国际化翻译; 界面都通过Transform实现了…

Rocky安装htop

本篇抄的,放在这里防止自己忘记 两条命令: dnf install epel-release -y dnf install htop -yhtop测试: [root@localhost ~]# htop //回车后出现如下图,按q退出

数据采集与融合第四次作业

码云仓库地址 https://gitee.com/sun-jiahui22/crawl_project作业1仓库地址 https://gitee.com/sun-jiahui22/crawl_project/tree/master/作业4/实验4.1作业2的仓库地址 https://gitee.com/sun-jiahui22/crawl_project/tree/master/作业4/实验4.2作业3的仓库地址 https://gitee…

2-SQL注入渗透与攻防

1、SQL注入基础 1.1 什么是sql注入 一、SQL注入概述 二、数据库概述 1.关系型数据库 关系型数据库,存储格式可以直观的反映实体间的关系,和常见的表格比较相似 关系型数据库中表与表之间有很多复杂的关联关系的 常见的关系型数据库有MySQL、Orcale、PostgreSQL、SQL Server等…

vscode go语言注释语句黄色波浪线

go语言注释代码总是飘着黄色波浪线提示:(with optional leading article) (ST1021)go-staticcheck,非常影响观感。 经过查询发现,go-staticcheck 是一个用于 Go 代码静态分析的工具,用来检测代码中的潜在问题、代码规范以及常见的错误。本次错误信息来自 go-staticcheck 中…

1-信息收集

1.1 域名信息 whois、域名反查、ICP备案、企业信息查询 子域名收集工具:Layer子域名挖掘机等 原理:枚举、字典 域名:baidu.com 子域名:news.baidu.com、map.baidu.com、www.baidu.com、... 域名DNS信息 Domain Name Server 域名解析服务www.baidu.com --> 域名解析服务 …

springboot~jpa优雅的处理isDelete的默认值

如果多个实体类都有 isDelete 字段,并且你希望在插入时为它们统一设置默认值,可以采取以下几种方法来减少代码重复: 1. 使用基类(抽象类) 创建一个基类,其中包含 isDelete 字段和 @PrePersist 方法。然后让所有需要这个字段的实体类继承这个基类。 示例代码: import jav…

20222412 2024-2025-1 《网络与系统攻防技术》实验六实验报告

20222412 2024-2025-1 《网络与系统攻防技术》实验六实验报告 1.实验内容 主要任务:基于Metasploit框架,实现漏洞利用。 Metasploit框架(MSF)由HD Moore于2003年发布,并在2007年使用Ruby语言重写。它提供了一套完整的渗透测试框架,包括漏洞利用模块、攻击载荷、辅助模块、…

01计算机简介

001简介 计算机硬件逻辑组成

访谈李继刚:从哲学层面与大模型对话

当面访谈李继刚,看他如何理解提示工程,从哲学角度探讨提示词的“道”与“术”。相信不少人和我一样,是从“汉语新解”这段爆火提示词中知道李继刚这位“神人”的。直到看到11月4日公众号“数字生命卡兹克”对继刚做了专访文章《专访"Prompt之神"李继刚 - 我想用20…