跳到正文
热点事件观察中

OGNL 严格调用黑名单可被反射代理绕过

1 篇报道1 个报道来源1 天前更新

先了解这件事

AI 综述

GitHub 安全公告库发布 GHSA-crwc-vw2r-qr6m:OGNL 的 stricter-invocation 阻止列表按被调用方法的声明类过滤,而 java.lang.reflect.Method 等反射类不在列表中,因此表达式可用 someMethod.invoke(target, args) 代理调用 Runtime、ProcessBuilder 等本应被阻止的方法。公告称,在默认 OGNL 上下文(仅公开访问、启用严格调用)下,该表达式成功创建文件,而直接调用 new ProcessBuilder(...).start() 会被阻止。 公告列出的受影响条件是:应用会执行不可信或攻击者可控的 OGNL 表达式,使用 OGNL 默认宽松的 MemberAccess(或同样允许 java.lang.reflect 的配置),并把严格调用阻止列表当作沙箱。公告称,配置正确的使用方不受影响,包括使用 SecurityMemberAccess 的 Apache Struts。 公告给出的修复方式是把 java.lang.reflect.Method、Constructor、Field 加入严格调用阻止列表,使反射对象不能再在严格模式下充当调用代理。

AI 根据报道生成 · 1 天前更新

报道时间线

沿着报道,了解事件的不同侧面。

10月22日
  1. GitHub 安全公告库 (GHSA)
    OGNL stricter-invocation 阻止列表可经 java.lang.reflect 反射代理绕过

    OGNL 的 stricter-invocation 阻止列表按被调用方法的声明类过滤,因 java.lang.reflect.Method 等不在列表中,表达式可用 someMethod.invoke(target, args) 作代理调用 Runtime、ProcessBuilder 等被阻止的方法,PoC 在默认上下文下成功创建文件。

本事件热度走势

还没有足够的连续观测数据,暂不绘制趋势。