An issue was discovered in amqp_handle_input in amqp_connection.c in rabbitmq-c 0.9.0. There is an integer overflow that leads to heap memory corruption in the handling of CONNECTION_STATE_HEADER. A rogue server could return a malicious frame header that leads to a smaller target_size value than needed. This condition is then carried on to a memcpy function that copies too much data into a heap buffer.
https://usn.ubuntu.com/4214-2/
https://usn.ubuntu.com/4214-1/
https://security.gentoo.org/glsa/202003-07
https://news.ycombinator.com/item?id=21681976
https://lists.debian.org/debian-lts-announce/2019/12/msg00004.html
https://github.com/alanxz/rabbitmq-c/commit/fc85be7123050b91b054e45b91c78d3241a5047a
https://github.com/alanxz/rabbitmq-c/blob/master/ChangeLog.md