[ https://issues.apache.org/jira/browse/OFBIZ-11470?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17063515#comment-17063515 ]
ASF subversion and git services commented on OFBIZ-11470: --------------------------------------------------------- Commit 62f9b45dcf3293296985c2c1106e06e0a29fda66 in ofbiz-plugins's branch refs/heads/release17.12 from Jacques Le Roux [ https://gitbox.apache.org/repos/asf?p=ofbiz-plugins.git;h=62f9b45 ] Fixed: Ensure that the SameSite attribute is set to 'strict' for all cookies. (OFBIZ-11470) As reported by OWASP ZAP: A cookie has been set without the SameSite attribute, which means that the cookie can be sent as a result of a 'cross-site' request. The SameSite attribute is an effective counter measure to cross-site request forgery, cross-site script inclusion, and timing attacks. The solution was not obvious in OFBiz for 2 reasons: 1. There is no HttpServletResponse::setHeader. So we need to use a filter (SameSiteFilter) and even that is not enough because of 2: 2. To prevent session fixation we force Tomcat to generates a new jsessionId, ultimately put in cookie, in LoginWorker::login. So we need to add a call to SameSiteFilter::addSameSiteCookieAttribute in UtilHttp::setResponseBrowserDefaultSecurityHeaders. > Ensure that the SameSite attribute is set to 'strict' for all cookies. > ---------------------------------------------------------------------- > > Key: OFBIZ-11470 > URL: https://issues.apache.org/jira/browse/OFBIZ-11470 > Project: OFBiz > Issue Type: Sub-task > Components: ALL APPLICATIONS > Affects Versions: Trunk > Reporter: Jacques Le Roux > Assignee: Jacques Le Roux > Priority: Major > > As reported by OWASP ZAP: > bq. A cookie has been set without the SameSite attribute, which means that > the cookie can be sent as a result of a 'cross-site' request. The SameSite > attribute is an effective counter measure to cross-site request forgery, > cross-site script inclusion, and timing attacks. > The solution was not obvious in OFBiz for 2 reasons: > # There is no HttpServletResponse::setHeader. So we need to use a filter > (SameSiteFilter) and even that is not enough because of 2: > # To prevent session fixation we force Tomcat to generates a new jsessionId, > ultimately put in cookie, in LoginWorker::login. So we need to add a call to > SameSiteFilter::addSameSiteCookieAttribute in > UtilHttp::setResponseBrowserDefaultSecurityHeaders. -- This message was sent by Atlassian Jira (v8.3.4#803005)