[ 
https://issues.apache.org/jira/browse/THRIFT-1643?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13802052#comment-13802052
 ] 

Valentin Mayamsin commented on THRIFT-1643:
-------------------------------------------

The issue is still there, in TBinaryProtocol in particular. The Attack.java 
still produces java.lang.OutOfMemoryError

> Denial of Service attack in TBinaryProtocol.readString
> ------------------------------------------------------
>
>                 Key: THRIFT-1643
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1643
>             Project: Thrift
>          Issue Type: Bug
>          Components: Java - Library
>    Affects Versions: 0.6.1, 0.8
>         Environment: All
>            Reporter: Devesh Parekh
>            Assignee: Niraj Tolia
>            Priority: Critical
>              Labels: security
>             Fix For: 0.9
>
>         Attachments: 
> 0001-Address-denial-of-service-in-TCompactProtocol.patch, 
> 0001-Add-test-for-TCompactProtocol-OOM-Denial-of-Service.patch, 
> 0002-Add-test-for-TBinaryProtocol-OOM-Denial-of-Service.patch, 
> 0003-Cleanup-length-checks-in-TCompactProtocol.patch, Attack.java, Foo.thrift
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> In readString, if the string field's size is greater than the number of bytes 
> remaining in the byte array to deserialize, libthrift will happily allocate a 
> byte array of that size in readStringBody, filling the heap.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to