Esconder Script Encriptado En Un Enlace Html

Hoy les mostrare como esconder un script de javascript en un enlace o link y al presionarlo que este se ejecute.

Nota Importante: Esto me funciona en chrome, en Enternet Explorer no y en firefox no se no loe probado solo  en chrome e Internet Explorer

Bueno empecemos el script sera este como ejemplo


<script>alert('Hola mundo Hacking')</script>


Luego pasamos a codificarlo en base64, yo visite esta pagina pero en Internet hay varias paginas

https://www.base64encode.org/

Y el resultado es este:

PHNjcmlwdD5hbGVydCgnSG9sYSBtdW5kbyBIYWNraW5nJyk8L3NjcmlwdD4=


Ahora pasaremos a crear nuestro código html donde incrustaremos el link y el código sera este

<html>
<head><title>poc</title>
</head>
<body>
<a href="AQUI IRA EL SCRIPT">Ejecutar Script</a>
</body>
</html>


Ya tenemos nuestro código html y donde dice "AQUI IRA EL SCRIPT" es donde insertaremos el script codificado en base64 junto con estos parámetros:


"data:text/html;charset=utf-8;base64,PHNjcmlwdD5hbGVydCgnRXJlcyB2dWxuZXJhYmxlJyk8L3NjcmlwdD4="


Eso es lo que iría en la la sección href y todo el código html completo que daría así

<html>
<head><title>poc</title>
</head>
<body>
<a href="data:text/html;charset=utf-8;base64,PHNjcmlwdD5hbGVydCgnSG9sYSBtdW5kbyBIYWNraW5nJyk8L3NjcmlwdD4=">Download!</a>
</body>
</html>


Ahora pasaremos a aguardarlo con la extensión html y al ejecutarlo nos a parecerá la pagina así





Ahora daremos clic en el y nos mostrara el mensaje siguiente:




Bueno ahora si queremos descargar el script como archivo tendremos que remplazar lo siguiente


"data:text/html;charset=utf-8;"


Por


"data:application/octet-stream;"

Y al hiperviculo le añadiremos el atributo "Download" quedando así el código html


<html>
<head><title>poc</title>
</head>
<body>
<a href="data:application/octet-stream;base64,PHNjcmlwdD5hbGVydCgnSG9sYSBtdW5kbyBIYWNraW5nJyk8L3NjcmlwdD4=" download="archivo.js">Descargar</a>
</body>
</html>


En el atributo download pueden especificar la extensión que quieran yo puse ".js" solo para demostrar el ejemplo.

Y ahora si lo ejecutamos y presionamos el enlace descarga el archivo así:



Muestra ese mensaje ya que es una extensión peligrosa, pero si le cambian la extensión a "txt" no les mostrara ese mensaje.


Bueno es todo y esto también funciona con la etiqueta <img> de html para esconder las imágenes en el código html

Saludos Flamer