Estas aquiContenido / XSS, el gran desconocido

XSS, el gran desconocido


Poradmin- Publicado el23 Enero 2007

Las vulnerabilidades por Cross Site Scripting (CSS ó XSS) continúan siendo grandes desconocidas, no sólo para el público en general, sino también para muchos periodistas especializados y no pocos informáticos.

Y no es extraño. Desde su denominación -muy poco "pegadiza" para usuarios comunes- a su peculiar comportamiento (una vulnerabilidad en un servidor, explotable desde otro, pero cuya víctima no es -al menos en principio- el propio servidor, sino el usuario del primero de los dos), todo parece destinado a que este problema, que afecta a entre el 70 y el 90% de los servidores web (o quizás a todos), pase casi desapercibido...

Quizás por eso gravísimos episodios recientes -como la vulnerabilidad en un plugin PDF- han pasado casi sin pena ni gloria, cuando cabe apostar porque un porcentaje muy elevado de usuarios continúa a día de hoy siendo totalmente vulnerable a su explotación malintencionada.

También hace poco se ha dado la curiosa situación de quien afirma haber hallado una vulnerabilidad XSS en el servidor de un importante diario nacional y se lamenta de no haber recibido respuesta, al tiempo que reconoce desconocer las consecuencias prácticas de su hallazgo.

Pues bien; con independencia de que el hallazgo sea o no real, en estos casos siempre cabe esperar poco entusiasmo por parte de los responsables del web "afectado", y ello por dos razones fundamentales: 1) Hay quien afirma que todos los webs tienen alguna vulnerabilidad XSS y sólo hay que saber encontrarla, y 2) la víctima potencial no es el servidor, sino el usuario.

El peligro de XSS es que se trata de un tema muy bien conocido y estudiado por los atacantes maliciosos, que disponen así de un modo casi perfecto de someter el navegador de los usuarios desprevenidos y hacerlo además en un contexto ajeno: el del servidor intermediario.

La solución de este espinoso tema (suponiendo que exista) cae fundamentalmente del lado de los desarrolladores de aplicaciones web, que han de continuar perfeccionando el tratamiento de las entradas de usuario.

El sitio ha.ckers.org es uno de los que mejor y más en profundidad viene tratando las vulnerabilidades XSS. Dispone incluso de una especie de "chuleta", permanentemente actualizada, que recoge decenas de cadenas de ataque y los navegadores sobre los que funcionan.

Entre los intentos de solución, uno de hoy mismo. Anurag Agarwal está sometiendo a prueba un nuevo filtro sobre el que descargaría la responsabilidad de filtrar todas las entradas de un sitio web, liberando así al programador de filtrarlas una por una.

En la línea de nuestros experimentos con gaseosa, Agarwal ha habilitado una página de prueba, desde la que es posible interactuar con su filtro a base de someterlo a todo tipo de cadenas de ataque.

Etiquetas

Comentarios

Selecciona arriba tu forma preferida de visualizar los comentarios y pulsa el botón para guardar tu elección para próximas visitas (sólo si eres usuario registrado).

En el artículo al que haces referencia sobre el diario El País, una cosa es que diga que no me detuve a ver que cosas se podían hacer en ese sitio (si tendría acceso a una suscripción, probablemente hubiera hecho algo más) a que desconozca las cosas que se pueden hacer con una vulnerabilidad de tipo XSS.

Alexander Concha

Y pues me fue un poco mal, me decían que solo quería hacerme fama y que ellos no sabían que peligroso seria ejecutar código en el navegador, memoria, del usuario.

Y si es cierto, a veces se preocupa mucha gente por parches al kernel, tener un sistema actualizado.. cuando el ataque no inicie propiamente al servidor.

La página ha.ckers.org es increíble, tiene tantos casos, solo creo que les falta el Xss desde flash, que aunque tengan filtros antijavascript flash se los salta ....

es prácticamente imposible filtrar todos los XSS de una web. Hay tantas variantes...

El mod_security inlcuye filtros anti-xss pero producen muchos falsos positivos y si usas base64 se lo salta.

 

## -- XSS Attacks ------------------------------------------------------------

SecFilterSignatureAction "log,pass,msg:'XSS attack'"

SecFilterSelective ARGS "alert[[:space:]]*\("
SecFilterSelective ARGS "&#[[0-9a-fA-F]]{2}"
SecFilterSelective ARGS "eval[[:space:]]*\("
SecFilterSelective ARGS "onKeyUp"
SecFilterSelective ARGS "\x5cx[0-9a-fA-F]{2}"
SecFilterSelective ARGS "fromCharCode"
SecFilterSelective ARGS "&\{.+\}"

SecFilterSelective ARGS "<.+>"
SecFilterSelective ARGS "javascript:"
SecFilterSelective ARGS "vbscript:"
SecFilterSelective ARGS "http-equiv"
SecFilterSelective ARGS "-->"
SecFilterSelective ARGS "expression[[:space:]]*\("
SecFilterSelective ARGS "url[[:space:]]*\("
SecFilterSelective ARGS "innerHTML"
SecFilterSelective ARGS "document\.body"
SecFilterSelective ARGS "document\.cookie"
SecFilterSelective ARGS "document\.location"
SecFilterSelective ARGS "document\.write"
SecFilterSelective ARGS "style[[:space:]]*="
SecFilterSelective ARGS "dynsrc"

SecFilterSelective ARGS_VALUES "jsessionid"
SecFilterSelective ARGS_VALUES "phpsessid"

# HTML tags frequently used for attacks
SecFilterSelective ARGS "<applet"
SecFilterSelective ARGS "<div"
SecFilterSelective ARGS "<embed"
SecFilterSelective ARGS "<iframe"
SecFilterSelective ARGS "<img"
SecFilterSelective ARGS "<meta"
SecFilterSelective ARGS "<object"
SecFilterSelective ARGS "<script"
SecFilterSelective ARGS "<textarea"

# JavaScript event handlers
SecFilterSelective ARGS "onAbort"
SecFilterSelective ARGS "onBlur"
SecFilterSelective ARGS "onChange"
SecFilterSelective ARGS "onClick"
SecFilterSelective ARGS "onDblClick"
SecFilterSelective ARGS "onDragDrop"
SecFilterSelective ARGS "onError"
SecFilterSelective ARGS "onFocus"
SecFilterSelective ARGS "onKeyDown"
SecFilterSelective ARGS "onKeyPress"
SecFilterSelective ARGS "onLoad"
SecFilterSelective ARGS "onMouseDown"
SecFilterSelective ARGS "onMouseOut"
SecFilterSelective ARGS "onMouseOver"
SecFilterSelective ARGS "onMouseUp"
SecFilterSelective ARGS "onMove"
SecFilterSelective ARGS "onReset"
SecFilterSelective ARGS "onResize"
SecFilterSelective ARGS "onSelect"
SecFilterSelective ARGS "onSubmit"
SecFilterSelective ARGS "onUnload"

# XmlHttp
SecFilterSelective ARGS "onReadyStateChange"
SecFilterSelective ARGS "xmlHttp"

incluso hotmail tiene xss desde hace mas años y no las arregla, hasta que no se haga publico un virus via xss esto seguira igual, y con ajax subiendo escalones en la actualidad creo que xss y csrf nos mantendran divertidos muchos años

Publicidad

Patrocinadores

Kriptópolis alojado en
Zilos-Veloxia Network

Tu mejor defensa:
Bufet Almeida

Publicidad