Thrift
  1. Thrift
  2. THRIFT-1175

Bad data can cause TProtocolUtil.skip to take a lot of CPU in a do-nothing loop

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Java - Library
    • Labels:
      None

      Description

      If, due to bad data, skip gets to the LIST case with a large size and invalid elemType, it loops doing nothing (since nothing happens in the recursive call to skip with an invalid elemType), taking a lot of CPU. Same for the MAP and SET cases.

      The default case in skip should throw a TProtocolException so invalid elemTypes are caught.

        Activity

        Jake Donham created issue -

          People

          • Assignee:
            Unassigned
            Reporter:
            Jake Donham
          • Votes:
            1 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:

              Development