Bug 1154910 (CVE-2014-3696) - CVE-2014-3696 pidgin: denial of service parsing Groupwise server message
Summary: CVE-2014-3696 pidgin: denial of service parsing Groupwise server message
Keywords:
Status: CLOSED ERRATA
Alias: CVE-2014-3696
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Red Hat Product Security
QA Contact:
URL:
Whiteboard:
Depends On: 1155838 1340770 1403136 1446519
Blocks: 1154913 1415638
TreeView+ depends on / blocked
 
Reported: 2014-10-21 03:21 UTC by Murray McAllister
Modified: 2021-02-17 06:04 UTC (History)
7 users (show)

Fixed In Version: pidgin 2.10.10
Doc Type: Bug Fix
Doc Text:
A denial of service flaw was found in the way Pidgin parsed Groupwise server messages. A malicious remote server or a man-in-the-middle attacker could potentially use this flaw to cause Pidgin to consume an excessive amount of memory, possibly leading to a crash, by sending a specially crafted message.
Clone Of:
Environment:
Last Closed: 2019-06-08 02:35:20 UTC
Embargoed:


Attachments (Terms of Use)
patch from upstream (4.51 KB, patch)
2014-10-21 03:22 UTC, Murray McAllister
no flags Details | Diff


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2017:1854 0 normal SHIPPED_LIVE Moderate: pidgin security, bug fix, and enhancement update 2017-08-01 18:23:14 UTC

Description Murray McAllister 2014-10-21 03:21:44 UTC
It flaw was reported in the way Groupwise server messages were parsed. A malicious server or man-in-the-middle attacker could send a specially-crafted message that could cause Pidgin to attempt to allocate an excessive amount of memory, possibly leading to a crash.

Acknowledgements:

Name: the Pidgin project
Upstream: Yves Younan (Cisco Talos), Richard Johnson (Cisco Talos)

Comment 1 Murray McAllister 2014-10-21 03:22:22 UTC
Created attachment 948788 [details]
patch from upstream

Comment 3 Murray McAllister 2014-10-23 01:20:21 UTC
Public now:

http://www.pidgin.im/news/security/?id=88

Comment 4 Murray McAllister 2014-10-23 01:27:12 UTC
Created pidgin tracking bugs for this issue:

Affects: fedora-all [bug 1155838]

Comment 5 Fedora Update System 2014-11-10 06:31:38 UTC
pidgin-2.10.10-2.fc21 has been pushed to the Fedora 21 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 6 Fedora Update System 2014-11-10 06:47:39 UTC
pidgin-2.10.10-1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 7 Siddharth Sharma 2014-11-21 11:46:27 UTC
Analysis:

In the function handle_receive_message(), variable named "size" is defined as "guint32 size= 0;",Values of this guint32 can range from 0 to G_MAXUINT32 (= 4,294,967,295). Then the stream is read from the connection and passed into "size" by the following code

rc = nm_read_uint32(conn, &size);

after that size validation happens , but here as it is compared with MAX_UINT32 because of which size variable can contain really large value.

if (size == MAX_UINT32)	return NMERR_PROTOCOL;

after that the memory allocation happens which  also depends on the variable "size"

  g_new0(char, size +1);
  
which could lead to large amount of memory allocation further leading to DOS or crash while parsing server message.As this needs client to connect to malicious server, this requires some social engineering to convince user to connect to malicious server. Man-in-the-middle attacker could also use this attack vector which would cause pidgin to allocate an excessive amount of memory slowing down victims system, possibly leading to a crash of application.

Comment 14 errata-xmlrpc 2017-08-01 20:20:56 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 7

Via RHSA-2017:1854 https://access.redhat.com/errata/RHSA-2017:1854


Note You need to log in before you can comment on or make changes to this bug.