#渗透测试#红蓝攻防#HW#漏洞挖掘#漏洞复现01-笑脸漏洞(vsftpd)

news2024/12/26 22:36:17

免责声明 本教程仅为合法的教学目的而准备,严禁用于任何形式的违法犯罪活动及其他商业行为,在使用本教程前,您应确保该行为符合当地的法律法规,继续阅读即表示您需自行承担所有操作的后果,如有异议,请立即停止本文章阅读!!!

评论区留言获取资料等学习内容!!!

 

目录

笑脸漏洞(vsftpd)

一、漏洞概述

二、漏洞触发机制

三、漏洞利用流程

四、漏洞复现:

 五、Python脚本检测

六、漏洞修复

七、检测方法

八、防御措施


笑脸漏洞(vsftpd)

一、漏洞概述

笑脸漏洞是存在于vsftpd(Very Secure FTP Daemon)2.3.4版本中的一个严重安全漏洞。该漏洞允许攻击者在登录时,通过在用户名后输入特殊字符 :)(类似笑脸的符号),从而触发漏洞。当输入这个特殊字符时,vsftpd服务会在目标系统上开启一个监听在6200端口的后门,攻击者可以利用这个后门直接执行系统命令。这可能导致未经授权的远程访问和潜在的恶意操作。

二、漏洞触发机制

  1. 用户名检测:当vsftpd 2.3.4版本的FTP服务器检测到用户名中包含特殊字符 :) 时,会触发一个后门函数。
  2. 后门端口开启:触发后门函数后,服务器会在6200端口开启一个shell,使得攻击者能够通过这个端口直接连接并执行系统命令。
  3. 权限提升:由于vsftpd服务是以root权限运行的,因此攻击者通过这个后门获得的权限也是root,这意味着攻击者可以获得对整个系统的完全控制权。

三、漏洞利用流程

  1. 连接FTP服务器:攻击者首先需要连接到目标FTP服务器的21端口。
  2. 输入特殊用户名:在用户名中包含特殊字符 :),例如 user :)
  3. 连接后门端口:一旦用户名被验证,服务器会在6200端口开启一个后门。攻击者可以使用工具如nc(netcat)连接到这个端口。
  4. 执行系统命令:连接成功后,攻击者可以在目标系统上执行任意系统命令

四、漏洞复现:

笑脸漏洞(vsftpd)

攻击机 和靶机在同一网段中

配置kali

配置靶机

查看kali ip的配置

确认靶机的网络配置

确认靶场的IP 为192.168.10.130

然后查看端口开放情况

发现21端口开发,且端口版本vsftpd2.3.4

查看6200端口开放情况

连接21端口 输入账号密码,账号以‘:)’结尾

再新打开终端 ,查看6200端口已经打开

再次连接6200端口,获得root  权限

kali开启msf

搜索笑脸漏洞vsftpd漏洞的相关模块

选择攻击模块,查看当前模块可用的选项

执行漏洞测试,拿下shell

 五、Python脚本检测

以下是一个简单的Python脚本,用于检测目标系统是否存在FTP笑脸漏洞:
import socket 
from ftplib import FTP 
 
url = input("请输入你需要检测的地址: ")
username = 'anonymous'  # 用户名可以是任意值 
password = 'anonymous'  # 密码可以是任意值 
 
try:
    ftp = FTP()
    ftp.connect(url,  21, timeout=10)  # 使用FTP登录,设置超时时间为10秒 
    ftp.login(username,  password)
    ftp.quit() 
    
    s = socket.socket() 
    s.connect((url,  6200))  # 尝试连接6200端口 
    s.close() 
    print("发现笑脸漏洞!")
except:
    print("没有发现笑脸漏洞!")

将该脚本保存到桌面上(例如 xiaolian.py ),然后在命令行中运行该脚本,并输入目标IP地址进行检测。

六、漏洞修复

为了防止笑脸漏洞被利用,建议采取以下措施:

  1. 升级vsftpd版本:尽快将vsftpd升级到2.3.4之后的版本,因为该漏洞在后续版本中已被修复。
  2. 关闭不必要的服务和端口:如果不需要使用FTP服务,可以考虑关闭相关端口,以减少潜在的攻击面。

七、检测方法

可以通过以下方法检测目标系统是否存在FTP笑脸漏洞:

  1. 使用nmap扫描:使用nmap扫描目标系统的21端口,确认FTP服务版本是否为vsftpd 2.3.4。
  2. 尝试连接后门端口:使用工具如nc连接到6200端口,看看是否能够成功连接并执行命令。

八、防御措施

  1. 及时更新软件:定期检查并更新系统上的所有软件,确保它们都是最新的稳定版本。
  2. 限制权限:尽量避免以root权限运行服务,降低潜在漏洞带来的风险。
  3. 监控异常行为:使用入侵检测系统(IDS)和入侵防御系统(IPS)监控异常行为,及时发现并阻止潜在攻击。

未完待续~~~!!!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

手机控制载货汽车一键启动无钥匙进入广泛应用

移动管家载货汽车一键启动无钥匙进入手机控车系统‌, 该系统广泛应用于物流运输、工程作业等货车场景,为车主提供了高效、便捷的启动和熄火解决方案,体现了科技进步对物流行业的积极影响‌ 核心功能‌:简化启动流程,提…

OGRE 3D----5. OGRE和QML事件交互

在现代图形应用程序开发中,OGRE(Object-Oriented Graphics Rendering Engine)作为一个高性能的3D渲染引擎,广泛应用于游戏开发、虚拟现实和仿真等领域。而QML(Qt Modeling Language)则是Qt框架中的一种声明式语言,专注于设计用户界面。将OGRE与QML结合,可以充分利用OGR…

macos下brew安装redis

首先确保已安装brew,接下来搜索资源,在终端输入如下命令: brew search redis 演示如下: 如上看到有redis资源,下面进行安装,执行下面的命令: brew install redis 演示效果如下: …

汽车轮毂结构分析有哪些?国产3D仿真分析实现静力学+模态分析

本文为CAD芯智库原创,未经允许请勿复制、转载! 之前分享了如何通过国产三维CAD软件如何实现「汽车/汽配行业产品设计」,兼容NX(UG)、Creo(Proe),轻松降低企业上下游图纸交互成本等。…

Kafka的消费消息是如何传递的?

大家好,我是锋哥。今天分享关于【Kafka的消费消息是如何传递的?】面试题。希望对大家有帮助; Kafka的消费消息是如何传递的? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 在Kafka中,消息的消费是通过消费…

常见靶场的搭建

漏洞靶场 渗透测试(漏洞挖掘)切忌纸上谈兵,学习渗透测试(漏洞挖掘)知识的过程中,我们通常需要一个包含漏洞的测试环境来进行训练。而在非授权情况下,对于网站进行渗透测试攻击,是触及…

PMP–一、二、三模、冲刺–分类–8.质量管理

文章目录 技巧五、质量管理 一模8.质量管理--质量管理计划--质量管理计划包括项目采用的质量标准,到底有没有满足质量需求,看质量标准即可。6、 [单选] 自项目开始以来,作为项目经理同事的职能经理一直公开反对该项目,在讨论项目里…

mini-spring源码分析

IOC模块 关键解释 beanFactory:beanFactory是一个hashMap, key为beanName, Value为 beanDefination beanDefination: BeanDefinitionRegistry,BeanDefinition注册表接口,定义注册BeanDefinition的方法 beanReference:增加Bean…

智能云在线编辑网站(完结篇)

开始及初步计划 1.前端tiptip编辑器框架vue3 2.后端Pythonflaskmysql 3.大模型调用:飞桨系列(ppasr) 前言:以此篇谨记从软件杯到天津生成式ai答辩过程及结束。 『如蚍蜉见青天,双肩难挑日月』,感叹世事多…

TETFN情感计算的实践复现

✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨ 🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢,在这里我会分享我的知识和经验。&am…

使用zabbix监控k8s

一、 参考文献 小阿轩yx-案例:Zabbix监控kubernetes云原生环境 手把手教你实现zabbix对Kubernetes的监控 二、部署经验 关于zabbix监控k8s,总体来说是分为两块内容,一是在k8s集群部署zabbix-agent和zabbix- proxy。二是在zabbix进行配置。…

【开源免费】基于Vue和SpringBoot的周边产品销售网站(附论文)

博主说明:本文项目编号 T 061 ,文末自助获取源码 \color{red}{T061,文末自助获取源码} T061,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析…

Lumos学习王佩丰Excel第十八讲:LOOKUP函数与数组

一、回顾统计函数 1、使用SUMIF函数 sumif(条件区域,求和条件,求和区域) 2、使用SUMIFS函数 SUMIFS(求和范围, 条件范围1, 条件1, 条件范围2, 条件2, ...) 二、认识数组 1、数组生成原理 所谓数组,是有序的元素序列。组成数组的各个变量称为数组的元素。对于Ex…

【JavaEE】JavaEE、web 开发、框架(Spring) 、Maven

文章目录 一、JavaEE 发展历程二、什么是 web 开发1、什么是 web 开发?2、web 网站的工作流程 三、框架1、什么是框架?2、为什么要学框架?3、框架的优点(Spring Boot VS Servlet) 四、Maven 一、JavaEE 发展历程 Java…

使用guzzlehttp异步多进程实现爬虫业务

Python和PHP核心技术共享平台 背景 小哥近来在通过动态代理池爬取一些公司需要的大文件pdf规格书的处理。遇到的难点,如何保证服务器CPU、连接数等正常情况下,多进程、异步快速处理这些业务并且保证准确。下面小哥就给看官唠嗑一下,我使用gu…

redis揭秘-redis01-redis单例与集群安装总结

文章目录 【README】【1】安装单机【1.1】安装环境【1.2】安装步骤 【2】redis集群主从模式配置【2.1】集群架构【2.2】redis集群主从模式搭建步骤【2.3】redis集群主从模式的问题(单点故障问题) 【3】redis集群哨兵模式配置【3.1】集群架构【3.2】redis…

蓝牙定位的MATLAB仿真程序|基于信号强度的定位,平面、四个蓝牙基站(附源代码)

这段代码通过RSSI信号强度实现了蓝牙定位,展示了如何使用锚点位置和测量的信号强度来估计未知点的位置。它涵盖了信号衰减模型、距离计算和最小二乘法估计等基本概念。通过图形化输出,用户可以直观地看到真实位置与估计位置的关系。 文章目录 蓝牙定位原…

【网络篇】HTTP知识

键入网址到网页显示,期间发生了什么? 浏览器第一步是解析URL,这样就得到了服务器名称和文件的路径名,然后根据这些信息生成http请求,通过DNS查询得到我们要请求的服务器地址,然后添加TCP头、IP头以及MAC头&…

文件比较和文件流

文件比较和文件流 一、文本比较工具 diff1.基本用法1.1输出格式 2.常用选项 二、文件流1.文件的打开模式2.文件流的分类ifstreamofstreamfstrem区别 3.文件流的函数1. 构造函数2. is_open 用于判断文件是否打开3. open4. getline5. close6. get()7. read8. write9. put10. gcou…