Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug
Bug#: 78712
Alias:
Product:
Component:
Status: RESOLVED
Resolution: FIXED
Assigned To: Gentoo Security <security@gentoo.org>
Hardware:
OS:
Version:
Priority:
Severity:
Reporter: Sune Kloppenborg Jeppesen <jaervosz@gentoo.org>
Add CC:
CC:
Remove selected CCs
URL:
Summary:
Status Whiteboard:
Keywords:
Flags: Requestee:
 
 
  ()

Filename Description Type Creator Created Size Actions
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 78712 depends on: Show dependency tree
Bug 78712 blocks:

Additional Comments: (this is where you put emerge --info)


Not eligible to see or edit group visibility for this bug.






View Bug Activity   |   Format For Printing   |   XML   |   Clone This Bug


Description:   Opened: 2005-01-19 11:38 0000
On 18 and 19 Jan 2005 I (Wouter Coekaerts) discovered 3 security
vulnerabilities in Konversation ("A user-friendly IRC-client for KDE", 
http://konversation.berlios.de/).

Affected are version 0.15, CVS until 18-19/01/2005, and some older versions
too. They are fixed in 0.15.1.

Problem 1. Quick Buttons
========================
The Server::parseWildcards function is buggy: to expand % variables, it does
a series of QString.replace's, so the value for one variable can contain
another variable, which will then be expanded too. This function is used for
the "Quick Buttons" under the nicklist (which is disabled by default)

The only way I found to exploit this from another client, would be to let a
user join a channel with such vars in its name, and then let the user press
the Part Button. But since channel names cannot have spaces, only very 
simple things can be done.
For example: in #%n/quit%n, he will disconnect.
An 'evil' server might be able to do this for other Quick Buttons too.

Problem 2. Included Perl scripts vulnerable to shell command injection
======================================================================
Perl scripts included with Konversation execute a command line similar to:
exec ("dcop $PORT Konversation say $SERVER \"$TARGET\" output");
shell characters in $SERVER or $TARGET aren't escaped.

Joining #`kwrite` and executing a script (for example typing /uptime) will
start kwrite. A song with a strange name may also cause command execution
with the media script.

Problem 3. Nick and password confused in quick connect dialog
=============================================================
I'll leave the question of wether or not this actually is a security bug 
open, but at least I can imagine someone could see it as one.
Nick and password are confused in the quick connection dialog, so connecting
with that dialog and filling in a password, would use that password as nick.
If connecting works, you'll show everyone your password that was probably
a password for something else (since you could connecting with your nick as
password instead). If connecting fails because the server did require a
password, it may show an oper watching server notices your password and/or
put it in a logfile.

Solution
========
These problems are fixed in version 0.15.1, which was released 19/01/05

------- Comment #1 From Sune Kloppenborg Jeppesen 2005-01-19 11:39:32 0000 -------
net-irc please bump to 0.15.1

------- Comment #2 From Sven Wegener 2005-01-19 14:45:35 0000 -------
net-irc/konversation-0.15.1 in CVS. Not yet stable on x86, need some time to
merge parts of KDE for stable marking. :( ETA: 1 hour

------- Comment #3 From Sven Wegener 2005-01-19 15:41:58 0000 -------
Stable on x86.

------- Comment #4 From Carsten Lohrke 2005-01-20 07:37:07 0000 -------
Why are sparc and amd64 not cc'ed?

------- Comment #5 From Sune Kloppenborg Jeppesen 2005-01-20 07:43:49 0000 -------
Because the are already properly keyworded:

konversation-0.10.ebuild:KEYWORDS="x86 ppc"
konversation-0.13.ebuild:KEYWORDS="x86 ppc ~amd64"
konversation-0.14.ebuild:KEYWORDS="~x86 ~ppc ~amd64"
konversation-0.15.ebuild:KEYWORDS="~x86 ~ppc ~amd64 ~sparc"
konversation-0.15.1.ebuild:KEYWORDS="x86 ~ppc ~amd64 ~sparc"

------- Comment #6 From Carsten Lohrke 2005-01-20 11:29:02 0000 -------
Sune: Sorry, blind /me.

------- Comment #7 From Sune Kloppenborg Jeppesen 2005-01-21 01:59:20 0000 -------
CANs assigned:

CAN-2005-0129 : Quick button
CAN-2005-0130 : Perl script execution
CAN-2005-0131 : Quick connect issue

------- Comment #8 From Lars Weiler (RETIRED) 2005-01-21 11:02:46 0000 -------
ppc stable.

------- Comment #9 From Luke Macken (RETIRED) 2005-01-24 06:41:04 0000 -------
GLSA 200501-34

Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug