xmonad-contrib remote command injection

2013.07.27
Risk: High
Local: No
Remote: Yes
CWE: CWE-94


CVSS Base Score: 7.5/10
Impact Subscore: 6.4/10
Exploitability Subscore: 10/10
Exploit range: Remote
Attack complexity: Low
Authentication: No required
Confidentiality impact: Partial
Integrity impact: Partial
Availability impact: Partial

I've discovered a remote command injection vulnerability in xmonad-contrib. The vulnerability is in the XMonad.Hooks.DynamicLog module. It has been assigned the name CVE-2013-1436. Background ========== DynamicLog module feeds information to others programs about what's happening on xmonad window manager. Such programs generally are status bars as xmobar or dzen2. These programs features the ability of receiving formatted input from stdin, and that's the way used by xmonad to communicate information such as workspace status, current layout and window title. So far, so good. Both bars uses some meta-language to format their input. For example, xmobar will make the following text clickable. <action=xclock>Click to clock</action> Vulnerability & exploit ======================= As we know, web browsers usually set the window title to the current tab. A malicious user, then, can craft a special title in order to inject commands in the current bar. In xmobar this will be something like this: <html> <head> <title>&lt;action=xclock&gt;An innocent title&lt;/action&gt;</title> </head> <body> <h1>Good bye, cruel world</h1> </body> </html> So, if the user accidentally (or incidentally) clicks on the xmobar window title, the command will be executed. In dzen2 this is also possible, although I haven't tried to execute code. A (harmless) proof of concept is attached for both bars. The proof for dzen2 just changes the background color of the bar. Fix === A fix for this issue is already available in xmonad webpage[0]. A patch written by Adam Vogt can be retrieved from the commit in the darcs repo[1]. If you use this module, please make sure to recompile your xmonad binary after upgrading the package. I would like to thank Joachim Breitner and the Debian Security Team for their help in disclosing this issue. Cheers. [0] http://hackage.haskell.org/packages/archive/xmonad-contrib/0.11.2/xmonad-contrib-0.11.2.tar.gz [1] http://handra.rampa.sk/dawb/patch?repoPURL=http%3A%2F%2Fcode.haskell.org%2FXMonadContrib&repoPHash=20130708144813-1499c-0c3e284d3523c0694b9423714081761813bc1e89

References:

http://handra.rampa.sk/dawb/patch?repoPURL=http%3A%2F%2Fcode.haskell.org%2FXMonadContrib&repoPHash=20130708144813-1499c-0c3e284d3523c0694b9423714081761813bc1e89
http://hackage.haskell.org/packages/archive/xmonad-contrib/0.11.2/xmonad-contrib-0.11.2.tar.gz


Vote for this issue:
50%
50%


 

Thanks for you vote!


 

Thanks for you comment!
Your message is in quarantine 48 hours.

Comment it here.


(*) - required fields.  
{{ x.nick }} | Date: {{ x.ux * 1000 | date:'yyyy-MM-dd' }} {{ x.ux * 1000 | date:'HH:mm' }} CET+1
{{ x.comment }}

Copyright 2024, cxsecurity.com

 

Back to Top