Home Programacion Decodificar un base 64

Decodificar un base 64

Decodificar un base 64

Base 64, como bien sabemos es un código de programación el cual usan muchos sitios para proteger sus diseños, así como imágenes de ser modificadas… pero esto parece ser difícil para usuarios novatos por eso dejo este tutorial para decodificar un base 64 paso a paso, aunque ya para los más avanzados les parecerá una pequeña tontería…

- ¿ Fines por los cuales día a día son más los programadores que protegen sus códigos en sus sitios?

Pues sencillamente es para prevenir el robo de contenido de una web al igual que otros intentan prevenirlo bloqueando el clic derecho cosa que en los blogs no funcionaría ya que hay muchas formas de copiar el contenido.

Día a día con todo lo dicho anteriormente, nos encontraremos más sitios webs o blogs protegiendo sus sitios con distintas artimañas de ahí que hago este tutorial para ayudaros y que esto no sea un problema para si por ejemplo adquirís un tema de un Blog esto no os obligue a tener que buscar otro. Hablo de este ejemplo porque es algo muy común en la web 2.0 actual.

Y vamos al asunto de descifrar un base 64 , tenemos un código que es el expuesto abajo:

PHP:

  1. <?php $_F=__FILE__;$_X=‘Pz4JPGQ0diBjbDFzcz0iY2w1MXIiPjwvZDR2
  2. Pg0KCQ0KCTxkNHYgNGQ9ImYyMnQ1ciI+DQoNCgkNCgkJPHA+JmMycH
  3. k7IGEwMDkgPDEgaHI1Zj0iPD9waHAgYmwyZzRuZjIoJzNybCcpOyA/PiI
  4. gdDR0bDU9Ijw/cGhwIGJsMmc0bmYyKCduMW01Jyk7ID8+Ij48P3BocC
  5. BibDJnNG5mMignbjFtNScpOyA/PjwvMT4gLSA8P3BocCBibDJnNG5mMi
  6. gnZDVzY3I0cHQ0Mm4nKTsgPz48YnIgLz4NCgkJQW50NFMyYzQxbCB0
  7. aDVtNSBieSA8MSBocjVmPSJodHRwOi8vd3d3LncyMnRoNW01cy5jMm
  8. 0iIHQxcmc1dD0iX2JsMW5rIj53MjJ0aDVtNXM8LzE+ICBBbmQgU2gxcjV
  9. kIDF0IDwxIGhyNWY9Imh0dHA6Ly93d3cubjVtNXM0c201ZDQxLnRrIiB
  10. 0NHRsNT0iVzJyZHByNXNzIHRoNW01cyIgdDFyZzV0PSJfdDJwIj5ORU1
  11. FU0lTTUVESUE8NG1nIHNyYz0iPD9waHAgYmwyZzRuZjIoJ3Q1bXBsM
  12. XQ1X2Q0cjVjdDJyeScpOz8+LzRtMWc1cy80YzJucy93MjJ0aDVtNXMu
  13. cG5nIiAxbHQ9IlcyMnRoNW01cyIgLz48LzE+DQoJCTxkNHYgY2wxc3M
  14. 9ImNsNTFyIj48L2Q0dj4NCg0KCQkNCgk8L2Q0dj48IS0tIC8jZjIydDVyI
  15. C0tPg0KDQo8L2Q0dj48IS0tIC8jYzJudDE0bjVyIC0tPg0KDQo=’;

Para continuar, tenemos que cerciorarnos que el código está en base 64 lo cual lo comprobamos fijándonos en la expresión fijada más adelante que suele estar en la mayoría de los casos expuesta así obvio está que, uno que programe perfectamente no dejará pistas que es un código de base 64…

Después de haber descodificado el código, que  hay que copiar solo el código en base64, no todo el código, exactamente lo que esta entre < ?php $_F=__FILE__;$_X=' y ';eval luego le damos decode y listo abajo nos aparecerá nuestro código decodificado.

Pues abajo está en código resultante, aunque parece fácil, el programador o diseñador lo que ha hecho ha sido proteger más aún el código lo cual nos obliga a seguir decodificándolo…

HTML:

  1. ?&gt;
  2. &amp;c2py; a009 &lt;1 hr5f=”&lt;?php bl2g4nf2(’3rl’); ?&gt;” t4tl5=”&lt;?php bl2g4nf2(‘n1m5′); ?&gt;&gt;&lt;?php bl2g4nf2(‘n1m5′); ?&gt;&lt;?php bl2g4nf2(‘d5scr4pt42n’); ?&gt;
  3. Ant4S2c41l th5m5 by &lt;1 hr5f=”http://www.w22th5m5s.c2m” t1rg5t=”_bl1nk”&gt;w22th5m5s  And Sh1r5d 1t &lt;1 hr5f=”http://www.n5m5s4sm5d41.tk” t4tl5=”W2rdpr5ss th5m5s” t1rg5t=”_t2p”&gt;NEMESISMEDIA&lt;4mg src=”&lt;?php bl2g4nf2(‘t5mpl1t5_d4r5ct2ry’);?&gt;/4m1g5s/4c2ns/w22th5m5s.png” 1lt=”W22th5m5s” /&gt;
  4. <!– /#f22t5r –>
  5. <!– /#c2nt14n5r –>

Claramente se aprecia que es HTML el formato pero hay algunas expresiones raras como la que os muestro abajo:

HTML:

  1. ?&gt;

Debería ser algo como esto:

HTML:

  1. ?&gt;

Después de haberlo decodificado de lógica apreciamos que , hay otro código base64 mas adelante:

PHP:

  1. eval(base64_decode(‘JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g
  2. 9c3RydHIoJF9YLCcxMjM0NTZhb3VpZScsJ2FvdWllMTIzNDU2Jyk7JF
  3. 9SPWVyZWdfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfW
  4. Ck7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw==’));?&gt;

Decodificandolo:

PHP:

  1. ($_X);$_X=strtr($_X,’123456aouie’,‘aouie123456′);
  2. $_R=ereg_replace(‘__FILE__’,“‘”.$_F.“‘”,$_X);
  3. eval($_R);$_R=0;$_X=0;

Recordar que no hace falta saber PHP para comprobar o cerciorarnos que hemos encontrado la forma de descifrar el código expuesto lo comprobamos donde aparece lo siguiente:

PHP:

  1. ’123456aouie’,‘aouie123456′);

Dice reemplace:

1 por a
2 por o
3 por u
4 por i
5 por e

Y ya está, ahora lo que deberemos hacer será copiar el código anterior en un editor tipo Dreamweaver o incluso Bloc de Notas de Windows, dale a reemplazar y ponemos lo siguiente:

Buscar:

1

Reemplazar por:

a

Hacemos lo mismo con todo lo demás del código hasta que cuando hayamos terminado aparezca el código completo:

HTML:

  1. ?&gt;
  2. <div id=“footer”>
  3. © 2009 <a title=“&lt;?php bloginfo(‘name’); ?&gt;” href=“&lt;?php bloginfo(‘url’); ?&gt;”>&lt;?php bloginfo(‘name’); ?&gt;</a>&lt;?php bloginfo(‘description’); ?&gt;
  4. AntiSocial theme by <a href=“http://www.woothemes.com” target=“_blank”>woothemes</a> And Shared at <a title=“WordPress themes” href=“http://www.nemesismedia.tk” target=“_top”>NEMESISMEDIA<img src=“&lt;?php bloginfo(‘template_directory’);?/&gt;/images/icons/woothemes.png” alt=“Woothemes” /></a></div>
  5. <!– /#footer –>
  6. <!– /#container –>
  7. ?&gt;
  8. <div id=“footer”>
  9. © 2009 <a title=“&lt;?php bloginfo(‘name’); ?&gt;” href=“&lt;?php bloginfo(‘url’); ?&gt;”>&lt;?php bloginfo(‘name’); ?&gt;</a>&lt;?php bloginfo(‘description’); ?&gt;</div>
  10. <!– /#footer –>
  11. <!– /#container –>

Y hasta aquí llega este minitutorial para descifrar un base 64 espero que os sirva si necesitan ayudar dejar algún comentario que no cuesta nada :P.