Uploaded image for project: 'Struts 2'
  1. Struts 2
  2. WW-5407

Extend SecurityMemberAccess proxy detection to Hibernate proxies

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • None
    • 6.5.0
    • Core
    • None

    Description

      The current option struts.disallowProxyMemberAccess does not have any logic to detect Hibernate proxies which may also present a security risk.

      Additionally, the current option only forbids access to members which originate from a proxy. However, it makes more sense to forbid access to proxy objects entirely. This is because proxying is often used for sensitive instances, application beans or Hibernate objects. None of which is safe to be accessed or manipulated via OGNL. Thus, let's introduce an additional option struts.disallowProxyObjectAccess which will offer stronger protection.

      Finally, the caching mechanism in the ProxyUtil class uses an unbounded map, this can potentially be attacked and lead to a memory leak or DoS. Let's replace it with a Caffeine cache as we have done previously for the OGNL expression cache.

      Attachments

        Activity

          People

            Unassigned Unassigned
            kusal Kusal Kithul-Godage
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 2h 50m
                2h 50m