Heap-based buffer overflow in libotr - CVE-2012-3461
Published: August 20, 2012 / Updated: August 11, 2020
libotr
Detailed vulnerability description
The vulnerability allows a remote attacker to execute arbitrary code on the target system.
The vulnerability exists due to a boundary error in The (1) otrl_base64_otr_decode function in src/b64.c; (2) otrl_proto_data_read_flags and (3) otrl_proto_accept_data functions in src/proto.c; and (4) decode function in toolkit/parse.c in libotr before 3.2.1 allocates a zero-length buffer when decoding a base64 string, which. A remote attacker can use a message with the value to trigger heap-based buffer overflow and execute arbitrary code on the target system.
Successful exploitation of this vulnerability may result in complete compromise of vulnerable system.
How to mitigate CVE-2012-3461
Sources
- http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=684121
- http://lists.cypherpunks.ca/pipermail/otr-dev/2012-July/001347.html
- http://lists.cypherpunks.ca/pipermail/otr-dev/2012-July/001348.html
- http://lists.opensuse.org/opensuse-security-announce/2012-11/msg00016.html
- http://lists.opensuse.org/opensuse-security-announce/2012-11/msg00019.html
- http://lists.opensuse.org/opensuse-security-announce/2013-01/msg00019.html
- http://otr.git.sourceforge.net/git/gitweb.cgi?p=otr/libotr;a=commitdiff;h=1902baee5d4b056850274ed0fa8c2409f1187435
- http://otr.git.sourceforge.net/git/gitweb.cgi?p=otr/libotr;a=commitdiff;h=6d4ca89cf1d3c9a8aff696c3a846ac5a51f762c1
- http://otr.git.sourceforge.net/git/gitweb.cgi?p=otr/libotr;a=commitdiff;h=b17232f86f8e60d0d22caf9a2400494d3c77da58
- http://www.debian.org/security/2012/dsa-2526
- http://www.mandriva.com/security/advisories?name=MDVSA-2012:131
- http://www.mandriva.com/security/advisories?name=MDVSA-2013:097
- http://www.securityfocus.com/bid/54907
- http://www.ubuntu.com/usn/USN-1541-1
- https://bugzilla.redhat.com/show_bug.cgi?id=846377
- https://exchange.xforce.ibmcloud.com/vulnerabilities/77528