Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8129544

ArrayIndexOutOfBoundsException when decoding corrupt Base64 string

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • 9
    • 8u45
    • core-libs
    • b71
    • x86_64
    • windows_7

        FULL PRODUCT VERSION :
        java version "1.8.0_25"
        Java(TM) SE Runtime Environment (build 1.8.0_25-b18)
        Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)

        ADDITIONAL OS VERSION INFORMATION :
        Microsoft Windows [Version 6.1.7601]

        A DESCRIPTION OF THE PROBLEM :
        The Base64.Decoder.decode(String) method is documented as throwing an IllegalArgumentException for invalid input. However, I have been doing some fuzz testing on an application that internally uses Base64 MIME decoding, and therefore indirectly performed some fuzz testing on Base64. I was surprised to find a failure caused by an unexpected ArrayIndexOutOfBoundsException, where I would have expected an IllegalArgumentException to be thrown, as per the API documentation.

        STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
        Run the attached source code.

        EXPECTED VERSUS ACTUAL BEHAVIOR :
        EXPECTED -
        Expected an IllegalArgumentException at most, or possibly for the invalid content to be ignored (since it's MIME decoding).
        ACTUAL -
        An ArrayIndexOutOfBoundsException is thrown.

        ERROR MESSAGES/STACK TRACES THAT OCCUR :
        Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -46
        at java.util.Base64$Decoder.decode0(Base64.java:740)
        at java.util.Base64$Decoder.decode(Base64.java:526)
        at java.util.Base64$Decoder.decode(Base64.java:549)
        at BugTest.main(BugTest.java:8)

        REPRODUCIBILITY :
        This bug can be reproduced always.

        ---------- BEGIN SOURCE ----------
        import java.util.Base64;

        public class BugTest {
            public static void main(String[] args) {
                String s = "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\r\nAABJRU5ErkJggg==\r\n\u2592=\u2551\u00D2\u00C2\u241F\u00B6";
                Base64.getMimeDecoder().decode(s);
            }
        }
        ---------- END SOURCE ----------

        CUSTOMER SUBMITTED WORKAROUND :
        Catch ArrayIndexOutOfBoundsException, even though it isn't really supposed to ever be thrown from this method.

              sherman Xueming Shen
              webbuggrp Webbug Group
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: