FileZilla是一个免费开源的FTP软件,分为客户端版本和服务器版本,具备所有的FTP软件功能。可控性、有条理的界面和管理多站点的简化方式使得Filezilla客户端版成为一个方便高效的FTP客户端工具,而FileZilla Server则是一个小巧并且可靠的支持FTP&SFTP的FTP服务器软件

Filezilla和普通Web网站一样,前台有普通FTP账户执行上传、下载、删除等动作,后台则有一个管理员控制台来设置前台的账户以及账户的权限,前台就是21端口,而后台默认是14147端口

提权原理

由于14147端口只能本机127.0.0.1访问,攻击者获得普通用户的权限后,在受害者的windows的temp目录下面上传端口转发工具lcx.exe,使用端口转发工具将端口转发到公网中,之后攻击者就可以在公网访问FileZilla Server,创建一个拥有全部硬盘目录权限的FTP账户,完成提权操作。

工具利用:

lcx.exe:

lcx.exe核心作用:端口转发

因为正常情况下目标处于内网,攻击者无法访问其内部服务。攻击者通过lck将其他机器的端口转发出来,通过转发常见端口,暴露目标机的端口到公网,规避防火墙对非常用端口的检测,之后加以利用,创建恶意账户,横向渗透。

常见的指令:

-listen 建立双向转发隧道 TCP/UDP

-slave 连接监听端并绑定本地端口 穿透防火墙/NAT

-tran 直接端口映射(无需监听) 适用于简单场景

漏洞成因:

  1. 默认监听所有IP 管理接口默认绑定 0.0.0.0(所有网卡),暴露在局域网甚至公网。
  2. 无身份验证机制 连接管理接口无需任何认证,直接获得控制权。
  3. 配置信息明文存储 管理员密码以 BASE64 编码存储在 FileZilla Server.xml 中,易被解密。
  4. 协议未加密 管理通信未使用 SSL/TLS,密码传输可被中间人截获。
  5. 高危指令未隔离 管理接口支持高危操作(如添加用户、修改路径),未做权限隔离。

防御方式:

升级版本、限制管理接口的访问,设置强密码,部署防火墙进行隔离

靶场复现:

攻击机:windows7

靶机:windows10

虚拟机需要下载旧版本FileZilla Server,开放3389端口

物理机需要下载旧版本FileZilla Server和旧版本FileZilla Client,新版本连不上

终端输入tasklist,查看目标系统运行的软件里有FileZilla Server.exe,再输入netstat -ano查看端口,发现开启了21端口和14147端口,但是14147只能由127.0.0.1(目标机自己)访问

2.使用lcx.exe进行端口转发,将目标机的14147端口转发到对外开放端口14148

2.1上传lcx.exe到目标机C:\Windows\Temp\

终端输入:上传目录\lcx.exe -tran 对外开放端口 转发的ip 要转发的端口,此时14140端口开启

C:\Windows\Temp\lcx.exe -tran 14140 127.0.0.1 14147,登录发现可以登陆上。

之后攻击机连接靶机的14140端口

之后添加用户

使用ftp连接目标机,登陆刚才创建的FTP账号

Filezilla提权漏洞复现的更多相关文章

  1. Linux本地内核提权漏洞复现(CVE-2019-13272)

    Linux本地内核提权漏洞复现(CVE-2019-13272) 一.漏洞描述 当调用PTRACE_TRACEME时,ptrace_link函数将获得对父进程凭据的RCU引用,然后将该指针指向get_c ...

  2. MS14-068域提权漏洞复现

    MS14-068域提权漏洞复现 一.漏洞说明 改漏洞可能允许攻击者将未经授权的域用户账户的权限,提权到域管理员的权限. 微软官方解释: https://docs.microsoft.com/zh-cn ...

  3. CVE-2019-13272:Linux本地内核提权漏洞复现

    0x00 简介 2019年07月20日,Linux正式修复了一个本地内核提权漏洞.通过此漏洞,攻击者可将普通权限用户提升为Root权限. 0x01 漏洞概述 当调用PTRACE_TRACEME时,pt ...

  4. Linux kernel(CVE-2018-17182)提权漏洞复现

    0x01 漏洞前言 Google Project Zero的网络安全研究人员发布了详细信息,并针对自内核版本3.16到4.18.8以来Linux内核中存在的高严重性漏洞的概念验证(PoC)漏洞利用.由 ...

  5. CVE-2017-16995 Ubuntu16.04本地提权漏洞复现

    0x01 前言 该漏洞由Google project zero发现.据悉,该漏洞存在于带有 eBPF bpf(2)系统(CONFIG_BPF_SYSCALL)编译支持的Linux内核中,是一个内存任意 ...

  6. Windows 10 提权漏洞复现及武器化利用

    项目地址:https://github.com/SandboxEscaper/randomrepo 相关工具的下载地址: Process Explorer:https://docs.microsoft ...

  7. 新版本Ubuntu本地提权漏洞复现

    该漏洞在老版本中被修复了,但新的版本还存在漏洞 影响范围:Linux Kernel Version 4.14-4.4,Ubuntu/Debian发行版本 Exp下载地址:http://cyseclab ...

  8. Intel产品AMT本地及远程提权漏洞(CVE-2017-5689)复现 【转载自freebuf.com】

    零.绪论: 1.鸣谢freebuf的文章,主要是学习这个漏洞,文章地址: Intel产品AMT本地及远程提权漏洞(CVE-2017-5689)复现 2.在shadon上找了多个该漏洞尝试复现失败(评论 ...

  9. sudo 提权漏洞(CVE-2019-14287)复现 (10.16 第二十二天)

    sudo是Linux系统命令,让普通账号以root身份去执行某些命令,比,安装软件.查看某些配置文件.关机.重启等操作,如果普通账号需要使用sudo需要修改配置文件/etc/sudoers,将sudo ...

  10. sudo 提权漏洞(CVE-2019-14287)复现

    (该文参考网络他人资料,仅为学习,不许用于非法用途) 一.环境 1.sudo版本小于1.8.28的Linux系统 2.sudo 是Linux系统命令,让普通账号以root身份去执行某些命令,比如:安装 ...

随机推荐

  1. ModuleNotFoundError: No module named '_ctypes' when Python3

    前言 运行 python 报错:ModuleNotFoundError: No module named '_ctypes' when using Value from module multipro ...

  2. mysql [Err] 1067 - Invalid default value for

    出错原因 mysql5.7版本引起的默认值不兼容的问题,同样的问题在mysql8.0可能也会出现. 出问题的值有: NO_ZERO_IN_DATE 在严格模式下,不允许日期和月份为零. NO_ZERO ...

  3. msvcp110.dll丢失修复 按我的方法来,保证修复!

    方法很简单,msvcp110.dll丢失,安装Microsoft Visual C++ 2012 Redistributable Package就可以,我把修复程序的链接放下面.链接地址: 链接:ht ...

  4. nginx + lua脚本

    Nginx配合Lua 案例 今天实现一个非常简单的例子. 云服务器上部署的了一个很通用的应用程序(它没有保护策略),其端口是a,但是我想使用他,就要通过公网ip:端口去访问它.暴露在外面很不安全. 那 ...

  5. http状态码413,并提示Request Entity Too Large的解决办法

    使用wordpress的用户经常遇到的问题,就是在后台上传多媒体文件的时候,发现文件大小是有限制的,通常是2M.如图: 如果上传的文件超过2M,服务端返回的状态码会是413,同时提示上传失败.实际上, ...

  6. 【技术分析】简单了解 AccessControl

    当我们开发一个智能合约,但是里面有一些函数不能随便让别人调用,只能"拥有权限"的管理员能够调用,那么这时候我们会用到权限管理机制. 实现起来也很简单,设置一个 owner 变量,通 ...

  7. mosquitto的基本参数使用

    当使用mosquitto_pub命令时,可以使用多个参数来配置发布行为.以下是mosquitto_pub命令的一些常见参数及其详细说明: -h, --host <hostname>:指定连 ...

  8. 【SpringCloud】SpringCloud Stream消息驱动

    SpringCloud Stream消息驱动 消息驱动概述 是什么 什么是SpringCloudStream 官方定义Spring Cloud Stream是一个构建消息驱动微服务的框架. 应用程序通 ...

  9. study Python3【4】字符串的判断

    判断类型: result为True和False str = '1122abc' str.isalnum()是数字或者字母 str = 'MDCA' str.isalpha() 是字母 str = '1 ...

  10. .NET周刊【3月第5期 2025-03-30】

    国内文章 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp智能体框架开发语音交互 https://www.cnblogs.com/GreenShad ...