Pregunta

Con el fin de poner las direcciones de correo electrónico en mis sitios, utilizo este Javascript

function showEmailLink(user, domain, linkText) {
 if (linkText == "") {
  linkText = user + "@" + domain;
 }
 return document.write("<a href=" + "mail" + "to:" + user + "@" + domain
   + ">" + linkText + "<\/a>");
}

por lo que en mi HTML Puedo escribir esto:

please send me an 
<script type="text/javascript">
  <!--
  showEmailLink("edward","tanguay.info","e-mail");
  //-->
</script>

Esto protege a mi sitio de los spammers que recogen direcciones de correo electrónico por screenscraping el código fuente desde mi correo electrónico es no se donde en el texto.

Sin embargo, no puedo imaginar que un spammer motivado no podía escribir una screenscaper alguna manera que podría mecánicamente determinar la dirección de correo electrónico basado en el código JavaScript y HTML.

¿Qué tan seguro es este método de obsfuscation correo electrónico javascript realmente?

¿Fue útil?

Solución

En realidad no es una cuestión de "seguridad" -. Todo lo que un usuario normal puede ver no es "seguro" porque cualquier entidad malintencionada realmente determinada solo puede actuar como un usuario normal y en realidad rinde / evaluar la página

Es más una cuestión de disuasión - cosechadoras ¿cuánto automatizados atención ? No tengo cifras exactas, pero mi conjetura sería que la mayoría de las cosechadoras no se molestan en render o una evaluación completa de las páginas, ya que hay un montón de objetivos "suaves" para ellos y se tarda mucho más tiempo para evaluar plenamente los scripts de una página que no es muy adecuado para el rápido rastreo en masa.

Si realmente quieres para disuadir a los recolectores, probablemente la mejor disuasión disponibles en la actualidad es algo que implica CAPTCHA para recuperar la dirección como Mailhide . Sin embargo, incluso esto puede ser frustrado si la cosechadora es lo suficientemente determinado (por métodos tales como sabiendas o incluso sin saberlo crowdsourcing CAPTCHA de última hora, etcétera).

Otros consejos

Si alguien quiere orientar su sitio en concreto, esto es 0% seguro. Si usted está tratando de elevar el listón contra scripts automatizados, puede que le funcione. No he mantenido con el estado del arte.

Me gustaría señalar, sin embargo, que usted no debe inyectar cadenas arbitrarias (como el nombre de usuario y dominio) en su HTML a través de document.write (), ya que es un agujero de seguridad. Debe ser la creación de un nodo A y usando los métodos de captador / definidor.

Si usted va a hacer esto (que no estoy de acuerdo con el principio, ya que creo que todos contenido debe ser accesible a los usuarios sin JavaScript), el truco será hacer algo único. Si su método es único, no hay mucho de un punto por los autores de código raspadores a una solución, ¿eh?

Sin embargo, algunos raspadores modernos han sabido utilizar la fuente interpretada para raspar para las direcciones, lo que hace cualquier JavaScript ofuscación métodos sin valor.

Todo depende de si el costo de hacer que la página se compensa con el valor de la dirección de correo electrónico. Como dijo Dav, los spammers profesionales pueden emplear un ejército de mano de obra barata para que esas páginas, o descifrar CAPTCHAS. En algunos casos esto es muy valioso, como la creación de nuevas cuentas de correo electrónico en los dominios de confianza.

Se podría aumentar el costo de la prestación de la página mediante la realización de algún cálculo en showEmailLink ().

A pesar de que no tengo ninguna evidencia dura, creo que los recolectores de correo electrónico han tenido la capacidad de ejecutar código JavaScript desde hace algunos años. Esto se basa únicamente en el uso de una función muy similar a la suya a direcciones de correo electrónico "proteger" en una página pública que no se utiliza en ningún otro lugar. Efectivamente, con el tiempo empezaron a recibir correo no deseado.

En el fondo, algo que puede hacer que no requiere un ser humano para interpretar y escribir en una dirección de correo electrónico, , finalmente, ser raspada por cosechadores de correo electrónico. Si el navegador puede ejecutar javascript para decodificarlo, también pueden hacerlo. (Es probable que utilizan navegadores para hacerlo.)

Matt Cutts simplemente menciona en los videos webmaster que esta técnica ya no es "seguro" ver el enlace aquí http://www.youtube.com/watch?v=Ce6cLrrfS5E dice que si se pone el código JavaScript en un lugar no permitido por robots.txt entonces usted no tendrá que preocuparse acerca de los robots que hacen que el hTML, pero Google es cada vez mejor en el análisis de JavaScript y su dirección puede ser consultada en texto claro si se utiliza este método

Si eres como yo y no les importa usar javascript, he encontrado esta página: http://reliableanswers.com/js/mailme.asp Básicamente se utiliza este fragmento:

<script type="text/javascript">
function mailMe(sDom, sUser)
{
  return("mail"+"to:"+sUser+"@"+sDom.replace(/%23/g,"."));
}
</script>
<a href="/contact/" title="Contact Me!"
 onmouseover="javascript:this.href=mailMe('example%23com','me');"
 onfocus="javascript:this.href=mailMe('example%23com','me');">Contact
Me!</a>

Muy buena ofuscación.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top