FreeRDP prior to version 2.0.0-rc4 contains an Integer Overflow that leads to a Heap-Based Buffer Overflow in function gdi_Bitmap_Decompress() and results in a memory corruption and probably even a remote code execution.
The product performs a calculation to determine how much memory to allocate, but an integer overflow can occur that causes less memory to be allocated than expected, leading to a buffer overflow.
The product performs a calculation that can produce an integer overflow or wraparound when the logic assumes that the resulting value will always be larger than the original value. This occurs when an integer value is incremented to a value that is too large to store in the associated representation. When this occurs, the value may become a very small or negative number.
Link | Tags |
---|---|
http://www.securityfocus.com/bid/106938 | third party advisory vdb entry |
https://lists.debian.org/debian-lts-announce/2019/02/msg00015.html | third party advisory mailing list |
https://usn.ubuntu.com/3845-1/ | third party advisory vendor advisory |
https://research.checkpoint.com/reverse-rdp-attack-code-execution-on-rdp-clients/ | third party advisory exploit |
https://github.com/FreeRDP/FreeRDP/commit/09b9d4f1994a674c4ec85b4947aa656eda1aed8a | patch vendor advisory |
https://access.redhat.com/errata/RHSA-2019:0697 | third party advisory vendor advisory |
https://usn.ubuntu.com/3845-2/ | third party advisory vendor advisory |