[ 
https://issues.apache.org/jira/browse/CODEC-313?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Gary D. Gregory resolved CODEC-313.
-----------------------------------
    Fix Version/s: 1.16.1
       Resolution: Fixed

PR merged.

> QuotedPrintableCodec.encodeQuotedPrintable throws 
> ArrayIndexOutOfBoundException
> -------------------------------------------------------------------------------
>
>                 Key: CODEC-313
>                 URL: https://issues.apache.org/jira/browse/CODEC-313
>             Project: Commons Codec
>          Issue Type: Bug
>            Reporter: Sheung Chi Chan
>            Priority: Minor
>              Labels: ArrayIndexOutOfBoundsException
>             Fix For: 1.16.1
>
>
> The {{encodeQuotedPrintable()}} method takes in a random byte array and 
> processes it. If the provided {{strict}} boolean is true, it will go into the 
> first branch. There is a for loop to loop through the byte array from the 
> index 0 to the index byte.length - 3. The index is then used directly in 
> {{getUnsignedOctet}} method If the length of the byte array is less than 3, 
> it will result in a negative index and cause ArrayIndexOutOfBoundsException 
> in {{getUnsignedOctet()}} method call.
> Possible fix could add a conditional check to ensure the index is never 
> negative. It will simply return null if the byte array is too short (with a 
> length less than 3) if {{strict}} value is true.
> We found this bug using fuzzing by way of OSS-Fuzz. It is reported at 
> [https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=64358].



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to