Bugzilla will be upgraded to version 5.0. The upgrade date is tentatively scheduled for 2 December 2018, pending final testing and feedback.
Bug 1410824 - (CVE-2017-5194) CVE-2017-5194 irssi: Use after free when receiving invalid nick message
CVE-2017-5194 irssi: Use after free when receiving invalid nick message
Status: CLOSED WONTFIX
Product: Security Response
Classification: Other
Component: vulnerability (Show other bugs)
unspecified
All Linux
low Severity low
: ---
: ---
Assigned To: Red Hat Product Security
impact=low,public=20170105,reported=2...
: Security
Depends On: 1410829 1410830
Blocks: 1410833
  Show dependency treegraph
 
Reported: 2017-01-06 10:14 EST by Andrej Nemec
Modified: 2017-02-23 12:19 EST (History)
4 users (show)

See Also:
Fixed In Version: irssi 0.8.21, irssi 1.0.0
Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2017-02-23 12:19:45 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Andrej Nemec 2017-01-06 10:14:17 EST
A use after free when receiving invalid nick message was found in irssi.

External References:

https://irssi.org/security/irssi_sa_2017_01.txt

Upstream patch:

https://github.com/irssi/irssi/commit/6c6c42e3d1b49d90aacc0b67f8540471cae02a1d

CVE assignment:

http://seclists.org/oss-sec/2017/q1/26
Comment 1 Andrej Nemec 2017-01-06 10:20:05 EST
Created irssi tracking bugs for this issue:

Affects: fedora-all [bug 1410829]
Affects: epel-5 [bug 1410830]
Comment 2 Cedric Buissart 2017-02-23 11:35:47 EST
-> The flaw could be triggered either by client itself, or by a specially crafted IRC server.

-> The particular part of the part referring to this issue is the following :
----8<----
diff --git a/src/irc/core/irc-nicklist.c b/src/irc/core/irc-nicklist.c
index bcb9d1f..f049fe7 100644
--- a/src/irc/core/irc-nicklist.c
+++ b/src/irc/core/irc-nicklist.c
@@ -314,7 +314,11 @@ static void event_whois_ircop(SERVER_REC *server, const char *data)
 static void event_nick_invalid(IRC_SERVER_REC *server, const char *data)
 {
        if (!server->connected)
-               server_disconnect((SERVER_REC *) server);
+               /* we used to call server_disconnect but that crashes
+                  irssi because of undefined memory access. instead,
+                  indicate that the connection should be dropped and
+                  let the irc method to the clean-up. */
+               server->connection_lost = server->no_reconnect = TRUE;
 }
 
 static void event_nick_in_use(IRC_SERVER_REC *server, const char *data)
---->8----
Comment 4 Cedric Buissart 2017-02-23 12:19:54 EST
Statement:

Red Hat Product Security has rated this issue as having Low security impact. This issue is not currently planned to be addressed in future updates. For additional information, refer to the Issue Severity Classification: https://access.redhat.com/security/updates/classification/.

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