Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] oculta href en los enlaces

Estas en el tema de oculta href en los enlaces en el foro de Javascript en Foros del Web. Me dado cuenta que aceden a mi sitio y me extraen el correo de mis usuarios ya que los tengo en el enlace para que ...
  #1 (permalink)  
Antiguo 06/11/2017, 11:37
 
Fecha de Ingreso: enero-2011
Mensajes: 1.150
Antigüedad: 13 años, 10 meses
Puntos: 10
oculta href en los enlaces

Me dado cuenta que aceden a mi sitio y me extraen el correo de mis usuarios ya que los tengo en el enlace para que puedan enviarles un correo, lo que pasa que entran y cojen el correo.
Como podria evitarlo?
  #2 (permalink)  
Antiguo 06/11/2017, 12:40
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: oculta href en los enlaces

No puedes ocultar esa información al explorador.

Es algo paradógico lo que pides, para que mostrar el correo de tus clientes si no quieres que tengan acceso a ellos, bueno acá una posible solucion:

Genera una imágen dinamica del correo, luego le das una valor encriptado a ese correo que este enlazado a una bd, llamas con ajax para obtener el valor y usas window.location, que te haga el mailto:

Código HTML:
Ver original
  1. <img src="imagenDinamicaMail.png" value="algunIdentificador" onclick="myMialto(this.value);" />

Código Javascript:
Ver original
  1. function myMailto(mail){
  2. mail = ajaxFunct(mail); //some ajax that return the real mail.
  3. window.location.href = "mailto:"+mail;
  4. }

Edito: me fuí por las ramas, te dejo otra solución

Saludos

Última edición por alvaro_trewhela; 06/11/2017 a las 14:01
  #3 (permalink)  
Antiguo 06/11/2017, 14:06
 
Fecha de Ingreso: octubre-2009
Mensajes: 305
Antigüedad: 15 años, 1 mes
Puntos: 29
Respuesta: oculta href en los enlaces

Cita:
Iniciado por alvaro_trewhela Ver Mensaje
No puedes ocultar esa información al explorador.

Es algo paradógico lo que pides, para que mostrar el correo de tus clientes si no quieres que tengan acceso a ellos, bueno acá una posible solucion:

Genera una imágen dinamica del correo, luego le das una valor encriptado a ese correo que este enlazado a una bd, llamas con ajax para obtener el valor y usas window.location, que te haga el mailto:

Código HTML:
Ver original
  1. <img src="imagenDinamicaMail.png" value="algunIdentificador" onclick="myMialto(this.value);" />

Código Javascript:
Ver original
  1. function myMailto(mail){
  2. mail = ajaxFunct(mail); //some ajax that return the real mail.
  3. window.location.href = "mailto:"+mail;
  4. }

Edito: me fuí por las ramas, te dejo otra solución

Saludos
ajax es asíncrono, en tal caso sería así:

Código Javascript:
Ver original
  1. function myMailto(mail){
  2. ajaxFunct(mail, function(response) {
  3. window.location.href = "mailto:"+response;
  4. }); //some ajax that return the real mail.
  #4 (permalink)  
Antiguo 06/11/2017, 14:10
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: oculta href en los enlaces

Buena observación, gracias.
Ojalá le sirva a azaz, te todas formas que opinas tu?
  #5 (permalink)  
Antiguo 06/11/2017, 15:45
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: oculta href en los enlaces

Si la dirección de correo electrónico no es visible y tan solo se encuentra como un valor de tipo cadena de caracteres en el atributo href de ciertos enlaces, lo cual me lleva a imaginar que son datos registrados en una base de datos y que generaste los enlaces mediante una consulta a la base de datos, tan solo te bastaría con colocar un código identificador en un atributo personalizado o bien como parte de una cadena de consulta de una dirección electrónica, por ejemplo, la del archivo que realiza el envío del mensaje hacia la dirección de correo electrónico. Una vez en ese archivo, solo tendrías que hacer la búsqueda en la base de datos de la dirección del correo electrónico respectivo a través del código identificador.

Si no involucras a una base de datos en esto, entonces toma otro camino, como los consejos que te dieron arriba, por ejemplo.

__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #6 (permalink)  
Antiguo 06/11/2017, 17:26
 
Fecha de Ingreso: enero-2011
Mensajes: 1.150
Antigüedad: 13 años, 10 meses
Puntos: 10
Respuesta: oculta href en los enlaces

Hola, gracias por vuestra ayuda. Realmente esas soluciones no me sirven porque lo que quiero evitar es que un bot entre a mi sitio y extraiga los correos de los enlances.aunque esten encriptados solo tienen que cojer el valor de la encriptacion y aceder a la pagina que lo desencripta.

Eso si esa pagina solo se puede aceder desde un dispositivo movil.
Alguna idea para evitar que me roben los correos con un bot?
Saludos
  #7 (permalink)  
Antiguo 06/11/2017, 19:23
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: oculta href en los enlaces

Lo que sucede es que si es una página pública y no hay ningun protocolo de acceso, ese dato es vulnerable. no se me ocurre en estos momentos una mejor idea. lo que puedes hacer en usar un token para mostrar el mail, de modo que aunque sepan de donde sale el mail, este se pueda proteger por ese token y evitar bots.
  #8 (permalink)  
Antiguo 06/11/2017, 19:42
Avatar de haggenx  
Fecha de Ingreso: febrero-2007
Ubicación: México
Mensajes: 823
Antigüedad: 17 años, 9 meses
Puntos: 24
Respuesta: oculta href en los enlaces

porque no ofuscas ese correo mejor?
http://joemaller.com/js-mailer.shtml
__________________
Mi blog informático http://marjuanm.blogspot.mx
Fanpage del blog https://www.facebook.com/pages/Mis-p...36397183215592
  #9 (permalink)  
Antiguo 06/11/2017, 19:57
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: oculta href en los enlaces

Lo que expones no sirve, lo que se pide es que no se indexen los enlaces de mails, con ese método se indexan sin problemas
  #10 (permalink)  
Antiguo 06/11/2017, 20:03
Avatar de haggenx  
Fecha de Ingreso: febrero-2007
Ubicación: México
Mensajes: 823
Antigüedad: 17 años, 9 meses
Puntos: 24
Respuesta: oculta href en los enlaces

Cita:
Iniciado por alvaro_trewhela Ver Mensaje
Lo que expones no sirve, lo que se pide es que no se indexen los enlaces de mails, con ese método se indexan sin problemas
a quien le mencionas eso? (no queda claro tu mensaje)
__________________
Mi blog informático http://marjuanm.blogspot.mx
Fanpage del blog https://www.facebook.com/pages/Mis-p...36397183215592
  #11 (permalink)  
Antiguo 07/11/2017, 03:25
 
Fecha de Ingreso: enero-2011
Mensajes: 1.150
Antigüedad: 13 años, 10 meses
Puntos: 10
Respuesta: oculta href en los enlaces

Cita:
Iniciado por alvaro_trewhela Ver Mensaje
Lo que sucede es que si es una página pública y no hay ningun protocolo de acceso, ese dato es vulnerable. no se me ocurre en estos momentos una mejor idea. lo que puedes hacer en usar un token para mostrar el mail, de modo que aunque sepan de donde sale el mail, este se pueda proteger por ese token y evitar bots.
Hola los token tampoco me valen porque es tan facil como cojer el token y ir a la pagina de aceso en este caso es ir al correo del cliente que pulsa el enlace.
Es decir un robot puede simular que es una persona.
No se si se entiende mi problema.
Saludos
  #12 (permalink)  
Antiguo 07/11/2017, 07:34
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: oculta href en los enlaces

azaz, ¿qué función específica tienen esos enlaces? ¿Cualquier visitante a la página les da un clic y se abre un formulario para escribir un mensaje que se le enviará a su correo electrónico? ¿Quizá se abre Outlook? Y si fuera alguna de las opciones, ¿es necesario que se muestre la dirección electrónica de su correo?
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #13 (permalink)  
Antiguo 07/11/2017, 08:04
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: oculta href en los enlaces

Cita:
Iniciado por haggenx Ver Mensaje
a quien le mencionas eso? (no queda claro tu mensaje)
A nadie, al problema como tal.

----

Realmente no entiendo porque quieres mostrar información que no se desea compartir, es equivalente a que quieras que un bot no pueda acceder al titulo de tu web.
  #14 (permalink)  
Antiguo 07/11/2017, 09:56
 
Fecha de Ingreso: enero-2011
Mensajes: 1.150
Antigüedad: 13 años, 10 meses
Puntos: 10
Respuesta: oculta href en los enlaces

Cita:
Iniciado por Alexis88 Ver Mensaje
azaz, ¿qué función específica tienen esos enlaces? ¿Cualquier visitante a la página les da un clic y se abre un formulario para escribir un mensaje que se le enviará a su correo electrónico? ¿Quizá se abre Outlook? Y si fuera alguna de las opciones, ¿es necesario que se muestre la dirección electrónica de su correo?
Exacto cualquier usuario puede mandarle un correo, es acesible para todos pero no quiero que un bot extraiga todos son unos 300. No lo puedo ocultar quiero que se vea tampoco tipo imagen quiero la comodidad para el visitante(mail:).

Algo debe ser posible?
Saludos
  #15 (permalink)  
Antiguo 07/11/2017, 10:35
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: oculta href en los enlaces

Como lo expones, dudo que se pueda, voy a darle vueltas cuando tenga tiempo porque realmente no se me ocurre otra cosa que lo de la imágen, lo que queda claro es que no puede estar instertado como texto en el dom, debe ser ingresado dinámicamente.

Pero en todo caso, ¿Cuál es tu preocupación por los bots y spam,?. Hay empresas grandes que comparten esa información, lo que tienen de respaldo son buenos sistemas antispam en sus servidores de correo, si un usuario mal intencionado quiere esos datos, no necesitará un bot, lo hará como humano.

Bueno, le doy vueltas a ver que se me ocurre,
Saludos
  #16 (permalink)  
Antiguo 07/11/2017, 11:55
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: oculta href en los enlaces

Cita:
Iniciado por azaz Ver Mensaje
Exacto cualquier usuario puede mandarle un correo, es acesible para todos pero no quiero que un bot extraiga todos son unos 300. No lo puedo ocultar quiero que se vea tampoco tipo imagen quiero la comodidad para el visitante(mail:).

Algo debe ser posible?
Saludos
La solución que te planteé podría ser lo que necesitas. Te lo explico mejor:

1. Como aparentemente se trata de un listado de datos de personas, solo necesitarías adjuntar un enlace cuyo atributo href apuntaría hacia una página, que bien puedes cargar mediante AJAX en una ventana modal, en el cual habría un formulario para que el usuario visitante escriba el mensaje que desea enviar.

2. Dicha dirección en el enlace tendría la forma de formulario.php?id=23, en donde el valor 23 representa al código identificador de esa persona (hacia la cual se desea enviar el mensaje por correo electrónico) en la base de datos. En dicha base de datos estaría almacenado la dirección del correo electrónica de la persona en cuestión.

3. Una vez que el visitante haya pulsado el botón de envío, mediante AJAX puedes enviar tanto el código identificador como el mensaje y hasta el nombre del remitente (para lo cual necesitarás añadir un campo específico en el formulario) hacia un archivo que procesará la petición y realizará el respectivo envío. Recuerda que es posible enviar mensajes de correo electrónico mediante lenguajes del lado del servidor, tales como PHP, ASP o JSP.

De esta manera, ya no sería necesario mostrar ninguna dirección e incluso haría más interactiva a tu aplicación web.

También se me ocurre que ocultes las direcciones y que solo puedan ser mostradas si el usuario resuelve un CAPTCHA. Es básicamente lo que utiliza la mayoría de sitios web para evitar a los BOT.

__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Última edición por Alexis88; 07/11/2017 a las 13:22 Razón: Repetición innecesaria de palabras
  #17 (permalink)  
Antiguo 07/11/2017, 14:03
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: oculta href en los enlaces

Opino igual que Alexis88, el problema es que azaz lo que pide es que el mail sea explicito para el usuario y dicho esto ademas pide que un bot no pueda obtener los mails, y a lo que apunto yo, es que no importa donde este posicionado ese mail, ya sea mail@dominio o mail&# 64;dominio, este en un elemento o script:

<elemento>mail</elemento> o en un script

function someWayToMail(){
document.write(mail);
}


Cualquier bot es capaz de leer ese @ en el contenido de la web y obtener la posicion y valor del mail, inclusive si hicieras algo intrincado como esto:

function someWayToMail(){
document.write(@);
document.write(dominio);
document.write(mail);
}

de todas formas un bot, puede esperar a que la pag cargue y que ese write, o inner o append suceda y nuevamente obtener el mail, lo mismo con ajax, si tienes la web donde sale el mail se puede obtener el mail, mientras el dato sea publico y no necesite un protocolo de acceso, no conozco metodo para ocultarlo. tenia pensado en un ajax que cree un token que le de una vida minima de acceso, es decir un bot por lo general actua rápidamente, ejecuta y obtiene, pero con un token temporal que se tenga acceso al mail con un minimo de tiempo deberia ayudar, pero un bot, tiene eso dentro de su parámetro... sigo pensando....

Última edición por alvaro_trewhela; 07/11/2017 a las 16:03
  #18 (permalink)  
Antiguo 07/11/2017, 18:12
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: oculta href en los enlaces

Depende, Álvaro. En la solución que planteo, la petición asíncrona no devolvería la dirección de correo electrónico, solo una respuesta para avisarle al usuario si se envió o no el mensaje. La obtención de dicha dirección y el envío se realizaría en el lado del servidor y lo único que podría ver el usuario de esto sería la respuesta devuelta, es decir, el mensaje de éxito o error acerca del envío del mensaje. Ahora, para evitar algún tipo de ataque al servidor, tendría que implementarse algún protocolo de seguridad, lo cual es algo básico si del lado del servidor y base de datos se trata.

__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #19 (permalink)  
Antiguo 08/11/2017, 08:38
Avatar de haggenx  
Fecha de Ingreso: febrero-2007
Ubicación: México
Mensajes: 823
Antigüedad: 17 años, 9 meses
Puntos: 24
Respuesta: oculta href en los enlaces

pero si la dirección es creada con javascript, todavía la puede leer un boot?, ejemplo:

function mailto_(str)
{

var to = str.substr(0, str.indexOf("/"));
var domain = str.substr(str.indexOf("/") + 1, str.length);

location = "mailto:" + trim(to) + "@" + trim(domain);

}

forma de llamarla:

mailto_("micorreo/miserver.com");

esta función puede variarse, es solo un ejemplo, pero la pregunta es: puede un boot leer esto automaticamente, con las variaciones que queramos?
__________________
Mi blog informático http://marjuanm.blogspot.mx
Fanpage del blog https://www.facebook.com/pages/Mis-p...36397183215592
  #20 (permalink)  
Antiguo 08/11/2017, 09:35
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 8 meses
Puntos: 1146
Respuesta: oculta href en los enlaces

Se complican demasiado la vida, simple y llanamente no se puede ocultar.... es publico o no lo es?.

Si lo dejas publico atente a las consecuencias de que muchos mensajes puedan ser de boots o spam, la única forma de no tener que mostrarlo es que uses un formulario de contacto + re-capcha.

Solo así tendrás envió de correos a tu cliente sin que tenga que mostrar su correo, ya el sabrá si los responde o no.
  #21 (permalink)  
Antiguo 08/11/2017, 17:13
 
Fecha de Ingreso: enero-2011
Mensajes: 1.150
Antigüedad: 13 años, 10 meses
Puntos: 10
Respuesta: oculta href en los enlaces

Cita:
Iniciado por Alexis88 Ver Mensaje
Depende, Álvaro. En la solución que planteo, la petición asíncrona no devolvería la dirección de correo electrónico, solo una respuesta para avisarle al usuario si se envió o no el mensaje. La obtención de dicha dirección y el envío se realizaría en el lado del servidor y lo único que podría ver el usuario de esto sería la respuesta devuelta, es decir, el mensaje de éxito o error acerca del envío del mensaje. Ahora, para evitar algún tipo de ataque al servidor, tendría que implementarse algún protocolo de seguridad, lo cual es algo básico si del lado del servidor y base de datos se trata.

Bueno primero agradeceros a todos por la participación e implicación, tienes razón ArturoGallegos como bien dijo Alexis88 esa son las dos unicas posibilidades para lo que necesito, creo que descartare el captcha y obtaré por un formulario para que puedan enviar correo.
saludos

Etiquetas: enlaces, href, oculta
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:11.