Monografias.com > Computación > Internet
Descargar Imprimir Comentar Ver trabajos relacionados

Una nueva modalidad de spam: secuestro de log de referidos



    Monografía destacada

     

    Este año nos sorprende con la popularización
    de una modalidad de spam (publicidad no solicitada) que usa
    como vehículo de propagación a los programas de estadísticas web de los
    servidores a los que ataca.
    Este artículo provee un minucioso análisis de las técnicas usadas por los
    spammers, cuáles son los
    beneficios que obtiene el spammer al corromper nuestros logs, y
    brinda consejos para defenderse de este tipo de spam.

    Todo webmaster que analiza la actividad de sus sitios
    web no puede dejar de estudiar
    detalladamente la sección que resume los referidos o enlaces
    de origen de las visitas. Esta tabla contiene un listado ordenado
    con todos los sitios web que teniendo un link hacia nuestras
    páginas nos han enviado visitas.

    Esta es la sección de las estadísticas más
    útil cuando deseamos evaluar los resultados de la promoción de nuestra web
    (banners en páginas de terceros, intercambio de links,
    visitas desde buscadores, etc.).

    En los referidos podemos hallar sitios web predecibles
    (aquellos donde sabemos que hay un link hacia nuestras
    páginas) y también sitios nuevos (aquí es donde
    nos enteramos de quién ha puesto links a nuestro sitio y
    dónde).

     

    Fig. 1 Reporte
    (webalizer) de www.estadisticasweb.com

     

    Las entradas en esta tabla son a su vez links hacia la
    página referente. De modo que cuando veo la URL de un sitio
    que no conocía (y que me está mandando visitas) hago
    click sobre su nombre y este sitio se abre. Entonces busco el
    botón, la imagen o el link desde el cual se
    accedió a mi sitio. En algunos casos es sencillo: el link
    está completamente a la vista. En otros casos puede ser un
    poco más complejo, si la página del referente se genera
    dinámicamente (desde una base de datos, o como
    resultado de una búsqueda, por ejemplo).

    Pero existe una tercera situación, en donde
    directamente el link no existe ni existió nunca. Y ahí
    se encuentra el webmaster: revisando y reviendo un sitio web del
    que no sabía su existencia. Viendo detenidamente todo… y
    buscando dónde se halla el link a su web.

     

    Los objetivos del
    spammer

    Muy claro: tener una enorme cantidad de visitas que
    abran muchas páginas en su web. Todos los webmasters que
    encontraron un link en su listado de referrers y que buscan el
    link desde donde les "mandan las visitas".

    Un segundo objetivo lo alcanzan en los
    casos en que las estadísticas de nuestro sitio sean
    públicas: hacer que en cientos o miles de páginas de
    terceros (en sus estadísticas públicas) aparezcan links
    hacia su sitio. Y todos sabemos el beneficio que esto implica
    para el posicionamiento en buscadores, y
    en particular en Google, donde esta situación
    se reflejará tarde o temprano en el pagerank del
    spammer.

     

    Las técnicas del
    spammer

    Encontré software para realizar esta fechoría.
    Pero como mi objetivo no es promocionar esta técnica (ni
    este software, por supuesto), no lo mencionaré en este
    artículo. Pero sí voy a describir cómo es que
    funcionan estos programas.

    En principio, el trabajo del spammer se
    divide en dos partes:

    1) construir una lista de direcciones de sitios
    web, y

    2) generar la falsa actividad sobre cada uno de
    los sitios, mediante peticiones HTTP especialmente
    manipuladas

    El punto 1 parece ser obvio: se puede usar la
    información de buscadores o
    directorios en la web para obtener una lista de víctimas.
    También es posible poner a funcionar un crawler (un software
    de indexación que navega en la web siguiendo los links hacia
    otros sitios, y de ahí a otros, y otros más… de esta
    forma construyen sus bases de datos los
    buscadores).

    En la mayoría de los casos, estos sistemas buscan sus víctimas
    en el DMOZ (Open Directory). Se ha comprobado una relación
    directa entre la figuración de una web en DMOZ y la
    recepción de spam de esta naturaleza.

    El punto 2 es el verdadero "secuestro": un
    software especialmente diseñado "visita" cada una de las
    páginas de la lista, enviándoles una petición HTTP
    manipulada:

    GET / HTTP/1.1

    Host: www.estadisticasweb.com

    Referer: http://www.soy-un-sucio-spammer.com/

    User-Agent: Mozilla/5.0 Galeon/1.2.0 (X11; Linux i686;)
    Gecko/20020

    Accept: image/gif, image/x-xbitmap, image/jpeg,
    image/pjpeg, */*

    Accept-Language: en-us, en

    Accept-Encoding: gzip, deflate,
    compress;q=0.9

    Accept-Charset: ISO-8859-1, utf-8;q=0.66,
    *;q=0.66

    Keep-Alive: 300

    Connection: keep-alive

     

    Este es el tipo de petición que envía nuestro
    browser cuando seguimos el link desde el sitio
    soy-un-sucio-spammer.com Y eso es lo que registra nuestro
    servidor: la URL
    www.soy-un-sucio-spammer.com nos acaba de enviar una
    visita.

    Otra variente de esta técnica consiste en un
    crawler que realiza los pasos 1 y 2 en uno solo: cuando "abre"
    nuestra página para seguir los links hacia páginas de
    otras víctimas, ya nos está mandando el campo "Referer:
    http://www.soy-un-sucio-spammer.com/" modificado. De esta forma
    es mucho más rápido, y el spammer se puede dar el gusto
    de secuestrar varias decenas de sitios web por segundo (10 a 40
    sitios web por segundo típicamente: la carga se limita
    sólo al texto excluyendo las imágenes de modo que el
    spammer gana tiempo y ahorra ancho de
    banda).

     

    Qué podemos hacer para
    evitarlo

    Existen múltiples aproximaciones, ya que estamos en
    una etapa muy temprana del problema. Analizaremos algunas de
    ellas, con sus correspondientes ventajas y
    desventajas.

    a) Filtrado por
    referente

    Esta técnica se basa en un .htaccess que implementa
    una lista negra de sitios desde los cuales no se aceptan
    referidos. Hoy la lista negra puede imprimirse en una carilla de
    papel carta, pero estoy seguro que en unos meses
    superará ampliamente el volúmen de la guía
    telefónica, y este método de filtrado será
    inviable. Otra desventaja de este sistema es que supone que ya
    contamos con la lista negra, y por tanto conocemos cuáles
    son los sitios spammers.

    Archivo .htaccess

    RewriteEngine On

    #

    RewriteCond %{REMOTE_ADDR} ^64.38.236.*$
    [OR]

    #

    RewriteCond %{HTTP_REFERER}
    ^http://(www.)?sitiospammer-1.com.*$ [NC,OR]

    RewriteCond %{HTTP_REFERER}
    ^http://(www.)?sitiospammer-2.com.*$ [NC,OR]

    ….

    ….

    RewriteCond %{HTTP_REFERER}
    ^http://(www.)?sitiospammer-N.com.*$ [NC,OR]

    RewriteRule .* – [F,L]

     

    Nota 1: se debe escribir una línea por cada sitio
    en la lista negra

    Nota 2: las líneas con los puntitos no van!
    Significan que ahí deben insertarse más líneas de
    bloqueo

     

    He evitado escribir en este ejemplo las URLs de los
    spammers: no es mi intención presentar en este artículo
    una lista negra. Sin embargo, para quien esté interesado,
    hay listas de sitios de spammers en los foros de .

     

    b) Bloqueo del acceso
    público a las estadísticas

    Una buena forma de reducir el beneficio obtenido por los
    spammers consiste en hacer que nuestros reportes de
    estadísticas tengan acceso protegido por password. De esta
    forma los buscadores no entrarán, y el spammer no se
    beneficiará de los links gratis hacia su sitio web. No es
    una verdadera solución al problema (seguiremos viendo spam
    entre nuestros referidos), pero al menos estaremos tomando
    acciones que reduzcan el
    beneficio que el spammer desea obtener de nosotros.

     

    c) Uso de Page-Tagging en
    lugar de análisis de logs

    He notado que (por ahora) en todos los casos de
    secuestro de log de referidos, el spammer ataca al servidor web
    con una petición HTTP sólo al documento html, y esta petición se
    guarda en los logs y por tanto la vemos en los resultados de las
    estadísticas que obtienen sus datos de los logs.

    Si usamos "Page-Tagging" (la técnica de monitorizar
    las visitas a un sitio mediante la inclusión de un
    botón especial o un código en cada
    página a ser monitorizada) no veremos en nuestras
    estadísticas los referidos de los spammers.

    Si el spammer quisiera que su técnica de ataque
    abarcara también a los sitios que usan Page-Tagging,
    deberían modificar sus programas de forma tal que abriesen
    -además del documento base de la página web- todos y cada uno
    de los elementos contenidos en la página (el tag podría
    llegar a ser cualquiera de los elementos: una imagen, por
    ejemplo). De esa forma el spammer (si contase con una
    versión modificada del software que utilizan actualmente) no
    podría realizar tantos ataques por segundo, y la eficacia de la dispersión
    bajaría notablemente.

     

    Conclusión

    Esto es otra muestra de lo que las mentes
    inescrupulosas son capaces de inventar, corrompiendo nuestras
    estadísticas y robando nuestro ancho de banda y recursos de servidor para
    beneficio propio.

    Hasta la fecha no existe ninguna técnica
    completamente eficaz para evitarlo (al menos durante mucho
    tiempo). Personalmente pienso que combinando las técnicas b
    y c del apartado anterior (mas algunas otras que el con el tiempo
    se puedan inventar) podremos desplazar la barrera de la
    conveniencia del spammer, de forma que el negocio no le sea tan
    conveniente, y así desestimular este tipo de prácticas:
    si es más trabajoso aplicarlo y da menos beneficio, tal vez
    logremos que el spammer se dedique a otras fechorías y deje
    nuestros servidores web y nuestros programas de estadísticas
    en paz.

    Estoy muy interesado en seguir investigando y encontrar
    soluciones para este tipo de
    abusos. De forma que quien desee aportar ideas, experiencias o
    comentarios será muy bienvenido al foro que hemos creado sobre el "Secuestro de logs"
    (Log Hijacking) en los foros de www.estadisticasweb.com.

     

     

    Ing. Eduardo González González
    (*)

    (*) Consultor en Sistemas de Seguridad

    www.eduardo-gonzalez.com

     

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter