<?xml version="1.0" encoding="ISO-8859-15"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sergio Hernando</title>
	<atom:link href="http://www.sahw.com/wp/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sahw.com/wp</link>
	<description>Seguridad de la Información y Auditoría de Sistemas</description>
	<lastBuildDate>Wed, 10 Mar 2010 19:59:07 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Auditoría de contraseñas en Oracle Database (4 de 4). Ataques de diccionario sobre claves Oracle</title>
		<link>http://www.sahw.com/wp/archivos/2010/03/10/auditoria-de-contrasenas-en-oracle-database-4-de-4-ataques-de-diccionario-sobre-claves-oracle/</link>
		<comments>http://www.sahw.com/wp/archivos/2010/03/10/auditoria-de-contrasenas-en-oracle-database-4-de-4-ataques-de-diccionario-sobre-claves-oracle/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 19:58:07 +0000</pubDate>
		<dc:creator>Sergio Hernando</dc:creator>
				<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[Auditoria Oracle]]></category>
		<category><![CDATA[Contraseñas Oracle]]></category>
		<category><![CDATA[Oracle audit]]></category>
		<category><![CDATA[Oracle passwords]]></category>
		<category><![CDATA[Oracle security]]></category>
		<category><![CDATA[Seguridad Oracle]]></category>

		<guid isPermaLink="false">http://www.sahw.com/wp/?p=5886</guid>
		<description><![CDATA[TEMARIO
Auditoría de contraseñas en Oracle Database (1 de 4). Introducción y primeros pasos
Auditoría de contraseñas en Oracle Database (2 de 4). Adivinación de Oracle SID (System ID)
Auditoría de contraseñas en Oracle Database (3 de 4). Fuerza bruta sobre claves Oracle
Auditoría de contraseñas en Oracle Database (4 de 4). Ataques de diccionario sobre claves Oracle
Finalizamos la [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>TEMARIO</p>
<p><a href="http://www.sahw.com/wp/archivos/2010/02/27/auditoria-de-contrasenas-en-oracle-database-1-de-4-introduccion-y-primeros-pasos/">Auditoría de contraseñas en Oracle Database (1 de 4). Introducción y primeros pasos</a><br />
<a href="http://www.sahw.com/wp/archivos/2010/02/28/auditoria-de-contrasenas-en-oracle-database-2-de-4-adivinacion-de-oracle-sid-system-id/">Auditoría de contraseñas en Oracle Database (2 de 4). Adivinación de Oracle SID (System ID)</a><br />
<a href="http://www.sahw.com/wp/archivos/2010/03/02/auditoria-de-contrasenas-en-oracle-database-3-de-4-fuerza-bruta-sobre-claves-oracle/">Auditoría de contraseñas en Oracle Database (3 de 4). Fuerza bruta sobre claves Oracle</a><br />
<strong><a href="http://www.sahw.com/wp/archivos/2010/03/10/auditoria-de-contrasenas-en-oracle-database-4-de-4-ataques-de-diccionario-sobre-claves-oracle/">Auditoría de contraseñas en Oracle Database (4 de 4). Ataques de diccionario sobre claves Oracle</a></strong></p></blockquote>
<p>Finalizamos la serie hablando de ataques de diccionario en el mundo de las contraseñas de Oracle. <a href="http://www.sahw.com/wp/archivos/2010/03/02/auditoria-de-contrasenas-en-oracle-database-3-de-4-fuerza-bruta-sobre-claves-oracle/">En el tercer capítulo de la entrega</a> comentamos cómo se obtenían las distintas combinaciones de usuario y hash de clave en Oracle. Recordad que propusimos algunos ejemplos reales en una instalación XE, disponibles en <a href="http://www.sahw.com/images/oracle_audit/usuarios.txt">http://www.sahw.com/images/oracle_audit/usuarios.txt</a>.</p>
<p>Los ataques de diccionario son tremendamente fáciles de ejecutar cuando se dispone de los <em>hashes</em>, y dependerá de la calidad de nuestro diccionario, así como de la complejidad de la clave a analizar, el éxito de la prueba. Como en cualquier otro ataque de diccionario, se trata de obtener el <em>hash</em> de una palabra conocida (presente en el diccionario) y verificar si es igual al del usuario cuya contraseña estamos analizando. En caso de que coincidan, la clave del usuario será la palabra que estemos empleando en el diccionario.</p>
<p><strong>Ejemplos</strong></p>
<p>Una de las herramientas más conocidas, aunque no es la única, es <em>checkpwd</em>, que podéis obtener en <a href="http://www.red-database-security.com/software/checkpwd.html">http://www.red-database-security.com/software/checkpwd.html</a>. Su empleo es extremadamente sencillo, y puede ejecutarse en Windows, Linux y MacOS. Cuenta además con un binario que realizará la verificación sin mostrar la contraseña, con lo que se puede preservar el conocimiento de la misma. Adicionalmente permite al auditor ejecutar la verificación tanto <em>offline</em> como directamente contra la base de datos, método con el cual no haría falta obtener la relación de <em>hashes</em>.</p>
<p><img src="http://www.sahw.com/images/oracle_audit/passwords9.png" alt="Oracle Audit" /></p>
<p>En el siguiente ejemplo, conectamos a la base de datos y hacemos la verificación. El operador <em>-quiet</em> hará que solo se muestren las contraseñas que sea posible vencer por ataque de diccionario, no apareciendo las claves que resitan el ataque:</p>
<p><img src="http://www.sahw.com/images/oracle_audit/passwords10.png" alt="Oracle Audit" /></p>
<p>Los métodos de ataque en línea no están recomendados, salvo que se tenga permiso expreso para ello. Por tanto, si tenéis que analizar <em>offline</em> un fichero con cientos o incluso miles de usuarios, emplear la utilidad se vuelve tedioso, ya que para cada caso, hay que introducir el usuario y el <em>hash</em>. Para facilitaros la vida, he escrito este sencillo script Perl con el que sólo hay que procurar tener un fichero llamado <em>usersandpasswordhashes.txt</em> en el que en cada linea, separado por al menos un espacio, haya una relación de usuario y <em>hash</em>. Los usuarios de sistemas no Windows, siéntanse libres de modificar las llamadas al sistema.</p>
<pre class="perl">&nbsp;
<span style="color: #808080; font-style: italic;">#!/usr/bin/perl -w</span>
<span style="color: #808080; font-style: italic;"># chechpwd.exe automation </span>
&nbsp;
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$input</span>=<span style="color: #ff0000;">&quot;usersandpasswordhashes.txt&quot;</span>;
<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$output</span>=<span style="color: #ff0000;">&quot;checkpwd_audit_results.txt&quot;</span>;
&nbsp;
<a href="http://perldoc.perl.org/functions/open.html"><span style="color: #000066;">open</span></a> <span style="color: #66cc66;">&#40;</span>INPUT,<span style="color: #ff0000;">&quot;&lt; $input&quot;</span><span style="color: #66cc66;">&#41;</span> || <a href="http://perldoc.perl.org/functions/die.html"><span style="color: #000066;">die</span></a> <span style="color: #ff0000;">&quot;ERROR: Cannot open entry file $input<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>;
&nbsp;
<span style="color: #b1b100;">while</span> <span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$line</span>=<span style="color: #009999;">&lt;INPUT&gt;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>	
&nbsp;
	<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">@string</span> = <a href="http://perldoc.perl.org/functions/split.html"><span style="color: #000066;">split</span></a> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot; &quot;</span>, <span style="color: #0000ff;">$line</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$userandhash</span> = <span style="color: #0000ff;">$string</span><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#93;</span>.<span style="color: #ff0000;">&quot;:&quot;</span>.<span style="color: #0000ff;">$string</span><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#93;</span>;
    <a href="http://perldoc.perl.org/functions/print.html"><span style="color: #000066;">print</span></a> <span style="color: #ff0000;">&quot;Analyzing username $string[0]<span style="color: #000099; font-weight: bold;">\n</span><span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>;
	<a href="http://perldoc.perl.org/functions/system.html"><span style="color: #000066;">system</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;ECHO ===================== &gt;&gt; $output&quot;</span><span style="color: #66cc66;">&#41;</span>;
	<a href="http://perldoc.perl.org/functions/system.html"><span style="color: #000066;">system</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;ECHO $string[0] &gt;&gt; $output&quot;</span><span style="color: #66cc66;">&#41;</span>;
	<a href="http://perldoc.perl.org/functions/system.html"><span style="color: #000066;">system</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;ECHO ===================== &gt;&gt; $output&quot;</span><span style="color: #66cc66;">&#41;</span>;
	<a href="http://perldoc.perl.org/functions/system.html"><span style="color: #000066;">system</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;checkpwd.exe $userandhash password_file.txt &gt;&gt; $output&quot;</span><span style="color: #66cc66;">&#41;</span>;
    <a href="http://perldoc.perl.org/functions/system.html"><span style="color: #000066;">system</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;ECHO. &gt;&gt; $output&quot;</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #66cc66;">&#125;</span> 
&nbsp;
<a href="http://perldoc.perl.org/functions/close.html"><span style="color: #000066;">close</span></a> INPUT;
&nbsp;</pre>
<p>Tenéis un ejemplo del fichero que produce el <em>script</em> en <a href="http://www.sahw.com/images/oracle_audit/checkpwd_audit_results.txt">http://www.sahw.com/images/oracle_audit/checkpwd_audit_results.txt</a></p>
<p>Pues aquí acaba nuestro recorrido por la auditoría de contraseñas en Oracle Database. Espero que estos contenidos os sean de utilidad y os ayuden a mejorar la calidad de las claves presentes en vuestros sistemas.</p>
<p>Un saludo,</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sahw.com/wp/archivos/2010/03/10/auditoria-de-contrasenas-en-oracle-database-4-de-4-ataques-de-diccionario-sobre-claves-oracle/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Auditoría de contraseñas en Oracle Database (3 de 4). Fuerza bruta sobre claves Oracle</title>
		<link>http://www.sahw.com/wp/archivos/2010/03/02/auditoria-de-contrasenas-en-oracle-database-3-de-4-fuerza-bruta-sobre-claves-oracle/</link>
		<comments>http://www.sahw.com/wp/archivos/2010/03/02/auditoria-de-contrasenas-en-oracle-database-3-de-4-fuerza-bruta-sobre-claves-oracle/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 23:32:07 +0000</pubDate>
		<dc:creator>Sergio Hernando</dc:creator>
				<category><![CDATA[Auditoria]]></category>
		<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[Auditoria Oracle]]></category>
		<category><![CDATA[Contraseñas Oracle]]></category>
		<category><![CDATA[Oracle audit]]></category>
		<category><![CDATA[Oracle passwords]]></category>
		<category><![CDATA[Oracle security]]></category>
		<category><![CDATA[Seguridad Oracle]]></category>

		<guid isPermaLink="false">http://www.sahw.com/wp/?p=5860</guid>
		<description><![CDATA[TEMARIO
Auditoría de contraseñas en Oracle Database (1 de 4). Introducción y primeros pasos
Auditoría de contraseñas en Oracle Database (2 de 4). Adivinación de Oracle SID (System ID)
Auditoría de contraseñas en Oracle Database (3 de 4). Fuerza bruta sobre claves Oracle
Auditoría de contraseñas en Oracle Database (4 de 4). Ataques de diccionario sobre claves Oracle
Buenas,
Continuando con [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>TEMARIO</p>
<p><a href="http://www.sahw.com/wp/archivos/2010/02/27/auditoria-de-contrasenas-en-oracle-database-1-de-4-introduccion-y-primeros-pasos/">Auditoría de contraseñas en Oracle Database (1 de 4). Introducción y primeros pasos</a><br />
<a href="http://www.sahw.com/wp/archivos/2010/02/28/auditoria-de-contrasenas-en-oracle-database-2-de-4-adivinacion-de-oracle-sid-system-id/">Auditoría de contraseñas en Oracle Database (2 de 4). Adivinación de Oracle SID (System ID)</a><br />
<strong><a href="http://www.sahw.com/wp/archivos/2010/03/02/auditoria-de-contrasenas-en-oracle-database-3-de-4-fuerza-bruta-sobre-claves-oracle/">Auditoría de contraseñas en Oracle Database (3 de 4). Fuerza bruta sobre claves Oracle</a></strong><br />
Auditoría de contraseñas en Oracle Database (4 de 4). Ataques de diccionario sobre claves Oracle</p></blockquote>
<p>Buenas,</p>
<p>Continuando con lo explicado en los dos primeros artículos toca hablar de cómo utilizar ataques de fuerza bruta para evaluar la calidad de las claves Oracle. No obstante, antes de hacerlo, es preciso comprender dónde y cómo se almacenan las claves.</p>
<p><strong>Distintas versiones, distintas ubicaciones</strong></p>
<p>Las contraseñas Oracle se guardan, por norma general, en una tabla llamada <em>DBA_USERS</em>. Excepciones a esta norma hay muchas, así por ejemplo, <em>SYS.USER$</em>, o la tabla <em>USERS$</em>, lugar donde se almacenan en la versión XE que estamos utilizando para esta serie de artículos.</p>
<p><img src="http://www.sahw.com/images/oracle_audit/passwords1.png" alt="Oracle passwords" /></p>
<p>Históricamente la presencia de numerosos usuarios de sistema en la configuración de fábrica ha supuesto y sigue suponiendo muchos problemas para la seguridad Oracle. Me recuerda al caso de los servidores de largo y medio alcance de IBM, donde los sistemas operativos suelen venir con una cantidad ingente de usuarios creados que si no son modificados pueden provocar un problema cuando el sistema entre en producción.</p>
<p>A lo largo de los años, y según han ido cambiando las versiones de Oracle, también han ido cambiando los métodos de generación y conservación de claves. Desde el cifrado de la concatenación de usuario y clave en las versiones entre 7 y 10g R2 hasta el empleo de <em>salts</em> en 11g, donde se emplea SHA-1 para generar un <em>hash</em> de la concatenación de clave y <em>salt</em>. Para cada versión el auditor debe repasar la documentación y comprender cómo y dónde se conservan las claves. Tenéis un estupendo artículo al respecto en <a href="http://www.red-database-security.com/whitepaper/oracle_passwords.html">http://www.red-database-security.com/whitepaper/oracle_passwords.html</a> que puede servir de orientación.</p>
<p>Es importante reseñar que desde la versión 11g en adelante los <em>hashes</em> no se almacenan en DBA_USERS. En esta versión hay que recuperar los campos <em>name</em> y <em>spare4</em> de <em>SYS.USER$</em>. </p>
<blockquote><p>SELECT name,spare4 FROM SYS.USER$ WHERE password is not null;</p></blockquote>
<p>Tampoco entraremos a comentar otras ubicaciones donde puedan estar presentes los <em>hashes</em> de las claves, como las vistas que se hayan creado, duplicados de las tablas, <em>rollbacks</em>, copias de seguridad, etc. En definitiva, la misión del auditor es identificar dónde están las claves y obtener la relación usuario-<em>hash</em> para poder así realizar una verificación de calidad de las mismas. También es importante determinar quién puede obtener esos datos, qué permisos son necesarios y por supuesto, hay que indagar en todos los métodos posibles para obtenerlos, incluyendo el <em>pentesting</em>.</p>
<p><strong>Caja negra, gris y blanca</strong></p>
<p>En el primero de los casos, las pruebas irán encaminadas, mediante <em>pentesting</em>, a hacernos con un listado de usuarios y <em>hash</em> de clave para tratar de obtener claves en claro. El ataque constará de dos partes:</p>
<ul>
<li>Intrusión al sistema, habitualmente por cuentas con clave por defecto no modificadas o bien aprovechando algún <em>exploit</em> que nos permita el acceso.</li>
<li>Extracción de relación de usuarios y <em>hashes</em>, bien por haber logrado acceso privilegiado que permita hacerlo directamente, bien por provocar escalada de privilegios que nos permita finalmente obtener la relación. En algunos casos, si la configuración de seguridad no es adecuada, bastará con tener los privilegios mínimos para obtener la relación.</li>
</ul>
<p>En el caso de caja gris el auditor tratará de obtener la relación de usuarios empleando las credenciales no privilegiadas que le han sido entregadas. Es frecuente, por mala configuración, que incluso los perfiles más bajos puedan obtener la relación de usuarios y <em>hashes</em>. Este modelo es análogo al de caja negra, pero con la diferencia de que el auditor contará de partida con una cuenta en el sistema.</p>
<p>Para el caso de caja blanca, que será el que ejemplifiquemos, el auditor solicitará al DBA que extraiga la relación de usuarios y <em>hashes</em> para analizarlas.</p>
<p><strong>Los usuarios especiales y los datos críticos, el botín más cotizado</strong></p>
<p>Siempre que sea posible, habida cuenta de que por defecto son las cuentas más poderosas, el análisis tendrá en cuenta especialmente los siguientes usuarios: SYS, SYSTEM, SYSMAN y DBSNMP. En la documentación hallaréis descripciones de cada uno de estos usuarios. </p>
<p>No debemos perder de vista los usuarios con privilegios elevados (DBA y otros) que se hayan podido crear tras la instalación. Basta con descuidar un sólo perfil privilegiado para que un atacante tome control total de la instalación. Es tan importante que SYS disponga de una clave de alta calidad como cualquier otro usuario creado con perfil suficiente para acceder a los datos críticos. No olvidemos que en Oracle la seguridad debe siempre enfocarse a la seguridad de los datos, así pues, si el usuario SHERNANDO tiene privilegios mínimos globales pero es dueño de la tabla más importante del sistema, su compromiso es equivalente al de comprometer la cuenta SYS.</p>
<p><strong>Fuerza bruta sobre las claves</strong></p>
<p>En nuestro ejemplo vamos a crear algunos usuarios adicionales con distintas claves:</p>
<p><img src="http://www.sahw.com/images/oracle_audit/passwords2.png" alt="Oracle passwords" /></p>
<p>A continuación, sacaremos a fichero todas las relaciones usuario-<em>hash</em>, empleando el comando <em>spool</em>.</p>
<p><img src="http://www.sahw.com/images/oracle_audit/passwords3.png" alt="Oracle passwords" /></p>
<p>Recogemos el fichero, en este caso de <em>C:\XEClient\bin</em> y lo ponemos a buen recaudo. He dejado una copia del fichero en <a href="http://www.sahw.com/images/oracle_audit/usuarios.txt">http://www.sahw.com/images/oracle_audit/usuarios.txt</a> por si queréis utilizarlo.</p>
<p>Hay infinidad de programas para someter a los <em>hashes</em> obtenidos a fuerza bruta. <a href="http://www.toolcrypt.org/index.html?orabf">Uno de los más populares es orabf</a>, que incluye una lista de claves habituales y diversas opciones para construir los ataques de fuerza bruta. Veamos un ejemplo de cómo se utiliza:</p>
<p><img src="http://www.sahw.com/images/oracle_audit/passwords4.png" alt="Oracle passwords" /></p>
<p>En el ejemplo anterior vemos cómo el usuario SYS tiene una clave por defecto llamada <em>password</em>, que ni siquiera ha sido preciso romper mediante fuerza bruta puesto que estaba en el diccionario. Otro ejemplo: </p>
<p><img src="http://www.sahw.com/images/oracle_audit/passwords5.png" alt="Oracle passwords" /></p>
<p>En este caso ha bastado un minuto para averiguar la clave. Veamos qué pasa si cambiamos la clave de <em>pass2</em> a <em>clave2</em> (ampliamos de 5 a 6 caracteres)</p>
<p><img src="http://www.sahw.com/images/oracle_audit/passwords6.png" alt="Oracle passwords" /></p>
<p>Sometemos el nuevo <em>hash</em> a fuerza bruta:</p>
<p><img src="http://www.sahw.com/images/oracle_audit/passwords7.png" alt="Oracle passwords" /></p>
<p>Como era previsible, el tiempo de ataque se ha elevado a varios minutos. A mayor calidad de la clave, más tiempo. Por lo general el tiempo de cómputo elevado no hace rentable los intentos de fuerza bruta en claves complejas de 7 o más caracteres. </p>
<p>Existen infinidad de herramientas para fuerza bruta: herramientas W32 como la mostrada, UNIX, procedimientos PL/SQL, scripts Perl ... Tenéis una buena selección de las mismas en <a href="http://www.petefinnigan.com/tools.htm">http://www.petefinnigan.com/tools.htm</a>, y cada día aparecen más. Cuestión de probarlas, y elegir la que más os guste.</p>
<p><strong>Fuerza bruta con múltiples cuentas</strong></p>
<p>Entre las muchas herramientas existentes <a href="http://inguma.sourceforge.net/">siempre recomiendo Inguma</a>, de Joxean Koret, un <em>framework</em> de seguridad bastante completo que además tiene funcionalidades específicas para Oracle. Además de su versatilidad, Inguma está escrita en Python, con lo que es multiplataforma, y para el caso que nos ocupa tiene un módulo de fuerza bruta para contraseñas Oracle llamado <em>bruteora</em> que podemos lanzar contra las cuentas usuales en la base de datos:</p>
<p><img src="http://www.sahw.com/images/oracle_audit/passwords8.png" alt="Oracle passwords" /></p>
<p>Al ser código abierto, es fácil incorporar las cuentas declaradas en la base de datos para complementar las cuentas frecuentes empleadas por Inguma, con lo que finalmente es posible obtener también una valoración de la calidad de todas las contraseñas que existan en el sistema. Este método, a diferencia de otros, es <em>online</em>, con lo que el auditor debe tener presente el impacto sobre el sistema a auditar.</p>
<p>Un saludo,</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sahw.com/wp/archivos/2010/03/02/auditoria-de-contrasenas-en-oracle-database-3-de-4-fuerza-bruta-sobre-claves-oracle/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Auditoría de contraseñas en Oracle Database (2 de 4). Adivinación de Oracle SID (System ID)</title>
		<link>http://www.sahw.com/wp/archivos/2010/02/28/auditoria-de-contrasenas-en-oracle-database-2-de-4-adivinacion-de-oracle-sid-system-id/</link>
		<comments>http://www.sahw.com/wp/archivos/2010/02/28/auditoria-de-contrasenas-en-oracle-database-2-de-4-adivinacion-de-oracle-sid-system-id/#comments</comments>
		<pubDate>Sun, 28 Feb 2010 14:13:02 +0000</pubDate>
		<dc:creator>Sergio Hernando</dc:creator>
				<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[Auditoria Oracle]]></category>
		<category><![CDATA[Contraseñas Oracle]]></category>
		<category><![CDATA[Oracle audit]]></category>
		<category><![CDATA[Oracle passwords]]></category>
		<category><![CDATA[Oracle security]]></category>
		<category><![CDATA[Seguridad Oracle]]></category>

		<guid isPermaLink="false">http://www.sahw.com/wp/?p=5825</guid>
		<description><![CDATA[TEMARIO
Auditoría de contraseñas en Oracle Database (1 de 4). Introducción y primeros pasos
Auditoría de contraseñas en Oracle Database (2 de 4). Adivinación de Oracle SID (System ID)
Auditoría de contraseñas en Oracle Database (3 de 4). Fuerza bruta sobre claves Oracle
Auditoría de contraseñas en Oracle Database (4 de 4). Ataques de diccionario sobre claves Oracle
Hola,
En la [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>TEMARIO</p>
<p><a href="http://www.sahw.com/wp/archivos/2010/02/27/auditoria-de-contrasenas-en-oracle-database-1-de-4-introduccion-y-primeros-pasos/">Auditoría de contraseñas en Oracle Database (1 de 4). Introducción y primeros pasos</a><br />
<strong><a href="http://www.sahw.com/wp/archivos/2010/02/28/auditoria-de-contrasenas-en-oracle-database-2-de-4-adivinacion-de-oracle-sid-system-id/">Auditoría de contraseñas en Oracle Database (2 de 4). Adivinación de Oracle SID (System ID)</a></strong><br />
Auditoría de contraseñas en Oracle Database (3 de 4). Fuerza bruta sobre claves Oracle<br />
Auditoría de contraseñas en Oracle Database (4 de 4). Ataques de diccionario sobre claves Oracle</p></blockquote>
<p>Hola,</p>
<p>En la introducción que hicimos ayer vimos que para conectar a una instancia Oracle es necesario, antes de autenticarnos, alcanzar el <em>Oracle Listener</em>, y para eso hacen falta 3 datos:</p>
<ul>
<li>La dirección de la máquina (<em>hostname</em> o IP)</li>
<li>El puerto donde Oracle Listener está a la escucha</li>
<li>El SID (System ID), o identificador del sistema</li>
</ul>
<p>El <em>listener</em> es un proceso que corre en el lado del servidor que como su propio nombre indica, realiza escuchas a las peticiones de conexión con el objetivo de gestionar las conexiones entrantes. Cuando se hace una petición, esta llega al <em>listener</em>, el cual verifica que contiene los parámetros que han sido definidos en el servidor (mediante el fichero <em>listener.ora</em>). Si la verificación es positiva, se permite al cliente peticionario establecer conexión con el servidor, lo que posibilita que pueda a posteriori autenticarse con su usuario y contraseña.</p>
<p>Este fichero está normalmente ubicado en <em>$ORACLE_HOME/network/admin</em>, si tenemos una versión UNIX, o en <em>ORACLE_HOME\network\admin</em> si tenemos una versión Windows. En el caso de la versión Express Edition que estamos utilizando para nuestros ejemplos, este fichero reside por defecto en <em>C:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\ADMIN</em> junto a los ficheros de configuración <em>sqlnet.ora</em> y <em>tnsnames.ora</em>, comentado en el artículo anterior. Por defecto, el fichero <em>listener.ora</em> tiene los siguientes contenidos:</p>
<blockquote><p>
SID_LIST_LISTENER =<br />
  (SID_LIST =<br />
    (SID_DESC =<br />
      (SID_NAME = PLSExtProc)<br />
      (ORACLE_HOME = C:\oraclexe\app\oracle\product\10.2.0\server)<br />
      (PROGRAM = extproc)<br />
    )<br />
    (SID_DESC =<br />
      (SID_NAME = CLRExtProc)<br />
      (ORACLE_HOME = C:\oraclexe\app\oracle\product\10.2.0\server)<br />
      (PROGRAM = extproc)<br />
    )<br />
  )</p>
<p>LISTENER =<br />
  (DESCRIPTION_LIST =<br />
    (DESCRIPTION =<br />
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))<br />
      (ADDRESS = (PROTOCOL = TCP)(HOST = nimoy)(PORT = 1521))<br />
    )<br />
  )</p>
<p>DEFAULT_SERVICE_LISTENER = (XE)</p></blockquote>
<p>Del fichero anterior se deduce que para la versión de Oracle Express que estamos utilizando, el SID principal es <em>XE</em>, que el host se llama <em>nimoy</em> (es local, puede ser invocado mediante 127.0.0.1) y que el puerto es 1521. Esta información casa a la perfección con las declaraciones que hay que hacer en <em>tnsnames.ora</em> documentadas en el artículo anterior. Estos son los tres datos que nos permitirán conectar al <em>listener</em>.</p>
<p><strong>¿Es el SID un dato adivinable?</strong></p>
<p>La respuesta es sí. Todo se basa en que si el SID es incorrecto cuando intentamos conectar se devuelve al cliente un mensaje <em>ORA-12505: TNS:listener does not currently know of SID given in connect descriptor</em>, lo que puede ser utilizado para determinar que pese a que la dirección y el puerto son correctos, el SID no lo es.</p>
<p>Esto hace extremadamente sencillo programar una utilidad que lance peticiones al <em>listener</em> empleando los SID más comunes, y que verifique si se devuelven mensajes del tipo ORA-12505, lo que permite dilucidar si la base de datos está empleado un SID por defecto o adivinable en cuestión de segundos. Ejemplos de adivinadores de SID son <a href="http://www.red-database-security.com/whitepaper/oracle_guess_sid.html">sidguess de Red Database Security</a>, o <a href="http://www.cqure.net/wp/sidguesser/">SIDguesser de Patrik Karlsson</a>. La diferencia fundamental entre ambas es que sidguess permite la adivinación del SID mediante ataque de diccionario y fuerza bruta, mientras que SIDguesser sólo emplea diccionario. Para esta última modalidad, tenéis publicada una lista de SIDs comunes en <a href="http://www.red-database-security.com/scripts/sid.txt">http://www.red-database-security.com/scripts/sid.txt</a>. </p>
<p>Otras herramientas para la adivinación de SID son:</p>
<ul>
<li><a href="http://inguma.sourceforge.net/">Inguma</a>, de Joxean Koret, un excelente framework que incluye un módulo específico de adivinación de SID (<em>CSidGuess.py</em>). Ojo: Requiere los módulos Python <em>cx_Oracle</em> y <em>readline</em></li>
<li>The Oracle Assessment Kit (OAK), de David Litchfield.  Se puede descargar en <a href="http://www.vulnerabilityassessment.co.uk/oak.htm">http://www.vulnerabilityassessment.co.uk/oak.htm</a></li>
<li>oscanner, también de Patrick Karlsson, que además de enumeración SID realiza otras tareas de auditoría en la base de datos. Se puede descargar en <a href="http://www.cqure.net/wp/oscanner/">http://www.cqure.net/wp/oscanner/</a></li>
<li>También es posible usar Metasploit para estos menesteres, a través del módulo <em>sid_brute</em>. Otros módulos están disponibles, como <em>spy_sid</em>, pero debe tenerse en cuenta que en las versiones 9.2.0.8 y superiores, el listener está protegido y hay que recurrir a la fuerza bruta o adivinación. En cualquier caso, la adivinación de SIDs puede ser obtenida mediante consultas directas al listener (<em>sid_enum</em>), aplicando fuerza bruta y/o diccionario (<em>sid_brute</em>), así como realizando consultas a otros componentes que puedan contener el SID (<em>sid_enum+spy_sid</em>)</li>
</ul>
<p>Algunos ejemplos:</p>
<p><strong>SIDguesser en la instalación por defecto de Oracle XE</strong></p>
<p><img src="http://www.sahw.com/images/oracle_audit/sidguesser1.png" alt="Oracle SIDguesser " /></p>
<p><strong>sidguess (diccionario) en la instalación por defecto de Oracle XE</strong></p>
<p><img src="http://www.sahw.com/images/oracle_audit/sidguess1.png" alt="Oracle sidguess" /></p>
<p><strong>sidguess (fuerza bruta) en la instalación por defecto de Oracle XE</strong></p>
<p><img src="http://www.sahw.com/images/oracle_audit/sidguess2.png" alt="Oracle sidguess" /></p>
<p><strong>OAK (ora-brutesid) en la instalación por defecto de Oracle XE</strong></p>
<p><img src="http://www.sahw.com/images/oracle_audit/oak1.png" alt="OAK" /></p>
<p><strong>OAK (ora-getsid) en la instalación por defecto de Oracle XE</strong></p>
<p><img src="http://www.sahw.com/images/oracle_audit/oak2.png" alt="OAK" /></p>
<p><strong>inguma (sidguess) en la instalación por defecto de Oracle XE</strong></p>
<p><img src="http://www.sahw.com/images/oracle_audit/inguma1.png" alt="inguma" /></p>
<p><strong>Metasploit (sid_brute) en la instalación por defecto de Oracle XE</strong></p>
<p><img src="http://www.sahw.com/images/oracle_audit/metasploit1.png" alt="Oracle Metasploit" /></p>
<p><strong>Enumeración Metasploit (sid_enum) fallida por protección de listener</strong></p>
<p><img src="http://www.sahw.com/images/oracle_audit/metasploit2.png" alt="Oracle Metasploit" /></p>
<p>Y que nadie olvide una de las maneras más simples de obtener los SID: empleando <em>Oracle listener control utility</em>. Nótese que los comandos <em>status</em> y <em>services</em> de esta utilidad no pueden ser lanzados remotamente si la autenticación contra el sistema operativo está activa (<em>LOCAL_OS_AUTHENTICATION</em>), cosa que sucede por defecto en las versiones 10g R1 y superiores.</p>
<p><img src="http://www.sahw.com/images/oracle_audit/lsnrctl.png" alt="Listener Control" /></p>
<p><img src="http://www.sahw.com/images/oracle_audit/lsnrctl2.png" alt="Listener Control" /></p>
<p>A la vista de lo explicado, el primer paso fundamental para proteger las contraseñas es proteger la base de datos. La regla número uno del buen DBA es siempre instalar instancias de Oracle cuyo SID no sea adivinable y cuyo contenido no sea revelable mediante ningún tipo de consulta, y a la vista está el porqué.</p>
<p>Un saludo,</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sahw.com/wp/archivos/2010/02/28/auditoria-de-contrasenas-en-oracle-database-2-de-4-adivinacion-de-oracle-sid-system-id/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Auditoría de contraseñas en Oracle Database (1 de 4). Introducción y primeros pasos</title>
		<link>http://www.sahw.com/wp/archivos/2010/02/27/auditoria-de-contrasenas-en-oracle-database-1-de-4-introduccion-y-primeros-pasos/</link>
		<comments>http://www.sahw.com/wp/archivos/2010/02/27/auditoria-de-contrasenas-en-oracle-database-1-de-4-introduccion-y-primeros-pasos/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 14:27:43 +0000</pubDate>
		<dc:creator>Sergio Hernando</dc:creator>
				<category><![CDATA[Auditoria]]></category>
		<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[Auditoria Oracle]]></category>
		<category><![CDATA[Oracle audit]]></category>
		<category><![CDATA[Oracle database]]></category>
		<category><![CDATA[Oracle security]]></category>

		<guid isPermaLink="false">http://www.sahw.com/wp/?p=5789</guid>
		<description><![CDATA[TEMARIO
Auditoría de contraseñas en Oracle Database (1 de 4). Introducción y primeros pasos
Auditoría de contraseñas en Oracle Database (2 de 4). Adivinación de Oracle SID (System ID)
Auditoría de contraseñas en Oracle Database (3 de 4). Fuerza bruta sobre claves Oracle
Auditoría de contraseñas en Oracle Database (4 de 4). Ataques de diccionario sobre claves Oracle
Buenas,
He recibido [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>TEMARIO</p>
<p><strong><a href="http://www.sahw.com/wp/archivos/2010/02/27/auditoria-de-contrasenas-en-oracle-database-1-de-4-introduccion-y-primeros-pasos/">Auditoría de contraseñas en Oracle Database (1 de 4). Introducción y primeros pasos</a></strong><br />
<a href="http://www.sahw.com/wp/archivos/2010/02/28/auditoria-de-contrasenas-en-oracle-database-2-de-4-adivinacion-de-oracle-sid-system-id/">Auditoría de contraseñas en Oracle Database (2 de 4). Adivinación de Oracle SID (System ID)</a><br />
Auditoría de contraseñas en Oracle Database (3 de 4). Fuerza bruta sobre claves Oracle<br />
Auditoría de contraseñas en Oracle Database (4 de 4). Ataques de diccionario sobre claves Oracle</p></blockquote>
<p>Buenas,</p>
<p>He recibido durante los últimos meses alguna que otra petición para que hablara de la auditoría de productos Oracle. Me es imposible escribir entradas para cada uno de los productos de esta compañía, porque además de ser <a href="http://www.oracle.com/us/products/index.htm">muy numerosos</a> y complejos, algunos son sólo de aplicación en entornos muy determinados, con lo que el ejercicio sólo tendría interés para unos pocos. Hablamos de los productos y servicios tan variopintos como la gama <em>on demand</em>, <em>Fusion middleware</em>, <em>Portal</em>, <em>Data mining</em>, <em>OLAP</em> y dentro del mundo de aplicaciones podríamos citar la gestión centralizada de datos (MDM), sectoriales para banca, finanzas, capital humano, JD Edwards, Peoplesoft, Siebel ... la lista es demasiado larga para escribirla completa.</p>
<p>Sin embargo, me vienen a la mente dos productos que quizás si gocen de más popularidad. En la mayoría de corporaciones son los dos <em>entry-level products</em> por excelencia, y es relativamente frecuente toparse con ellos. Se trata de <a href="http://www.oracle.com/us/products/applications/ebusiness/index.htm">Oracle E-Business Suite</a> y cómo no, de <a href="http://www.oracle.com/us/products/database/index.htm">Oracle Database</a>, la base de datos. Podríamos escribir muchísimo sobre ambos, ya que son productos extremadamente extensos y complejos, pero en esta serie de artículos sólo nos vamos a centrar en uno de los productos y en una única faceta de auditoría del mismo: contraseñas en <em>Oracle Database</em>.</p>
<p><strong>Gama de Oracle Database</strong></p>
<p>Oracle Database tiene hoy en día 4 ediciones principales, con un importante nímero de versiones en cada una:</p>
<ul>
<li>Express Edition</li>
<li>Standard Edition One</li>
<li>Standard Edition</li>
<li>Enterprise Edition</li>
</ul>
<p>Todas funcionan en Linux y Windows, si bien la versión básica no puede correr en Unix ni en 64 bits. No sabría deciros qué predomina en el mercado, ya que este es un caso donde el mero hecho de correr en un derivado Unix no garantiza mejor rendimiento. Las versiones Windows tienen una tremenda popularidad, ya que en práctica igualdad de rendimiento en lo que al motor se refiere, tienen una gran ventaja sobre los derivados Unix: Un sistema operativo Windows es, por lo general, más fácil de instalar, usar y mantener, con lo que también es más fácil (y económico) contratar a personal con nociones suficientes para el mundo Microsoft. Por otro lado, también tienen una estructura de licencias completamente distinta y potencialmente menos beneficiosa, con lo que tampoco son siempre la opción a implementar. </p>
<p>Las diferencias entre el producto gratuito (<em>Express Edition</em>) y el destinado a corporaciones (<em>Enterprise Edition</em>) <a href="http://www.oracle.com/database/product_editions.html">son más que apreciables</a>. Sinceramente he visto de todo, aunque probablemente he visto con un poco más de asiduidad <em>Enterprise Edition</em> corriendo en Linux o Unix. La mayor incidencia sobre el rendimiento la determinan siempre la configuración y la presencia de productos de optimización, y no el sistema operativo sobre el que corren los productos.</p>
<p>Para todo aquel que quiera practicar lo que aquí explicaremos recomiendo la descarga e instalación de la <a href="http://www.oracle.com/technology/products/database/xe/index.html">Oracle Database 10g Express Edition</a>, que es gratuita y relativamente sencilla de instalar. Asumiendo que la mayoría de auditores se sienten más cómodos en Windows, emplearemos una instalación para Windows, aunque aquellos que se sientan mejor con Linux pueden optar por este formato. En esencia lo que vamos a ver es independiente (con sus matices, claro) de la plataforma. Recomiendo la instalación de estos dos productos:</p>
<ul>
<li>Oracle Database 10g Express Edition (el motor de base de datos)</li>
<li>Oracle Database 10g Express Client (el software cliente)</li>
</ul>
<p>Recomiendo a todos los que quieran instalarse estos productos que lean muy detenidamente la documentación. Todo está en la documentación, e insisto que pese a ser la versión más pequeña y simple de Oracle, la puesta en marcha y mantenimiento de la misma no es trivial. </p>
<p><strong>Conectar a Oracle Database</strong></p>
<p>Aunque es posible realizar <em>pentesting</em> en caja negra, siempre es recomendable auditar las contraseñas en caja blanca o gris, ya que el hecho de que no podamos hacer intrusión no implica que las calidades de las claves sean las mejores. En algín momento necesitaremos conectar con la base de datos para ver si podemos hacernos con los <em>hashes</em> de las claves, o directamente para descargarlos y ser analizados. ¿Cómo conectar con Oracle?</p>
<ul>
<li><a href="http://www.oracle.com/technology/tech/sql_plus/index.html">SQL*Plus</a>. Es el producto oficial de Oracle para la línea de mandatos. Para mí, salvo que se vaya a hacer desarrollo, es el más aconsejable.</li>
<li><a href="http://www.oracle.com/technology/products/database/sql_developer/index.html">Oracle SQL Developer</a>. Es un producto oficial de Oracle, adecuado para desarrolladores, ya que tiene interfaz gráfico y ayudas a la productividad. </li>
<li>Otros productos comerciales. Casi todos están enfocados al desarrollo y a la utilización gráfica. Posiblemente, <a href="http://www.allroundautomations.com/plsqldev.html">PL/SQL Developer</a> sea el más conocido, aunque no es el único.</li>
</ul>
<p><strong>Mi primera conexión local a Oracle</strong></p>
<p>Una vez instalado podremos conectar vía <em>Application Express</em> (Apex) o vía línea de comandos. Apex está disponible por defecto tras la instalación en <a href="http://127.0.0.1:8080/apex/">http://127.0.0.1:8080/apex/</a>. </p>
<p>En el caso de la edición XE que hemos recomendado, los binarios de SQL*Plus se instalan junto a la base de datos. Suponiendo que estás en Windows:</p>
<p><img src="http://www.sahw.com/images/oracle_audit/sqlplus1.png" alt="oracle audit" /></p>
<p>Durante el proceso de instalación habrás creado contraseñas (es la misma) para las cuentas SYS y SYSTEM. Para probar si todo ha ido bien, así como para hacer ajustes de configuración, trata de conectar mediante la cuenta SYSTEM:</p>
<p><img src="http://www.sahw.com/images/oracle_audit/sqlplus2.png" alt="oracle audit" /></p>
<p>Nótese que <em>SYSTEM</em> es el usuario con el que conectamos, <em>password</em> es la clave de dicho usuario y <em>localhost</em> es la dirección del servidor de Oracle Database.</p>
<p><strong>Conexiones en remoto</strong></p>
<p>Aunque también se puede emplear SQL*Plus, es preciso contar con la definición del listener Oracle para poder hacer la conexión. Esta definición se introduce <a href="http://www.orafaq.com/wiki/Tnsnames.ora">en el fichero tnsnames.ora</a>, cuyo estándar es el siguiente:</p>
<blockquote><p>
addressname =<br />
 (DESCRIPTION =<br />
   (ADDRESS_LIST =<br />
     (ADDRESS = (PROTOCOL = TCP)(Host = hostname)(Port = port))<br />
   )<br />
 (CONNECT_DATA =<br />
   (SERVICE_NAME = SID)<br />
 )<br />
)</p>
</blockquote>
<p>Como podéis ver, para conectarse a una base de datos Oracle hacen falta 3 datos: la dirección del servidor, el puerto en el cual <a href="http://download.oracle.com/docs/cd/B10501_01/network.920/a96580/listener.htmÃ§">el <em>listener</em></a> está a la escucha y por íltimo el SID (System ID) o identificador de sistema. Veremos más adelante que el SID puede ser adivinado en remoto, y como más de uno podrá imaginar, a veces nos dejanos este fichero abierto al mundo (<a href="http://www.google.com/search?&q=%22tnsnames%22+filetype%3Aora">http://www.google.com/search?&q=%22tnsnames%22+filetype%3Aora</a>, la versión Bing <a href="http://elladodelmal.blogspot.com/2010/02/un-poco-de-bing-hacking-i-de-iii.html">disponible aquí</a> por cortesía de Chema)</p>
<p>Si has instalado Oracle en una máquina virtual o en un servidor, utiliza la documentación para configurar tu fichero <em>tnsnames.ora</em>. Ten presente que SQL*Plus lo va a buscar en determinadas ubicaciones, con lo que si no usas las que recomienda el fabricante (ver documentación) tendrás que crear variables de enterno (ver documentación). Por defecto, XE coloca el fichero en la ruta <em>C:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\ADMIN</em>, siendo sus contenidos los siguientes:</p>
<blockquote><p>
XE =<br />
  (DESCRIPTION =<br />
    (ADDRESS = (PROTOCOL = TCP)(HOST = nimoy)(PORT = 1521))<br />
    (CONNECT_DATA =<br />
      (SERVER = DEDICATED)<br />
      (SERVICE_NAME = XE)<br />
    )<br />
  )</p>
<p>EXTPROC_CONNECTION_DATA =<br />
  (DESCRIPTION =<br />
    (ADDRESS_LIST =<br />
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))<br />
    )<br />
    (CONNECT_DATA =<br />
      (SID = PLSExtProc)<br />
      (PRESENTATION = RO)<br />
    )<br />
  )</p>
<p>ORACLR_CONNECTION_DATA =<br />
  (DESCRIPTION =<br />
    (ADDRESS_LIST =<br />
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))<br />
    )<br />
    (CONNECT_DATA =<br />
      (SID = CLRExtProc)<br />
      (PRESENTATION = RO)<br />
    )<br />
  )
</p></blockquote>
<p>A la vista de lo anterior, ya sabéis que mi host se llama <em>nimoy</em>, que mi SID es <em>XE</em> y que el <em>listener</em> admite peticiones en el puerto 1521, que es el puerto por defecto.</p>
<p><strong>Próxima lección</strong></p>
<p>En la próxima lección veremos cómo se audita si el nombre escogido como identificador de sistema (SID), necesario para poder conectar a instancias Oracle, puede ser adivinado remotamente. Esto, como veremos, juega un papel importante en la seguridad de la instalación.</p>
<p>Un saludo,</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sahw.com/wp/archivos/2010/02/27/auditoria-de-contrasenas-en-oracle-database-1-de-4-introduccion-y-primeros-pasos/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Botnets corporativos</title>
		<link>http://www.sahw.com/wp/archivos/2010/02/24/botnets-corporativos/</link>
		<comments>http://www.sahw.com/wp/archivos/2010/02/24/botnets-corporativos/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 20:05:58 +0000</pubDate>
		<dc:creator>Sergio Hernando</dc:creator>
				<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[Botnets]]></category>
		<category><![CDATA[Information security]]></category>
		<category><![CDATA[Malware]]></category>
		<category><![CDATA[Seguridad de la informacion]]></category>

		<guid isPermaLink="false">http://www.sahw.com/wp/?p=5772</guid>
		<description><![CDATA[Buenas,
Aprovecho que estos últimos días han estado movidos en el tema botnets para lanzar al aire una serie de comentarios.
El pasado 16 de Febrero Damballa publicó su top ten de incidentes debidos a botnets criminales, situándose el infame Zeus en primera posición, con un 19% de nuevas víctimas coporativas integradas en su red. No le [...]]]></description>
			<content:encoded><![CDATA[<p>Buenas,</p>
<p>Aprovecho que estos últimos días <a href="http://www.darkreading.com/insiderthreat/security/attacks/showArticle.jhtml?articleID=223000193">han estado movidos en el tema <em>botnets</em></a> para lanzar al aire una serie de comentarios.</p>
<p>El pasado 16 de Febrero Damballa <a href="http://blog.damballa.com/?p=569">publicó su <em>top ten</em></a> de incidentes debidos a <em>botnets</em> criminales, situándose el infame Zeus en primera posición, con un 19% de nuevas víctimas coporativas integradas en su red. No le anda a la zaga Koobface, otro conocido de la escena. Para todos aquellos que queráis profundizar en el tema, pasaos <a href="http://ddanchev.blogspot.com/">por el blog del amigo Dancho</a>, que suele publicar al respecto con bastante asiduidad. El asunto da para mucho, y podríamos estar años hablando de esta problemática.</p>
<p>El <em>malware</em> provoca daños allá por donde pasa. Da igual que sea en un ordenador doméstico o en un servidor empresarial. El objetivo es el mismo, y aunque ampliamente matizable, al final se trata de apoderarnos de lo que no es nuestro. Aun así, cada ámbito tiene sus ventajas y desventajas, pero en ninguno de los dos casos son sencillas las soluciones. En casa sólo hay que controlar un ordenador, pero, ¿tiene todo el mundo recursos y conocimientos para evitar el <em>malware</em>? No. En el ámbito empresarial tenemos otra importante disyuntiva, complementaria a la anterior. Ahora no se trata de controlar un equipo, sino miles. Pero en esta ocasión si hay recursos y conocimiento (o debería haberlos) para controlarlos. ¿Quiere decir esto que la seguridad corporativa es más fácil que la doméstica? Tampoco.</p>
<p>Me vais a permitir que hoy no me centre en el ámbito doméstico. Sigo creyendo que un buen antivirus para lo conocido y una buena dosis de sentido común, conocimiento y prudencia para lo desconocido pueden mitigar la mayor parte de los problemas, por mucho que se empeñen algunos en reducirlo todo a que en Linux no hay problemas con los troyanos o que con la última versión de Windows 7 tu equipo será infranqueable. Creo que estaremos todos de acuerdo que un buen antivirus y sentido común no parecen suficientes para afrontar la seguridad corporativa.</p>
<p>El asunto no es fácil de digerir. ¿Es la lucha contra el <em>malware</em> un asunto puramente económico? No. Las grandes dotaciones presupuestarias no tienen por qué ser efectivas en este campo. ¿Es un asunto puramente tecnológico? Tampoco, ya que disponer de la mejor tecnología de seguridad tampoco te exime de sufrir problemas. ¿Es entonces un asunto comportamental o humano? Sería injusto reducirlo sólo a eso. ¿De qué estamos hablando entonces? ¿Esto cómo se afronta?</p>
<p>La solución es muy fácil de enunciar sobre el papel. Se trata de disponer, simultáneamente, de dotaciones presupuestarias efectivas para robustecer la seguridad así como invertir en el capital humano para mejorar su concienciación y entrenamiento, con el objetivo gradual de ir reduciendo el rato de incidencias hasta dejarlo en cifras residuales asumibles en cuenta de resultados. Esto que se escribe en dos líneas se traduce al final en millones de euros, no sólo por las pérdidas que provocan los incidentes, sino porque la tecnología y la concienciación cuestan mucho dinero, y amigos míos, aquí no hay fórmulas mágicas que se amolden a todos los escenarios. Ojalá tuviéramos una guía de <em>los diez pasos para invertir y sufrir lo mínimo</em> que fuera apicable a cualquier entorno y bajo cualquier circunstancia, pero como no la tenemos, hay planificar, invertir con inteligencia, implantar controles efectivos y en función a las desviaciones, volver a comenzar. Y todo esto sin olvidar que hagamos lo que hagamos en seguridad, el impacto en la sostenibilidad y rentabilidad del negocio debe ser el mínimo posible.</p>
<p>2009 ha sido, posiblemente, el año de los <em>botnets</em> corporativos. Nada me hace pensar que en 2010 mejore mucho el panorama actual, fundamentalmente porque lo que hemos enunciado antes en nuestro papel ya llevan años haciéndolo los <em>amigos de lo ajeno</em>. Los criminales combinan con eficacia y eficiencia la inversión (no les falta capital), la tecnología (siempre mejoran la aplicación de sus recursos tecnológicos) y la concienciación (reclutan y forman de modo continuo a especialistas). Esta letal combinación de los tres ejes claves de la seguridad es la que hace que esta gentuza que nos roba dia a día propiedad intelectual, dinero en la cuenta del banco, secretos industriales, información financiera reservada y ese largo etcétera de jugosos activos sea hoy en día prácticamente imparable.</p>
<p>Quizás vaya siendo hora de aprender del enemigo, pero que nadie crea que esta será una tarea sencilla.</p>
<p>Un saludo,</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sahw.com/wp/archivos/2010/02/24/botnets-corporativos/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Alerta: Graves vulnerabilidades en Mozilla Firefox permiten la ejecución remota de código arbitrario</title>
		<link>http://www.sahw.com/wp/archivos/2010/02/18/alerta-graves-vulnerabilidades-en-mozilla-firefox-permiten-la-ejecucion-remota-de-codigo-arbitrario/</link>
		<comments>http://www.sahw.com/wp/archivos/2010/02/18/alerta-graves-vulnerabilidades-en-mozilla-firefox-permiten-la-ejecucion-remota-de-codigo-arbitrario/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 20:10:31 +0000</pubDate>
		<dc:creator>Sergio Hernando</dc:creator>
				<category><![CDATA[Alertas]]></category>
		<category><![CDATA[Firefox vulnerabilities]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Seguridad]]></category>

		<guid isPermaLink="false">http://www.sahw.com/wp/?p=5758</guid>
		<description><![CDATA[Buenas,
Parece que el mes viene calentito en lo que a seguridad de navegadores se refiere. Hace poco estaba en el candelero Internet Explorer, y hoy le toca subir a la palestra a Firefox.
Según veo en este advisory de Secunia, Firefox padece un problema de seguridad de bastante gravedad. En el enlace se apunta al foro [...]]]></description>
			<content:encoded><![CDATA[<p>Buenas,</p>
<p>Parece que el mes viene calentito en lo que a seguridad de navegadores se refiere. Hace poco estaba en el candelero Internet Explorer, y hoy le toca subir a la palestra a Firefox.</p>
<p>Según veo <a href="http://secunia.com/advisories/38608">en este advisory de Secunia</a>, Firefox padece un problema de seguridad de bastante gravedad. En el enlace <a href="https://forum.immunityinc.com/board/thread/1161/vulndisco-9-0/">se apunta al foro de Inmunity Inc</a> donde se puede apreciar que la comunicación inicial data de comienzos de Febrero, momento en que el código de explotación fue incorporado a VulnDisco Pack 9.0, un módulo de la popular suite de pentesting Immunity's Canvas. No hay mucha información al respecto, pero parece que el problema afecta a la versión 3.6 y posiblemente a las anteriores. Según la gente de Inmunity el código necesita cierto trabajo para funcionar, pero por las pruebas que han realizado parece bastante estable. No tengo tampoco constancia de que el código haya sido liberado públicamente, lo cual no me extraña lo más mínimo, ya que la exclusividad es un aliciente para los potenciales compradores de Canvas que perdería su sentido si el código estuviera públicamente disponible.</p>
<p>A este problema <a href="http://secunia.com/advisories/37242">hay que añadir otros problemas</a> de extrema gravedad que también podrían propiciar el compromiso de la máquina de las víctimas. Estos problemas (ver enlace) pueden ser solucionados instalando las versiones 3.0.18 o 3.5.8 que fueron liberadas ayer mismo. Aunque parece que estas versiones no resuelven el primero de los problemas que os comento, es más que sensato actualizar para prevenir daños mayores, o al menos para reducir la exposición ante ataques.</p>
<p>Como no podía ser de otro modo, habida cuenta de que la seguridad no está garantizada sin que estos problemas sean resueltos, es de recibo desaconsejar el uso de Mozilla Firefox hasta que dispongáis de versiones actualizadas, especialmente para el primero de los problemas que hemos comentado, sobre el cual no tengo más información y para el que de momento, no hay parche disponible.</p>
<p>Un saludo,</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sahw.com/wp/archivos/2010/02/18/alerta-graves-vulnerabilidades-en-mozilla-firefox-permiten-la-ejecucion-remota-de-codigo-arbitrario/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Mozilla y los plugins con malware</title>
		<link>http://www.sahw.com/wp/archivos/2010/02/11/mozilla-y-los-plugins-con-malware/</link>
		<comments>http://www.sahw.com/wp/archivos/2010/02/11/mozilla-y-los-plugins-con-malware/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 17:53:20 +0000</pubDate>
		<dc:creator>Sergio Hernando</dc:creator>
				<category><![CDATA[Malware]]></category>
		<category><![CDATA[AMO]]></category>
		<category><![CDATA[Extensiones]]></category>
		<category><![CDATA[Extensions]]></category>
		<category><![CDATA[FIrefox]]></category>
		<category><![CDATA[Mozilla]]></category>

		<guid isPermaLink="false">http://www.sahw.com/wp/?p=5741</guid>
		<description><![CDATA[Hola,
Ahora sí, ahora no. No voy a entrar en este triste asunto de los dichos y desmentidos porque no es el que quiero tratar, si bien esto podría significar el enésimo caso que presenciamos en Internet de donde se lanzan las campanas al vuelo sin tener toda la información en la mano y luego, consecuentemente, [...]]]></description>
			<content:encoded><![CDATA[<p>Hola,</p>
<p><a href="http://blog.mozilla.com/addons/2010/02/04/please-read-security-issue-on-amo/">Ahora sí</a>, <a href="http://blog.mozilla.com/addons/2010/02/09/update-on-the-amo-security-issue/">ahora no</a>. No voy a entrar en este triste asunto de los dichos y desmentidos porque no es el que quiero tratar, si bien esto podría significar el enésimo caso que presenciamos en Internet de donde se lanzan las campanas al vuelo sin tener toda la información en la mano y luego, consecuentemente, se termina metiendo la pata hasta la oreja. Todos los que escribimos podemos incurrir en estos errores, pero parece que no terminamos de aprender que para dar nuestra opinión es conveniente tener en la mano todos los datos, y que las prisas a la hora de vertir opinión no son buenas consejeras.</p>
<p>Hace unos días se determinó que dos de las extensiones existentes en el <a href="https://addons.mozilla.org/">repositorio AMO</a> (Mozilla Add-ons) de Mozilla, la versión 4.0 de <em>Sothink Web Video Downloader</em> y <em>Master Filer</em> en todas sus versiones, contenían <em>malware</em>. Al final resulta que no, que aunque es cierto que se han detectado indicios confirmados de contaminación en <em>Master Filer</em>, no había problema alguno con <em>Sothink Web Video Downloader</em>. Bien. Ambas vuelven a estar disponibles sin (según Mozilla) riesgos para el usuario.</p>
<p>Hasta aquí poco más. Un incidente, una respuesta ante el incidente, una solución y una comunicación. Pero a la vista de los hechos, no puedo conformarme con darle una palmada en la espalda a Mozilla por su investigación. Creo que es sensato recomendar a todos los usuarios que sean incapaces de analizar el código de las extensiones (las XPI son tristes ficheros comprimidos con contenidos en texto plano) y a todos aquellos que sean incapaces de establecer niveles y fuentes de confianza para las extensiones que utilizan, que no usen extensiones de Firefox. También sería sensato recordar que podemos llenar Mozilla de extensiones, y sin embargo reservar el uso del mismo a todo aquello que no conlleve actividad sensible (banca a distancia, trámites en línea, etc.). ¿Te priva alguien de usar Firefox para tu día a día, y sin embargo tener una instalación limpia de otro navegador con baja incidencia de <em>malware</em> para entrar en tu banco? ¿Te impide alguien dejar la instalación de Firefox tal y como está sin incurrir en instalación de <em>addons</em>? Hay muchas soluciones para diversificar el riesgo, y todos los navegadores son vulnerables, con lo que mal haremos si convertimos Firefox en un huerto de extensiones de las que no tenemos ni la más remota idea sobre su fiabilidad y trayectoria.</p>
<p>Me duele tener que decirlo, pero que haya <em>malware</em> en las extensiones es INTOLERABLE. No sólo por el hecho de que no es la primera vez que pasa, ya que todos recordaremos los tristes acontecimientos acaecidos en 2008 cuando <a href="http://www.geek.com/articles/news/mozilla-misses-xorer-trojan-in-firefox-plug-in-2008058/">se distribuyó un fichero de lenguaje vietnamita con regalito sorpresa</a>, sino porque estos acontecimientos minan la confianza de los usuarios en algo tan crítico como la herramienta que usamos para acceder a la Red. En este caso en particular, hechos como el sucedido generan dudas más que lógicas sobre los procesos de calidad que Mozilla aplica a las extensiones que luego distribuye, procesos que a la vista de lo ocurrido, no parecen los mejores y que a mí no terminan de inspirarme confianza por muy buenas intenciones que tenga el equipo de desarrollo al completo.</p>
<p>Podemos evocar trescientos mil argumentos para justificar que no pasa nada porque se cuele <em>malware</em> de vez en cuando  en los complementos de Firefox. Que si es gratis, que si es <em>software</em> libre, que si somos una comunidad cojonuda y aquí hacemos lo que podemos, y todo lo que queráis, pero a mí ningún argumento me convence. Podría entender que a Mozilla le colasen binarios infectados empaquetados a mala leche y ofuscados hasta la saciedad, y que porque no haya gente que haga <em>reverse engineering</em> decente les metan un gol. Puedo entender que tras una intrusión coloquen binarios modificados en los servidores de descarga y que durante un tiempo pasen inadvertidos. Pero con las extensiones, no, lo siento pero no. Si no tienes medios para analizarlas como es debido para asegurar el máximo nivel de calidad, no las sirvas. Y si quieres servirlas traslada a los usuarios de una manera CLARA que que el riesgo de infección por adulteración de las mismas existe, que hay que tener una mínima consciencia de la procedencia y naturalez de lo que se instala, y que cada cual elija si instalar o no. </p>
<p>Hagamos lo posible por que los usuarios asemejen los repositorios de Mozilla a cualquier otro de <em>software</em>. Es lo mismo bajarse una extensión que un programa <em>freeware</em> de la página de un desarrollador cualquiera, ya que el riesgo de contaminación siempre estará presente, con lo que creo interesante trasladar a los usuarios que Mozilla.com no es un Olimpo donde nunca ocurre nada, y que como cualquier otra fuente de <em>software</em>, las incidencias pueden ocurrir y están a la orden del día. Nadie está a salvo.</p>
<p>Es obvio que a tenor de los casos documentados el riesgo es pequeño, ya que son casos puntuales, pero eso no es óbice para no dejar claro que instalar extensiones de Firefox adulteradas puede conllevar a la contaminación de equipos. Esto es un hecho, y en vez de perder el tiempo en rebatirlo con tonterías sobre idílicas comunidades, quizás deberíamos perderlo en explicarle al usuario que hay maneras de analizar lo que se utiliza, y que si no se sabe o no se tienen medios para el análisis técnico, hay que aprender establecer nuestros niveles de confianza, basándonos en la opinión de otros usuarios, en la de conocidos y allegados con nociones y experiencia superiores a las nuestras, en los antecedentes, en la trayectoria de los desarrolladores, en los procesos de calidad que se ejecuten, en la opinión experta de analistas y en un sinfín de parámetros. Y si con todo eso no somos capaces o albergamos dudas, señores, lo que hay que hacer es no usar ese <em>software</em> y buscar una alternativa de la que sí podamos fiarnos. Es así de simple. Tarde o temprano nos acabaremos fiando porque no nos queda más remedio (no es sensato ni productivo analizar todo lo que ejecutamos), así que pongamos la carne en el asador para ver cuál es la mejor manera de poder fiarnos incurriendo en los mínimos riesgos posibles.</p>
<p>Un saludo,</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sahw.com/wp/archivos/2010/02/11/mozilla-y-los-plugins-con-malware/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Más problemas para Internet Explorer: Dos nuevas vulnerabilidades permiten la obtención remota de ficheros del sistema</title>
		<link>http://www.sahw.com/wp/archivos/2010/02/04/mas-problemas-para-internet-explorer-dos-nuevas-vulnerabilidades-permiten-la-obtencion-remota-de-ficheros-del-sistema/</link>
		<comments>http://www.sahw.com/wp/archivos/2010/02/04/mas-problemas-para-internet-explorer-dos-nuevas-vulnerabilidades-permiten-la-obtencion-remota-de-ficheros-del-sistema/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 18:07:48 +0000</pubDate>
		<dc:creator>Sergio Hernando</dc:creator>
				<category><![CDATA[Alertas]]></category>
		<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Vulnerabilidades]]></category>
		<category><![CDATA[Vulnerabilities]]></category>

		<guid isPermaLink="false">http://www.sahw.com/wp/?p=5724</guid>
		<description><![CDATA[Buenas, 
Definitivamente 2010 no ha empezado con buen pie para Internet Explorer. Si hace poco vivía un 0-day con importantes consecuencias para la seguridad, ahora tenemos en lo alto de la mesa un problema moderadamente crítico (definitivamente menos relevante que el anterior) que sin embargo vuelve a requerir por parte de los usuarios una atención [...]]]></description>
			<content:encoded><![CDATA[<p>Buenas, </p>
<p>Definitivamente 2010 no ha empezado con buen pie para Internet Explorer. Si hace poco vivía un 0-day con importantes consecuencias para la seguridad, ahora tenemos en lo alto de la mesa un problema moderadamente crítico (definitivamente menos relevante que el anterior) que sin embargo vuelve a requerir por parte de los usuarios una atención especial.</p>
<p>Los amigos de Core Security descubrieron tiempo atrás un par de problemas (uno tiene que ver con la etiqueta de objetos dinamicos y el otro con URLMON) <a href="http://www.coresecurity.com/content/internet-explorer-dynamic-object-tag">que ahora han hecho públicos</a>, mediante los cuales un atacante podría extraer información sensible almacenada en ficheros locales de un sistema Windows siempre y cuando el usuario emplease una versión vulnerable y visitase una página especialmente conformada. No se necesita intervención alguna del usuario mas allá de visitar la pagina maliciosa, si bien este problema no permite (afortunadamente) comprometer el sistema en su totalidad como ocurriera con el <em>exploit</em> Aurora. </p>
<p>Quizás sea reseñable indicar que estas vulnerabilidades son, en palabras de los descubridores, una variación de otros problemas descubiertos anteriormente por Core (CoreLabs Security Advisories CORE-2008-0103 y CORE-2008-0826), lo que quizás sirva para reavivar el eterno debate sobre si los parches que ofrecen los fabricantes solventan siempre los problemas de raíz o si por el contrario, son paños de agua caliente para salir del paso.</p>
<p>No hay parche disponible para estas vulnerabilidades y Microsoft <a href="http://blogs.technet.com/msrc/archive/2010/02/03/security-advisory-980088-released.aspx">ha documentado el correspondiente Security Advisory</a> en el que se comentan los posibles medidas de mitigación y donde la compañia deja entrever que no descarta publicar un parche fuera de ciclo (<em>out-of-band</em>) al respecto.</p>
<p><strong>¿Es mi versión de Internet Explorer vulnerable?</strong></p>
<p>De acuerdo a la información liberada por los descubridores, la relación de versiones vulnerable es la que sigue:</p>
<ul>
<li>Internet Explorer 5.01 SP4 corriendo en Windows 2000 SP4</li>
<li>Internet Explorer 6 SP1 corriendo en Windows 2000 SP4</li>
<li>Internet Explorer 6 SP2 corriendo en Windows XP SP2</li>
<li>Internet Explorer 6 SP2 corriendo en Windows XP SP3</li>
<li>Internet Explorer 7 corriendo en Windows XP SP2</li>
<li>Internet Explorer 7 corriendo en Windows XP SP3</li>
<li>Internet Explorer 7 corriendo en Windows Vista SP1</li>
<li>Internet Explorer 7 corriendo en Windows Vista SP2</li>
<li>Internet Explorer 7 corriendo en Windows Server 2003 SP2 si el modo protegido está desactivado y no se usa la configuración mejorada de seguridad</li>
<li>Internet Explorer 7 corriendo en Windows Server 2008 si el modo protegido está desactivado y no se usa la configuración mejorada de seguridad</li>
<li>Internet Explorer 8 corriendo en Windows XP SP2</li>
<li>Internet Explorer 8 corriendo en Windows XP SP3</li>
<li>Internet Explorer 8 corriendo en Windows Vista SP1 si el modo protegido está desactivado</li>
<li>Internet Explorer 8 corriendo en Windows Vista SP2 si el modo protegido está desactivado</li>
<li>Internet Explorer 8 corriendo en Windows 7 si el modo protegido está desactivado</li>
<li>Internet Explorer 8 corriendo en Windows Server 2003 SP2 si el modo protegido está desactivado y no se usa la configuración mejorada de seguridad</li>
<li>Internet Explorer 8 corriendo en Windows Server 2008 R2 si el modo protegido está desactivado y no se usa la configuración mejorada de seguridad</li>
</ul>
<p><strong>No son vulnerables las siguientes configuraciones:</strong></p>
<ul>
<li>Internet Explorer 7 corriendo en Windows Vista, Windows Server 2003 o Windows 7 si el modo protegido está activado</li>
<li>Internet Explorer 8 corriendo en Windows Vista o Windows Server 2003 si el modo protegido está activado</li>
<li>Internet Explorer 8 corriendo en Windows Server 2003 si el modo protegido está activado</li>
<li>Internet Explorer 8 corriendo en Windows 7 o Windows Server 2008 R2 si el modo protegido está activado</li>
</ul>
<p><strong>Lo que debes hacer si usas Internet Explorer</strong></p>
<p>Lo primero es leete el Microsoft Security Advisory (980088): <a href="http://www.microsoft.com/technet/security/advisory/980088.mspx">http://www.microsoft.com/technet/security/advisory/980088.mspx</a>.</p>
<p>Una vez te lo hayas leído puedes aplicar alguna de las siguientes acciones de mitigación (no es necesario ejecutarlas todas)</p>
<ol>
<li>Asegúrate de ejecutar Internet Explorer con el modo protegido activado, si es que tu sistema operativo lo permite y si entiendes las limitaciones que se pueden producir al usarlo (<a href="http://blogs.msdn.com/ie/archive/2007/04/04/protected-mode-for-ie7-in-windows-vista-is-it-on-or-off.aspx">http://blogs.msdn.com/ie/archive/2007/04/04/protected-mode-for-ie7-in-windows-vista-is-it-on-or-off.aspx</a>). Como probablemente te suene a chino esto del modo protegido, puedes documentarte en <a href="http://msdn.microsoft.com/en-us/library/bb250462(VS.85).aspx">http://msdn.microsoft.com/en-us/library/bb250462(VS.85).aspx</a>. Este modo viene activado por defecto en la zona de seguridad de Internet sólo en Windows Vista, Windows 7 y Windows Server 2008.</li>
<li>Emplea la funcionalidad <em>Network Protocol Lockdown</em> del navegador. Puedes activarlo y desactivarlo en <a href="http://support.microsoft.com/kb/980088">http://support.microsoft.com/kb/980088</a>.</li>
<li>En la configuración por zonas, establece el nivel de seguridad tanto para Internet como Intranet en ALTO, con lo que se impedirá la ejecucion de scripts y controles ActiveX. Nótese que esto puede tener implicaciones en ciertas aplicaciones Web que usen estos componentes.</li>
<li>Desactiva el <em>scripting</em> activo para las zonas Internet e Intranet Local manualmente, estableciendo una configuración de las mismas de tipo personalizado.</li>
</ol>
<p>Si por alguna razón no comprendes el trasfondo de estas posibles soluciones (lo cual no me extrañaría lo más mínimo) o si tienes dudas sobre su utilización, lo más sensato, hasta que se publique un parche, es no usar Internet Explorer a la hora de visitar páginas que no sean de nuestra más exclusiva confianza. Un navegador alternativo es recomendable en estos casos.</p>
<p>Un saludo,</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sahw.com/wp/archivos/2010/02/04/mas-problemas-para-internet-explorer-dos-nuevas-vulnerabilidades-permiten-la-obtencion-remota-de-ficheros-del-sistema/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Recuperación del usuario, clave de administración y de la conexión Wi-Fi en un Linksys WRT54G</title>
		<link>http://www.sahw.com/wp/archivos/2010/01/30/recuperacion-del-usuario-clave-de-administracion-y-de-la-conexion-wi-fi-en-un-linksys-wrt54g/</link>
		<comments>http://www.sahw.com/wp/archivos/2010/01/30/recuperacion-del-usuario-clave-de-administracion-y-de-la-conexion-wi-fi-en-un-linksys-wrt54g/#comments</comments>
		<pubDate>Sat, 30 Jan 2010 22:25:12 +0000</pubDate>
		<dc:creator>Sergio Hernando</dc:creator>
				<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[Hacking]]></category>
		<category><![CDATA[Linksys]]></category>
		<category><![CDATA[Wi-Fi]]></category>
		<category><![CDATA[WRT54G]]></category>

		<guid isPermaLink="false">http://www.sahw.com/wp/?p=5701</guid>
		<description><![CDATA[Buenas,
Hará un tiempo me compré un router Linksys WRT54G cuya clave de administración desconocía. Hoy he estado echando un vistacito ya que quería resetearlo para añadir unos NAT, pero finalmente no ha hecho falta.
Me sorprende que este router, tan afamado desde el punto de vista de conectividad, tenga una configuración de seguridad tan mala. Intentaré [...]]]></description>
			<content:encoded><![CDATA[<p>Buenas,</p>
<p>Hará un tiempo me compré un <em>router</em> Linksys WRT54G cuya clave de administración desconocía. Hoy he estado echando un vistacito ya que quería resetearlo para añadir unos NAT, pero finalmente no ha hecho falta.</p>
<p>Me sorprende que este <em>router</em>, tan afamado desde el punto de vista de conectividad, tenga una configuración de seguridad tan mala. Intentaré actualizar el <em>firmware</em> en cuanto pueda, a ver si en revisiones posteriores este problema se ha corregido.</p>
<p><strong>FTP por defecto</strong></p>
<p>El origen del problema. El <em>router</em> admite conexiones entrantes de FTP con indiferencia del usuario y la clave que introduzcamos, lo cual ya es de por sí flagrante.</p>
<p><img src="http://www.sahw.com/images/WRT54G/linksys1.png" alt="breaking linksys WRT54G" /></p>
<p>Os puedo asegurar que no tengo ese usuario creado en el <em>router</em> :)</p>
<p>Una vez dentro, podemos listar los contenidos a los que tenemos acceso:</p>
<p><img src="http://www.sahw.com/images/WRT54G/linksys2.png" alt="breaking linksys WRT54G" /></p>
<p>Nos bajamos a local el fichero <em>igwpricf.dat</em>:</p>
<p><img src="http://www.sahw.com/images/WRT54G/linksys3.png" alt="breaking linksys WRT54G" /></p>
<p>Os podéis bajar también el fichero <em>nvram.cfg</em>, que trae información jugosa sobre la configuración del <em>router</em> (así como la clave WLAN). Cuando terminéis, cerrad la sesión FTP.</p>
<p><img src="http://www.sahw.com/images/WRT54G/linksys4.png" alt="breaking linksys WRT54G" /></p>
<p>Ejecutamos un <em>strings</em> para obtener las cadenas de texto del fichero, y sorpresa:</p>
<p><img src="http://www.sahw.com/images/WRT54G/linksys5.png" alt="breaking linksys WRT54G" /></p>
<p>Donde <em>Aadmin</em> es el usuario administrador, <em>c********</em> es la clave del administrador, <em>Simpleminds</em> es el nombre del BSSID y <em>d********</em> es la clave precompartida WLAN. Lamentable.</p>
<p>El <em>firmware</em> instalado (se puede recuperar en http://IP_DEL_ROUTER/sysinfo.htm) en este modelo es v7.00.1 (11g RF Firmware Version:4.1.2.56SP4) y aparentemente, está prácticamente en configuración de fábrica salvo la definición WLAN ¿Alguien que tenga este modelo con un <em>firmware</em> superior me puede confirmar si la chapuza del FTP está solventada? (mejor no pregunto si los ficheros de configuración están cifrados en vez de en texto plano)</p>
<p>Un saludo,</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sahw.com/wp/archivos/2010/01/30/recuperacion-del-usuario-clave-de-administracion-y-de-la-conexion-wi-fi-en-un-linksys-wrt54g/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>INTECO pone en marcha el Congreso Trust in the Information Society 10 y 11 de febrero</title>
		<link>http://www.sahw.com/wp/archivos/2010/01/30/inteco-pone-en-marcha-el-congreso-trust-in-the-information-society-10-y-11-de-febrero/</link>
		<comments>http://www.sahw.com/wp/archivos/2010/01/30/inteco-pone-en-marcha-el-congreso-trust-in-the-information-society-10-y-11-de-febrero/#comments</comments>
		<pubDate>Sat, 30 Jan 2010 12:46:12 +0000</pubDate>
		<dc:creator>Sergio Hernando</dc:creator>
				<category><![CDATA[Tecnologias de la Informacion]]></category>
		<category><![CDATA[Eventos]]></category>
		<category><![CDATA[Intecto]]></category>

		<guid isPermaLink="false">http://www.sahw.com/wp/?p=5693</guid>
		<description><![CDATA[Hola a todos,
Os traslado un mensaje que he recibido la semana pasado de la organización de este interesante evento. Creo que bien merece compartirlo con los posibles interesados.

Resta menos de un mes para que comience el evento internacional sobre eConfianza Trust in the Information Society, que se celebrará los días 10 y 11 de febrero [...]]]></description>
			<content:encoded><![CDATA[<p>Hola a todos,</p>
<p>Os traslado un mensaje que he recibido la semana pasado de la organización de este interesante evento. Creo que bien merece compartirlo con los posibles interesados.</p>
<p><img src="http://trustworthyict.inteco.es/images/trustis_en.jpg" alt="inteco" /></p>
<p>Resta menos de un mes para que comience el evento internacional sobre eConfianza <a href="http://trustworthyict.inteco.es/"><em>Trust in the Information Society</em></a>, que se celebrará los días 10 y 11 de febrero en León, con motivo de la presidencia de España en la Unión Europea.</p>
<p>Los conferenciantes de distintas nacionalidades europeas, durante los dos días de duración del evento, intervendrán a través de sesiones de alto nivel estratégico, tratando cuestiones y temas de ámbito político y social. </p>
<p><strong>Programa</strong></p>
<p>Pueden consultar el <a href="http://trustworthyict.inteco.es/index.php/es/programa">Programa del Evento</a> a través de los siguientes enlaces:</p>
<p>&#8226; 10 de febrero: <a href="http://trustworthyict.inteco.es/index.php/es/programa/programa-10-febrero">http://trustworthyict.inteco.es/index.php/es/programa/programa-10-febrero</a><br />
&#8226; 11 de febrero: <a href="http://trustworthyict.inteco.es/index.php/es/programa/programa-11-febrero">http://trustworthyict.inteco.es/index.php/es/programa/programa-11-febrero</a></p>
<p>Si lo desean, pueden descargarse <a href="http://trustworthyict.inteco.es/PROGRAMA_TRUSTIS.pdf">el programa en formato pdf</a>.</p>
<p><strong>Inscripciones</strong></p>
<p><a href="http://trustworthyict.inteco.es/index.php/es/inscripcion">Pueden inscribirse</a> al evento a través de la página web, en el apartado de inscripción, donde encontrarán toda la información relativa a la asistencia al mismo.</p>
<p><strong>Organización del evento</strong></p>
<blockquote><p>Email: trustworthyict@cert.inteco.es<br />
Teléfono: 34  987 877 189 Extensiones: 5106 y 4007<br />
Web: https://trustworthyict.inteco.es<br />
www.inteco.es</p></blockquote>
<p>Un saludo,</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sahw.com/wp/archivos/2010/01/30/inteco-pone-en-marcha-el-congreso-trust-in-the-information-society-10-y-11-de-febrero/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
