第三方软件提权之FTP软件

  • A+
所属分类:安全文章

转自安全鸭


--------00X1 提权的号角

拿到一个网站的webshell权限之后,可以控制整改网站,但是相对于整个系统来说权限较小。如果想要控制整个服务器,则需要进行系统提权,通过对此服务器的控制从而进一步渗透内网。通常来说,不同脚本类型的shell拥有的权限也不相同。通常脚本所处的权限:
ASP/PHP>网络服务用户,匿名权限ASPX>普通用户,USER权限,可调用cmd.exejsp> 通常是系统管理员权限
  1. 脚本所处的权限取决于运行容器的用户身份。即:如果脚本以phpstudy/aspweb类似集成环境搭建的网站,拿下网站就是system管理员权限(在未降权的情况下)

  2. 在脚本允许的情况下可以变换脚本提权,即如果目标服务器支持多种脚本语言,可以选择权限高的脚本语言进行提权。如上:ASP/PHP (小于users)< ASPX(users) < JSP(system)

  3. 可以劫持高权限容器提权。例如一个服务搭建了iis和tomcat,拿到iis的shell在tomcat网站目录下写jsp shell可直接成功提权,或php shell写到phpstudy 网站目录下。

  4. 在进行系统提权时,首先要对系统进行信息收集。主要是针对目标网络环境,应用程序,端口服务,补丁情况等重要信息进行一次完整的收集,从而得到可利用的信息进行提权。具体命令见:

    https://blog.csdn.net/weixin_44508748/article/details/107118718


00X2 FTP软件提权概述

常见的提权方法有:数据库提权、溢出漏洞提权、第三方软件提权。本分主要内容是复现第三方软件提权中的FTP软件,其中包含server-u、g6ftp、FileZilla等三款FTP服务端&客户端的软件。

FTP软件提权的主要思路就是得到目标ftp账号通过远程连接执行系统命令,从而通过创建用户或其他方式进行提权。所以FTP软件提权的前提均是拿到webshell权限可进行基础的命令执行,得到ftp账号密码,进行提权。


00X3 Server_U 提权

对于不可写权限,serv_u 6.4以下的,如果默认密码没有修改的,直接可以提权。serv_u 7以上的可以修改下脚本提权目录,不要用默认的C盘,改在其他盘符用脚本提权。serv-u的默认端口是43958,密码文件的安装目录 c:Program FilesServ-uSerUDaemon.ini

第三方软件提权之FTP软件

一、读取配置文件
1.server-u默认安装目录下的ServUDaemon.ini文件记录着所有的ftp账号信息,拿到密码可以直接拿去md5解密

第三方软件提权之FTP软件

2.如果有权限修改ServUDaemon.ini文件,也可直接增加高权限ftp用户。添加账号的password值是加盐md5加密后的值(例如:盐是cq,就md5加密cq123456,然后Password=cq+md5(cq123456)写入文件,加个user2)

第三方软件提权之FTP软件

3.如果得到的ftp账号权限是管理权限,可直接ftp远程登录执行命令创建用户

quote site exec net user test test123 /addquote site exec net localgroup administrators test /add

如图用户创建成功

第三方软件提权之FTP软件


二、通过大马server-u的默认管理员账号创建新的ftp账号,然后登录进行提取权

如图,通过server-u的默认管理员账号localadministrator创建ftp用户

第三方软件提权之FTP软件


三、直接提权
server-u默认的管理员账号权限较大,相当于系统权限,可以通过管理员账号直接创建用户,并且加入到管理员组。

第三方软件提权之FTP软件

如果server-U 用户默认密码被修改了,下载ServUAdmin.exe文件用c32打开就可以找到账号及密码,然后进行下一步操作。注意使用迅雷可能会出现问题,建议直接用浏览器下载

第三方软件提权之FTP软件


00X4 
G6-FTP 提权
  G6ftp安装目录下remoteadmin/remote.ini文件包含有账号信息,可通过解密得到账号密码,有修改权限也可以直接修改或添加用户
第三方软件提权之FTP软件

G6-ftp默认监听在127.0.0.1的8021端口上,所以需要使用lcx 工具将该端口转发出去。如果无法执行cmd命令,需要在可读可写目录上传cmd和lcx等程序,然后才能进行端口转发
1.端口转发

lcx.exe -tran 8222 127.0.0.1 8021#转发127.0.0.1 8021端口到全IP 8222端口
第三方软件提权之FTP软件

在服务器里面查看。确定已经转发成功

第三方软件提权之FTP软件

2.远程登录
端口转发完成后,直接使用g6ftp客户端以管理员用户远程登录软件。分别填入转发后的端口以及在最开始得到的用户名及密码

第三方软件提权之FTP软件
连接成功

第三方软件提权之FTP软件

3.创建ftp用户

第三方软件提权之FTP软件

设置用户家目录

第三方软件提权之FTP软件

给该账号所有权限

第三方软件提权之FTP软件

4.新建批处理命令

分别填入命令名称以及要执行的批处理文件路径

第三方软件提权之FTP软件

5.通过新建的ftp用户上传文件批处理文件

#批处理文件内容net user ftptest 123.com /addnet localgroup administrators ftptest /add

第三方软件提权之FTP软件

6.执行批处理命令,客户端会加载支持此批处理

quote site useradd

第三方软件提权之FTP软件

7.提权成功

提权成功,回到靶机查看用户,新建了ftptest账户,且为管理员权限

第三方软件提权之FTP软件


00X5 FileZilla提权
  filezilla是一款开源的FTP服务器和客户端的软件。若安装了服务器端默认只侦听127.0.0.1的14147端口。并且默认安装目录目录下有两个敏感文件 filezilla server.xml(包含了用户信息)和filezilla server interface.xml(包含了管理信息)
第三方软件提权之FTP软件

提权思路:
1.下载这个两个文件,拿到管理密码
2.配置端口转发,登录远程管理ftp server
提权步骤:
1.端口转发

C:Inetpubwwwroot8099mlcx.exe -tran 14148 127.0.0.1 14147

第三方软件提权之FTP软件

2.远程连接
转发完成后使用filezilla 服务端软件通过读取到的用户密码信息进行远程连接

第三方软件提权之FTP软件

第三方软件提权之FTP软件

3.创建ftp用户

第三方软件提权之FTP软件

4.设置密码

第三方软件提权之FTP软件

5.设置家目录及控制权限

第三方软件提权之FTP软件

6. 使用filezilla客户端远程连接

第三方软件提权之FTP软件

7.使用cmd.exe改名为sethc.exe替换c:windowssystem32sethc.exe生成shift后门

第三方软件提权之FTP软件

8.连接3389按5次shift 调出cmd.exe

第三方软件提权之FTP软件

在此cmd窗口可执行其他操作

 taskmgr# 调用任务管理器explorer.exe# 调用桌面net user test 123.com /addnet localgroup administrators test /add#创建用户

注意:高版本服务器如果进不了登录界面,无法利用五次shift弹出cmd.exe。可以利用msf生成payload捆绑到目标cmd.exe/explorer.exe(管理员经常使用的进程)上等待目标上线。然后进行提权

---------------------------------------------------------------------------------------------

第三方软件提权之FTP软件


一如既往的学习,一如既往的整理,一如即往的分享。感谢支持第三方软件提权之FTP软件

“如侵权请私聊公众号删文”



扫描关注LemonSec

第三方软件提权之FTP软件

觉得不错点个“赞”、“在看”哦第三方软件提权之FTP软件

本文始发于微信公众号(LemonSec):第三方软件提权之FTP软件

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: