Executive brief
Google Protobuf, a widely used library for serializing structured data, is vulnerable to a memory corruption issue. An authenticated attacker could exploit this flaw to cause a system crash or potentially execute unauthorized commands. This could lead to service outages or the compromise of sensitive data in applications that rely on this library.
Technical details
A heap-based buffer overflow vulnerability (CWE-787) exists in Google Protobuf versions prior to 3.4.0. The flaw allows a remote authenticated attacker to trigger an out-of-bounds write by sending crafted input to an application utilizing the library. This can result in a denial-of-service (DoS) condition or potentially arbitrary code execution on the host system. The vulnerability affects multiple language implementations including C++, Java, Python, and Go. Users are advised to upgrade to version 3.4.0 or later to remediate the issue.
Affected products
- Google Google.Protobuf < 3.4.0
- Google protobuf < 3.4.0
Timeline
- 2015-08-27: disclosed: Initial public disclosure via oss-security mailing list
- 2017-08-15: patched: Version 3.4.0 released fixing the issue
- 2022-05-13: advisory: GitHub Advisory published
References
- https://github.com/google/protobuf/issues/760
- https://bugzilla.redhat.com/show_bug.cgi?id=1256426
- https://lists.apache.org/thread.html/519eb0fd45642dcecd9ff74cb3e71c20a4753f7d82e2f07864b5108f@%3Cdev.drill.apache.org%3E
- https://lists.apache.org/thread.html/b0656d359c7d40ec9f39c8cc61bca66802ef9a2a12ee199f5b0c1442@%3Cdev.drill.apache.org%3E
- https://lists.apache.org/thread.html/f9bc3e55f4e28d1dcd1a69aae6d53e609a758e34d2869b4d798e13cc@%3Cissues.drill.apache.org%3E