Truco HTML de hacker – NoGAFAM tricks:
Esta técnica la usa el mismísimo Gugeel en sus resultados de búsqueda para hacer creer al usuario que va a clicar un enlace que no es el real, sino que pasa por un “proxy” de URL donde ellos registran donde se ha clicado y otros datos de interés.
Bien. ¿Como lo hacen?
HTML tiene un evento de los enlaces (anchor, tag => a) que se llama onmousedown.
En este evento se puede usar Javascript inline (en línea), donde se puede programar una pequeña funcionalidad justo en el momento en el que haces click pero no antes de soltar el click. Este otro evento sería onmouseup.
¿Como utilizan esta técnica para que vayas a otro enlace del que pensabas?
Si buscamos en Gugel por ejemplo: postgres, nos encontraremos lo siguiente en el HTML de uno de los enlaces:
<a href="https://es.wikipedia.org/wiki/PostgreSQL" onmousedown="return rwt(this,'','','','','AOvVaw0XTa30Dbcdx86BNUpFOc3u','','2ahUKEwi16vzOyu3sAhVNBWMBHdTTCLUQFjAFegQIBBAC','','',event)">....</a>
Análisis “Técnico” del engaño
La función de JavaScript rwt
, recibe parámetros que constan una identificación que solo entienden ellos, y devuelve true
, diciendo al evento que ha sido satisfactorio y que proceda con el siguiente evento (onmouseup).
¿Qué hace la función rwt
antes de eso? ¿Qué sentido tiene que reciba cosas y devuelva true
sin más?. Esta función lo único que hace es:
- Recibir parámetros de identificación/traceo (los textos raros en la llamada de la función)
- Convertir eso en una URL suya (no la original), donde al clicar, se registrará que se ha clicado ahí, cuando, quién, etc...
- Cambiar el atributo
href
del elemento HTML por el enlace “proxy” que han creado.
De esta manera, se cambia la dirección del enlace en el instante en el que clicas, pero justo antes de soltar el click. El resultado es que el navegador se dirige al enlace nuevo y no al original. Por lo tanto, es una técnica de engaño, realmente.
Esta técnica se usa mucho en otros sitios web también, como páginas porno, páginas de citas, páginas de torrents, etc...
Uso legítimo para una causa justa
Podemos usar esta técnica a nuestro favor y por ejemplo, evitar que crawlers o personas, detecten una cierta URL que no queremos que detecten (aparte de usar robots.txt) en el código fuente de una página HTML hasta que no hagan click en él.
¿Como? Por ejemplo, podemos trollear a nuestro público y reemplazar un enlace de Twitter por https://joinmastodon.org, pero un poco menos cantoso, tal que así:
<a href="https://twitter.com/nogafam" target="_blank" onmousedown="this.href=atob('aHR0cHM6Ly9qb2lubWFzdG9kb24ub3Jn');return true">Follow us on Twitter!</a>
aHR0cHM6Ly9qb2lubWFzdG9kb24ub3Jn
es https://joinmastodon.org
en base64. La función atob
descodifica texto base64. Por lo contrario, btoa
convierte un texto en base64.
Conclusión
Esta técnica se lleva utilizando muchos años. Es útil a la vez que se puede utilizar para engañar, por lo tanto, depende de tí mismo/a que se haga un uso justo de esta técnica!
No dudes en compartirnos por Mastodon para qué has usado esta técnica y recordad usadlo para causas nobles! :)
Un saludo,
Bastard Operator
- ¿”Avance tecnológico” para empobrecer al resto de la población?
- No. Gracias
Bastard Operator – Agitador de conciencias tecnológicas
Contacta conmigo