EAP 7 MultipartParser doesn't properly handle multi-line headers

Solution Unverified - Updated

Environment

  • JBoss Enterprise Application Platform (EAP) 7

Issue

  • According to section 2.2.3 of RFC2822, headers may be folded at a whitespace character with a CRLF. Currently, MultipartParser considers the CRLF the end of the header value in all cases rather than checking for a whitespace character that signals the continuation of the value. This results in a MalformedMessageException to be thrown from the headerName method when the currentString (which now contains the remainder of the value) is checked to ensure it is null.

Resolution

  • Upgrade to EAP 7.2.0+
  • Apply EAP 7.1 CP6

Root Cause

Components
Category

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.