This addresses the client_login() Icecast issue:
For those who have a burning need to 'patch < patch', or just don't
want to type three lines into client.c, I've attached a small
patch to client.c (Icecast 1.3.11).
Simplicity is thy name.
(More specific: It's the suggested patch in the icx.c exploit, with
an added logging flag.)
Thanks to Diz for making this public.
.Neeko Oni
--- client.c Wed Aug 1 16:06:53 2001
+++ src/client.c Wed Apr 3 12:36:23 2002
@@ -103,6 +103,11 @@
xa_debug(3, "Client login...\n");
+ if (strlen(expr) > 8000) {
+ write_log(LOG_DEFAULT, "WARNING: expr greater than 8000--possible BOF
+attack?");
+ return;
+}
+
if (!con || !expr) {
write_log(LOG_DEFAULT, "WARNING: client_login called with NULL
pointer");
return;