<?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: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-5244980084824653865</id><updated>2012-02-16T12:50:50.426+01:00</updated><category term='NTFS'/><category term='directorio activo'/><category term='rapidez'/><category term='javascript'/><category term='sysadmin'/><category term='web'/><category term='iframe'/><category term='C'/><category term='perl'/><category term='malware'/><category term='rendimiento'/><category term='PE'/><category term='copia de seguridad'/><category term='vulnerabilidad'/><category term='windows 7'/><category term='filosofía'/><category term='opinión'/><category term='BHO'/><category term='windows xp'/><category term='WMI'/><category term='powershell'/><category term='spyware'/><category term='debian'/><category term='SSL'/><category term='pendrive'/><category term='vbscript'/><category term='WinAPI'/><category term='exchange'/><category term='ingenieria social'/><category term='linux'/><category term='servicios'/><category term='invisible labs'/><category term='defrag.exe'/><category term='nmap'/><category term='red social'/><category term='registro de windows'/><category term='PAM'/><category term='cleanmgr.exe'/><category term='rootkit'/><category term='adware'/><category term='exchange 2010'/><category term='apache2'/><category term='C#'/><category term='windows update'/><category term='cambiar contraseña'/><category term='usuarios'/><category term='drivers'/><category term='visor de sucesos'/><category term='html'/><category term='virus'/><category term='IE'/><category term='cloud-computing'/><category term='md5'/><title type='text'>La Cápsula Verde</title><subtitle type='html'>Punto de vista de los Sistemas de la Información.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>54</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-5957254214019145411</id><published>2012-02-08T10:46:00.014+01:00</published><updated>2012-02-08T12:01:51.090+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rapidez'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='exchange 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='usuarios'/><title type='text'>Acceso total y Enviar como | Buzones Exchange 2010</title><content type='html'>Dos de los permisos más utilizados en los buzones de los usuarios de &lt;b&gt;Exchange 2010&lt;/b&gt; es el &lt;b&gt;Acceso total&lt;/b&gt;, para que uno, varios o grupos de usuarios puedan acceder al buzón de correo deseado desde su Outlook y &lt;b&gt;Enviar como&lt;/b&gt;, para que uno, varios o grupos de usuarios puedan enviar correo suplantando al dueño del buzón mediante el &lt;b&gt;campo DE&lt;/b&gt; en un nuevo email (desde &lt;b&gt;Outlook&lt;/b&gt; y &lt;b&gt;OWA&lt;/b&gt;).&lt;br /&gt;&lt;br /&gt;En la &lt;b&gt;consola de administración de Exchange 2010&lt;/b&gt; puedes gestionar ambos permisos por separado. Para agilizar la gestión de ambos permisos, he creado una herramienta (&lt;a href="https://sites.google.com/site/ramiroencinas/soft/buzon_permisos.zip"&gt;buzon_permisos.exe&lt;/a&gt;) que, iniciada con un usuario con permisos de administración en &lt;b&gt;Exchange 2010&lt;/b&gt;, puedes introducir el nombre de la cuenta de un buzón (&lt;b&gt;samaccountname&lt;/b&gt;), pulsar &lt;b&gt;ENTER&lt;/b&gt; y aparecerán los permisos de &lt;b&gt;Acceso total&lt;/b&gt; y &lt;b&gt;Enviar como&lt;/b&gt; del buzón proporcionado (este proceso tarda unos segundos y el estado lo verás en el texto del título de la ventana):&lt;div&gt;&lt;br /&gt;&lt;a href="https://sites.google.com/site/ramiroencinas/soft/buzon_permisos_1.gif" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 490px; height: 447px;" src="https://sites.google.com/site/ramiroencinas/soft/buzon_permisos_1.gif" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Los permisos del buzón proporcionado terminarán de aparecer cuando en el texto del título de la ventana ponga: &lt;b&gt;Permisos del buzón: ...&lt;/b&gt; y el &lt;b&gt;samaccountname&lt;/b&gt; del buzón proporcionado (indicado en la siguiente imagen como &lt;b&gt;samaccountname del buzón actual&lt;/b&gt;):&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="https://sites.google.com/site/ramiroencinas/soft/buzon_permisos_2.gif" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 493px; height: 533px;" src="https://sites.google.com/site/ramiroencinas/soft/buzon_permisos_2.gif" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Ahora, en el buzón proporcionado&lt;/b&gt; (buzón actual que aparece en el texto del título de la ventana)  &lt;b&gt;puedes:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Dar el permiso de &lt;b&gt;Acceso total&lt;/b&gt; a un usuario o grupo, introduciendo su &lt;b&gt;samaccountname&lt;/b&gt; en el campo &lt;b&gt;Cuenta&lt;/b&gt; y clicando en el botón &lt;b&gt;Acceso total&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Dar el permiso de &lt;b&gt;Enviar como&lt;/b&gt; a un usuario o grupo, introduciendo su &lt;b&gt;samaccountname&lt;/b&gt; en el campo &lt;b&gt;Cuenta&lt;/b&gt; y clicando en el botón &lt;b&gt;Enviar como&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Eliminar un usuario o grupo y su permiso correspondiente&lt;/b&gt;, seleccionando la línea donde aparezca y clicando en el botón &lt;b&gt;Eliminar permiso&lt;/b&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Ten en cuenta que:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;En los tres casos anteriores, después de clicar en el botón deseado, tardará unos segundos en actualizar la nueva información de permisos (aparecerá un texto de carga en el título de la ventana).&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Al &lt;b&gt;agregar o quitar&lt;/b&gt; el permiso de &lt;b&gt;Enviar como&lt;/b&gt; y después de la carga de los permisos es posible que no aparezca el cambio realizado (debido al tiempo de replicación en el Directorio Activo). Para solucionarlo, clica en botón &lt;b&gt;Actualizar&lt;/b&gt; (en la parte superior de la ventana) hasta que aparezca el cambio actualizado.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Los permisos que puedes ver, agregar o quitar &lt;b&gt;no son permisos heredados&lt;/b&gt;, son permisos que sólo afectan al buzón en sí.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: Verdana, Arial, sans-serif; font-size: 13px; line-height: 16px; "&gt;&lt;b&gt;&lt;br /&gt;Requisitos:&lt;/b&gt;&lt;div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.75em; margin-left: 0px; line-height: 1.3em; "&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/es-es/details.aspx?FamilyID=333325fd-ae52-4e35-b531-508d977d32a6&amp;amp;displayLang=es" style="color: rgb(17, 89, 60); "&gt;.Net Framework 3.5&lt;/a&gt; o superior&lt;/li&gt;&lt;li&gt;&lt;a href="http://support.microsoft.com/kb/968929" style="color: rgb(17, 89, 60); "&gt;PowerShell 2.0&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-5957254214019145411?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/5957254214019145411/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=5957254214019145411' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/5957254214019145411'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/5957254214019145411'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2012/02/acceso-total-y-enviar-como-en-buzones.html' title='Acceso total y Enviar como | Buzones Exchange 2010'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-5695096453675225948</id><published>2012-01-05T20:52:00.020+01:00</published><updated>2012-01-06T21:11:26.190+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WinAPI'/><category scheme='http://www.blogger.com/atom/ns#' term='C'/><category scheme='http://www.blogger.com/atom/ns#' term='rapidez'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>Averigua el tamaño de una carpeta con C</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;El objetivo de este post es ver cómo funciona &lt;b&gt;un programa en C&lt;/b&gt; que averigua&lt;b&gt; el tamaño de una carpeta de Windows&lt;/b&gt; dada (subcarpetas incluidas), ya sea en el sistema de archivos local o en red.&lt;br /&gt;&lt;br /&gt;Por ejemplo,  con esta herramienta (&lt;b&gt;fsize.exe&lt;/b&gt;, una vez compilado y enlazado) y el siguiente script:&lt;br /&gt;&lt;br /&gt;@echo off&lt;br /&gt;fsize c:\windows&lt;br /&gt;fsize "c:\Archivos de programa"&lt;br /&gt;fsize \\server-1\datos\pepe&lt;br /&gt;&lt;br /&gt;obtuve los siguientes resultados:&lt;br /&gt;&lt;br /&gt;c:\windows:&lt;br /&gt;6.48 GBytes - 28332 archivos - 2459 carpetas.&lt;br /&gt;&lt;br /&gt;c:\Archivos de programa:&lt;br /&gt;2.13 GBytes - 14883 archivos - 2834 carpetas.&lt;br /&gt;&lt;br /&gt;\\server-1\datos\pepe:&lt;br /&gt;1.48 GBytes - 3659 archivos - 91 carpetas.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;El código fuente de fsize.c está disponible en:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;http://sites.google.com/site/ramiroencinas/soft/fsize.c&lt;br /&gt;&lt;br /&gt;e incluye comentarios explicando el funcionamiento.&lt;br /&gt;&lt;br /&gt;El archivo&lt;b&gt; fsize.exe&lt;/b&gt; junto con el &lt;b&gt;código fuente&lt;/b&gt; también está disponible en:&lt;br /&gt;&lt;br /&gt;http://sites.google.com/site/ramiroencinas/soft/fsize.zip&lt;br /&gt;&lt;br /&gt;Notas:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;El compilador de C que he utilizado es &lt;a href="http://www.cs.virginia.edu/~lcc-win32/"&gt;lcc-win32&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;El compilado-linkado lo realizé con:&lt;span&gt;&lt;b&gt; lc fsize.c -o fsize.exe -s&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;El archivo generado ejecutable &lt;span&gt;&lt;b&gt;fsize.exe&lt;/b&gt;&lt;/span&gt; tiene un tamaño de &lt;b&gt;32KBytes&lt;/b&gt; (es lo bueno de programar directamente con la API de Windows).&lt;/li&gt;&lt;li&gt;Funciona a partir de Windows XP.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-5695096453675225948?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/5695096453675225948/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=5695096453675225948' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/5695096453675225948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/5695096453675225948'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2012/01/averigua-el-tamano-de-una-carpeta-con-c.html' title='Averigua el tamaño de una carpeta con C'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-3876655887519443949</id><published>2011-11-21T16:56:00.005+01:00</published><updated>2011-11-21T17:19:43.628+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='debian'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='servicios'/><title type='text'>Securing Debian Manual en castellano</title><content type='html'>Lo que tiene que saber un sysadmin de Debian en cuanto a la seguridad está en &lt;a href="http://www.debian.org/doc/manuals/securing-debian-howto/securing-debian-howto.en.pdf"&gt;este documento&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Y para los vagos con el inglés, he comenzado la traducción al castellano de sus capítulos más relevantes, comenzando con el tercero, que trata sobre los aspectos a tener en cuenta &lt;b&gt;antes y durante la instalación de un Debian&lt;/b&gt;:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Contraseñas&lt;/li&gt;&lt;li&gt;Particionamiento&lt;/li&gt;&lt;li&gt;Control de servicios&lt;/li&gt;&lt;li&gt;Control de software instalado&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;PDF disponible en &lt;a href="https://sites.google.com/site/ramiroencinas/doc/Securing_Debian_Manual_Cap3_ES.pdf"&gt;este enlace&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-3876655887519443949?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/3876655887519443949/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=3876655887519443949' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3876655887519443949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3876655887519443949'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2011/11/securing-debian-manual-en-castellano.html' title='Securing Debian Manual en castellano'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-7469813707622524760</id><published>2011-08-16T12:58:00.005+02:00</published><updated>2011-08-18T09:05:59.759+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='powershell'/><category scheme='http://www.blogger.com/atom/ns#' term='exchange 2010'/><title type='text'>Exchange 2010 | ¿Quién está fuera de la oficina?</title><content type='html'>Con Outlook puedes averiguar si alguien de tu organización está fuera de la oficina, pero no puedes saber quienes son todos ellos.&lt;br /&gt;&lt;br /&gt;Para obtener un fichero de texto "fuera_oficina.txt" con la lista con todos estos usuarios podemos ejecutar el siguiente script de Powershell desde un host que tenga instalada la consola de administración de Exchange o desde un servidor Exchange.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;--- comienzo del script ---&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;# guarda fecha actual&lt;/div&gt;&lt;div&gt;$fecha_actual = Get-Date &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;# guarda los samaccounts de todos los buzones&lt;/div&gt;&lt;div&gt;$buzones = Get-Mailbox | %{$_.SamAccountName}&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;# crea una lista para guardar los samaccounts de todos los buzones fuera de oficina&lt;/div&gt;&lt;div&gt;$buzon_fuera_oficina = New-Object System.Collections.ArrayList &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;# procesa cada buzón (samaccountname)&lt;/div&gt;&lt;div&gt;foreach ($buzon in $buzones) &lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;# extrae la configuración de "fuera de la oficina"&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;$fuera_oficina = Get-MailboxAutoReplyConfiguration $buzon&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;# si "fuera de la oficina" está activado y la fecha de activación es hasta hoy&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;if (($fuera_oficina.AutoReplyState -eq "scheduled")&lt;span class="Apple-style-span" style="white-space: pre;"&gt; &lt;/span&gt;-and ($fuera_oficina.StartTime -le $fecha_actual))&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;{&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;		&lt;/span&gt;# agrega a la lista el samaccount actual&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;		&lt;/span&gt;$buzon_fuera_oficina.add($buzon)&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;}&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;# crea un fichero txt con la lista de samaccounts ordenada&lt;/div&gt;&lt;div&gt;$buzon_fuera_oficina | sort | out-file ./fuera_oficina.txt&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;--- fin del script ---&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-7469813707622524760?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/7469813707622524760/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=7469813707622524760' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7469813707622524760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7469813707622524760'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2011/08/exchange-2010-quien-esta-fuera-de-la.html' title='Exchange 2010 | ¿Quién está fuera de la oficina?'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-6156341643761941962</id><published>2011-08-08T14:16:00.008+02:00</published><updated>2011-08-08T14:36:32.143+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='powershell'/><category scheme='http://www.blogger.com/atom/ns#' term='windows update'/><title type='text'>Actualizaciones pendientes | Windows Update</title><content type='html'>Una forma rápida y sencilla de averiguar qué servidores de un Directorio Activo tiene pendientes &lt;b&gt;las actualizaciones de Windows Update&lt;/b&gt; es conocer los que tienen corriendo el proceso &lt;b&gt;wuauclt&lt;/b&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Si además puedes &lt;b&gt;enviarte un email semanal&lt;/b&gt; con esa información, garantizas que los servidores estén &lt;b&gt;actualizados bajo tu supervisión &lt;/b&gt;con una frecuencia razonable.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Esto se puede hacer con un script &lt;b&gt;PowerShell&lt;/b&gt; como el siguiente:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;---- comienzo del script ---&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;# Busca el proceso wuauclt.exe para ver si hay actualizaciones pendientes&lt;/div&gt;&lt;div&gt;# en servidores Windows encontrados en Directorio Activo&lt;/div&gt;&lt;div&gt;# y reporta resultados por email&lt;/div&gt;&lt;div&gt;# 2011 - ramiro.encinas&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;$emailFrom = "from@dominio.es" # origen email&lt;/div&gt;&lt;div&gt;$emailTo = "to@dominio.es" # destino email&lt;/div&gt;&lt;div&gt;$subject = "Servidores con Windows Update activo" # asunto&lt;/div&gt;&lt;div&gt;$smtpServer = "smtp.dominio.es" # servidor SMTP destino&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;# Búsqueda de servidores Windows en Directorio Activo:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;$strOperatingSystem = "Windows*Server*" # patrón a buscar para SO&lt;/div&gt;&lt;div&gt;$objDomain = New-Object System.DirectoryServices.DirectoryEntry # acceso servicio directorio&lt;/div&gt;&lt;div&gt;$objSearcher = New-Object System.DirectoryServices.DirectorySearcher # buscador&lt;/div&gt;&lt;div&gt;$objSearcher.SearchRoot = $objDomain # búsqueda desde el raíz del directorio&lt;/div&gt;&lt;div&gt;$objSearcher.Filter = ("OperatingSystem=$strOperatingSystem") # filtro LDAP&lt;/div&gt;&lt;div&gt;$colProplist = "name" # propiedad name del SO&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;foreach ($i in $colPropList){$objSearcher.PropertiesToLoad.Add($i)} # carga de la propiedad name&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;$colResults = $objSearcher.FindAll() # búsqueda&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;$r = "`n" # texto del informe&lt;/div&gt;&lt;div&gt;$enviar = "no" # switch de envío&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;foreach ($objResult in $colResults) # Extracción de procesos por servidor encontrado&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;$objComputer = $objResult.Properties; # propiedades del servidor&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;$Server = $objComputer.name # nombre del servidor&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;$ErrorActionPreference = "SilentlyContinue" # no visualiza excepciones (servidores sin conexión)&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;Write-Host "Procesando $Server..." # mensaje&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;$encontrado = Get-Process -Name wuauclt -ComputerName $Server # búsqueda del proceso wuauclt&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;if ($encontrado) # si existe el proceso wuauclt&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;{&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;		&lt;/span&gt;$r = $r + $Server + "`n"&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;		&lt;/span&gt;$enviar = "si" # si uno al menos, envía email activando el switch&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;}&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;#envío email si procede&lt;/div&gt;&lt;div&gt;if ($enviar -eq "si")&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;$body = $r&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;$smtp = new-object Net.Mail.SmtpClient($smtpServer) # objeto smtp&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;$smtp.Send($emailFrom, $emailTo, $subject, $body) # envío del mensaje&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;&lt;b&gt;--- fin del script ---&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;El script también está disponible desde &lt;a href="https://sites.google.com/site/ramiroencinas/soft/wupdate.ps1"&gt;aquí&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Los únicos parámetros que tienes que cambiar son los de las 4 líneas que hay al comienzo:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;$emailFrom = "from@dominio.es" # origen email&lt;/div&gt;&lt;div&gt;&lt;div&gt;$emailTo = "to@dominio.es" # destino email&lt;/div&gt;&lt;div&gt;$subject = "Servidores con Windows Update activo" # asunto&lt;/div&gt;&lt;div&gt;$smtpServer = "smtp.dominio.es" # servidor SMTP destino&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Después puedes crear una tarea programada en un servidor que siempre esté encendido para ejecutar el script semanalmente y a esperar...&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-6156341643761941962?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/6156341643761941962/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=6156341643761941962' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6156341643761941962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6156341643761941962'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2011/08/actualizaciones-pendientes-windows.html' title='Actualizaciones pendientes | Windows Update'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-8404208416173049575</id><published>2011-04-16T12:33:00.023+02:00</published><updated>2011-04-16T13:49:04.628+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rapidez'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='exchange 2010'/><title type='text'>Exchange 2010 | Seguimiento de mensajes</title><content type='html'>La consola de administración de Exchange 2010 incorpora el seguimiento de mensajes para ver el recorrido de un mensaje por los servidores de Exchange. La interfaz que trae es bastante complicada, así que he implementado una herramienta autónoma:&lt;br /&gt;&lt;br /&gt;&lt;a href="https://sites.google.com/site/ramiroencinas/soft/Seguimiento_mensajes_EX2010.zip"&gt;Seguimiento_mensajes_EX2010.exe&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;que trae un formulario más sencillo y práctico:&lt;br /&gt;&lt;br /&gt;&lt;img src="https://sites.google.com/site/ramiroencinas/soft/pic1.gif" /&gt;&lt;br /&gt;&lt;br /&gt;El campo obligatorio es &lt;b&gt;Servidor&lt;/b&gt;, pues en su registro de mensajes se realiza la búsqueda teniendo en cuenta el resto de criterios.&lt;br /&gt;&lt;br /&gt;Elegido el servidor, clicas en &lt;b&gt;Buscar&lt;/b&gt; y aparecerán los resultados debajo (si los hay).&lt;br /&gt;&lt;br /&gt;El informe resultante puedes imprimirlo, y también puedes guardarlo en html. Para esto último, introduce un nombre para el archivo del informe y clica en &lt;b&gt;Guardar informe&lt;/b&gt;. El archivo html correspondiente lo encontrarás en la carpeta &lt;b&gt;Seguimiento_Mensajes&lt;/b&gt; ubicada en el escritorio.&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;img src="https://sites.google.com/site/ramiroencinas/soft/pic2.gif" /&gt;&lt;/center&gt;&lt;br /&gt;Con esta herramienta serás mucho más rápido y además podrás presentar informes por escrito del movimiento de cualquier mensaje.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Requisitos:&lt;/b&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/es-es/details.aspx?FamilyID=333325fd-ae52-4e35-b531-508d977d32a6&amp;amp;displayLang=es"&gt;.Net Framework 3.5&lt;/a&gt; o superior&lt;/li&gt;&lt;li&gt;&lt;a href="http://support.microsoft.com/kb/968929"&gt;PowerShell 2.0&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-8404208416173049575?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/8404208416173049575/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=8404208416173049575' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8404208416173049575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8404208416173049575'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2011/04/exchange-2010-seguimiento-de-mensajes.html' title='Exchange 2010 | Seguimiento de mensajes'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-6139924339432285507</id><published>2011-01-27T16:52:00.004+01:00</published><updated>2011-01-30T15:38:30.878+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='exchange 2010'/><title type='text'>Las colas de Exchange 2010</title><content type='html'>Supervisar las colas de un Exchange 2010  es una tarea clave para detectar cuellos de botella producidos por mensajes acumulados en algún servidor de Transporte. Exchange 2010 ofrece dos formas de ver el contenido de las colas:&lt;div&gt;&lt;ul&gt;&lt;li&gt;Mediante la consola de administración de Exchange 2010.&lt;/li&gt;&lt;li&gt;Mediante los cmd-lets de Exchange 2010 de PowerShell.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Para simplificar el acceso a las colas también puedes utilizar &lt;a href="http://sites.google.com/site/ramiroencinas/soft/colas_exchange_2010.zip"&gt;colas_exchange_2010.exe&lt;/a&gt;. Esta utilidad puede correr en cualquier equipo conectado al mismo dominio que el servidor Exchange 2010 y como requisitos necesita .NET 3.5  o superior y PowerShell 2.0:&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://sites.google.com/site/ramiroencinas/soft/colas_ex2010.gif"&gt;&lt;/a&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://sites.google.com/site/ramiroencinas/soft/colas_ex2010.gif"&gt;&lt;img style="text-align: left;display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; cursor: pointer; width: 517px; height: 467px; " src="https://sites.google.com/site/ramiroencinas/soft/colas_ex2010.gif" border="0" alt="" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Esta utilidad conecta con cualquier servidor Exchange 2010 y después tienes que elegir el servidor de Transporte que quieres consultar. Cambiando "Intervalo" modificas la frecuencia de la consulta. Los campos que muestra son los mismos que ofrece por defecto el visor de colas de la consola de administración de Exchange 2010. Recuerda que esta utilidad tiene que ser ejecutada con un usuario que pueda realizar estas consultas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-6139924339432285507?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/6139924339432285507/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=6139924339432285507' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6139924339432285507'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6139924339432285507'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2011/01/las-colas-de-exchange-2010.html' title='Las colas de Exchange 2010'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-3692520688631978615</id><published>2011-01-19T22:46:00.011+01:00</published><updated>2011-01-20T00:15:17.215+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opinión'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Perl: mitos y ventajas</title><content type='html'>Hace poco di con un interesante artículo escrito por Simons Cozens que trata sobre &lt;a href="http://www.perl.com/pub/2000/01/10PerlMyths.html"&gt;los diez mitos de Perl&lt;/a&gt;. Ese artículo data del año 2000 y tristemente todavía veo que esos mitos persisten.&lt;br /&gt;&lt;br /&gt;Al margen de los mitos, yo veo a Perl como un C de buen rollo y a lo bestia: con pocas líneas y algunas expresiones regulares estás leyendo sólo lo que necesitas y a la vez de una base de datos, de un router, de una impresora, de un fichero de texto plano y de una web, lo pones todo en un informe y lo guardas donde quieras y en el formato que quieras (por ej. en HTML).&lt;br /&gt;&lt;br /&gt;Luego el sistema operativo te da igual: el único sistema operativo que no soporta Perl yo creo que es el de las lavadoras (y no se yo). Allí donde haya una línea de comandos hay Perl, casi seguro. En concreto, para Windows recomiendo la distribución &lt;a href="http://strawberryperl.com/"&gt;Strawberry Perl&lt;/a&gt; (también recomendada por Larry Wall que es el creador de Perl).&lt;br /&gt;&lt;br /&gt;Y bueno, en el terreno de sistemas hay dos cosas: Perl para llegar a todo sistema que funcione (routers, switches, servidores, clientes, linux, microsoft, mac, solaris, etc) y donde no llega Perl llega PowerShell.&lt;br /&gt;&lt;br /&gt;Qué decir de Perl y el mundo Web, si fue Perl junto con Apache y CGI el que construyó la web antes de que PHP llegara. Aún así, Perl persiste en webs serias y tiene muchas de las comunidades más serias que he visto en la red, como &lt;a href="http://www.perlmonks.org/"&gt;PerlMonks&lt;/a&gt;, entre otras.&lt;br /&gt;&lt;br /&gt;He visto dos cosas que realmente me han impactado de Perl: una es la facilidad de aprenderlo (yo aprendí casi todo con &lt;a href="http://perl-es.iespana.es/downloads/Perl.pdf"&gt;este estupendo manual&lt;/a&gt; en castellano de Jose Miguel Prellezo) y la otra es la cantidad de módulos disponibles para hacer cualquier cosa o para llegar a cualquier cosa: &lt;a href="http://search.cpan.org/"&gt;CPAN&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Otra cosa que me gusta de Perl es que va al grano: es corto, rápido y conciso. Este ejemplo lo ví en el artículo de los diez mitos y es impresionante:&lt;br /&gt;&lt;br /&gt;s/(.*):(.*)/$2:$1/&lt;br /&gt;&lt;br /&gt;La línea de código anterior puede hacer lo siguiente: toma una línea de texto que contenga cualquier cosa, luego el símbolo de dos puntos y después cualquier otra cosa. Lo que hace es intercambiar las dos cosas que están a los lados de los dos puntos (puedes leer &lt;a href="https://docs.google.com/document/d/1V3GfnQxtj0KmgcdvN3U2cYaFhsbTa8sp7H176dGCRSo/edit?hl=es"&gt;el artículo ya traducido&lt;/a&gt; para ver la explicación).&lt;br /&gt;&lt;br /&gt;Sin dudarlo, de todos los lenguajes que he utilizado: Basic, Logo, Pascal, Ensamblador, Cobol, Batch, Bash, Python, Ruby, C, C++, C#, Visual Basic, Java, PowerShell y Perl, me quedo con este último.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-3692520688631978615?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/3692520688631978615/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=3692520688631978615' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3692520688631978615'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3692520688631978615'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2011/01/perl-mitos-y-ventajas.html' title='Perl: mitos y ventajas'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-4341769577785534305</id><published>2011-01-09T00:08:00.003+01:00</published><updated>2011-01-09T01:51:38.453+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='vulnerabilidad'/><title type='text'>KB2490606, nueva vulnerabilidad</title><content type='html'>El pasado día 4 de enero, &lt;a href="http://www.microsoft.com/technet/security/advisory/2490606.mspx"&gt;Microsoft anunció una vulnerabilidad importante&lt;/a&gt; en el archivo de Windows &lt;b&gt;shimgvw.dll&lt;/b&gt;, que permitiría ejecución remota de código malicioso en Windows XP SP3, Windows Server 2003 SP2, Windows Vista y las primeras versiones de Windows Server 2008, entre otras de 64-bit.&lt;br /&gt;&lt;br /&gt;Este archivo es el &lt;b&gt;Visor de imágenes y fax de Windows&lt;/b&gt;, aplicación que Windows utiliza por defecto para abrir imágenes y también para mostrar las &lt;b&gt;Vistas en miniatura&lt;/b&gt; de una carpeta que pueda contener alguna imagen.&lt;br /&gt;&lt;br /&gt;Si el &lt;b&gt;Visor de imágenes y fax de Windows&lt;/b&gt; abre o muestra la vista en miniatura de una imagen especialmente creada para aprovecharse de esta vulnerabilidad, ésta se produciría permitiendo la ejecución remota de código malicioso.&lt;br /&gt;&lt;br /&gt;De momento no hay parche para &lt;b&gt;shimgvw.dll&lt;/b&gt;, pero Microsoft aconseja quitarle privilegios para minimizar el riesgo, hasta que publiquen el parche. Para ello Microsoft recomienda utilizar la siguiente línea de comando (versiones de 32-bit de Windows XP y Server 2003):&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" &gt;cacls %WINDIR%\SYSTEM32\shimgvw.dll /E /P Todos:N&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Y para deshacer lo anterior:&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" &gt;cacls %WINDIR%\SYSTEM32\shimgvw.dll /E /R Todos&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Más líneas de comandos para otras versiones de Windows en &lt;a href="http://www.microsoft.com/technet/security/advisory/2490606.mspx"&gt;la publicación de esta vulnerabilidad&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;De momento no ha habido mucha repercusión con esta vulnerabilidad, pero es igual de peligrosa que la de agosto del año pasado relacionada con &lt;a href="http://www.microsoft.com/technet/security/bulletin/MS10-046.mspx"&gt;la visualización de iconos&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-4341769577785534305?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/4341769577785534305/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=4341769577785534305' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/4341769577785534305'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/4341769577785534305'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2011/01/kb2490606-nueva-vulnerabilidad.html' title='KB2490606, nueva vulnerabilidad'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-8695684272292485996</id><published>2010-12-30T18:57:00.011+01:00</published><updated>2010-12-30T19:11:10.727+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='copia de seguridad'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='filosofía'/><title type='text'>Tres reglas en la administración de sistemas</title><content type='html'>&lt;div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; background-color: transparent; "&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: 15px; white-space: pre-wrap;"&gt;Fuente original: &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;a href="http://www.thegeekstuff.com/2010/07/three-sysadmin-rules/"&gt;http://www.thegeekstuff.com/2010/07/three-sysadmin-rules/&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;El borrador de este artículo trataba de las 7 costumbres de los administradores de sistemas. Tres de ellas destacaban realmente.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Si las costrumbres son buenas, a veces las reglas son incluso mejor, especialmente en el mundo de la administración de sistemas cuando se trata de un entorno de producción.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;span class="Apple-style-span" style="font-size: 11pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span"&gt;Regla #1: Haz copia de seguridad de todo ( y compruébala con regularidad )&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Los administradores de sistemas experimentados saben que, independientemente de lo proactivo que seas, un sistema en producción fallará algún día. La mejor forma de estar preparado para esta situación es disponer de una copia de seguridad correcta.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Si no dispones de una copia de seguridad de tus sistemas críticos, deberías empezar a pensar en ello inmediatamente. Ten en cuenta lo siguiente:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;ul style="font-family: 'Times New Roman'; font-size: medium; "&gt;&lt;li style="list-style-type: disc; font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;¿Qué software o script utilizarías para realizar la copia de seguridad?&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;¿Dispones de suficiente espacio en disco para la copia de seguridad?&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;¿Con qué frecuencia se actualizarán las copias de seguridad?&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;¿Necesitarás copias de seguridad incrementales además de la copia de seguridad total?&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;¿Cómo se ejecutaría la copia de seguridad, por ej. utilizando crontab o algún otro sistema de calendarizaje?&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Si no tienes una copia de seguridad de tus sistemas críticos, deja de leer este artículo y ponte a trabajar. Comienza la planificación de tu copia de seguridad inmediatamente.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;En una de las investigaciones realizadas por una compañía (no recuerdo cual), recuerdo que sólo el 70% de las aplicaciones en producción tenían copia de seguridad, y de ellas el 30% eran incorrectas o estaban corruptas.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Supongamos que Samuel realiza copia de seguridad regularmente de las aplicaciones críticas, pero no las comprueba. Por otro lado, Javier no realiza ninguna copia de seguridad de sus aplicaciones críticas. Se puede pensar que Samuel lo hace mejor que Javier, pero en mi opinión los dos están en una mala situación: Samuel no puede asegurar la restauración correcta de la copia de seguridad en caso de desastre.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Si eres un administrador de sistemas y no consideras esta regla de oro número 1, debes pensar seriamente en dejar de administrar sistemas y dedicarte al desarrollo de aplicaciones.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;span class="Apple-style-span" style="font-size: 11pt; font-weight: normal; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;Regla #2: Domina la línea de comandos ( y evita las ventanas )&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;No hay una ni una tarea en un servidor Unix / Linux que no puedas realizar con la línea de comandos. Existen algunas aplicaciones de administración basadas en ventanas para hacerlo más fácil, pero realmente no las necesitas y deberías utilizar siempre la línea de comandos.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Si eres un administrador de sistemas Linux, debes dominar la línea de comandos.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;En cualquier sistema, si quieres ser fluido y productivo, debes ser un maestro con la línea de comandos. La diferencia principal entre un administrador de sistemas de Windows y de Linux es: Interface gráfica vs. Línea de comandos. Los administradores de sistemas de Windows no se sienten muy cómodos con la línea de comandos, mientras que los administradores de sistemas de Línux si.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Aparte de utilizar la línea de comandos, también debes entender cómo funciona un servicio en particular. En muchos entornos de servidor en producción, los administradores de sistemas normalmente desinstalan los servicios y herramientas que utilizan la interface gráfica.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Si eres un administrador de sistemas de Unix / Linux y no te gusta esta regla, es posible que realmente te guste más la administración de sistemas de Windows.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; background-color: transparent; "&gt;&lt;span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; background-color: transparent; "&gt;&lt;span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; background-color: transparent; "&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;span style="font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;b&gt;Regla #3. Automatiza todo ( y hazte vago )&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;El mejor administrador es el vago.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;No conozco a ningún administrador que rompa esta regla. Esta es la parte más vaga.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; font-size: 11pt; background-color: transparent;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Piensa durante unos minutos en la lista de tareas rutinarias que tienes que hacer todos los días, semanas o mensualmente. Cuando tengas esa lista, piensa en cómo automatizarla. El mejor administrador de sistemas normalmente no está ocupado, todo lo contrario: está relajado y deja que el sistema haga el trabajo por él.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-8695684272292485996?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/8695684272292485996/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=8695684272292485996' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8695684272292485996'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8695684272292485996'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/12/tres-reglas-en-la-administracion-de.html' title='Tres reglas en la administración de sistemas'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-5000417416455976065</id><published>2010-12-07T14:45:00.011+01:00</published><updated>2010-12-07T15:41:59.399+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='powershell'/><category scheme='http://www.blogger.com/atom/ns#' term='exchange 2010'/><title type='text'>Exchange 2010: informe de buzones grandes</title><content type='html'>&lt;div&gt;&lt;b&gt;Objetivo:&lt;/b&gt; enviar informe por email (por ej. una vez por semana) con los tamaños de los 10 buzones Exchange 2010 más grandes y sus respectivos usuarios.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Requisitos:&lt;/b&gt; en un servidor Exchange 2010 lanzar el script una vez por semana mediante una tarea programada.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Observaciones:&lt;/b&gt; indicar en el script los campos adecuados del email del remitente, del destino y el servidor smtp de destino correspondiente.&lt;br /&gt;&lt;br /&gt;---- comienzo del script --------&lt;br /&gt;&lt;br /&gt;# top 10 en tamaño de buzones de Exchange 2010 vía email&lt;br /&gt;# datos envío email&lt;br /&gt;&lt;br /&gt;$remitente = "remitente@dominio.com" # origen email&lt;br /&gt;$destino = "destinatario@dominio.com" # más de uno separados por coma&lt;br /&gt;$asunto = "TOP 10 buzones de usuario"&lt;br /&gt;$servidor_smtp_destino = "smtp.dominio.com" # servidor smtp destino&lt;br /&gt;&lt;br /&gt;# extracción ordenada de tamaños de buzones&lt;br /&gt;&lt;br /&gt;$buzones = Get-Mailbox |&lt;br /&gt;get-mailboxstatistics |&lt;br /&gt;select-object DisplayName, TotalItemSize |&lt;br /&gt;sort TotalItemSize -Descending&lt;br /&gt;&lt;br /&gt;# selección de los 10 primeros&lt;br /&gt;&lt;br /&gt;$top10buzones = 0..9 | % {$buzones[$_]}&lt;br /&gt;&lt;br /&gt;# elaboración del informe&lt;br /&gt;&lt;br /&gt;$informe = "`n" # primera línea en blanco del texto del informe&lt;br /&gt;&lt;br /&gt;$informe = $informe + "  Tamaño   Usuario" + "`n"&lt;br /&gt;$informe = $informe + "-------- : ----------------------" + "`n"&lt;br /&gt;&lt;br /&gt;foreach ($buzon in $top10buzones) # procesa los 10 buzones&lt;br /&gt;{&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;$informe = $informe + "{0,5:n0}" -f ($buzon.TotalItemSize.value.ToGB()) + " GB" + " : " + $buzon.DisplayName + "`n"&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;# envía email con informe&lt;br /&gt;&lt;br /&gt;$smtp = new-object Net.Mail.SmtpClient($servidor_smtp_destino)&lt;br /&gt;$smtp.Send($remitente, $destino, $asunto, $informe)&lt;br /&gt;&lt;br /&gt;---- fin del script --------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-5000417416455976065?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/5000417416455976065/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=5000417416455976065' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/5000417416455976065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/5000417416455976065'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/12/exchange-2010-informe-de-buzones.html' title='Exchange 2010: informe de buzones grandes'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-4327469506966126707</id><published>2010-12-01T17:08:00.006+01:00</published><updated>2010-12-01T23:00:06.987+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rapidez'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='exchange 2010'/><title type='text'>Exchange 2010: creación rápida de usuario y buzón</title><content type='html'>Con un único formulario, crea un usuario con buzón de correo en Exchange 2010 desde cualquier host conectado al dominio del Directorio Activo. Sólo es necesario tener instalado PowerShell 2 y .NET 3.5 en adelante.&lt;br /&gt;&lt;br /&gt;Características:&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Un sólo formulario.&lt;/li&gt;&lt;li&gt;Nombre de dirección de correo igual al nombre de inicio de sesión.&lt;/li&gt;&lt;li&gt;Inserción única de la contraseña.&lt;/li&gt;&lt;li&gt;Visualización del tamaño de las bases de datos de Exchange 2010 antes de elegirla.&lt;/li&gt;&lt;li&gt;Distinción entre cuenta personal y de servicio.&lt;/li&gt;&lt;li&gt;Inserción en grupos del Directorio Activo.&lt;/li&gt;&lt;li&gt;Inserción de los atributos más utilizados.&lt;/li&gt;&lt;li&gt;Visualización en la barra de estado del servidor Exchange 2010 conectado.&lt;/li&gt;&lt;li&gt;Gratuito.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Modo de empleo:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Ejecuta la herramienta "&lt;a href="https://sites.google.com/site/ramiroencinas/soft/alta_usuario_mailbox_2010.zip"&gt;alta_usuario_mailbox_2010.exe&lt;/a&gt;" con un usuario que tenga privilegios para crear buzones en Exchange 2010.&lt;/li&gt;&lt;li&gt;Elige en el árbol de la izquierda la Unidad Organizativa donde quieres ubicar la nueva cuenta.&lt;/li&gt;&lt;li&gt;Rellena los campos que necesites (algunos son obligatorios).&lt;/li&gt;&lt;li&gt;Clica en "Dar de Alta" y si todo es correcto, el usuario (con todas las opciones indicadas en el formulario) y su buzón de correo aparecerán en su sitio.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Pantallazo:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://sites.google.com/site/ramiroencinas/soft/alta_user_2010_709x734.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 739px; height: 704px;" src="https://sites.google.com/site/ramiroencinas/soft/alta_user_2010_709x734.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-4327469506966126707?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/4327469506966126707/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=4327469506966126707' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/4327469506966126707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/4327469506966126707'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/12/exchange-2010-creacion-rapida-de.html' title='Exchange 2010: creación rápida de usuario y buzón'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-8959652595197078775</id><published>2010-11-27T16:35:00.023+01:00</published><updated>2011-01-20T00:14:42.655+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='powershell'/><category scheme='http://www.blogger.com/atom/ns#' term='directorio activo'/><category scheme='http://www.blogger.com/atom/ns#' term='rapidez'/><category scheme='http://www.blogger.com/atom/ns#' term='usuarios'/><title type='text'>Directorio Activo: Informes de usuarios</title><content type='html'>&lt;div&gt;Toca realizar consultas al Directorio Activo en busca de patrones que guardan los usuarios. Sólo vamos a utilizar PowerShell y .NET (sin más).&lt;br /&gt;&lt;br /&gt;Un usuario de un dominio de un Directorio Activo es un objeto y tiene una serie de propiedades (también conocidas como atributos) que le hacen único para unas cosas y común para otras. Entre otras, las propiedades más conocidas de un usuario son: name, displayname, samaccountname, company, department, division, memberof y mail.&lt;br /&gt;&lt;br /&gt;Como ejemplo a ilustrar, vamos a obtener un informe de todos los usuarios del grupo &lt;b&gt;G_ADMON&lt;/b&gt; y cuya oficina (atributo &lt;b&gt;physicalDeliveryOfficeName&lt;/b&gt;) sea &lt;b&gt;Madrid&lt;/b&gt;. Primero pongo el código PowerShell y después lo explico:&lt;br /&gt;&lt;br /&gt;----comienzo de script.ps1-------------&lt;br /&gt;&lt;br /&gt;$rootdse = New-Object DirectoryServices.DirectoryEntry("LDAP://RootDSE")&lt;br /&gt;$dominio = $rootdse.Properties["defaultNamingContext"]&lt;br /&gt;$raiz_dominio = New-Object DirectoryServices.DirectoryEntry("LDAP://$dominio")&lt;br /&gt;&lt;br /&gt;$busca = New-Object DirectoryServices.DirectorySearcher $raiz_dominio&lt;br /&gt;$busca.Filter = "(&amp;amp;(objectClass=user)(objectCategory=person))"&lt;br /&gt;$usuarios = $busca.findall()&lt;br /&gt;&lt;br /&gt;$c=0&lt;br /&gt;&lt;br /&gt;foreach ($usuario in $usuarios)&lt;br /&gt;{&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;if (($usuario.properties.memberof -like '*G_ADMON*') -and&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;($usuario.properties.physicaldeliveryofficename -eq 'Madrid'))&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;{&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;$usuario.properties.name&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;$usuario.properties.mail&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;"-----------------------"&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;$c++&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;}&lt;br /&gt;}&lt;br /&gt;"$c usuarios encontrados."&lt;br /&gt;&lt;br /&gt;----fin de script.ps1-------------&lt;br /&gt;&lt;br /&gt;En las tres primeras líneas se crean tres objetos consecutivamente:&lt;br /&gt;&lt;br /&gt;$rootdse: localiza la configuración principal del Directorio Activo.&lt;br /&gt;$dominio: extrae el valor del dominio de la configuración de $rootdse.&lt;br /&gt;$raiz_dominio: partiendo de $dominio, se ubica en su elemento raíz para realizar búsquedas.&lt;br /&gt;&lt;br /&gt;Las tres siguientes líneas preparan y ejecutan la búsqueda de usuarios:&lt;br /&gt;&lt;br /&gt;$busca: objeto que busca en $raiz_dominio.&lt;br /&gt;$busca.Filter: es un filtro para que sólo busque usuarios y no otro tipo de objetos.&lt;br /&gt;$usuarios = $busca.findall(): busca y encuentra a todos los usuarios que cumplan con el filtro y los deja en $usuarios.&lt;br /&gt;&lt;br /&gt;Después se inicializa un contador a 0 y luego hay un bucle &lt;b&gt;foreach&lt;/b&gt; que recorre todos los usuarios encontrados. Por cada usuario ($usuario) en $usuarios se busca con &lt;b&gt;if&lt;/b&gt; a los usuarios cuyo campo &lt;b&gt;memberof&lt;/b&gt; (grupos a los que pertenece el usuario) contenga lo que estamos buscando (el grupo &lt;b&gt;G_ADMON&lt;/b&gt;) y cuyo campo &lt;b&gt;physicaldeliveryofficename&lt;/b&gt; (oficina) sea &lt;b&gt;Madrid&lt;/b&gt;. Si las dos condiciones anteriores se cumplen, mostramos el nombre y el email del usuario en cuestión; además se incrementa el contador. El informe finaliza con el número de usuarios encontrados que cumplen las condiciones.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Este es el armazón básico para realizar consultas a objetos de un Directorio Activo, en este caso han sido consultas a dos atributos de todos los usuarios, pero podemos consultar cualquier atributo de cualquier usuario u otro objeto. Sólo necesitamos saber cómo se llaman los atributos de los objetos para buscarlos. Para averiguar estos nombres de atributos aconsejo utilizar la herramienta &lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb963907"&gt;AD Explorer&lt;/a&gt; de Mark Russinovich para ver el Directorio Activo por dentro, localizar los objetos y ver sus atributos.&lt;br /&gt;&lt;br /&gt;Además, escribir código para estos menesteres es mucho más corto y rápido con PowerShell que con cualquier otro lenguaje que utilice .NET como VBasic o C#.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-8959652595197078775?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/8959652595197078775/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=8959652595197078775' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8959652595197078775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8959652595197078775'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/11/directorio-activo-informes-de-usuarios.html' title='Directorio Activo: Informes de usuarios'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-2620531467407898566</id><published>2010-11-02T16:11:00.011+01:00</published><updated>2010-11-02T21:49:02.736+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='registro de windows'/><category scheme='http://www.blogger.com/atom/ns#' term='rapidez'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='servicios'/><category scheme='http://www.blogger.com/atom/ns#' term='usuarios'/><category scheme='http://www.blogger.com/atom/ns#' term='visor de sucesos'/><title type='text'>Acceso rápido a herramientas de Windows</title><content type='html'>El Panel de control de Windows tiene varias herramientas, pero hay otras importantes como los servicios y el visor de sucesos que no aparecen ahí.&lt;br /&gt;&lt;br /&gt;Por otro lado, dependiendo de la versión de Windows, los nombres de algunas herramientas cambian, por ej. en Windows XP, Windows 2000 y Windows 2003 tenemos "Agregar o quitar programas", en Windows Vista, tenemos "Programas y características", y en Windows 7 tenemos "Desinstalar un programa" pero en este caso la barra de direcciones sigue haciendo referencia a "Programas y características", todo esto con la misma función recurrente: desinstalar programas.&lt;br /&gt;&lt;br /&gt;Por estos motivos y por muchos otros, y porque un click es más rápido que dos, se me ocurrió hacer un menú (&lt;a href="http://sites.google.com/site/ramiroencinas/soft/herramientas.zip"&gt;herramientas.exe&lt;/a&gt;) con categorías y botones donde cada uno inicializa una herramienta:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://sites.google.com/site/ramiroencinas/soft/herramientas.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 621px; height: 402px;" src="http://sites.google.com/site/ramiroencinas/soft/herramientas.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Este menú ha funcionado correctamente en:&lt;div&gt;&lt;ul&gt;&lt;li&gt;Windows XP&lt;/li&gt;&lt;li&gt;Windows 2003&lt;/li&gt;&lt;li&gt;Windows 7&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Y el ordenador que lo utiliza necesita el &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=333325fd-ae52-4e35-b531-508d977d32a6&amp;amp;displayLang=es"&gt;Framework 3.5&lt;/a&gt; instalado (Windows 7 ya lo lleva puesto).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-2620531467407898566?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/2620531467407898566/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=2620531467407898566' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/2620531467407898566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/2620531467407898566'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/11/acceso-rapido-herramientas-de-windows.html' title='Acceso rápido a herramientas de Windows'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-2736916584448449816</id><published>2010-10-30T00:52:00.010+02:00</published><updated>2010-10-30T01:31:42.264+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='directorio activo'/><category scheme='http://www.blogger.com/atom/ns#' term='rapidez'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='cambiar contraseña'/><title type='text'>Nueva contraseña en tres pasos</title><content type='html'>&lt;br&gt;Una de las tareas más recurrentes en la administración de un Directorio Activo es el cambio de contraseña de los usuarios.&lt;br /&gt;&lt;br /&gt;Utilizar las típicas consolas de administración implican varios pasos para encontrar el usuario y cambiar su contraseña.&lt;br /&gt;&lt;br /&gt;Para dejarlo sólo en tres pasos, he creado &lt;a href="http://sites.google.com/site/ramiroencinas/soft/cambiapass.zip"&gt;cambiapass.exe&lt;/a&gt;, y una vez abierto ...&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Introduce el nombre de la cuenta del usuario (&lt;a href="http://msdn.microsoft.com/en-us/library/ms679635(VS.85).aspx"&gt;sAMAccountName&lt;/a&gt;) y pulsa ENTER.&lt;/li&gt;&lt;li&gt;Si existe, aparece la información suficiente para identificar al usuario.&lt;/li&gt;&lt;li&gt;Introduce la nueva contraseña y pulsa ENTER.&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;br /&gt;Un vistazo:&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://sites.google.com/site/ramiroencinas/soft/cambiapass.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 639px; height: 283px;" src="http://sites.google.com/site/ramiroencinas/soft/cambiapass.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Requisitos: &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=333325fd-ae52-4e35-b531-508d977d32a6&amp;amp;displayLang=es"&gt;Framework 3.5&lt;/a&gt; en un ordenador miembro del dominio.&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-2736916584448449816?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/2736916584448449816/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=2736916584448449816' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/2736916584448449816'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/2736916584448449816'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/10/nueva-contrasena-en-tres-pasos.html' title='Nueva contraseña en tres pasos'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-8102599437351902146</id><published>2010-09-28T23:47:00.014+02:00</published><updated>2010-09-29T01:23:20.038+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='directorio activo'/><category scheme='http://www.blogger.com/atom/ns#' term='exchange'/><category scheme='http://www.blogger.com/atom/ns#' term='rapidez'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='rendimiento'/><category scheme='http://www.blogger.com/atom/ns#' term='usuarios'/><title type='text'>Altas rápidas de usuario con Exchange 2007</title><content type='html'>&lt;div&gt;Cuando se da de alta un usuario en un Directorio Activo Win2003, normalmente también se necesita:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Buzón de correo&lt;/li&gt;&lt;li&gt;Atributos (organización, departamento, etc.)&lt;/li&gt;&lt;li&gt;Pertenencia a grupos&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Y para esto son necesarias la &lt;b&gt;consola de Exchange 2007&lt;/b&gt; (creación del usuario y el buzón en este caso) y la &lt;b&gt;consola de Administración de Usuarios y grupos del Directorio Activo&lt;/b&gt; (inserción de atributos y grupos).&lt;br /&gt;&lt;br /&gt;Para no perder tanto tiempo utilizando dos consolas, he desarrollado una herramienta llamada &lt;a href="https://sites.google.com/site/ramiroencinas/soft/alta_usuario.zip"&gt;alta_usuario.exe&lt;/a&gt; que ofrece un único formulario para crear un usuario+buzón, indicar toda la información mencionada y alguna cosa más:&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://sites.google.com/site/ramiroencinas/soft/snapshot.JPG"&gt;&lt;/a&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://sites.google.com/site/ramiroencinas/soft/snapshot.JPG"&gt;&lt;img style="text-align: left;display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; cursor: pointer; width: 685px; height: 553px; " src="https://sites.google.com/site/ramiroencinas/soft/snapshot.JPG" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Lo primero que debemos hacer es asegurarnos de que cumplimos los requisitos mínimos, que son tener instalado el siguiente software en el host donde ejecutemos &lt;a href="https://sites.google.com/site/ramiroencinas/soft/alta_usuario.zip"&gt;alta_usuarios.exe&lt;/a&gt;:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=6BE38633-7248-4532-929B-76E9C677E802&amp;amp;displaylang=es"&gt;Consola de administración de Exchange 2007&lt;/a&gt; (Windows de 32bit)&lt;/li&gt;&lt;li&gt;&lt;a href="http://support.microsoft.com/kb/968929"&gt;Powershell 2.0&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=333325fd-ae52-4e35-b531-508d977d32a6&amp;amp;displayLang=es"&gt;Framework 3.5&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Lo segundo es ejecutar &lt;a href="https://sites.google.com/site/ramiroencinas/soft/alta_usuario.zip"&gt;alta_usuarios.exe&lt;/a&gt; con un usuario que tenga permisos suficientes para crear usuarios en el dominio y buzones en Exchange 2007.&lt;br /&gt;&lt;br /&gt;Aparece el formulario, indicamos el nombre del dominio (por defecto DOMINIO) y le damos a &lt;b&gt;Conectar&lt;/b&gt;. Esperamos un poco y si todo es correcto, aparecerá en la columna izquierda &lt;b&gt;el árbol de OU's del dominio&lt;/b&gt;. Elegimos la OU correspondiente para el nuevo usuario, y ésta aparecerá arriba en el apartado &lt;b&gt;Unidad Organizativa&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;Después &lt;b&gt;indicamos la información común de alta del usuario&lt;/b&gt; donde es obligatorio el nombre, el nombre de inicio de sesión, la contraseña y el grupo de almacenamiento de correo (los atributos son opcionales).&lt;br /&gt;&lt;br /&gt;En el apartado &lt;b&gt;Tipo de cuenta&lt;/b&gt; podemos elegir entre:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Cuenta personal:&lt;/b&gt; el usuario es una persona e indicamos sus apellidos.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Cuenta de servicio:&lt;/b&gt; el usuario no es una persona e indicamos el atributo &lt;b&gt;Nombre para mostrar&lt;/b&gt; que queramos.&lt;/li&gt;&lt;/ul&gt;Una cuenta de servicio es aquella que utilizan uno o más usuarios, y la cual carece de apellidos. En el caso del atributo &lt;b&gt;Nombre para mostrar&lt;/b&gt; de la cuenta personal será: apellido1 apellido2, nombre.&lt;br /&gt;&lt;br /&gt;El penúltimo paso es añadir al nuevo usuario &lt;b&gt;en los grupos que queramos del Directorio Activo&lt;/b&gt;, y si nos equivocamos también podemos quitarlos (tampoco es obligatorio).&lt;br /&gt;&lt;br /&gt;Por último, le damos al botón &lt;b&gt;Dar de Alta&lt;/b&gt; y el resultado lo tendremos más abajo.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;b&gt;Nota:&lt;/b&gt; esta herramienta está muy probada en producción, en el entorno indicado y funciona estupendamente, no obstante, si la pruebas y ves algún fallo o sugerencia, agradeceré me lo comuniques.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-8102599437351902146?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/8102599437351902146/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=8102599437351902146' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8102599437351902146'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8102599437351902146'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/09/altas-rapidas-de-usuario-con-exchange.html' title='Altas rápidas de usuario con Exchange 2007'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-585284189632770233</id><published>2010-09-13T14:04:00.015+02:00</published><updated>2010-09-13T22:38:31.210+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='directorio activo'/><category scheme='http://www.blogger.com/atom/ns#' term='rapidez'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='usuarios'/><title type='text'>Directorio Activo: grupos y miembros</title><content type='html'>Cuando un Directorio Activo alcanza su madurez, también alcanza un buen número de grupos que se utilizan para que sus miembros (usuarios y otros grupos) dispongan de otros recursos del Directorio Activo como carpetas compartidas, listas de distribución de email, permisos para realizar ciertas operaciones, etc.&lt;br /&gt;&lt;br /&gt;En cualquier caso y a medida que pasa el tiempo, la creación de grupos disminuye y aumenta la necesidad de agregar/eliminar miembros de estos grupos.&lt;br /&gt;&lt;br /&gt;Para que esta tarea sea más rápida y amena, he creado una herramienta llamada &lt;b&gt;Gestión de miembros en grupos&lt;/b&gt; (&lt;a href="https://sites.google.com/site/ramiroencinas/soft/gestion_grupos.zip"&gt;gestion_grupos.exe&lt;/a&gt;) que hace lo siguiente:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Conecta con el dominio deseado previa indicación de su nombre.&lt;/li&gt;&lt;li&gt;Crea una lista desplegable con todos los grupos encontrados en el dominio indicado.&lt;/li&gt;&lt;li&gt;Elegido un grupo de la lista desplegable, aparecen sus miembros. &lt;/li&gt;&lt;li&gt;Para eliminar un miembro, lo seleccionamos de la lista y clicamos en "Eliminar".&lt;/li&gt;&lt;li&gt;Para agregar un miembro, escribimos su nombre de cuenta (samAccount) en el campo a la izquierda del botón "Agregar" y clicamos en él.&lt;/li&gt;&lt;li&gt;Los miembros pueden ser usuarios y/o grupos.&lt;/li&gt;&lt;li&gt;Requiere &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=333325fd-ae52-4e35-b531-508d977d32a6&amp;amp;displayLang=es"&gt;.NET Framework 3.5&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Un pantallazo:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://sites.google.com/site/ramiroencinas/soft/pic1.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 301px; height: 338px;" src="https://sites.google.com/site/ramiroencinas/soft/pic1.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-585284189632770233?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/585284189632770233/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=585284189632770233' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/585284189632770233'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/585284189632770233'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/09/directorio-activo-grupos-y-miembros.html' title='Directorio Activo: grupos y miembros'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-1894451265697598959</id><published>2010-07-19T12:41:00.025+02:00</published><updated>2010-07-20T09:45:25.571+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='powershell'/><category scheme='http://www.blogger.com/atom/ns#' term='exchange'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Monitorizando colas de Exchange 2007</title><content type='html'>&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;br /&gt;Get-Queue -server nombre_servidor_exchange2007&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;es el comando PowerShell que muestra una instantánea del número de mensajes de las colas del servidor de correo Exchange 2007.&lt;br /&gt;&lt;br /&gt;Una buena mejora en la visualización de resultados de este comando sería que éstos aparecieran en una ventanita de Windows y se actualizara con cierta frecuencia:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://sites.google.com/site/ramiroencinas/soft/colas_exchange.jpg" style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 229px; height: 162px;" border="0" alt="" /&gt;Para conseguirlo, escribiremos una aplicación en C# que internamente ejecute nuestro comando en PowerShell y envíe su salida a un &lt;b&gt;Listview&lt;/b&gt; con los resultados, todo en una ventanita.&lt;br /&gt;&lt;br /&gt;Para que esto funcione, tanto en el desarrollo de la aplicación como en la ejecución posterior del .exe, es necesario utilizar un usuario que tenga permisos para visualizar las colas, por ej. el administrador de dominio.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;b&gt;Requisitos de software en el host de desarrollo:&lt;br /&gt;&lt;/b&gt;&lt;/i&gt;&lt;b&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;- &lt;a href="http://www.icsharpcode.net/opensource/sd/download/"&gt;SharpDevelop&lt;/a&gt;&lt;br /&gt;- &lt;a href="http://support.microsoft.com/kb/968929"&gt;Powershell 2&lt;/a&gt;&lt;br /&gt;- &lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=es&amp;amp;FamilyID=6be38633-7248-4532-929b-76e9c677e802"&gt;Consola de administración de Exchange 2007&lt;/a&gt;&lt;br /&gt;- &lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=es&amp;amp;FamilyID=333325fd-ae52-4e35-b531-508d977d32a6"&gt;.NET Framework 3.5&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Instalado todo esto, abrimos SharpDevelop con el usuario que tenga permisos para ver las colas de Exchange 2007 y creamos en un proyecto nuevo una nueva aplicación de Windows que se llame "colas_correo", de esta forma:&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;img src="http://sites.google.com/site/ramiroencinas/soft/shot_01.JPG" style="cursor:pointer; cursor:hand;width: 579px; height: 457px;" border="0" alt="" /&gt;&lt;/div&gt;&lt;div&gt;Creada la aplicación, tendremos una ventana vacía que es el formulario por defecto "MainForm". A la derecha de la vista de diseño del formulario tenemos la columna de propiedades del elemento que tengamos seleccionado. Seleccionamos la ventana del formulario y en la lista de propiedades buscamos la propiedad "Text", y le ponemos el nombre que queramos para que aparezca como título de la ventana, por ej. "Colas Exchange".&lt;br /&gt;&lt;br /&gt;Dentro del formulario creamos una etiqueta cuya propiedad &lt;b&gt;(Name)&lt;/b&gt; sea "leyenda_form". La propiedad &lt;b&gt;Text&lt;/b&gt; de esta etiqueta la modificaremos dinámicamente para visualizar la fecha/hora de la última consulta a las colas.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Debajo de la etiqueta creamos un &lt;b&gt;ListView&lt;/b&gt; con dos columnas, seleccionamos el &lt;b&gt;ListView&lt;/b&gt; creado, clicamos en la flechita que está cerca de la esquina superior derecha del &lt;b&gt;ListView&lt;/b&gt;, clicamos en "Editar columnas" y agregamos un miembro 0 (columna izquierda) donde su propiedad &lt;b&gt;(Name)&lt;/b&gt; debe tener el valor: &lt;b&gt;cola_form&lt;/b&gt;, y la propiedad &lt;b&gt;Text&lt;/b&gt; debe tener el valor: &lt;b&gt;Cola&lt;/b&gt;. Después agregamos otro miembro 1 (columna derecha) donde su propiedad &lt;b&gt;(Name)&lt;/b&gt; debe tener el valor: &lt;b&gt;mensajes_form &lt;/b&gt;y la propiedad &lt;b&gt;Text&lt;/b&gt; debe tener el valor: &lt;b&gt;Mensaje&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;Aceptamos ventanas y pasamos a picar código. Clicamos en la pestaña "Fuente" de abajo y podremos editar el código de este formulario que es el que utilizaremos. El archivo que contendrá este código es &lt;b&gt;MainForm.cs&lt;/b&gt; y estará ubicado en la carpeta del proyecto.&lt;br /&gt;&lt;br /&gt;También tienes disponible el código de &lt;b&gt;MainForm.cs&lt;/b&gt; en &lt;a href="http://sites.google.com/site/ramiroencinas/soft/MainForm.cs"&gt;este enlace&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;En el comienzo del archivo &lt;b&gt;MainForm.cs&lt;/b&gt; aparece por defecto una lista de directivas &lt;b&gt;using&lt;/b&gt; que tenemos que completar dejándolas así:&lt;br /&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-family:Georgia, serif;"&gt;&lt;br /&gt;&lt;/span&gt;using System;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;using System.Collections.Generic;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;using System.Drawing;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;using System.Windows.Forms;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;using System.Collections.ObjectModel;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;using System.Management.Automation;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;using System.Management.Automation.Host;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;using System.Management.Automation.Runspaces;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;using System.Text;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;br /&gt;&lt;/span&gt;Para evitar errores en la compilación relacionados con la falta de referencias, seguramente sea necesario agregar las referencias correspondientes para alguno de estos &lt;b&gt;using&lt;/b&gt;. Lo puedes hacer desde el menú Proyecto, Agregar Referencia, pestaña GAC, buscar la referencia correspondiente, seleccionarla y OK.&lt;br /&gt;&lt;br /&gt;Después de la lista de los using, hay un &lt;b&gt;namespace&lt;/b&gt; cuyo nombre da igual para nuestro propósito. Dentro de tal, tendremos un &lt;b&gt;public partial class MainForm: Form&lt;/b&gt; que es la clase de nuestro formulario y dentro de ella hay métodos (funciones), entre ellos, el punto de entrada es el método &lt;b&gt;public MainForm()&lt;/b&gt; que se encarga de iniciar el formulario.&lt;br /&gt;&lt;br /&gt;Dentro de &lt;b&gt;public MainForm()&lt;/b&gt;, lo primero es el método &lt;b&gt;InitializeComponent()&lt;/b&gt; que se encarga de inicializar el formulario con las propiedades por defecto, y justo después crearemos un Timer para que nuestra aplicación saque datos cada minuto:&lt;br /&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-family:Georgia, serif;"&gt;&lt;br /&gt;&lt;/span&gt;Timer timer1 = new Timer();&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;timer1.Interval = 60000; // un minuto&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;timer1.Enabled = true;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;timer1.Tick += new System.EventHandler (OnTimerEvent);&lt;br /&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;br /&gt;&lt;/span&gt;Además, necesitamos un método &lt;/span&gt;OnTimerEvent()&lt;/b&gt; que tiene que ir al mismo nivel que &lt;b&gt;public MainForm()&lt;/b&gt;, así:&lt;br /&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-family:Georgia, serif;"&gt;&lt;br /&gt;&lt;/span&gt;public void OnTimerEvent(object source, EventArgs e)&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;{&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;saca_datos();&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;leyenda_form.Text = "Última actualización: " + DateTime.Now.ToLongTimeString();&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;}&lt;br /&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;leyenda_form&lt;/b&gt; es el nombre de una etiqueta dentro del formulario que indica la última fecha/hora que se hizo la consulta a las colas (no olvides tenerla ubicada visualmente en el formulario con la propiedad &lt;b&gt;(Name)&lt;/b&gt; adecuada).&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;saca_datos()&lt;/b&gt; es el método que hará la invocación a PowerShell y sacará los datos de la cola. También debe ir al mismo nivel que &lt;b&gt;public MainForm()&lt;/b&gt;.&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;Importante:&lt;/b&gt; el método &lt;b&gt;saca_datos()&lt;/b&gt; debes editarlo para definir la variable "servidor" con el nombre DNS de tu servidor Exchange 2007.&lt;br /&gt;&lt;br /&gt;El código del método &lt;b&gt;saca_datos()&lt;/b&gt; es el siguiente:&lt;br /&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-family:Georgia, serif;"&gt;&lt;br /&gt;&lt;/span&gt;private void saca_datos()&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;{&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;lista_form.Items.Clear();&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;// edita la siguiente línea con el nombre DNS de tu servidor de correo&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;string servidor = "el_nombre_de_tu_servidor_exchange";&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;RunspaceConfiguration rsConfig = RunspaceConfiguration.Create();&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PSSnapInException snapInException = null;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PSSnapInInfo info = rsConfig.AddPSSnapIn&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;("Microsoft.Exchange.Management.PowerShell.Admin", out snapInException);&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Runspace myRunSpace = RunspaceFactory.CreateRunspace(rsConfig);&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;myRunSpace.Open();&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Pipeline pipeLine = myRunSpace.CreatePipeline();&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;// comando powershell&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Command myCommand = new Command("Get-Queue");&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;//parámetros powershell&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;CommandParameter param_server = new CommandParameter("server", servidor);&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;myCommand.Parameters.Add(param_server);&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;//mete en la tubería de ejecución&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;pipeLine.Commands.Add(myCommand);&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;//ejecución&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Collection&lt;psobject&gt; commandResults = pipeLine.Invoke();&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/psobject&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;//resultados&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;string cola = "";&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;string mensajes = "";&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;foreach (PSObject cmdlet in commandResults)&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;{&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;cola = cmdlet.Properties["NextHopDomain"].Value.ToString();&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;mensajes = cmdlet.Properties["MessageCount"].Value.ToString();&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;//saca datos en lista&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;ListViewItem i = new ListViewItem();&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;i.Text = cola;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;i.SubItems.Add(mensajes);&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;lista_form.Items.Add(i);&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Y listo, con esto sólo queda darle a &lt;b&gt;F5&lt;/b&gt; para compilar y ejecutar la solución.&lt;br /&gt;&lt;br /&gt;Si todo es correcto, el ejecutable &lt;b&gt;colas_correo.exe&lt;/b&gt; lo encontrarás en la carpeta &lt;b&gt;debug&lt;/b&gt; o &lt;b&gt;release&lt;/b&gt; dentro de la carpeta &lt;b&gt;bin&lt;/b&gt; del proyecto, el cual podrás utilizar directamente.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-1894451265697598959?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/1894451265697598959/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=1894451265697598959' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/1894451265697598959'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/1894451265697598959'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/07/monitorizando-colas-de-exchange-2007.html' title='Monitorizando colas de Exchange 2007'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-7273914993869067478</id><published>2010-05-23T02:30:00.005+02:00</published><updated>2010-05-23T02:42:29.531+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ingenieria social'/><category scheme='http://www.blogger.com/atom/ns#' term='rapidez'/><category scheme='http://www.blogger.com/atom/ns#' term='filosofía'/><category scheme='http://www.blogger.com/atom/ns#' term='red social'/><title type='text'>División entre dos</title><content type='html'>Si algo se parte en dos,&lt;br /&gt;tendrás dos lugares distintos,&lt;br /&gt;si ambos comprendes,&lt;br /&gt;avanzarás.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-7273914993869067478?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/7273914993869067478/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=7273914993869067478' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7273914993869067478'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7273914993869067478'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/05/dvision-entre-dos.html' title='División entre dos'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-462852988313384477</id><published>2010-03-27T20:42:00.024+01:00</published><updated>2010-03-28T00:06:12.198+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='powershell'/><category scheme='http://www.blogger.com/atom/ns#' term='directorio activo'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>Espacio libre</title><content type='html'>En un entorno con varios servidores en red, una de las cosas más importantes y que más suele pasar desapercibida es el espacio libre de sus discos duros.&lt;br /&gt;&lt;br /&gt;Si una partición de un disco duro de un servidor comienza a quedarse sin espacio libre, las consecuencias suelen ser:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Caída del rendimiento del servidor que contenga la partición.&lt;/li&gt;&lt;li&gt;Caída del rendimiento de los servicios que utilicen tal servidor.&lt;/li&gt;&lt;li&gt;Con el tiempo, la interrupción de los servicios que utilicen tal servidor.&lt;/li&gt;&lt;li&gt;Si el servicio interrumpido se dedica a tareas de seguridad, mal vamos.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Para evitar esto de forma proactiva es conveniente conocer, por lo menos una vez a la semana, el espacio libre de cada partición de cada disco duro de cada servidor de la red, y si este espacio libre es menor que 1GB (por ejemplo), se avisaría al administrador del sistema para que remedie esta situación.&lt;br /&gt;&lt;br /&gt;Automatizar lo anterior en un Directorio Activo con muchos servidores es posible utilizando Powershell y las Tareas Programadas en algún servidor.&lt;br /&gt;&lt;br /&gt;Para ello, he escrito el script &lt;a style="font-family: courier new;" href="http://sites.google.com/site/ramiroencinas/soft/freespace.ps1"&gt;freespace.ps1&lt;/a&gt; que busca en el Directorio Activo los nombres de todos sus servidores. Después, el script realiza las consultas adecuadas a los servidores dados, filtra resultados y si es necesario envía un email con la información pertinente al administrador del sistema para que pase a la acción.&lt;br /&gt;&lt;br /&gt;&lt;a style="font-family: courier new;" href="http://sites.google.com/site/ramiroencinas/soft/freespace.ps1"&gt;freespace.ps1&lt;/a&gt; debe estar ubicado en una carpeta de trabajo, por ejemplo, en &lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;c:\freespace&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ubicado &lt;a style="font-family: courier new;" href="http://sites.google.com/site/ramiroencinas/soft/freespace.ps1"&gt;freespace.ps1&lt;/a&gt; en su sitio, es necesario editarlo y personalizar los valores de las siguientes variables que se encuentran al principio:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;$limite     = 1000000000 # con menos de un giga libre en una partición, se informa&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;$emailFrom  = "pon_email_de@origen.es" # origen email&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;$emailTo    = "pon_email_de@destino.es" # destino email&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;$smtpServer = "tu_servidor_smtp.tu_dominio.es" # servidor smtp de destino&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;$subject    = "Particiones con menos de 1GB libre" # asunto&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Una vez personalizadas las variables, guardamos los cambios del script y en la carpeta de trabajo creamos el archivo &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;freespace.bat&lt;/span&gt; que debe contener la siguiente línea:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;powershell c:\freespace\freespace.ps1&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Por último, creamos una tarea programada que ejecute &lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;c:\freespace\freespace.bat&lt;/span&gt;&lt;/span&gt; una vez por semana. Los permisos de la tarea deben ser de un usuario que tenga acceso a todas las particiones de todos los servidores.&lt;br /&gt;&lt;br /&gt;Un email enviado en un caso real es el siguiente:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://sites.google.com/site/ramiroencinas/soft/freespace.jpg" style="border: 1px solid black;" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-462852988313384477?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/462852988313384477/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=462852988313384477' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/462852988313384477'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/462852988313384477'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/03/espacio-libre.html' title='Espacio libre'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-3523654019524005130</id><published>2010-03-06T12:35:00.034+01:00</published><updated>2010-03-06T16:37:15.301+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='rootkit'/><category scheme='http://www.blogger.com/atom/ns#' term='malware'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='spyware'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Descubriendo troyanos 3/3</title><content type='html'>Ahora toca registrar las conexiones realizadas en Windows desde Windows.&lt;br /&gt;&lt;br /&gt;Para ello, iniciamos Windows desde la máquina virtual e instalamos &lt;a href="http://www.wireshark.org/download.html"&gt;Wireshark&lt;/a&gt;. Abrimos Wireshark, elegimos el adaptador de red y comenzamos una captura de paquetes apuntando exactamente la hora y el minuto de inicio de la captura.&lt;br /&gt;&lt;br /&gt;Ahora es el momento de abrir IE6 en Windows, navegar por páginas de dudosa reputación y aceptar todo lo que se ponga por delante. Cuanto más tiempo tenga la captura, más posibilidades tendremos de atrapar a algún troyano.&lt;br /&gt;&lt;br /&gt;Cuando detengamos la captura de paquetes con Wireshark, exportamos los paquetes capturados mediante el menú &lt;i&gt;&lt;b&gt;File, Export, File...&lt;/b&gt;&lt;/i&gt;, y guardamos el archivo como &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;export_w32.txt&lt;/span&gt; con formato de texto plano (plain text) en el directorio de trabajo.&lt;br /&gt;&lt;br /&gt;El siguiente paso es extraer las IPs de las conexiones que se han realizado desde Windows hacia Internet, eliminar redundancias y mostrar más información de la IP (como ya hicimos con Ubuntu con el script &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;conex_report.pl&lt;/span&gt;). Para ello, en el directorio de trabajo, ejecutaremos el script &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;a href="http://sites.google.com/site/ramiroencinas/soft/conex_report_w32.pl"&gt;conex_report_w32.pl&lt;/a&gt; &lt;/span&gt;de la siguiente forma:&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;perl conex_report_w32.pl &gt; windows.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Lo anterior genera el fichero &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;windows.txt&lt;/span&gt; cuyo contenido será parecido a esto:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://sites.google.com/site/ramiroencinas/soft/windowstxt.jpg" /&gt;&lt;br /&gt;&lt;br /&gt;Ya tenemos todos los datos que necesitamos. Ahora tenemos que comparar los resultados de &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;windows.txt&lt;/span&gt; y de &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;ubuntu.txt&lt;/span&gt; para detectar sus diferencias. Para ello, copiamos el contenido de &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;windows.txt&lt;/span&gt;, creamos otro &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;windows.txt&lt;/span&gt; en el directorio de trabajo de Ubuntu y pegamos en él el contenido del primero.&lt;br /&gt;&lt;br /&gt;La comparación de ambos ficheros la realizaremos con el script &lt;a href="http://sites.google.com/site/ramiroencinas/soft/compara_conex_report.pl"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;compara_conex_report.pl&lt;/span&gt;&lt;/a&gt; que ejecutaremos en el directorio de trabajo de Ubuntu donde también deben figurar los archivos &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;ubuntu.txt&lt;/span&gt; y &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;windows.txt&lt;/span&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;Conclusión y aclaraciones:&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;Como el procedimiento explicado en el segundo y tercer post depende de ciertos scripts para permitir la automatización de tal, la presentación en PDF del primer post muestra el concepto general, mientras que el procedimiento detallado paso a paso es el siguiente:&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;En un ordenador conectado a Internet mediante un router con IP 192.168.1.1 instalamos Ubuntu 9.10 (Karmic Koala).&lt;/li&gt;&lt;li&gt;Ubuntu debe tener la interface de red &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;eth0&lt;/span&gt; con la IP 192.168.1.33, máscara 255.255.255.0 y un par de DNS válidas.&lt;/li&gt;&lt;li&gt;En Ubuntu, instalamos el módulo de Perl &lt;i&gt;Net::Whois::IP&lt;/i&gt; con CPAN.&lt;/li&gt;&lt;li&gt;En Ubuntu, instalamos VirtualBox.&lt;/li&gt;&lt;li&gt;Creamos una máquina virtual en VirtualBox para Windows XP, configuramos el adaptador de red en modo &lt;i&gt;bridged&lt;/i&gt;. Iniciamos la máquina virtual e instalamos en ella Windows XP. &lt;/li&gt;&lt;li&gt;En Windows XP configuramos la IP fija 192.168.2.35, máscara 255.255.255.0 y las mismas DNS que tiene Ubuntu.&lt;/li&gt;&lt;li&gt;En Windows XP instalamos &lt;a href="http://strawberryperl.com/"&gt;Strawberry Perl&lt;/a&gt; y &lt;a href="http://www.wireshark.org/download.html"&gt;Wireshark&lt;/a&gt; (implica la instalación de Winpcap).&lt;/li&gt;&lt;li&gt;En Windows XP, instalamos el módulo de Perl &lt;i&gt;Net::Whois::IP&lt;/i&gt; con CPAN.&lt;/li&gt;&lt;li&gt;Ya tenemos todo montado.&lt;/li&gt;&lt;li&gt;En Ubuntu, creamos NAT para la red 192.168.2.0 permitiendo su tráfico de E/S e iniciamos el logeo para el tráfico de dicha red. Para ello, en Ubuntu podemos crear un directorio de trabajo, bajamos a él este script en bash: &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;a href="http://sites.google.com/site/ramiroencinas/soft/captura.sh"&gt;captura.sh&lt;/a&gt; &lt;span class="Apple-style-span"  style=" ;font-family:Georgia, serif;"&gt;y lo ejecutamos en un terminal.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;En Windows XP, iniciamos Wireshark y empezamos a capturar paquetes apuntando la fecha, la hora y el minuto de comienzo de la captura de paquetes.&lt;/li&gt;&lt;li&gt;Iniciamos IE6 en Windows XP y navegamos por webs maliciosas abriendo todo lo que se ponga por delante. &lt;/li&gt;&lt;li&gt;Después de un tiempo prudencial (cuanto más mejor), detenemos la captura de Wireshark, exportamos los resultados a un archivo de texto plano llamado &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;export_w32.txt&lt;/span&gt; y lo guardamos en un directorio de trabajo junto con el script &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;a href="http://sites.google.com/site/ramiroencinas/soft/conex_report_w32.pl"&gt;conex_report_w32.pl&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Iniciamos una shell en Windows (Inicio, Ejecutar, cmd), vamos al directorio de trabajo y ejecutamos: &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;perl conex_report_w32.pl &gt; windows.txt&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Abrimos &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;windows.txt&lt;/span&gt;, seleccionamos su contenido, lo copiamos y lo pegamos en otro &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;windows.txt&lt;/span&gt; nuevo, pero en el directorio de trabajo de Ubuntu.&lt;/li&gt;&lt;li&gt;En el directorio de trabajo de Ubuntu, bajamos los scripts &lt;a href="http://sites.google.com/site/ramiroencinas/soft/conex_report.pl"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;conex_report.pl&lt;/span&gt;&lt;/a&gt; y &lt;a href="http://sites.google.com/site/ramiroencinas/soft/compara_conex_report.pl"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;compara_conex_report.pl&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;En el directorio de trabajo de Ubuntu, ejecutamos en un terminal: &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;perl conex_report.pl&lt;/span&gt;, le proporcionamos el mes, el día, la hora, el minuto y el segundo de inicio que tenemos apuntados de la captura con Wireshark y después el mes, el día, la hora, el minuto y el segundo de fin de captura. El tiempo de inicio debe ser lo más exacto posible, mientras que el tiempo final mejor que vaya sobrado.&lt;/li&gt;&lt;li&gt;El resultado del script anterior es el fichero &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;ubuntu.txt&lt;/span&gt; que contiene las IPs de conexión únicas con la información de &lt;i&gt;whois&lt;/i&gt; en el intervalo de tiempo dado.&lt;/li&gt;&lt;li&gt;Por último, en un terminal de Ubuntu y en el directorio de trabajo, ejecutamos: &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;perl compara_conex_report.pl&lt;/span&gt;. Las IPs resultantes con su correspondiente información son las de las conexiones que inició Windows, que han sido capturadas por Ubuntu y no han sido capturadas por Wireshark desde Windows, esto es: conexiones realizadas por rootkits troyanizados. En caso de que el resultado no indique ninguna IP, quiere decir que todas las IPs de &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;windows.txt&lt;/span&gt; y &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;ubuntu.txt&lt;/span&gt; coinciden y todo es correcto: no hay rootkits en Windows.&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-3523654019524005130?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/3523654019524005130/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=3523654019524005130' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3523654019524005130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3523654019524005130'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/03/descubriendo-troyanos-33.html' title='Descubriendo troyanos 3/3'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-4073601515268194089</id><published>2010-02-15T17:39:00.008+01:00</published><updated>2010-02-28T00:50:25.520+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='rootkit'/><category scheme='http://www.blogger.com/atom/ns#' term='malware'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='spyware'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Descubriendo troyanos 2/3</title><content type='html'>El &lt;a href="http://lacapsulaverde.blogspot.com/2010/02/descubriendo-troyanos.html"&gt;post anterior&lt;/a&gt; trata sobre registrar las conexiones que inicia un Windows hacia Internet. Tal operación se realiza con un Linux y una máquina virtual donde "enjaular" a Windows.&lt;br /&gt;&lt;br /&gt;Una vez registradas las conexiones en &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;/var/log/kern.log&lt;/span&gt;&lt;/span&gt;, hay que extraer las IPs remotas y averiguar más información sobre ellas. Como el número de conexiones a una misma IP puede ser muy elevado, conviene eliminar redundancias, obtener la lista de IPs únicas visitadas en un rango de tiempo que indicaremos y obtener más información mediante el servicio whois.&lt;br /&gt;&lt;br /&gt;Para ello, he preparado un script en perl &lt;a href="http://sites.google.com/site/ramiroencinas/soft/conex_report.pl"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;conex_report.pl&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;, que hace todo el trabajo y nos saca esa lista junto con alguna información relevante de whois y lo deja en el archivo &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;ubuntu.txt&lt;/span&gt;&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Un ejemplo de la ejecución del script:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://sites.google.com/site/ramiroencinas/soft/conex_report.jpg" /&gt;&lt;br /&gt;&lt;br /&gt;Y su correspondiente informe de conexiones únicas del archivo &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;ubuntu.txt&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="http://sites.google.com/site/ramiroencinas/soft/ubuntutxt.jpg" /&gt;&lt;br /&gt;&lt;br /&gt;En la tercera entrega, veremos cómo hacer lo mismo pero con las conexiones registradas dentro de Windows.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-4073601515268194089?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/4073601515268194089/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=4073601515268194089' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/4073601515268194089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/4073601515268194089'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/02/descubriendo-troyanos-23.html' title='Descubriendo troyanos 2/3'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-9154142516871381414</id><published>2010-02-13T15:19:00.009+01:00</published><updated>2010-02-15T17:39:25.756+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='rootkit'/><category scheme='http://www.blogger.com/atom/ns#' term='malware'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='windows xp'/><category scheme='http://www.blogger.com/atom/ns#' term='spyware'/><title type='text'>Descubriendo troyanos 1/3</title><content type='html'>La mayoría de las veces, es infructuosa la búsqueda de troyanos en un Windows debido a los siguientes factores:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Se ocultan con Rootkits&lt;/li&gt;&lt;li&gt;Se propagan rápidamente vía web&lt;/li&gt;&lt;li&gt;Existe muchísima variedad y cada vez más&lt;/li&gt;&lt;li&gt;Muchos son 0-day que antes de ser descubiertos puede pasar mucho tiempo&lt;/li&gt;&lt;/ul&gt;Esto quiere decir que un Windows infectado por un rootkit que oculte a un troyano es garantía de pertenecer, con suerte, a una botnet y en el peor de los casos, tus datos personales incluyendo contraseñas y números de tarjeta de crédito (si has realizado compras por Internet) estarán en una base de datos lista para ser vendida.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;La solución que propongo es enjaular un Windows en una máquina virtual, exponer a Windows como cebo para los troyanos (navegando con IE sin cuidado) y monitorizar las conexiones de red dentro de Windows y fuera de él (mediante el S.O. anfitrión) durante días.&lt;br /&gt;&lt;br /&gt;Comparando ambos resultados, las conexiones remotas que estén registradas fuera de Windows y que no estén registradas dentro de Windows son, seguramente conexiones realizadas por rootkits troyanizados.&lt;br /&gt;&lt;br /&gt;En &lt;a href="http://sites.google.com/site/ramiroencinas/doc/troyanos_win32.pdf"&gt;esta presentación en PDF&lt;/a&gt; muestro cómo realizarlo con el siguiente software:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Ubuntu Linux 9.10&lt;/li&gt;&lt;li&gt;Virtual Box 3.0.8 para Linux&lt;/li&gt;&lt;li&gt;Windows, preferiblemente un XP pelado&lt;/li&gt;&lt;li&gt;Internet Explorer 6&lt;/li&gt;&lt;li&gt;WinPcap y WireShark&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-9154142516871381414?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/9154142516871381414/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=9154142516871381414' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/9154142516871381414'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/9154142516871381414'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2010/02/descubriendo-troyanos.html' title='Descubriendo troyanos 1/3'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-4046955028744455612</id><published>2009-12-10T17:01:00.010+01:00</published><updated>2009-12-24T11:26:33.623+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='powershell'/><category scheme='http://www.blogger.com/atom/ns#' term='directorio activo'/><category scheme='http://www.blogger.com/atom/ns#' term='PE'/><category scheme='http://www.blogger.com/atom/ns#' term='malware'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='pendrive'/><category scheme='http://www.blogger.com/atom/ns#' term='drivers'/><title type='text'>Recopilación de herramientas</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2009/05/powershell-directorio-activo-y.html"&gt;adsetuserpass&lt;/a&gt;: cambia contraseñas de usuarios del Directorio Activo con un script de PowerShell.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://sites.google.com/site/ramiroencinas/soft/control-drivers.zip"&gt;control-drivers&lt;/a&gt;: identifica a los drivers actuales de Windows y los compara con futuras versiones o drivers nuevos para comprobar cambios sospechosos.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2009/08/dirsize.html"&gt;dirsize&lt;/a&gt;: informa sobre los tamaños de todas las subcarpetas de una carpeta.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2009/01/ejecutable-o-no-esa-es-la-cuestion.html"&gt;ejecutable.pl&lt;/a&gt;: script en perl para detectar archivos ejecutables sospechosos.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2009/10/errores-de-sistema-en-varios-servidores.html"&gt;error-sys-events&lt;/a&gt;: realiza un informe con los sucesos de error de varios servidores Windows.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2009/04/informe-del-sistema-10-disponible.html"&gt;infosis&lt;/a&gt;: realiza un informe html recopilando hardware/software de un host Windows.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2009/06/limpia-pendrives.html"&gt;limpia-medios-extraibles&lt;/a&gt;: detecta y elimina (con confirmación) archivos sospechosos que pudieran estar en algún medio extraible como un pendrive.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2009/11/informes-de-windows-masivos.html"&gt;regsys-net&lt;/a&gt;: realiza informes html del hardware/software de todos los hosts Windows de una red.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://sites.google.com/site/ramiroencinas/soft/regsys.zip?attredirects=0&amp;amp;d=1"&gt;regsys&lt;/a&gt;: realiza un informe recopilando hardware/software de un host Windows.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2009/08/directorio-activo-usuarios-permisos-y.html"&gt;userperm-net&lt;/a&gt;: informa sobre los permisos que tiene un usuario/grupo en todas las carpetas compartidas de un Directorio Activo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-4046955028744455612?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/4046955028744455612/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=4046955028744455612' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/4046955028744455612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/4046955028744455612'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/12/recopilacion-de-herramientas.html' title='Recopilación de herramientas'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-9022116623949304304</id><published>2009-11-18T21:05:00.019+01:00</published><updated>2009-11-20T10:51:18.970+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WMI'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>Informes de Windows masivos</title><content type='html'>Disponer de informes hardware/software de los ordenadores de una red administrada ahorra mucho tiempo al solucionar problemas.&lt;br /&gt;&lt;br /&gt;Una muestra de los datos que se pueden incluir en estos informes puedes verla en el post de &lt;a href="http://lacapsulaverde.blogspot.com/2009/04/informe-del-sistema-10-disponible.html"&gt;Informe del Sistema&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Para automatizar la elaboración de estos informes, las utilidades &lt;a href="http://sites.google.com/site/ramiroencinas/soft/regsys.zip"&gt;regsys&lt;/a&gt; e &lt;a href="http://sites.google.com/site/ramiroencinas/soft/infosis.zip"&gt;infosis&lt;/a&gt; extraen estos datos mediante WMI y el Registro de Windows en el mismo ordenador donde se ejecuta la utilidad y pasa los resultados a HTML.&lt;br /&gt;&lt;br /&gt;Estas utilidades son muy prácticas al finalizar la instalación/configuración de un sistema Win32 nuevo, pero en el caso de necesitar los informes de decenas o cientos de ordenadores, por ejemplo, de un Directorio Activo, realizar los informes uno a uno es ineficiente.&lt;br /&gt;&lt;br /&gt;Para automatizar esta tarea realicé &lt;a href="http://sites.google.com/site/ramiroencinas/soft/regsys-net.zip"&gt;regsys-net&lt;/a&gt; que hace lo siguiente:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Ejecutas &lt;a href="http://sites.google.com/site/ramiroencinas/soft/regsys-net.zip"&gt;regsys-net&lt;/a&gt; con permisos de administrador de dominio en un ordenador que pertenezca al dominio (supongamos que este ordenador tiene la ip 192.168.1.56)&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://sites.google.com/site/ramiroencinas/soft/regsys-net.zip"&gt;regsys-net&lt;/a&gt; busca ordenadores para conectar con WMI desde la ip 192.168.1.1 hasta la 192.168.1.254 (busca en toda la subred en la que se encuentra)&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Si en su búsqueda, &lt;a href="http://sites.google.com/site/ramiroencinas/soft/regsys-net.zip"&gt;regsys-net&lt;/a&gt; encuentra un ordenador con el WMI disponible, conecta con él, le extrae la información mediante WMI y el Registro de Windows, y la pone en un archivo HTML, nombra al archivo HTML con el nombre DNS del ordenador correspondiente y lo guarda en la misma carpeta donde se encuentra &lt;a href="http://sites.google.com/site/ramiroencinas/soft/regsys-net.zip"&gt;regsys-net&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;Este proceso suele suele tardar entre una y tres horas. En el caso de necesitar informes de más ordenadores ubicados en otras subredes, bastará con repetir el proceso en algún ordenador de la subred correspondiente.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Observación:&lt;/b&gt;&lt;/i&gt; es necesario que los ordenadores con Windows Vista tengan iniciado el servicio &lt;b&gt;Registro Remoto&lt;/b&gt;, así, &lt;a href="http://sites.google.com/site/ramiroencinas/soft/regsys-net.zip"&gt;regsys-net&lt;/a&gt; puede extraer la información del software instalado mediante el registro de Windows.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-9022116623949304304?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/9022116623949304304/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=9022116623949304304' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/9022116623949304304'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/9022116623949304304'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/11/informes-de-windows-masivos.html' title='Informes de Windows masivos'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-8903245849094794793</id><published>2009-11-12T16:05:00.012+01:00</published><updated>2009-11-12T21:50:36.647+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WinAPI'/><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='rootkit'/><category scheme='http://www.blogger.com/atom/ns#' term='malware'/><title type='text'>Localiza evidencias de Rootkits</title><content type='html'>Los rootkits son procesos que tienen la capacidad de ocultarse al usuario mediante varias técnicas. Una de ellas es mediante la inyección de código malicioso desde un proceso maligno a un proceso víctima.&lt;br /&gt;&lt;br /&gt;Una de las funciones que utiliza el malware para realizar esta inyección es &lt;i&gt;CreateRemoteThread&lt;/i&gt;, por tanto, conocer qué archivos ejecutables tienes en tu Windows que utilicen esta función puede sacar a la luz archivos sospechosos.&lt;br /&gt;&lt;br /&gt;Mediante la herramienta &lt;a href="http://www.safer-networking.org/es/filealyzer/index.html"&gt;Filealyzer&lt;/a&gt; podrás ver dentro de un archivo ejecutable, entre otras cosas interesantes, la tabla de importación donde aparecerá una lista de funciones que utiliza el archivo ejecutable en cuestión. Pero ¿cómo saber si un archivo ejecutable utiliza la función &lt;i&gt;CreateRemoteThread&lt;/i&gt; para fines lícitos o no? Una forma rápida es buscar dentro de los archivos ejecutables de un Windows recién instalado e identificar los que utilizan la función &lt;i&gt;CreateRemoteThread.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;Hacer esto con Filealyzer es muy tedioso, así que para automatizar este proceso puedes utilizar la herramienta &lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb897439.aspx"&gt;&lt;i&gt;Strings&lt;/i&gt;&lt;/a&gt; de Sysinternals, ubicarla en una carpeta del Path (por ejemplo en c:\windows\system32), ir a esa misma ubicación en la línea de comandos y poner:&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/i&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;strings * | findstr CreateRemoteThread &gt; report.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;De esta forma,&lt;/span&gt; Strings&lt;span class="Apple-style-span" style="font-style: normal;"&gt; buscará &lt;/span&gt;CreateRemoteThread&lt;span class="Apple-style-span" style="font-style: normal;"&gt; en todas las cadenas de texto de todos los archivos de c:\windows\system32 y pondrá el resultado en el archivo &lt;/span&gt;report.txt.&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;Observando el &lt;i&gt;report.txt&lt;/i&gt; en un Windows XP SP3 recién instalado con las Windows Update al día, los archivos ubicados en c:\windows\system32 que utilizan la función &lt;i&gt;CreateRemoteThread&lt;/i&gt; son:&lt;br /&gt;&lt;br /&gt;&lt;div&gt;csrsrv.dll&lt;br /&gt;dbgeng.dll&lt;br /&gt;kernel32.dll&lt;br /&gt;safrslv.dll&lt;br /&gt;usrcoina.dll&lt;br /&gt;vdmdbg.dll&lt;br /&gt;winlogon.exe&lt;br /&gt;winsrv.dll&lt;br /&gt;&lt;br /&gt;Todos ellos son archivos ejecutables de Windows que se suponen lícitos, pues al sistema, se supone que no le ha dado tiempo de infectarse con malware. Por tanto, si generas un &lt;i&gt;report.txt&lt;/i&gt; de la manera mencionada en tu Windows XP SP3 y observas que además de los archivos listados hay alguno más, mosquéate, porque los que no aparezcan en esta lista utilizan la función &lt;i&gt;CreateRemoteThread&lt;/i&gt; y no es de Windows.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-8903245849094794793?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/8903245849094794793/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=8903245849094794793' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8903245849094794793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8903245849094794793'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/11/localiza-evidencias-de-rootkits.html' title='Localiza evidencias de Rootkits'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-1110080134082500045</id><published>2009-10-22T10:23:00.008+02:00</published><updated>2009-11-29T14:43:50.315+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='visor de sucesos'/><title type='text'>Errores de sistema en varios servidores Windows</title><content type='html'>Comprobar los sucesos de error de sistema que se producen en un servidor Windows forma parte imprescindible en la administración de sistemas en estas plataformas. Para ello tienes el &lt;b&gt;Visor de Sucesos&lt;/b&gt; y el procedimiento: &lt;b&gt;eventvwr.msc&lt;/b&gt;, Sistema, Filtrar por Tipo y seleccionar sólo el tipo &lt;b&gt;Error&lt;/b&gt;. Luego queda ver lo que ha sucedido y comprobar si todo va como tiene que ir.&lt;br /&gt;&lt;br /&gt;Esto está bien si lo haces con un servidor, pero si lo tienes que hacer con más de tres, el procedimiento es más ineficiente: desde el &lt;span class="Apple-style-span" style="font-weight: bold; "&gt;Visor de Sucesos&lt;/span&gt; tienes que ir conectando con cada uno de los distintos servidores y repetir el procedimiento anterior (menos el primer paso que es la ejecución del visor de sucesos).&lt;br /&gt;&lt;br /&gt;Quiero que la extracción de los sucesos de error de sistema de varios servidores se realice en un sólo paso, y después consultarlo tranquilamente, y para ello he realizado la herramienta &lt;a href="http://sites.google.com/site/ramiroencinas/soft/error-sys-events.zip"&gt;error-sys-events.exe&lt;/a&gt; que funciona así:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Creo una carpeta y pongo en ella la herramienta &lt;a href="http://sites.google.com/site/ramiroencinas/soft/error-sys-events.zip"&gt;error-sys-events.exe&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Creo en esa misma carpeta un archivo de texto llamado &lt;b&gt;servers.txt&lt;/b&gt; y pongo un nombre de servidor por cada línea (también valen ip's)&lt;/li&gt;&lt;li&gt;Ejecuto con los privilegios adecuados (administrador local o de dominio) la herramienta &lt;a href="http://sites.google.com/site/ramiroencinas/soft/error-sys-events.zip"&gt;error-sys-events.exe&lt;/a&gt;, y a esperar&lt;/li&gt;&lt;li&gt;Al terminar tendré un archivo llamado &lt;b&gt;syslogerror-nombre_servidor.txt&lt;/b&gt; en esa misma carpeta con los resultados del servidor correspondiente&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;Después sólo queda ir mirando los distintos informes y ver qué pasa realmente con los servidores.&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-1110080134082500045?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/1110080134082500045/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=1110080134082500045' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/1110080134082500045'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/1110080134082500045'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/10/errores-de-sistema-en-varios-servidores.html' title='Errores de sistema en varios servidores Windows'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-7822872646178386993</id><published>2009-09-25T15:15:00.025+02:00</published><updated>2009-09-25T22:03:29.807+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='powershell'/><category scheme='http://www.blogger.com/atom/ns#' term='WMI'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>Alertas con PowerShell</title><content type='html'>Si administras servidores con Windows, existen soluciones como MOM o Vbscript para que, si ocurre un evento que consideres importante, salte una alerta que te informe por email. Un ejemplo muy común es que salte la alerta cuando quede poco espacio libre en alguna unidad de un servidor de archivos.&lt;br /&gt;&lt;br /&gt;Vamos a ver como se hace con PowerShell.&lt;br /&gt;&lt;br /&gt;El requisito es, que en el servidor en cuestión debemos tener instalado &lt;a href="http://www.microsoft.com/windowsserver2003/technologies/management/powershell/download.mspx"&gt;PowerShell&lt;/a&gt; (Windows 2008 ya lo incorpora).&lt;br /&gt;&lt;br /&gt;Abrimos un editor de texto (recomiendo &lt;a href="http://www.powergui.org/downloads.jspa"&gt;PowerGUI&lt;/a&gt;) y empezamos asignando un par de variables: la letra de unidad en cuestión y el tamaño en bytes de espacio libre que, cuando se alcance, queramos que salte la alerta.&lt;br /&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-family:Georgia, serif;"&gt;&lt;br /&gt;&lt;/span&gt;$ud = "C:"&lt;/span&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;$gb1 = 1048576000&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;En este caso queremos la alerta sobre la unidad C: y el tamaño de espacio libre de alerta es 1 GB.&lt;br /&gt;&lt;br /&gt;Ahora hacemos la consulta utilizando WMI (una línea):&lt;br /&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-family:Georgia, serif;"&gt;&lt;br /&gt;&lt;/span&gt;$i = get-wmiobject -query "select DeviceID, FreeSpace from win32_logicaldisk" | where-object { $_.DeviceID -eq $ud }&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;En &lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;$i&lt;/span&gt; queda el objeto que contiene la letra de unidad (&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;DeviceID&lt;/span&gt;) y el espacio libre (&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;FreeSpace&lt;/span&gt;) de la unidad C: (&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;$ud&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;Ahora queda comprobar si la unidad C: tiene menos de 1GB y enviar el email de alerta si así es:&lt;br /&gt;&lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-family:Georgia, serif;"&gt;&lt;br /&gt;&lt;/span&gt;if ( $i.FreeSpace -lt $gb1 )&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;$emailFrom = "admin@dominio.dom"&lt;br /&gt;&amp;nbsp;&amp;nbsp;$emailTo = "destino@dominio.dom"&lt;br /&gt;&amp;nbsp;&amp;nbsp;$subject = "Menos de 1GB en C: en el servidor x"&lt;br /&gt;&amp;nbsp;&amp;nbsp;$body = ""&lt;br /&gt;&amp;nbsp;&amp;nbsp;$smtpServer = "smtp.dominio.dom"&lt;br /&gt;&amp;nbsp;&amp;nbsp;$smtp = new-object Net.Mail.SmtpClient($smtpServer)&lt;br /&gt;&amp;nbsp;&amp;nbsp;$smtp.Send($emailFrom, $emailTo, $subject, $body)&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;En &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;$emailTo&lt;/span&gt; podemos indicar más de un destinatario separados por comas. En este caso el cuerpo del mensaje &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;$body&lt;/span&gt; no tiene nada y &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;$smtpServer&lt;/span&gt; es la dirección del servidor smtp de destino donde está el buzón de correo del destinatario.&lt;br /&gt;&lt;br /&gt;Ahora sólo queda guardar el script, por ejemplo, como &lt;i&gt;pocoespacio_c.ps1&lt;/i&gt;, en alguna carpeta y ejecutarlo de forma programada con las &lt;i&gt;Tareas Programadas&lt;/i&gt; de Windows. Una buena programación en este caso sería que este script se ejecute de lunes a viernes, durante la jornada laboral y a cada hora.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Detalle importante:&lt;/b&gt; a la hora de definir el comando a ejecutar en &lt;i&gt;Tareas Programadas&lt;/i&gt; es necesario indicar toda la ruta del ejecutable &lt;i&gt;powershell.exe&lt;/i&gt;, un espacio en blanco y después entre comillas dobles indicar toda la ruta del script, por ejemplo:&lt;br /&gt;&lt;br /&gt;C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe "C:\scripts\pocoespacio_c.ps1"&lt;br /&gt;&lt;br /&gt;Y a esperar a quedarnos con menos de 1GB en C:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-7822872646178386993?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/7822872646178386993/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=7822872646178386993' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7822872646178386993'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7822872646178386993'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/09/alertas-con-powershell.html' title='Alertas con PowerShell'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-3504938062302376900</id><published>2009-09-06T16:57:00.005+02:00</published><updated>2009-09-06T17:15:47.937+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='IE'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><category scheme='http://www.blogger.com/atom/ns#' term='html'/><title type='text'>Conoce la web y defiéndete con ella</title><content type='html'>Para navegar por la web de forma segura hay, entre otros, conceptos básicos como:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Saber en qué URL estamos y como se construyen&lt;/li&gt;&lt;li&gt;Diferenciar webs falsas de las verdaderas&lt;/li&gt;&lt;li&gt;Diferenciar un enlace javascript de otro convencional&lt;/li&gt;&lt;li&gt;Rellenar formularios de forma segura&lt;/li&gt;&lt;li&gt;Identificar y gestionar los complementos web del navegador&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Explicados junto con más cosas en &lt;a href="http://docs.google.com/present/edit?id=0ASwGBA5vCPW0ZGNuajV6d2hfOTlmOHo5NHZndg&amp;amp;hl=es"&gt;esta presentación&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Felíz rumbo.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-3504938062302376900?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/3504938062302376900/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=3504938062302376900' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3504938062302376900'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3504938062302376900'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/09/conoce-la-web-y-defiendete-con-ella.html' title='Conoce la web y defiéndete con ella'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-7397223561732410608</id><published>2009-08-30T12:46:00.009+02:00</published><updated>2009-08-30T13:22:13.907+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows xp'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='rendimiento'/><title type='text'>DirSize</title><content type='html'>Con &lt;i&gt;Windows&lt;/i&gt; siempre hay una carpeta que ocupa demasiado y no sé donde está. Me pongo a buscarla y llegar a ella es tedioso: clicar en las propiedades de cada carpeta, comprobar el tamaño, y así sucesivamente...&lt;br /&gt;&lt;br /&gt;Qué práctico sería ver directamente los tamaños de cada carpeta de la unidad C: (por ejemplo), y más práctico todavía sería ver esos tamaños ordenados para saber primero cual es la carpeta con más tamaño. Así puedo entrar en ella y repetir la operación hasta dar finalmente con la carpeta con más tamaño.&lt;br /&gt;&lt;br /&gt;Para ello he implementado una utilidad llamada &lt;a href="http://sites.google.com/site/ramiroencinas/soft/dirsize.zip"&gt;dirsize&lt;/a&gt; que funciona en línea de comandos y que directamente, allá donde se ejecute, te muestra los tamaños de las carpetas.&lt;br /&gt;&lt;br /&gt;Por ejemplo, este es un pantallazo de los resultados de ejecutar &lt;a href="http://sites.google.com/site/ramiroencinas/soft/dirsize.zip"&gt;dirsize&lt;/a&gt; en la unidad C:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://sites.google.com/site/ramiroencinas/soft/dirsize.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 305px; height: 284px;" src="http://sites.google.com/site/ramiroencinas/soft/dirsize.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;div&gt;Con estos resultados, ya sé que la carpeta &lt;i&gt;Windows&lt;/i&gt; es la de mayor tamaño en la unidad C: con unos 4,7 Gb.&lt;br /&gt;&lt;br /&gt;Ahora sólo me quedaría entrar en la carpeta &lt;i&gt;Windows&lt;/i&gt; y volver a ejecutar &lt;a href="http://sites.google.com/site/ramiroencinas/soft/dirsize.zip"&gt;dirsize&lt;/a&gt; para que me diga cual es la carpeta con más tamaño del "lugar".&lt;br /&gt;&lt;br /&gt;Y así sucesivamente.&lt;br /&gt;&lt;br /&gt;En este caso concreto, os sorprendería saber cual es la más gorda del "lugar", pues &lt;i&gt;Windows&lt;/i&gt; oculta el tamaño real de algunas de sus carpetas (si se realiza la consulta mediante las propiedades de la carpeta en cuestión). Con &lt;a href="http://sites.google.com/site/ramiroencinas/soft/dirsize.zip"&gt;dirsize&lt;/a&gt; esta información queda al descubierto y permite saber exactamente el tamaño de cada carpeta y poder tomar medidas si es necesario.&lt;br /&gt;&lt;br /&gt;Por último, es recomendable ubicar a &lt;a href="http://sites.google.com/site/ramiroencinas/soft/dirsize.zip"&gt;dirsize&lt;/a&gt; en una carpeta con path (por ejemplo: c:\windows\ o c:\windows\system32\) para que funcione en cualquier sitio.&lt;br /&gt;&lt;br /&gt;Buena cacería de carpetas de gran tamaño.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-7397223561732410608?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/7397223561732410608/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=7397223561732410608' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7397223561732410608'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7397223561732410608'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/08/dirsize.html' title='DirSize'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-1928278342428901191</id><published>2009-08-25T14:19:00.010+02:00</published><updated>2009-08-26T09:09:53.715+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='directorio activo'/><category scheme='http://www.blogger.com/atom/ns#' term='NTFS'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>Directorio Activo, Usuarios, Permisos y Carpetas compartidas</title><content type='html'>En un &lt;a href="http://es.wikipedia.org/wiki/Directorio_activo"&gt;Directorio Activo&lt;/a&gt;, es fácil saber qué usuario/grupo tiene acceso a un recurso como una carpeta compartida (sólo tienes que mirar las propiedades de la carpeta compartida en cuestión), pero las propiedades de un usuario/grupo &lt;b&gt;&lt;span class="Apple-style-span"  style="color:#006600;"&gt;no te dicen a qué carpetas compartidas&lt;/span&gt;&lt;/b&gt; tiene acceso en un momento dado.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;Una debilidad muy común es el acceso del grupo &lt;span class="Apple-style-span"  style="color:#006600;"&gt;&lt;b&gt;Todos&lt;/b&gt;&lt;/span&gt;, y es imprescindible saber en qué carpetas compartidas tiene el permiso &lt;b&gt;&lt;span class="Apple-style-span"  style="color:#006600;"&gt;Control Total&lt;/span&gt;&lt;/b&gt;. Igualmente, saber puntualmente quién tiene acceso a qué, y qué tipo de permiso tiene, ayuda de una forma extraordinaria a mantener segura la política de seguridad de un Directorio Activo.&lt;br /&gt;&lt;br /&gt;Como no encontré una herramienta que automatice esto, hice en Perl la herramienta de línea de comandos &lt;a href="http://sites.google.com/site/ramiroencinas/soft/userperm-net.zip"&gt;userperm-net&lt;/a&gt;, que hace lo siguiente:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Pide al usuario el nombre de un usuario o un grupo&lt;/li&gt;&lt;li&gt;Mediante &lt;b&gt;&lt;span class="Apple-style-span"  style="color:#006600;"&gt;net view&lt;/span&gt;&lt;/b&gt; genera un archivo de texto con la lista de los hosts en red&lt;/li&gt;&lt;li&gt;Toma la lista generada y realiza lo siguiente en cada host:&lt;/li&gt;&lt;li&gt;Intenta una conexión WMI para extraer la lista de carpetas compartidas&lt;/li&gt;&lt;li&gt;De cada carpeta compartida, extrae la lista de usuarios/grupos con sus permisos NTFS&lt;/li&gt;&lt;li&gt;Compara cada nombre de usuario/grupo del paso anterior con el introducido en el paso 1&lt;/li&gt;&lt;li&gt;En caso de coincidencia, muestra el nombre del usuario/grupo, el permiso, el host y la ruta completa de la carpeta en cuestión&lt;/li&gt;&lt;li&gt;Por último, si el usuario quiere, muestra una lista con los hosts donde no ha podido conectar con WMI&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div&gt;Consideraciones para utilizar &lt;a href="http://sites.google.com/site/ramiroencinas/soft/userperm-net.zip"&gt;userperm-net&lt;/a&gt;:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Es mejor ejecutarlo con permisos de administrador de dominio, así llegará al máximo de hosts del Directorio Activo&lt;/li&gt;&lt;li&gt;Hay que ser muy cuidadoso introduciendo el nombre de usuario/grupo porque tiene en cuenta mayúsculas/minúsculas, espacios, etc.&lt;/li&gt;&lt;li&gt;Como trabaja a nivel de permisos NTFS de carpetas compartidas y &lt;b&gt;no&lt;/b&gt; a nivel de permisos de carpetas compartidas en sí, es posible que algunos resultados sólo tengan sentido para accesos locales y no desde otro host&lt;/li&gt;&lt;/ul&gt;Pantallazo:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://sites.google.com/site/ramiroencinas/soft/userperm-net.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 915px; height: 212px;" src="http://sites.google.com/site/ramiroencinas/soft/userperm-net.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-1928278342428901191?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/1928278342428901191/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=1928278342428901191' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/1928278342428901191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/1928278342428901191'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/08/directorio-activo-usuarios-permisos-y.html' title='Directorio Activo, Usuarios, Permisos y Carpetas compartidas'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-9023145106608753504</id><published>2009-08-11T08:43:00.015+02:00</published><updated>2009-08-11T09:41:54.897+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='servicios'/><category scheme='http://www.blogger.com/atom/ns#' term='cloud-computing'/><title type='text'>Cloud-Computing</title><content type='html'>La nueva plataforma web aplicada a negocios parece inexorable. Microsoft con &lt;a href="http://www.microsoft.com/azure/default.mspx"&gt;Azure&lt;/a&gt;, Google con &lt;a href="http://code.google.com/intl/es-ES/appengine/"&gt;App Engine&lt;/a&gt; y otros del mismo calibre están apostando por el &lt;a href="http://es.wikipedia.org/wiki/Computaci%C3%B3n_en_nube"&gt;Cloud-Computing&lt;/a&gt;, que entre otras tiene las siguientes novedades y ventajas:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#006600;"&gt;Reducción de costes:&lt;/span&gt;&lt;/b&gt; normalmente no se pagan licencias, sólo se paga cuota en base al número de usuarios o de uso de la infraestructura. Mantenimiento in-situ prácticamente nulo (sólo necesitas conexión a Internet).&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"  style="color:#006600;"&gt;&lt;b&gt;Servicios de todo tipo centralizados y escalables:&lt;/b&gt;&lt;/span&gt; mensajería, blogging, video, intranet, colaboración, aplicaciones a medida, bases de datos, etc., que pueden crecer sin límite aparente y sin problemas.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#006600;"&gt;Facilidad de desarrollo:&lt;/span&gt;&lt;/b&gt; sólo hay que ver &lt;a href="http://docs.google.com/View?id=dcnj5zwh_111dxm2pzc8"&gt;este tutorial que traduje sobre Google Apps&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Ahora, ¿cuales son las dudas que invaden a los responsables de las empresas?:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#006600;"&gt;Seguridad:&lt;/span&gt;&lt;/b&gt; las comunicaciones web por Internet no son seguras, ni lo han sido ni lo van a ser.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#006600;"&gt;Disponibilidad de los datos:&lt;/span&gt;&lt;/b&gt; ¿qué ocurre cuando no hay conexión a Internet?&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#006600;"&gt;Privacidad de los datos:&lt;/span&gt;&lt;/b&gt; los datos físicamente no los tengo yo, están repartidos dinámicamente por servidores en todo el mundo ¿quien me garantiza su privacidad?&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#006600;"&gt;Migración:&lt;/span&gt;&lt;/b&gt; será fiel la migración si migro todo mi sistema al Cloud-Computing, ¿podré después migrar después a otro proveedor de Cloud-Computing?&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#006600;"&gt;Más info:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/azure/pricing.mspx" style="text-decoration: none;"&gt;Cálculo de costes de Microsoft Azure&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.google.com/apps/intl/es/business/messaging_value.html" style="text-decoration: none;"&gt;Cálculo de costes de Google Apps en mensajería&lt;/a&gt;&lt;br /&gt;&lt;a href="http://googleappengine.blogspot.com/" style="text-decoration: none;"&gt;Google App Engine Blog&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-9023145106608753504?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/9023145106608753504/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=9023145106608753504' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/9023145106608753504'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/9023145106608753504'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/08/cloud-computing.html' title='Cloud-Computing'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-8654440173777674132</id><published>2009-07-25T10:32:00.017+02:00</published><updated>2009-07-25T14:48:12.945+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ingenieria social'/><category scheme='http://www.blogger.com/atom/ns#' term='red social'/><title type='text'>La desinformación de la red social</title><content type='html'>¿Sabes quien anda detrás de la otra pantalla?&lt;br /&gt;&lt;br /&gt;En seguridad informática hay una cosa evidente: el factor más peligroso es el &lt;b&gt;ser humano&lt;/b&gt;. Y aquí es donde entra la &lt;a href="http://es.wikipedia.org/wiki/Ingenier%C3%ADa_social_(seguridad_inform%C3%A1tica)"&gt;ingeniería social&lt;/a&gt; como método, donde la información consigue información mediante la desinformación. Actualmente en Internet, a esto lo podríamos llamar irónicamente &lt;i&gt;&lt;b&gt;human data injection&lt;/b&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt; o simplemente engaño, método antiguo como la picaresca.&lt;br /&gt;&lt;br /&gt;Un nuevo campo en la aplicación del engaño, muy significativo y reciente, son algunas funcionalidades de la &lt;a href="http://es.wikipedia.org/wiki/Red_social"&gt;red social&lt;/a&gt;. Un usuario de Facebook tiene acceso prácticamente a toda la información que quiera publicar otro usuario aunque no sea su amigo, sólo basta ser amigo de un amigo suyo. El pequeño equivalente en el mundo real es el boca a boca: la información que le doy a un amigo, éste puede propagarla a sus amigos y así sucesivamente... nunca sabes a donde llega, y nunca sabrás cuando y cómo te repercutirá (efecto boomerang). En la red social, el "boca a boca" es automático.&lt;br /&gt;&lt;br /&gt;Con esto deduzco que el mayor peligro de la red social no es acceder a la información de un usuario. El mayor peligro de la red social es la información que publica una persona, y en ésto hay que avisar a los neófitos/as. Cuando buscas la palabra Twitter en Google, al lado de la entrada correspondiente pone: &lt;span class="Apple-style-span"  style="color:#CC0000;"&gt;-What are you doing?-&lt;/span&gt;  (&lt;i&gt;¿Qué estas haciendo?&lt;/i&gt;). El recebo del ego es un asunto muy delicado.&lt;br /&gt;&lt;br /&gt;No es lo mismo comentar tu vida privada con tu amigo/a más leal, que escribirla en papelitos y distribuirla por la calle al primero que encuentres de una forma inconsciente. Algunas consecuencias, por desgracia, las vemos en los medios: acoso psicológico, robo de información, secuestros, engaños, desinformación, venganzas, robo de dinero, chantajes, y todo lo que permita la creatividad de un alma tocada por su lado más oscuro.&lt;br /&gt;&lt;br /&gt;El problema tampoco está en la red social, está como dije antes, en el usuario. La gran ventaja también radica en este problema: los creadores de redes sociales de éxito tienen información a tiempo real de patrones de conducta de todo tipo de millones de personas, un campo de posibilidades a nivel de marketing nunca jamás visto antes.&lt;br /&gt;&lt;br /&gt;Es muy natural entre humanos la curiosidad, algunos quieren saber más de nosotros, posiblemente de la misma forma que cualquier otra persona. La libertad de publicación de información en la red no puede discutirse, pero tiene límites éticos, morales y legales que han de ser distribuidos, fomentados y aprendidos. La red social apuesta por el gran negocio: mis amigos y los amigos de mis amigos son mis amigos.&lt;br /&gt;&lt;br /&gt;Creo que las personas que trabajan en redes sociales deberían saber que los beneficios de ellas también supondrán desgracias a los más desprotegidos en el contexto informativo.&lt;br /&gt;&lt;br /&gt;¿Crees que la red social aportará algo bueno a los humanos que no estén preparados para ello?&lt;br /&gt;&lt;br /&gt;Saludos.&lt;/span&gt;&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-8654440173777674132?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/8654440173777674132/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=8654440173777674132' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8654440173777674132'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8654440173777674132'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/07/la-desinformacion-de-la-red-social.html' title='La desinformación de la red social'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-8108659969538647205</id><published>2009-07-12T16:23:00.009+02:00</published><updated>2009-07-12T17:06:07.134+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='copia de seguridad'/><category scheme='http://www.blogger.com/atom/ns#' term='registro de windows'/><category scheme='http://www.blogger.com/atom/ns#' term='windows xp'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>Cuida el registro de Windows</title><content type='html'>El registro de Windows es su columna vertebral. Ahí reside toda la configuración tanto de Windows como de la mayoría del software instalado en tu sistema.&lt;br /&gt;&lt;br /&gt;El registro de Windows es complejo y delicado, por eso conviene que lo cuides. Más de una vez he comprobado que puede producirse algún problema en él sin motivo aparente y hacer que Windows simplemente no arranque o que no pueda trabajar con él o con algún software.&lt;br /&gt;&lt;br /&gt;El registro de Windows XP son 5 archivos ubicados en &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;C:\Windows\System32\Config&lt;/span&gt; llamados:&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;br /&gt;default&lt;br /&gt;SAM&lt;br /&gt;SECURITY&lt;br /&gt;software&lt;br /&gt;system&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Y es conveniente que hagas, de vez en cuando, una copia de seguridad de ellos cuando tu sistema funciona correctamente. Como alguno de esos archivos no se puede copiar directamente en una sesión normal porque están siendo utilizados, lo más sencillo es arrancar el ordenador con el CD de Windows XP y cuando aparezca el menú de instalación de Windows elige iniciar la consola de recuperación.&lt;br /&gt;&lt;br /&gt;Una vez en la consola, puedes utilizar estos comandos para salvar el registro:&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;br /&gt;c:&lt;br /&gt;cd \&lt;br /&gt;cd windows&lt;br /&gt;cd system32&lt;br /&gt;cd config&lt;br /&gt;mkdir BACK&lt;br /&gt;copy default .\BACK&lt;br /&gt;copy SAM .\BACK&lt;br /&gt;copy SECURITY .\BACK&lt;br /&gt;copy software .\BACK&lt;br /&gt;copy system .\BACK&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Y listo. Reinicia el ordenador y en la carpeta &lt;span class="Apple-style-span"  style=" ;font-family:'courier new';"&gt;C:\Windows\System32\Config\BACK &lt;/span&gt;tendrás los 5 archivos del registro disponibles. Para mayor seguridad y comodidad, comprímelos y guarda esa copia comprimida fuera del disco duro, en otro disco o en un pendrive.&lt;br /&gt;&lt;br /&gt;Para restaurar la copia de seguridad en caso de problemas, inicia igual que antes la consola de recuperación e introduce los siguientes comandos en la consola:&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;br /&gt;c:&lt;br /&gt;cd \&lt;br /&gt;cd windows&lt;br /&gt;cd system32&lt;br /&gt;cd config&lt;br /&gt;cd BACK&lt;br /&gt;copy default ..&lt;br /&gt;copy SAM ..&lt;br /&gt;copy SECURITY ..&lt;br /&gt;copy software ..&lt;br /&gt;copy system ..&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Después reinicia el ordenador y mira a ver que tal.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-8108659969538647205?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/8108659969538647205/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=8108659969538647205' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8108659969538647205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8108659969538647205'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/07/cuida-el-registro-de-windows.html' title='Cuida el registro de Windows'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-8312497882206480133</id><published>2009-06-21T23:15:00.010+02:00</published><updated>2009-06-22T00:18:35.190+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='malware'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='pendrive'/><title type='text'>Elimina virus de pendrives, más mejor</title><content type='html'>Como vimos en el &lt;a href="http://lacapsulaverde.blogspot.com/2009/06/elimina-virus-de-pendrives.html"&gt;anterior post&lt;/a&gt;, podemos eliminar archivos sospechosos de los pendrives u otros dispositivos de almacenamiento USB con la utilidad &lt;b&gt;limpia_mem_usb.vbs&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;Revisando el script me dí cuenta de que tiene una carencia importante: elimina archivos fijándose en su extensión. Puede darse el caso de que la memoria USB tenga archivos de virus ejecutables renombrados con extensiones de confianza, como TXT (archivo de texto) y pasarían desapercibidos. Si la memoria USB contiene un &lt;b&gt;&lt;i&gt;autorun.inf&lt;/i&gt;&lt;/b&gt; con las líneas adecuadas, podría ejecutar esos archivos ejecutables con extensión TXT y el virus produciría su infección.&lt;br /&gt;&lt;br /&gt;Otro detalle del script es que no informa al usuario de los archivos que va a eliminar.&lt;br /&gt;&lt;br /&gt;Además, el script sólo actúa en unidades USB, y no en otros medios extraíbles que también pueden contener virus, como memorias SD.&lt;br /&gt;&lt;br /&gt;Para tener en cuenta estos factores, he realizado otra utilidad nueva &lt;b&gt;&lt;a href="http://sites.google.com/site/ramiroencinas/soft/limpia_medios_extraibles.zip"&gt;limpia_medios_extraibles.exe&lt;/a&gt;&lt;/b&gt;, esta vez &lt;a href="http://sites.google.com/site/ramiroencinas/soft/limpia_medios_extraibles.pl"&gt;escrita en Perl&lt;/a&gt; y que tiene las siguientes características nuevas&lt;b&gt;:&lt;/b&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Detecta y elimina archivos ejecutables independientemente de su extensión.&lt;/li&gt;&lt;li&gt;Muestra los archivos sospechosos al usuario y una confirmación antes de eliminarlos.&lt;/li&gt;&lt;li&gt;Extiende su acción a cualquier medio extraíble reconocido por Windows.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Suerte con la cacería.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-8312497882206480133?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/8312497882206480133/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=8312497882206480133' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8312497882206480133'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/8312497882206480133'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/06/limpia-pendrives.html' title='Elimina virus de pendrives, más mejor'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-7365687283123318718</id><published>2009-06-17T18:05:00.012+02:00</published><updated>2009-10-12T00:15:22.357+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='rootkit'/><category scheme='http://www.blogger.com/atom/ns#' term='malware'/><category scheme='http://www.blogger.com/atom/ns#' term='vbscript'/><category scheme='http://www.blogger.com/atom/ns#' term='pendrive'/><title type='text'>Elimina virus de pendrives</title><content type='html'>En el mundo de Windows, últimamente no hay pendrive de alguien que pase por mis manos que no tenga algún virus.&lt;br /&gt;&lt;br /&gt;Los pendrives, conocidos también como memorias USB tienen la gran ventaja de que puedes transportar unos cuantos GB en el espacio de un mechero y puedes acceder a ello prácticamente en cualquier ordenador o aparato que soporte USB.&lt;br /&gt;&lt;br /&gt;La desventaja es, que además de llevar consigo tus archivos, también puedes llevar unos cuantos virus de regalo sin que lo sepas. Los virus suelen alojarse en el directorio principal del pendrive en la forma de archivos ejecutables y normalmente están ocultos y protegidos para pasar inadvertidos al usuario.&lt;br /&gt;&lt;br /&gt;No voy a hablar del proceso de infección con los pendrives (gracias al famoso archivo desencadenante de la infección &lt;i&gt;&lt;b&gt;autorun.inf&lt;/b&gt;&lt;/i&gt;), pero sí he preparado una pequeña utilidad realizada en Visual Basic Script para eliminar archivos sospechosos (candidatos a ser virus, incluyendo el mencionado autorun.inf) de cualquier pendrive que conectes a tu ordenador.&lt;br /&gt;&lt;br /&gt;La utilidad está comprimida en un archivo disponible &lt;a href="http://sites.google.com/site/ramiroencinas/soft/limpia_mem_usb.zip"&gt;en este enlace de descarga&lt;/a&gt; y se llama &lt;span class="Apple-style-span" style="font-weight: bold; "&gt;limpia_mem_usb.zip.&lt;span class="Apple-style-span" style="font-weight: normal; "&gt; Cuando descomprimes este archivo, obtienes el archivo de la utilidad en sí que se llama &lt;b&gt;limpia_mem_usb.vbs&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;Al abrir &lt;span class="Apple-style-span" style="font-weight: bold; "&gt;limpia_mem_usb.vbs&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;, éste comprueba si hay alguna memoria USB conectada al ordenador, si es así aparece una ventana indicando la letra de unidad detectada de la memoria USB y te pregunta si quieres limpiarla. Si le dices que &lt;/span&gt;Si&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;, la utilidad eliminará los archivos de la memoria USB ubicados en su directorio principal con las siguientes extensiones sospechosas: sys, drv, ps1, vbs, msp, exe, com, dll, inf, scr, pif, dat, tmp, cmd, bat, lnk. Si la utilidad detecta más memorias USB, preguntará de nuevo indicando la nueva letra de unidad detectada para proceder con la limpieza.&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;Advertencia:&lt;/b&gt; este script está diseñado para eliminar archivos  ejecutables (.exe, .msp, etc.) que estén alojados en el directorio principal del pendrive. Si has guardado ahí algún archivo de este tipo o si ya había alguno, &lt;/span&gt;&lt;span class="Apple-style-span"&gt;será eliminado&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;.&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;Novedad:&lt;/b&gt; tienes disponible una versión mejorada de esta utilidad que se llama &lt;b&gt;&lt;i&gt;limpia_medios_extraibles.exe&lt;/i&gt;&lt;/b&gt;. La puedes descargar &lt;a href="http://sites.google.com/site/ramiroencinas/soft/limpia_medios_extraibles.zip"&gt;desde aquí&lt;/a&gt; y te recomiendo que leas &lt;a href="http://lacapsulaverde.blogspot.com/2009/06/limpia-pendrives.html"&gt;este post&lt;/a&gt; para que veas las mejoras respecto a la versión anterior.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-7365687283123318718?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/7365687283123318718/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=7365687283123318718' title='6 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7365687283123318718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7365687283123318718'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/06/elimina-virus-de-pendrives.html' title='Elimina virus de pendrives'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-9017636313873281422</id><published>2009-05-28T19:28:00.011+02:00</published><updated>2010-04-29T00:30:10.958+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='powershell'/><category scheme='http://www.blogger.com/atom/ns#' term='directorio activo'/><category scheme='http://www.blogger.com/atom/ns#' term='cambiar contraseña'/><title type='text'>PowerShell, Directorio Activo y contraseñas</title><content type='html'>Si administras un Directorio Activo, te habrás dado cuenta que, a medida que hay más usuarios, mayor es la frecuencia de despistados que te llaman para reestablecer su contraseña. Esta tarea cada vez se vuelve más repetitiva y monótona.&lt;br /&gt;&lt;br /&gt;Minimizar al máximo este proceso sin gastarte un duro extra y hacerlo desde tu propio ordenador conectado al dominio es posible si instalas &lt;a href="http://technet.microsoft.com/en-us/scriptcenter/dd742419.aspx" target="_blank"&gt;PowerShell&lt;/a&gt; y &lt;a href="http://www.quest.com/powershell/activeroles-server.aspx" target="_blank"&gt;ActiveRoles Management Shell for Active Directory&lt;/a&gt;. Estos últimos son unos Cmdlets que ha creado Quest para extender la capacidad de PowerShell al Directorio Activo. Estas dos herramientas unidas en tu ordenador conectado al dominio hacen posible que desde él puedas cambiar la contraseña de un usuario en una sóla línea de código.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://sites.google.com/site/ramiroencinas/soft/ADSetUserPass.ps1" target="_blank"&gt;Este script&lt;/a&gt; ( ADSetUserPass.ps1) escrito en PowerShell amplia esta funcionalidad ofreciendo además las siguientes comprobaciones:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Comprueba que el usuario proporcionado existe en el dominio.&lt;/li&gt;&lt;li&gt;Comprueba que la contraseña es correcta introduciéndola dos veces.&lt;/li&gt;&lt;li&gt;Comprueba que la contraseña tiene al menos 6 caracteres.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Para que este script tenga éxito es conveniente que lo ejecute un usuario que al menos tenga permisos de administración de cuentas en el dominio. Lo más sencillo es utilizar el comando &lt;i&gt;&lt;b&gt;runas&lt;/b&gt;&lt;/i&gt; especificando como argumento al usuario administrador del dominio. Por otro lado, tengo que aclarar que este script funciona en un dominio llamado DOMINIO. Si tu dominio tiene otro nombre, sustitúyelo en la línea 36 del script:&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;$userdom = "DOMINIO\"+$user&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Más información y utilidades:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.powergui.org/index.jspa" target="_blank"&gt;PowerGUI&lt;/a&gt;, un editor para PowerShell bastante ligero y completo.&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.quest.com/QuestWebPowershellCmdletDwnldARS" target="_blank"&gt;La guía del administrador&lt;/a&gt; de los Cmdlets para administrar el Directorio Activo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-9017636313873281422?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/9017636313873281422/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=9017636313873281422' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/9017636313873281422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/9017636313873281422'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/05/powershell-directorio-activo-y.html' title='PowerShell, Directorio Activo y contraseñas'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-6362472610783279498</id><published>2009-04-20T20:11:00.011+02:00</published><updated>2009-04-20T21:43:23.761+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows xp'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>Informe del Sistema 1.0 disponible</title><content type='html'>La versión 1.0 de infosis (Informe del Sistema) acabo de publicarla hoy y se encuentra disponible en el siguiente enlace:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://sites.google.com/site/ramiroencinas/soft/infosis.zip"&gt;http://sites.google.com/site/ramiroencinas/soft/infosis.zip&lt;/a&gt;&lt;div&gt;&lt;br /&gt;Se trata de un pequeño ejecutable realizado en VBNet que recopila información hardware/software del Windows XP donde se encuentre (creo que también funciona para Windows Vista). Es útil para administradores de sistemas que quieran realizar un informe completo de un ordenador para después tener información adecuada para resolver incidencias.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;El aspecto de la utilidad una vez iniciada es la siguiente:&lt;/div&gt;&lt;div&gt;&lt;img src="http://sites.google.com/site/ramiroencinas/soft/infosis.jpg" style="float:center; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 483px; height: 186px;" border="0" alt="" /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;El campo de observaciones está bien para incluir en el informe la password del administrador local del sistema. Si lo dejamos en blanco no pasa nada.&lt;br /&gt;&lt;br /&gt;Después de pensar en las observaciones, clicas en &lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Siguiente&lt;/span&gt;&lt;/span&gt; y empezará a recopilar la información. Cuando termine puedes ver el resultado clicando en el botón &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;Mostrar&lt;/span&gt;&lt;/span&gt;. El informe es un archivo HTML con el nombre del ordenador, y lo encontrarás en la misma carpeta donde &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;infosis.exe&lt;/span&gt;&lt;/span&gt; se haya ejecutado.&lt;br /&gt;&lt;br /&gt;El comienzo del informe de mi ordenador es el siguiente:&lt;/div&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://sites.google.com/site/ramiroencinas/soft/infosis_report.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 717px; height: 452px;" src="http://sites.google.com/site/ramiroencinas/soft/infosis_report.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;Como puedes ver, el fabricante de mi placa base (que es MSI) sólo se tomó la molestia de indicar el campo &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;Modelo&lt;/span&gt;&lt;/span&gt; para identificar su producto a Windows, no indicando el número de serie y el fabricante de la placa base. Por contra, otros fabricantes como HP o Fujitsu son totalmente fiables en estos campos.&lt;br /&gt;&lt;br /&gt;El informe primero registra el hardware y a continuación el software:&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic; font-weight: bold; "&gt;&lt;br /&gt;Sistema central&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: normal; font-weight: normal; "&gt;&lt;br /&gt;- Número de serie&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;- Fabricante de la placa base&lt;/div&gt;&lt;div&gt;- Modelo&lt;/div&gt;&lt;div&gt;- Arquitectura&lt;/div&gt;&lt;div&gt;- RAM&lt;/div&gt;&lt;div&gt;- Procesador&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic; font-weight: bold; "&gt;&lt;br /&gt;Discos duros&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: normal; font-weight: normal; "&gt;&lt;br /&gt;- Letra de unidad&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;- Modelo&lt;/div&gt;&lt;div&gt;- Capacidad&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic; font-weight: bold; "&gt;&lt;br /&gt;Unidades lógicas&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: normal; font-weight: normal; "&gt;&lt;br /&gt;- Letra de unidad&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;- Sistema de archivos&lt;/div&gt;&lt;div&gt;- Espacio total&lt;/div&gt;&lt;div&gt;- Espacio ocupado&lt;/div&gt;&lt;div&gt;- Espacio libre&lt;/div&gt;&lt;div&gt;- Espacio ocupado/libre (gráfica)&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic; font-weight: bold; "&gt;&lt;br /&gt;CD/DVD ROM&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: normal; font-weight: normal; "&gt;&lt;br /&gt;- Letra de unidad&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;- Marca y modelo&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic; font-weight: bold; "&gt;&lt;br /&gt;Adaptadores de red&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: normal; font-weight: normal; "&gt;&lt;br /&gt;- Descripción del adaptador de red&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic; font-weight: bold; "&gt;&lt;br /&gt;Adaptadores de video&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: normal; font-weight: normal; "&gt;&lt;br /&gt;- Descripción del adaptador de video&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic; font-weight: bold; "&gt;&lt;br /&gt;Adaptadores de sonido&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: normal; font-weight: normal; "&gt;&lt;br /&gt;- Descripción del adapatador de sonido&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic; font-weight: bold; "&gt;&lt;br /&gt;Sistema Operativo&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: normal; font-weight: normal; "&gt;&lt;br /&gt;- Nombre&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;- Versión&lt;/div&gt;&lt;div&gt;- Service Pack&lt;/div&gt;&lt;div&gt;- Unidad de arranque&lt;/div&gt;&lt;div&gt;- Partición de inicio&lt;/div&gt;&lt;div&gt;- Directorio de Windows&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic; font-weight: bold; "&gt;&lt;br /&gt;Config. de red &lt;span class="Apple-style-span" style="font-weight: normal;"&gt;(del adaptador de red que tenga IP)&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;&lt;br /&gt;- Adaptador de red&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;- MAC&lt;/div&gt;&lt;div&gt;- IP&lt;/div&gt;&lt;div&gt;- Máscara de subred&lt;/div&gt;&lt;div&gt;- Puerta de enlace predeterminada&lt;/div&gt;&lt;div&gt;- Servidores DNS&lt;/div&gt;&lt;div&gt;- DHCP Activado (si o no)&lt;/div&gt;&lt;div&gt;- Servidor DHCP (si DHCP Activado es si)&lt;/div&gt;&lt;div&gt;- Dominio/Grupo de trabajo&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic; font-weight: bold; "&gt;&lt;br /&gt;Software instalado&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: normal; font-weight: normal; "&gt;&lt;br /&gt;- Descripción&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;- Versión&lt;/div&gt;&lt;div&gt;- Fabricante&lt;br /&gt;&lt;br /&gt;Si lo pruebas, te agradeceré que me reportes tu parecer para mejorarlo.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-6362472610783279498?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/6362472610783279498/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=6362472610783279498' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6362472610783279498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6362472610783279498'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/04/informe-del-sistema-10-disponible.html' title='Informe del Sistema 1.0 disponible'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-6957714083643868651</id><published>2009-03-22T11:11:00.004+01:00</published><updated>2009-03-22T11:32:45.512+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rootkit'/><category scheme='http://www.blogger.com/atom/ns#' term='invisible labs'/><title type='text'>Rootkits de firmware</title><content type='html'>Interesante &lt;a href="http://invisiblethingslab.com/resources/misc09/smm_cache_fun.pdf"&gt;artículo&lt;/a&gt; de &lt;a href="http://invisiblethingslab.com/"&gt;Invisible Things Labs &lt;/a&gt;donde muestran cómo hackear la memoria SMM, la zona de memoria más privilegiada del firmware de algunas placas base modernas de Intel.&lt;br /&gt;&lt;br /&gt;A continuación, una traducción que he realizado de la parte más relevante:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;3. Detalles del ataque&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ahora describiremos como realizar el envenenamiento de caché para lograr acceso a la SMRAM. Asumimos que el atacante tiene acceso a cierta plataforma con registros MSR. En la práctica esto es equivalente a que el atacante tenga privilegios de administrador en el sistema objetivo, y en otros sistemas, como Windows, la habilidad de cargar y ejecutar código arbitrario en el kernel.&lt;br /&gt;&lt;br /&gt;- 1. El atacante primero tiene que modificar los registros MTRR del sistema para marcar la región de la memoria del sistema donde la SMRAM está en modo cacheable de tipo Write-Back (WB).&lt;br /&gt;&lt;br /&gt;- 2. Ahora, el atacante realiza accesos de escritura a las direcciones físicas correspondientes a las ubicaciones donde se encuentra la SMRAM. Estos accesos serán cacheados debido a que hemos marcado este rango de direcciones físicas como cacheable WB. Habitualmente, las direcciones físicas que corresponden con la ubicación de la SMRAM pueden ser no cacheables y cualquier acceso de escritura a estas direcciones puede ser abortado por el controlador de memoria (chipset).&lt;br /&gt;&lt;br /&gt;- 3. Por último, el atacante necesita lanzar un SMI que transferirá la ejecución al código SMM. La CPU comenzará a ejecutar el código SMM, pero primero seguirá las instrucciones de la caché antes de leerlas de la DRAM. Debido a que el atacante en el punto 2 realizó accesos de escritura en las ubicaciones de la SMRAM, la CPU procesará los datos de la caché proporcionados por el atacante y los ejecutará como un manipulador SMI, con todos los privilegios de la SMM.&lt;br /&gt;&lt;br /&gt;El escenario anterior permite una sobreescritura arbitraria en la memoria SMM (y una posterior ejecución de código de estos datos arbitrarios escritos en la SMM. Se puede pensar en un ataque similar que pueda permitir la lectura de la memoria SMM. Esto es especialmente útil para poner en práctica una explotación, donde el atacante primero debería obtener los offsets específicos del firmware para generar un código fiable que ejecute el exploit (lo veremos en el siguiente capítulo). En el caso actual, la secuencia de eventos sería:&lt;br /&gt;&lt;br /&gt;- 1. De nuevo, el atacante primero marca a la SMRAM en modo cacheable WB manipulando los registros MTRR del sistema.&lt;br /&gt;&lt;br /&gt;- 2. Ahora el atacante necesita lanzar un SMI que produzca la ejecución del manipulador original. Esto también tendrá un efecto colateral en la mayoría de las instrucciones que se cacheen.&lt;br /&gt;&lt;br /&gt;- 3. Por último, el atacante debería leer la caché, preferiblemente utilizando una instrucción no invasiva como movnti, que no contamine la caché con datos nuevos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;4. La explotación puesta en práctica&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;En sistemas Linux, el usuario root puede modificar los MTRRs mediante el pseudo-archivo /proc/mtrr. Si asumimos que tu sistema tiene una placa base DQ35 de Intel con 2GB de RAM es posible que el "mapa de caché" de tu memoria sea parecido a esto:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;[root@localhost ~]# cat /proc/mtrr&lt;br /&gt;reg00: base=0x00000000 ( 0MB), size=2048MB: write-back, count=1&lt;br /&gt;reg01: base=0x7f000000 (2032MB), size=16MB: uncachable, count=1&lt;br /&gt;reg02: base=0x7e800000 (2024MB), size=8MB: uncachable, count=1&lt;br /&gt;reg03: base=0x7e400000 (2020MB), size=4MB: uncachable, count=1&lt;br /&gt;reg04: base=0x7e200000 (2018MB), size=2MB: uncachable, count=1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Aquí vemos que la primera entrada (reg00) está marcando a toda la memoria como cacheable Write-Back. Después vemos unas cuantas regiones de memoria "excepcionales" marcadas como no cacheables. Una de estas regiones (reg03) corresponde con la memoria donde está ubicado el segmento TSEG de la SMM.&lt;br /&gt;&lt;br /&gt;Tan simple como eliminar esta entrada MTRR del TSEG con el siguiente comando:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;echo "disable=3" &gt; /proc/mtrr&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;En otros sistemas puede que no tengamos la entrada cacheable WB por defecto (como hemos visto antes) y entonces tendríamos que modificar manualmente la entrada MTRR del TSEG para indicar el tipo de cacheo como Write-Back (crucial para el ataque).&lt;br /&gt;&lt;br /&gt;En sistemas Windows podemos modificar los MTRRs utilizando las instrucciones WRMSR estándar.&lt;br /&gt;&lt;br /&gt;Una vez marcada la memoria TSEG como cacheable WB, tan simple como hacer esto:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*(ptr) = datos_perversos;&lt;br /&gt;outb 0x00, 0xb2 // lanza el SMI&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Donde ptr, por ejemplo, puede ser un puntero a una dirección virtual mapeada a la dirección física dentro del segmento TSEG. Una forma sencilla de conseguir esto es utilizar el dispositivo /dev/mem en Linux o el objeto \Device\PhysicalMemory de Windows.&lt;br /&gt;&lt;br /&gt;¡Y ya está!&lt;br /&gt;&lt;br /&gt;Ahora, cuando se genera el SMI (en sistemas Intel puede realizarse fácilmente con sólo una instrucción como vimos antes), y si se ejecutan las instrucciones de las direcciones físicas que hemos puesto en "datos_perversos", la CPU procesará estos datos perversos de la caché y los ejecutará en vez de ejecutar las instrucciones originales SMM de la DRAM. Es necesario decir que podemos estar seguros que la CPU siempre ejecutará nuestras instrucciones sobreescribiendo el punto de entrada del manipulador SMI.&lt;br /&gt;&lt;br /&gt;En los sistemas DQ35 en particular, uno puede ver que el manipulador SMI ejecuta el siguiente código (localizado en TSEG) poco después del punto de entrada de SMM:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;mov $0x7e5fcfe0,%rsp&lt;br /&gt;mov 0x8(%rsp),%rax&lt;br /&gt;mov (%rsp),%ecx&lt;br /&gt;callq *(%rax)&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Después, la ejecución de código en el SMM puede conseguirse con el siguiente pseudo-código (asumiendo que tenemos también ubicado un buffer cuya dirección física está en la variable myaddr):&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;fd = open("/dev/mem", O_RDWR);&lt;br /&gt;*ptr = mmap (…, fd, …, 0x7e500000);&lt;br /&gt;ptr2 = ptr + 0xfcfe0; // 1st core&lt;br /&gt;ptr2[1] = myaddr;&lt;br /&gt;ptr2 = ptr + 0xfefe0; // 2nd core&lt;br /&gt;ptr2[1] = myaddr;&lt;br /&gt;iopl(3); // allow IN/OUT from usermode&lt;br /&gt;smi(); // trigger SMI#&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;El exploit tiene varias constantes hard-coded que necesitan ajustarse para sistemas distintos al DQ35 con 2GB de RAM. Además, para simplificar utilizamos un módulo kernel dedicado para ubicar el buffer del shellcode y así calcular su dirección física. El shellcode del exploit no hace nada espectacular, sólo incrementa un contador que se puede ver mediante /proc/mymem, que es un pseudo-archivo creado por el módulo, y por tanto, este exploit es inofensivo (también tiene la prudencia de ejecutar el código SMM original).&lt;br /&gt;&lt;br /&gt;Como vemos, la explotación se puede conseguir incluso desde el modo usuario (escalando desde el anillo 3 hasta el SMM), asumiendo que el sistema operativo permita operaciones de E/S y manipulación del MTRR desde el modo usuario. La mayoría de los sistemas Linux permiten al usuario root realizar lo mencionado mientras que en Windows no. Esto también quiere decir que el ataque anterior pueder ser utilizado de una forma potencial utilizando escalada de privilegios desde el entorno usuario hasta el kernel en sistemas que tienen especial cuidado en proteger el kernel, por ej., deshabilitando el soporte LKM y bloqueando escrituras en dispositivos /dev/(k)mem. No hemos intentado nuestro ataque en sistemas de este tipo.&lt;br /&gt;&lt;br /&gt;Para realizar el ataque mencionado es necesario conocer los "offsets" específicos del SMM que utiliza el manipulador SMI.&lt;br /&gt;&lt;br /&gt;Hay más de una forma de resolver este problema. Una forma elegante es utilizar el mismo ataque de cacheo para leer, en vez de escribir, la memoria SMM.&lt;br /&gt;&lt;br /&gt;El siguiente pseudo-código es un exploit que puede utilizarse para leer código SMM:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;fd = open("/dev/mem", O_RDWR);&lt;br /&gt;*ptr = mmap (…, fd, …, 0x7e500000);&lt;br /&gt;memset(outbuf, 0, sizeof(outbuf));&lt;br /&gt;iopl(3);&lt;br /&gt;smi();&lt;br /&gt;asm("push %rsi\n"&lt;br /&gt;"push %rdi\n"&lt;br /&gt;"mov $0x40000, %ecx\n"&lt;br /&gt;"mov $outbuf, %rdi\n"&lt;br /&gt;"mov ptr, %rsi\n"&lt;br /&gt;"lp:\n"&lt;br /&gt;"mov (%rsi), %eax\n"&lt;br /&gt;"movnti %eax, (%rdi)\n"&lt;br /&gt;"add $4, %rdi\n"&lt;br /&gt;"add $4, %rsi\n"&lt;br /&gt;"loop lp\n"&lt;br /&gt;"pop %rdi\n"&lt;br /&gt;"pop %rsi\n"&lt;br /&gt;"mfence");&lt;br /&gt;write(1, outbuf, SIZE); // stdout&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;El truco es la instrucción movnti que puede utilizarse para leer datos desde la caché (datos dejados por el manipulador SMI en el modo de cacheo WB) sin contaminar la caché con datos nuevos. De esta forma no elimina datos interesantes de la caché antes de que puedan ser leidos. Con este método sólo podemos leer aquellas direcciones que haya ejecutado el manipulador SMI.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-6957714083643868651?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/6957714083643868651/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=6957714083643868651' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6957714083643868651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6957714083643868651'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/03/rootkits-de-firmware.html' title='Rootkits de firmware'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-6725818523416061026</id><published>2009-03-15T20:16:00.007+01:00</published><updated>2009-03-15T20:48:58.113+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rootkit'/><category scheme='http://www.blogger.com/atom/ns#' term='BHO'/><category scheme='http://www.blogger.com/atom/ns#' term='spyware'/><title type='text'>Contra los rootkits: SpyDLLRemover</title><content type='html'>&lt;a href="http://rootkitanalytics.com/downloads/SpyDLLRemover.rar"&gt;Nueva utilidad&lt;/a&gt; de &lt;a href="http://nagareshwar.securityxploded.com/author/admin/"&gt;Nagareshwar Talekar&lt;/a&gt; para descubrir rootkits basados en archivos DLL. Analiza los procesos activos y saca sus entresijos. Lo he probado en Windows XP SP3 y he visto cosas muy interesantes.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;SpyDLLRemover es una utilidad para detectar y eliminar eficientemente spywares del sistema. Utiliza varias técnicas como la implementación directa de llamada al sistema, detección de manipuladores de procesos CSRSS, método PIDB, etc. para detectar rootkits de entorno de usuario.&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;br /&gt;El objetivo principal de esta herramienta es ayudar a eliminar DLLs maliciosas rápida y fácilmente mostrando todas las DLLs dentro de los procesos. Para ello se extraen varios niveles de amenaza utilizando técnicas de inyección de DLL empleando una implementación a bajo nivel muy efectiva contra los rootkits de entorno de usuario.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Más info:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://nagareshwar.securityxploded.com/2009/03/16/spydllremover-detect-delete-spywares-from-the-system/"&gt;http://nagareshwar.securityxploded.com/2009/03/16/spydllremover-detect-delete-spywares-from-the-system/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://rootkitanalytics.com/userland/spy-dll-remover.php"&gt;http://rootkitanalytics.com/userland/spy-dll-remover.php&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-6725818523416061026?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/6725818523416061026/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=6725818523416061026' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6725818523416061026'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6725818523416061026'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/03/spydllremover.html' title='Contra los rootkits: SpyDLLRemover'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-7564446447991255909</id><published>2009-02-11T16:38:00.011+01:00</published><updated>2009-03-05T22:41:02.297+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='malware'/><category scheme='http://www.blogger.com/atom/ns#' term='windows xp'/><title type='text'>Windows XP más seguro</title><content type='html'>Si inicias Windows XP con una cuenta que tiene privilegios de administrador local o con la misma cuenta de administrador (cosa corriente), tiene sus ventajas porque puedes hacer lo que quieras sin restricción alguna, y también tiene sus inconvenientes: cualquier cosa maliciosa que venga de fuera puede aprovechar perfectamente estos privilegios y también puede hacer lo que quiera sin restricción alguna.&lt;br /&gt;&lt;br /&gt;Estas cosas maliciosas, o las cosas que hacen cosas sin que te enteres, como utilizar los recursos de tu ordenador para el enriquecimiento de otros, o simplemente robarte credenciales bancarias para robar el sudor de tu frente, actualmente han crecido tanto en número como en sofisticación.&lt;br /&gt;&lt;br /&gt;No existe software que te protega 100%, y tal y como está la cosa actualmente, cuanto más promíscuo seas en la red, más posibilidades tienes de llevarte un premio.&lt;br /&gt;&lt;br /&gt;A la vez, el negocio de la seguridad informática es una carrera de tiempos dentro de un toroide cerrado donde tu ordenador está en medio pagando tributos, primero a uno, luego a otro, luego a otro y así sucesivamente. No estás más seguro por tener más software de seguridad, estás más seguro sabiendo lo que tienes y unas buenas contraseñas.&lt;br /&gt;&lt;br /&gt;Para tener un buen nivel de seguridad en Windows XP, sólo necesitas cuatro cosas:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Windows XP actualizado todos los días con Windows Update.&lt;/li&gt;&lt;li&gt;Antivirus actualizado todos los días.&lt;/li&gt;&lt;li&gt;Utilizar normalmente una cuenta de usuario que sólo pertenezca al grupo "Usuarios". &lt;/li&gt;&lt;li&gt;Sentido común.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;El punto 1 y 2 es una rutina, el 4 depende de tí y ahora hablemos del punto 3.&lt;br /&gt;&lt;br /&gt;En el caso de Windows XP, esto se realiza con la &lt;span style="font-weight: bold; font-style: italic;"&gt;Administración de equipos&lt;/span&gt; ubicada en las &lt;span style="font-weight: bold; font-style: italic;"&gt;Herramientas Administrativas&lt;/span&gt; del &lt;span style="font-weight: bold; font-style: italic;"&gt;Panel de Control&lt;/span&gt;, o utilizando el comando &lt;span style="font-weight: bold;font-family:courier new;font-size:130%;"&gt;compmgmt.msc&lt;/span&gt;. Dentro de &lt;span style="font-weight: bold; font-style: italic;"&gt;Administración de equipos&lt;/span&gt;, en el apartado de &lt;span style="font-weight: bold; font-style: italic;"&gt;Usuarios locales y grupos&lt;/span&gt; aparecen dos carpetas: &lt;span style="font-weight: bold; font-style: italic;"&gt;Usuarios&lt;/span&gt; y &lt;span style="font-style: italic; font-weight: bold;"&gt;Grupos&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Dentro de la carpeta &lt;span style="font-weight: bold; font-style: italic;"&gt;Usuarios&lt;/span&gt; haz doble click en tu usuario y aparece la ventana con sus opciones, ve a la pestaña &lt;span style="font-style: italic; font-weight: bold;"&gt;Miembro de&lt;/span&gt;, agrega el grupo &lt;span style="font-weight: bold;"&gt;Usuarios&lt;/span&gt; y elimina cualquier otro grupo (incluido el grupo de Administradores).&lt;br /&gt;&lt;br /&gt;Aparte de esto, no hace falta recordar que tanto nuestro usuario como el usuario Administrador deben tener contraseñas fuertes. Para asignar una contraseña a un usuario basta con clicar en él con el botón derecho y elegir &lt;span style="font-style: italic; font-weight: bold;"&gt;Establecer contraseña...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;De esta forma, hagas lo que hagas con tu usuario, éste no podrá escribir o modificar archivos de zonas importantes de Windows y por tanto tampoco ningún código malicioso que puedas "adquirir", sea por Internet, pendrive o disquete de 5 1/4.&lt;br /&gt;&lt;br /&gt;Ahora, si necesitas instalar algún software que requiera privilegios elevados, realizar alguna tarea administrativa o cualquier otra cosa que necesite privilegios de administración puedes utilizar el botón derecho del ratón y elegir &lt;span style="font-weight: bold; font-style: italic;"&gt;Ejecutar como&lt;/span&gt; dando las credenciales del administrador local, o también puedes utilizar la versión de línea de comando &lt;span style="font-weight: bold;"&gt;"runas"&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Por ejemplo, si necesitas comprobar e instalar actualizaciones de Windows XP con Windows Update en la versión línea de comandos, puedes crear en escritorio el archivo &lt;span style="font-weight: bold; font-style: italic;"&gt;WindowsUpdate.BAT&lt;/span&gt;  con estas líneas:&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:130%;"&gt;@echo off&lt;br /&gt;cd %systemroot%\system32&lt;br /&gt;runas /env /user:administrador wupdmgr.exe&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Lo abres, te pide la contraseña del administrador local, se la das y Windows Update empezará a realizar su trabajo, mientras el usuario actual sigue restringido y protegido.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-7564446447991255909?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/7564446447991255909/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=7564446447991255909' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7564446447991255909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7564446447991255909'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/02/windows-xp-mas-seguro.html' title='Windows XP más seguro'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-453007487228025040</id><published>2009-02-01T20:12:00.005+01:00</published><updated>2009-12-10T15:42:45.876+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='malware'/><category scheme='http://www.blogger.com/atom/ns#' term='windows xp'/><category scheme='http://www.blogger.com/atom/ns#' term='servicios'/><category scheme='http://www.blogger.com/atom/ns#' term='drivers'/><title type='text'>Detecta y elimina malware en Windows XP</title><content type='html'>El malware puede tomar cualquier forma dentro del sistema operativo, y conociendo al detalle al sistema operativo, es más sencillo detectar al malware para aislarlo y eliminarlo con herramientas sencillas.&lt;br /&gt;&lt;br /&gt;El año pasado escribí una guía de 26 páginas acerca de cómo identificar malware en un Windows XP.&lt;br /&gt;&lt;br /&gt;En esta guía verás como utilizar varias herramientas de administración de Windows y, entre otros métodos, detalla el funcionamiento de varias herramientas de &lt;a href="http://technet.microsoft.com/en-us/sysinternals/default.aspx"&gt;Sysinternals&lt;/a&gt; como &lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx"&gt;Process Explorer&lt;/a&gt; y &lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb963902.aspx"&gt;Autoruns&lt;/a&gt; para sacarle la información a Windows y poder interpretarla correctamente para detectar malware.  Actualmente, esta guía se encuentra en formato PDF en &lt;a href="http://sites.google.com/site/ramiroencinas/doc/MalwareWindowsXP.pdf"&gt;este enlace&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-453007487228025040?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/453007487228025040/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=453007487228025040' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/453007487228025040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/453007487228025040'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/02/detecta-y-elimina-malware-en-windows-xp.html' title='Detecta y elimina malware en Windows XP'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-3503611910992414297</id><published>2009-01-31T10:43:00.016+01:00</published><updated>2009-03-18T10:35:27.641+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows xp'/><category scheme='http://www.blogger.com/atom/ns#' term='rapidez'/><category scheme='http://www.blogger.com/atom/ns#' term='servicios'/><category scheme='http://www.blogger.com/atom/ns#' term='rendimiento'/><title type='text'>Windows XP más rápido = servicios necesarios</title><content type='html'>Windows XP, como cualquier otro sistema operativo viene por defecto con una serie de servicios que se inician automaticamente cuando el ordenador arranca. Dependiendo del uso que demos al ordenador utilizaremos algunos y otros no.&lt;br /&gt;&lt;br /&gt;En este post, explicaré algunos servicios de Windows XP, comprobaremos si los necesitamos o no, y los que no necesitemos los desactivaremos. El resultado será el ahorro de recursos y el incremento de la rapidez de Windows XP, tanto en arranque como en el uso normal.&lt;br /&gt;&lt;br /&gt;Lo primero que haremos es abrir el gestor de servicios y ver lo que hay. Para ello vamos a inicio, ejecutar y ponemos: &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;services.msc&lt;/span&gt;&lt;/span&gt;, pulsamos ENTER y aparecerán los servicios. Para verlos mejor, maximizamos la ventana y pinchamos abajo en la pestaña "Estándar".&lt;br /&gt;&lt;br /&gt;La columna interesante es &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;Tipo de inicio&lt;/span&gt;&lt;/span&gt;. Si ordenamos los servicios por &lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Tipo de inicio&lt;/span&gt;&lt;/span&gt; los veremos mejor. Hay tres tipos de inicio:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Automático:&lt;/span&gt;&lt;/span&gt; siempre inicia el servicio en el arranque de Windows.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Manual:&lt;/span&gt;&lt;/span&gt; se inicia a demanda. Normalmente lo inicia otro servicio ya iniciado, como por ejemplo alguno que ya se inicie de forma automática.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Deshabilitado:&lt;/span&gt;&lt;/span&gt; nunca se inicia.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Podemos cambiar el tipo de inicio de un servicio dado, además de iniciarlo o detenerlo haciendo doble click izquierdo en él e indicando lo que queremos.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;A continuación voy a explicar algunos de los servicios de Windows XP SP3 Profesional que podemos tocar &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;sin problemas&lt;/span&gt;, y así averiguamos si los necesitamos o no:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Acceso a dispositivo de interfaz humana&lt;/span&gt;:&lt;/span&gt; Si tienes un teclado con botones multimedia tipo volúmen, enviar correo, hacer la colada, etc., déjalo en automático. Si tienes un teclado convencional y no utilizas este tipo de controles multimedia, lo puedes detener y deshabilitar.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;Actualizaciones automáticas:&lt;/span&gt;&lt;/span&gt; es recomendable que esté en automático sino quieres que tu Windows se convierta en un colador.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;Administrador de IIS:&lt;/span&gt;&lt;/span&gt; si tienes un servidor Web, o ftp, o alguna aplicación que utilice IIS (Internet Information Server) déjalo en automático. Si utilizas otro servidor web como Apache o Tomcat, lo puedes desactivar. Si lo anterior te suena a chino, desactívalo.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;Administrador de sesión de Ayuda de escritorio remoto:&lt;/span&gt;&lt;/span&gt; esto sirve para que un amigo tuyo se conecte a tu ordenador y te ayude con algún problema. Desactívalo sino necesitas ayuda on-line.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;Adquisición de imágenes de Windows (WIA):&lt;/span&gt;&lt;/span&gt; si tienes un escáner o cámara conectado al ordenador, déjalo en automático, sino, lo puedes desactivar.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;Agente de Protección de acceso a redes:&lt;/span&gt;&lt;/span&gt; el servicio NAP, una capa nueva extra de seguridad que Microsoft sacó ya con Windows Vista y Windows 2008. Tiene sentido en una red local de ordenadores donde queremos más seguridad. En entornos corporativos donde la seguridad es un factor crítico entre ordenadores y servidores no estaría mal. En el caso doméstico no le veo utilidad y puede desactivarse.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;Ayuda y soporte técnico:&lt;/span&gt;&lt;/span&gt; por la utilidad que he visto en este servicio, es mejor desactivarlo.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;Configuración inalámbrica rápida:&lt;/span&gt;&lt;/span&gt; si tu ordenador tiene WIFI, déjalo activado, sino, desactívalo.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;DDE de red:&lt;/span&gt;&lt;/span&gt; otro servicio para dar seguridad al transporte de datos en determinadas aplicaciones (nunca he visto una aplicación que utilice este servicio). No es necesario para compartir carpetas en una red local, por tanto se puede desactivar.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;DSDM de DDE de red:&lt;/span&gt;&lt;/span&gt; más de lo mismo que el servicio anterior. &lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Enrutamiento y acceso remoto:&lt;/span&gt;&lt;/span&gt; desactívalo. Un router es un router, y un Windows es un Windows.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Escritorio remoto compartido de NetMeeting:&lt;/span&gt;&lt;/span&gt; esto es una cosa parecida a la asistencia remota, pero utilizando NetMeeting. Sino te suena, desactívalo.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Instantáneas de volumen:&lt;/span&gt;&lt;/span&gt; si utilizas el sistema de copia de seguridad propio de Windows, puede ser útil, sino, desactívalo.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Machine Debug Manager:&lt;/span&gt;&lt;/span&gt; si te dedicas a analizar volcados de memoria cuando algo revienta, es hasta necesario. Si lo anterior te suena a chino, desactívalo.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Mensajero:&lt;/span&gt; &lt;/span&gt;esto tiene sentido en la oficina cuando el administrador de sistemas necesita alertar de algo a los usuarios. A nivel doméstico no tiene sentido.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;MS Software Shadow Copy Provider:&lt;/span&gt;&lt;/span&gt; esto es lo mismo que el servicio de Instantáneas de volumen.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Programador de tareas:&lt;/span&gt;&lt;/span&gt; si necesitas hacer algo de forma automática de vez en cuando, tiene sentido, sino, desactívalo.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Publicación en World Wide Web:&lt;/span&gt;&lt;/span&gt; igual que el Administrador de IIS.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Servicio de alerta:&lt;/span&gt;&lt;/span&gt; igual que el servicio Mensajero, pero en vez de que la alerta la realice el administrador de sistemas la realiza alguna aplicación en respuesta a algún evento. En entorno doméstico no tiene sentido.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;Servicio de Index Server:&lt;/span&gt;&lt;/span&gt; dice que mejora la velocidad de las búsquedas de archivos en Windows, pero yo no he visto ninguna mejora significativa. Lo puedes desactivar perfectamente.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;br /&gt;Servicio de restauración de sistema:&lt;/span&gt;&lt;/span&gt; yo lo he probado en varios contextos, y es mejor tener una copia de seguridad de nuestros archivos que no pueden perderse fuera del ordenador, por ejemplo en un disco duro externo. Además, es un nicho de virus. Mejor desactivado.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;Servicio de uso compartido de red del Reproductor de Windows Media:&lt;/span&gt;&lt;/span&gt; si utilizas Windows Media Player junto con aparatos reproductores externos, puede servir para que compartan datos entre si (esto es como el itunes y el ipod pero en plan Windows), sino, desactívalo.&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;br /&gt;Servicio del número de serie de medio portátil:&lt;/span&gt;&lt;/span&gt; íntimamente ligado al servicio anterior.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;Servicios de Terminal Server:&lt;/span&gt;&lt;/span&gt; si quieres conectar con el escritorio de otro ordenador en red, bien, sino, desactívalo.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;Servicios IPSEC:&lt;/span&gt;&lt;/span&gt; este servicio de cifrado de red tiene sentido en comunicaciones cifradas entre servidores de archivos confidenciales. En entornos domésticos no tiene sentido.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Sistema de alimentación ininterrumpida:&lt;/span&gt;&lt;/span&gt; si tienes un SAI conectado al ordenador y quieres mirar su estado con el mismo Windows, bien. Si tu SAI ya dispone de software para esto, o no tienes un SAI, desactívalo.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Tarjeta inteligente:&lt;/span&gt;&lt;/span&gt; esto se utiliza en caso de que algún programa necesite leer tarjetas de identificación, para temas de seguridad. Sino tienes alguna tarjeta de estas, puedes desactivarlo.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;Telnet:&lt;/span&gt;&lt;/span&gt; si te gusta la línea de comandos con conexión remota y la inseguridad, pues vale, sino desactívalo.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;Temas:&lt;/span&gt;&lt;/span&gt; Windows más bonito. Si lo desactivas, se queda con los gráficos en plan Windows 95, y ten por seguro que Windows irá más rápido.&lt;br /&gt;&lt;br /&gt;Como dije, el resto de servicios suelen ser más necesarios y están más vinculados con el funcionamiento de Windows, aunque puedes probar a desactivar alguno a ver que pasa.&lt;br /&gt;&lt;br /&gt;Si dejamos activos sólo los servicios que utilizamos y deshabilitamos los que no utilizamos, tendremos una mejora significativa en rapidez, que si por contra dejamos los servicios configurados por defecto.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-3503611910992414297?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/3503611910992414297/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=3503611910992414297' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3503611910992414297'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3503611910992414297'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/01/windows-xp-mas-rapido-servicios.html' title='Windows XP más rápido = servicios necesarios'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-6262324428558573138</id><published>2009-01-28T10:11:00.017+01:00</published><updated>2009-12-10T15:44:04.709+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='PE'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='adware'/><title type='text'>Ejecutable ¿o no?, esa es la cuestión</title><content type='html'>Que un archivo comience con los bytes "4d5a" (hexadecimal), no es casualidad. Se trata de un archivo ejecutable de cualquier sistema operativo de Microsoft.&lt;br /&gt;&lt;br /&gt;Concretamente estamos hablando del comienzo de la cabecera PE (Portable Executable), que identifica a los archivos ejecutables de MS-DOS también soportados por compatibilidad en las versiones de los ejecutables posteriores de Windows. Disponemos de más información acerca de la estructura de la cabecera PE &lt;a href="http://www.delorie.com/djgpp/doc/exe/"&gt;aquí&lt;/a&gt; y &lt;a href="http://www.perantivirus.com/sosvirus/pregunta/portable.htm"&gt;aquí&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Las extensiones de los nombres de los archivos ejecutables de Windows son muchas, las más conocidas son .EXE,  (el de toda la vida), .DLL (librerías dinámicas) y los .SYS (Drivers). Menos conocidas son .CPL y DPL. En cualquier caso, todos estos tipos de archivos comienzan con los bytes mencionados y tienen la capacidad de ejecutar código en el sistema, para bien y para mal.&lt;br /&gt;&lt;br /&gt;Entrando en el contexto de la seguridad, lo normal es que un archivo ejecutable tenga una extensión como las que hemos visto, como EXE, y lo extraño es encontrar un archivo que por su nombre/extensión no parezca ejecutable y su contenido sí lo sea.&lt;br /&gt;&lt;br /&gt;Muchos virus utilizan archivos con extensión .TMP (temporal) para alojarse en ellos y "despistar" al observador. Ahora, su contenido comienza con "4d5a", y digo .TMP como si se trata de cualquier otra extensión que no parezca ser un ejecutable, o simplemente que no tenga extensión. Si no nos percatamos de este detalle, el .TMP de turno puede ser abierto por cualquier otro proceso y ejecutarlo... y en ese caso tenemos papeletas para el premio.&lt;br /&gt;&lt;br /&gt;Para saber si existe en nuestro sistema algún archivo que por su extensión no denote "ejecución", he preparado un script en perl. Este script trabaja sobre archivos que NO tengan las extensiones típicas de los ejecutables (exe, dll, sys, drv, ocx, com, cpl, dpl) para comprobar si el contenido comienza con "4d5a". Si el script detecta estos bytes al inicio del archivo, indica la ruta y el nombre del archivo en cuestión. En estos casos, habría que buscar información de la extensión de este archivo y comprobar de qué se trata.&lt;br /&gt;&lt;br /&gt;Este script da la opción de realizar esta búsqueda en toda la unidad C: incluyendo todos sus subdirectorios (tarda un buen rato), y también da la opción de realizar esta búsqueda en el directorio actual. En ambos casos, el resultado lo dejará en el archivo &lt;span class="Apple-style-span" style="font-style: italic;"&gt;resultados.txt&lt;/span&gt; del directorio donde se ejecute el script.&lt;br /&gt;&lt;br /&gt;He pasado este script en tres ordenadores con Windows XP SP3, y no podeis imaginar la cantidad de archivos que existen, que no parecen ejecutables, y sí lo son. En próximos posts intentaré dar más información acerca de este tipo de extensiones como ax, flt, mui, wpc, etc.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;El script está disponible en &lt;a href="http://sites.google.com/site/ramiroencinas/soft/ejecutable.pl"&gt;este enlace&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-6262324428558573138?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/6262324428558573138/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=6262324428558573138' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6262324428558573138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6262324428558573138'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/01/ejecutable-o-no-esa-es-la-cuestion.html' title='Ejecutable ¿o no?, esa es la cuestión'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-1716907909625714944</id><published>2009-01-27T21:57:00.004+01:00</published><updated>2009-12-10T15:49:17.057+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='md5'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='drivers'/><category scheme='http://www.blogger.com/atom/ns#' term='adware'/><title type='text'>Protege los drivers de tu Windows, y 2</title><content type='html'>El script del post anterior sólo trabaja con MD5: crea MD5 de los drivers actuales a un archivo (drivers.md5) y también puede comprobarlos en un futuro.&lt;br /&gt;&lt;br /&gt;Pero le falta una cosa importante: si hay drivers nuevos no los procesa porque toma como referencia el archivo drivers.md5, y en base a su contenido comprueba si existe el driver correspondiente en el sistema, &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;sin realizar un recorrido en éste&lt;/span&gt;. Por tanto, sólo procesa los que tiene en drivers.md5 ignorando los nuevos que pudieran existir. Esta funcionalidad es crítica y necesaria puesto que necesitamos saber si algún driver ha sido instalado en el sistema desde la última "foto" que le hicimos.&lt;br /&gt;&lt;br /&gt;Para ofrecer esta nueva funcionalidad, he ampliado el script dando una opción más que es: &lt;span class="Apple-style-span" style="font-style: italic;"&gt;Comprobar drivers nuevos&lt;/span&gt;. Además, como ahora he utilizado contadores para contar tanto los drivers en drivers.md5 como en el sistema, los resultados en general se han ampliado.&lt;br /&gt;&lt;br /&gt;Como los cambios son significativos respecto al script anterior, a éste lo he llamado control-drivers.pl y su versión es la 1.0.&lt;br /&gt;&lt;br /&gt;Y para evitar erratas producidas por blogger, el nuevo script se encuentra en &lt;a href="http://sites.google.com/site/ramiroencinas/soft/control-drivers.pl"&gt;este enlace&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-1716907909625714944?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/1716907909625714944/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=1716907909625714944' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/1716907909625714944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/1716907909625714944'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/01/protege-los-drivers-de-tu-windows-y-2.html' title='Protege los drivers de tu Windows, y 2'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-7123992393545039026</id><published>2009-01-26T15:50:00.010+01:00</published><updated>2009-12-10T15:45:28.290+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='md5'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='drivers'/><category scheme='http://www.blogger.com/atom/ns#' term='adware'/><title type='text'>Protege los drivers de tu Windows</title><content type='html'>En base al trabajo del post anterior, podemos eliminar los drivers que no utilizamos, y si el resto es de confianza, podemos controlarlos haciéndolos una foto con MD5 para después compararlos con la realidad.  De esta forma sabremos si alguno es modificado.&lt;br /&gt;&lt;br /&gt;El sentido de esto es saber cuando queramos si estos archivos (de confianza) han sido alterados o no, comparándolos con sus MD5 antes generados.  Así, si instalamos una versión nueva de un driver, o si Windows Update lo hace, lo podremos confirmar. Y si ha habido algún cambio sin que nosotros lo sepamos, pues puede ser un virus.&lt;br /&gt;&lt;br /&gt;Para ello, realizaremos un script con perl con un menú donde podamos elegir realizar el MD5 de los drivers, que son los archivos que tengan extensión .SYS, o .sys, o, Sys (perl distingue entre mayúsculas y minúsculas), que se encuentren tanto en system32 como en system32\drivers y guardarlo en un archivo de texto.&lt;br /&gt;&lt;p&gt;La segunda opción tendrá sentido a futuro, cuando comparemos los MD5 de los drivers actuales con los guardados (la foto) . Si no hay ningúna discrepancia, el script no dará ningún resultado, y si la hay, indicará cual es el driver afectado.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;------------- Comienzo md5-drivers.pl -------------------------------&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:courier new;"&gt;# Generación y comprobación de los MD5 de los drivers de Windows&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;# ramiro.encinas@gmail.com - 2009&lt;br /&gt;# Tuya es la responsabilidad del buen o mal uso de este script&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;use Digest::MD5::File qw(file_md5_hex); # Cargamos el módulo MD5 para archivos&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;sub menu # El menú con las tres opciones&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;{&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    print "\nControl de drivers. Elige opcion:\n";&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    print "-------------------------------------\n";&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    print "- [1] Generar MD5 de los drivers en $file_out\n";&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;      print "- [2] Comparar los MD5 de los drivers con el de $file_out existente\n";&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    print "- [3] Salir\n";&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    print "-&gt;";&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;sub genera # Procesa los MD5 de los drivers actuales en ambas ubicaciones&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;{&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    open f_out, "&gt;$file_out"; # Abre para escritura a drivers.md5&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    $path = $path1; # Procesa la primera ubicación&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    busca($path); # Y llama a la función correspondiente para generar los MD5&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    $path = $path2; # Procesa la segunda ubicación&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    busca($path); # Y llama a la función correspondiente para generar los MD5&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    close f_out; # Cierra drivers.md5&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    print "Archivo $file_out generado ok.\n";&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;sub busca # Busca drivers en ubicación, genera MD5 y los guarda en drivers.md5&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;{&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;      opendir DIRECTORY, $path or die; # Abre la carpeta $path (la ubicación actual)&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;      # Recorre $path y deja en $file cada nombre de archivo&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;      while ($file = readdir(DIRECTORY)) # Leemos todos los archivos de la ubicación&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;      {  &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;              if ( -d $path.$file ){# $file es un directorio&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        }&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;              else # $file es un archivo (porque puede un directorio)&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;              {&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;             if ($file =~/.[sS][yY][sS]$/) # Sólo *.SYS (mayus y minus).&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;             {&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;                  $md5 = file_md5_hex($path.$file); # Calcula el MD5 de $file&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;                  print f_out "$path$file\:\:$md5\n"; # Escribe en drivers.md5 path+archivo+::+md5&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;             }&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;              }&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;      }&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;sub compara # Compara los MD5 actuales con los guardados en drivers.md5&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;{&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    open f_in, $file_out or die "No puedo abrir $file_out"; # Abre drivers.md5&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    while (&lt;f_in&gt;) # Leemos línea a línea hasta la última&lt;/f_in&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    {&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        chomp $_; # Quitamos el fin de línea&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        $_ =~ /(.*)::/; # Extrae el nombre del archivo (path incluido) de drivers.md5&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        $f = $1; # y lo pone en $f&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;  &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        $_ =~ /::(.*)/; # Extrae el MD5 del archivo de drivers.md5&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        $md5 = $1; # y lo pone en $md5&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;  &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        $md5_actual = file_md5_hex($f); # Generamos el MD5 del driver actual&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;  &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        # Y comparamos. Si hay discrepancia la pone, sino, no la pone&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;  &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        if ($md5 ne $md5_actual){print "\nCuidadito, el MD5 de $f no coincide.\n";}&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    }&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    close f_in; # Cerramos drivers.md5&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;sub principal # Empezamos aquí&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;{&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    $path1="C:\\WINDOWS\\system32\\"; # Primera ubicación de los drivers&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    $path2="C:\\WINDOWS\\system32\\drivers\\"; # Segunda ubicación de los drivers&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    $file_out = "drivers.md5"; # Nombre de archivo donde se guardarán los MD5 actuales&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    menu(); # Llama al menú&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    while ($opcion=&lt;stdin&gt;) # Espera opción desde el teclado para meterla en $opcion&lt;/stdin&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    {&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        chomp $opcion; # Elimina el fin de línea&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        if    ($opcion == 1){genera($path1,$path2);exit;} # Llama a sub genera&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        elsif ($opcion == 2){compara($file_out);exit;} # Llama a sub compara&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        elsif ($opcion == 3){exit;} # A la calle&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;        else                {$opcion = NULL;menu();} # Sino hay opción válida, volvemos.&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    } &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;principal(); # Esta es la primera función que se ejecuta&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-family:courier new;"&gt;-------------- Final md5-drivers.pl -------------------------------&lt;/span&gt;&lt;p&gt;&lt;span style="font-family:courier new;"&gt;&lt;f_in&gt;&lt;span style="font-family:courier new;"&gt;&lt;stdin&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;/stdin&gt;&lt;/span&gt;&lt;/f_in&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;AVISO: Debido a que blogger elimina los símbolos mayor menor que, a este script le faltan algunas cosas para funcionar. El script completo puedes verlo y descargarlo en &lt;a href="http://sites.google.com/site/ramiroencinas/soft/md5-drivers.pl"&gt;este enlace&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-7123992393545039026?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/7123992393545039026/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=7123992393545039026' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7123992393545039026'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/7123992393545039026'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/01/protege-tus-drivers.html' title='Protege los drivers de tu Windows'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-1234778949549514948</id><published>2009-01-24T19:45:00.013+01:00</published><updated>2009-01-26T17:18:08.205+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virus'/><category scheme='http://www.blogger.com/atom/ns#' term='md5'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='drivers'/><title type='text'>Perl, MD5 y los drivers sospechosos de Windows</title><content type='html'>&lt;p&gt;En Windows, los drivers que normalmente están alojados en &lt;/p&gt;&lt;p&gt;c:\windows\system32 y &lt;/p&gt;&lt;p&gt;c:\windows\system32\drivers, &lt;/p&gt;&lt;p&gt;pueden ejecutarse en el espacio de memoria del núcleo y por tanto, pueden hacer lo que quieran en el sistema. Estos archivos suelen tener la extensión .sys, y normalmente no se les presta atención.&lt;/p&gt;Hay drivers que ya los pone Windows, otros se alojan ahí cuando instalamos algún dispositivo, y hasta hay programas que también dejan ahí su .sys para hacer cosas. Los virus también los utilizan para sus cometidos, y con más frecuencia que lo que creemos.&lt;br /&gt;&lt;br /&gt;Se inicie el driver o no al encender el ordenador dependerá si el driver es llamado desde el registro. Para ver esto, aconsejo &lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb963902.aspx"&gt;autoruns&lt;/a&gt; de Sysinternals.&lt;br /&gt;&lt;br /&gt;A veces es difícil saber si un .sys es de fiar o no, aunque consultemos en la red. Una forma de averiguarlo es, si sospechamos de alguno, crear una carpeta en la misma carpeta donde se aloja el driver y moverlo ahí. Después reiniciamos y a ver que pasa. Si hemos movido un driver crítico del sistema, seguramente nos toque arrancar con un live-cd y volver a poner el driver en su ubicación original. Sino ocurre nada, podemos esperar a ver que pasa, y si sigue sin pasar nada, pues lo mismo ese driver no se usa.&lt;br /&gt;&lt;br /&gt;Si da la casualidad de que hemos movido un driver que es utilizado por algún virus u otro programa malicioso, es posible que, si el virus está en memoria, lo vuelva a crear incluso con otro nombre, y aquí es donde entra el&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;MD5&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;El &lt;a href="http://es.wikipedia.org/wiki/Algoritmo_MD5"&gt;MD5&lt;/a&gt; de un archivo es un resumen del contenido del archivo y además es único para ese archivo. Lo bueno es que ese resumen sólo ocupa 32 dígitos hexadecimales (128 bits), ocupe lo que ocupe el archivo. De esta forma, con estos 32 dígitos podemos verificar la integridad de un archivo.&lt;br /&gt;&lt;br /&gt;Si hemos apartado los drivers sospechosos a una carpeta llamada "sospechosos", podemos calcular el MD5 de cada uno y crear un archivo de texto donde cada línea tendrá el nombre del archivo y su MD5. Después, si alguno de estos drivers sospechosos es el resultado de un virus y éste vuelve a crear el driver, aunque sea con otro nombre, para identificarlo podemos comparar los MD5 sospechosos que contiene nuestro archivo de texto con los MD5 de los archivos de las carpetas de sistema de Windows (system32 y system32\drivers) hasta que salte la coincidencia. Si el nuevo driver tiene otro nombre y el mismo MD5, se trata de un virus seguro.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;Entrando en harina&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Primero vamos a hacer un pequeño script en perl llamado md5.pl para sacar los MD5 de un archivo dado:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;------- comienzo md5.pl -----------------------------------------------&lt;br /&gt;# ramiro.encinas@gmail.com - 2009&lt;br /&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 51, 51); line-height: 16px; "&gt;# Tuya es la responsabilidad del buen o mal uso de este script&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;use Digest::MD5::File qw(file_md5_hex);&lt;br /&gt;&lt;br /&gt;if ($ARGV[0]) {$archivo = $ARGV[0];}&lt;br /&gt;else {print "\n";print "Sintaxis: perl md5.pl nombre_archivo.\n";exit;}&lt;br /&gt;&lt;br /&gt;if ( -e $archivo )&lt;br /&gt;{&lt;br /&gt;    $md5 = file_md5_hex($archivo);&lt;br /&gt;    print "\n";print "El MD5 de $archivo es: $md5\n";&lt;br /&gt;}&lt;br /&gt;else {print "\n";print "Sintaxis: perl md5.pl nombre_archivo.\n";exit;}&lt;br /&gt;------- fin md5.pl ----------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Con este script podemos sacar los MD5 de los archivos sospechosos. Después, en la carpeta de trabajo, creamos un archivo de texto llamado drivers-sospechosos.txt, donde cada línea contendrá cada nombre de archivo sospechoso y su MD5 correspondiente. Para separar el nombre del archivo y su MD5 utilizaremos "::" como vemos en este ejemplo:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;data.sys::ee2f07a2d1f81e2f5a8a454f61d9395a&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Cuando tengamos drivers-sospechosos.txt lleno con los archivos (drivers) sospechosos y sus MD5, y además tengamos movidos dichos archivos a la carpeta "sospechosos", podemos esperar unos días y ejecutar el siguiente script que realizará la búsqueda-comprobación:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;------- comienzo drivers-sospechosos.pl ----------------------------------------&lt;br /&gt;&lt;br /&gt;# Los drivers sospechosos de c:\windows\system32 y c:\windows\system32\drivers&lt;br /&gt;# han sido movidos a la carpeta "sospechosos" que está en la misma carpeta donde&lt;br /&gt;# estaba el driver sospechoso.&lt;br /&gt;&lt;br /&gt;# Cada uno de los nombres de estos drivers sospechosos junto con su MD5 están en&lt;br /&gt;# una línea de drivers-sospechosos.txt, y éste archivo está en la carpeta de trabajo.&lt;br /&gt;&lt;br /&gt;# Este script busca los MD5 de los archivos de drivers-sospechosos.txt&lt;br /&gt;# en c:\windows\system32 y c:\windows\system32\drivers&lt;br /&gt;# para comprobar si existe alguna coincidencia.&lt;br /&gt;&lt;br /&gt;# Este script asume que la carpeta de trabajo es &lt;br /&gt;# C:\WORKSPACE\drivers-sospechosos &lt;br /&gt;# y que dentro está el archivo drivers-sospechosos.txt con los nombres y MD5 &lt;br /&gt;# de los archivos sospechosos, uno por línea y este mismo script, claro.&lt;br /&gt;&lt;br /&gt;# Este script también asume que por cada línea de drivers-sospechosos.txt hay&lt;br /&gt;# un nombre de driver sospechoso, una separación "::" y su MD5.&lt;br /&gt;&lt;br /&gt;# ramiro.encinas@gmail.com - 2009&lt;br /&gt;# Tuya es la responsabilidad del buen o mal uso de este script&lt;br /&gt;&lt;br /&gt;use Digest::MD5::File qw(file_md5_hex);&lt;br /&gt;&lt;br /&gt;# Ubicación del archivo con los archivos sospechosos&lt;br /&gt;&lt;br /&gt;$path_filein = "C:\\WORKSPACE\\drivers-sospechosos\\drivers-sospechosos.txt";&lt;br /&gt;&lt;br /&gt;# Función principal&lt;br /&gt;&lt;br /&gt;sub todo &lt;br /&gt;{&lt;br /&gt;    # Apertura drivers-sospechosos.txt&lt;br /&gt;    open f_drivers, $path_filein or die "No puedo abrir $path_filein";&lt;br /&gt;    $c = 0; #Número de coincidencias&lt;br /&gt; &lt;br /&gt;    while( &lt;f_drivers&gt; ) # Abro drivers-sospechosos.txt y lee línea a línea&lt;br /&gt;    {&lt;br /&gt;        chomp $_; # Quita el fin de línea, que si se queda esto no funciona&lt;br /&gt;  &lt;br /&gt;        $_ =~ /(.*)::/; # Extrae el nombre del archivo &lt;br /&gt;        $filein = $1; # y lo pone en $filein&lt;br /&gt;  &lt;br /&gt;        $_ =~ /::(.*)/; # Extrae el MD5 del archivo &lt;br /&gt;        $fileinmd5 = $1; # y lo pone en $md5&lt;br /&gt;  &lt;br /&gt;        $path = "C:\\WINDOWS\\system32\\"; &lt;br /&gt;        proceso($path,$filein,$fileinmd5); # Búsqueda en system32&lt;br /&gt;  &lt;br /&gt;        $path = "C:\\WINDOWS\\system32\\drivers\\";  &lt;br /&gt;        proceso($path,$filein,$fileinmd5); &lt;span style="font-family:courier new;"&gt;&lt;f_drivers&gt;# Búsqueda en drivers&lt;span style="font-family:courier new;"&gt;&lt;f_drivers&gt;&lt;br /&gt;    }&lt;br /&gt;    close f_drivers; # Cierra drivers-sospechosos.txt&lt;br /&gt;    print "\n";&lt;br /&gt;    print "Coincidencias: $c\n"; # Muestra número de coincidencias&lt;br /&gt;}&lt;br /&gt; &lt;br /&gt;# Función de búsqueda por cada $path&lt;br /&gt;&lt;br /&gt;sub proceso($path,$filein,$fileinmd5) &lt;br /&gt;{&lt;br /&gt;    opendir DIRECTORY, $path or die; # Abre la carpeta $path&lt;br /&gt; &lt;br /&gt;    # Recorre $path y deja en $file cada nombre de archivo&lt;br /&gt; &lt;br /&gt;    while ($file = readdir(DIRECTORY)) &lt;br /&gt;    {  &lt;br /&gt;        if ( -d $path.$file ){# $file es un directorio}&lt;br /&gt;        else # $file es un archivo&lt;br /&gt;        {   &lt;br /&gt;             $filemd5 = file_md5_hex($path.$file); # Calcula el MD5 de $file&lt;br /&gt;   &lt;br /&gt;             if ($filemd5 eq $fileinmd5) # Si los MD5 coinciden, premio&lt;br /&gt;             {&lt;br /&gt;                  print "\n";&lt;br /&gt;                  print "Cuidadito, $path$file tiene el mismo MD5 que $filein.\n";&lt;br /&gt;                  $c++;&lt;br /&gt;             }&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;todo();&lt;br /&gt;&lt;/f_drivers&gt;&lt;/span&gt;&lt;/f_drivers&gt;&lt;/span&gt;&lt;/f_drivers&gt;&lt;/span&gt;&lt;p&gt;&lt;span style="font-family:courier new;"&gt;&lt;f_drivers&gt;&lt;span style="font-family:courier new;"&gt;&lt;f_drivers&gt;&lt;span style="font-family:courier new;"&gt;&lt;f_drivers&gt;------- fin drivers-sospechosos.pl ---------------------------------------------&lt;/f_drivers&gt;&lt;/span&gt;&lt;/f_drivers&gt;&lt;/span&gt;&lt;/f_drivers&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-family:courier new;"&gt;Este proceso normalmente tarda un buen rato, así que podeis ir a preparar un café y esperar a que a la vuelta no haya premio.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-1234778949549514948?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/1234778949549514948/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=1234778949549514948' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/1234778949549514948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/1234778949549514948'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/01/perl-md5-y-los-drivers-sospechosos-de.html' title='Perl, MD5 y los drivers sospechosos de Windows'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-6221711665531524300</id><published>2009-01-16T22:52:00.008+01:00</published><updated>2009-01-24T15:01:08.500+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SSL'/><category scheme='http://www.blogger.com/atom/ns#' term='PAM'/><category scheme='http://www.blogger.com/atom/ns#' term='apache2'/><title type='text'>Asegurando a Apache2</title><content type='html'>&lt;p&gt;Llevo poco tiempo con Apache2 en Debian etch (la versión estable actual) y lo que me interesa es realizar un sitio web con comunicación cifrada (OpenSSL) y que tenga algún directorio privado protegido con nombre de usuario y contraseña.&lt;br /&gt;&lt;br /&gt;La instalación y configuración de Apache2 con soporte de OpenSSL no da problemas en Debian etch, pero el tema de la autenticación del directorio privado me hizo dar más vueltas.&lt;br /&gt;&lt;br /&gt;La documentación de Apache2 ofrece un &lt;a href="http://httpd.apache.org/docs/2.2/howto/auth.html"&gt;sistema de autenticación simple&lt;/a&gt; que requiere un archivo con los nombres de los usuarios para autenticarlos, pero, ¿quien quiere crear un archivo con usuarios cuando ya tenemos usuarios locales? De la misma forma, utilizar el soporte de autenticación con MySQL (auth_MySQL) &lt;a href="http://www.debuntu.org/how-to-apache2-authentication-using-mysql-backend"&gt;supone trabajo extra&lt;/a&gt;, aunque es más eficiente si tenemos que autenticar a una montaña de usuarios.&lt;br /&gt;&lt;br /&gt;Al final llegué al sistema de autenticación PAM. PAM tiene bastantes implementaciones para autenticar incluyendo a Apache2 y permite autenticar a los usuarios locales que queramos, utilizando un grupo para ello. No obstante, una vez instalado el módulo de PAM para Apache2, hay que realizar una serie de ajustes en el sistema para que funcione.&lt;br /&gt;&lt;br /&gt;He documentado todo el proceso &lt;a href="http://docs.google.com/Doc?id=dcnj5zwh_91cgp55mft"&gt;aquí&lt;/a&gt;, para tenerlo como referencia.&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-6221711665531524300?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/6221711665531524300/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=6221711665531524300' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6221711665531524300'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6221711665531524300'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/01/securizando-apache2.html' title='Asegurando a Apache2'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-9146777918231296014</id><published>2009-01-16T13:28:00.002+01:00</published><updated>2009-01-16T13:31:14.944+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BHO'/><category scheme='http://www.blogger.com/atom/ns#' term='IE'/><category scheme='http://www.blogger.com/atom/ns#' term='adware'/><title type='text'>La persistencia del adware</title><content type='html'>Fragmento extraido de &lt;a href="http://philosecurity.org/2009/01/12/interview-with-an-adware-author"&gt;http://philosecurity.org/2009/01/12/interview-with-an-adware-author&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;¿Puedes contarnos más sobre como hacer que el adware sea complicado de eliminar en un ordenador?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Si. Primero prefiero contarte como funciona el adware. El objetivo fundamental del adware son los usuarios de Internet Explorer porque obviamente es el más utilizado en el mercado. Además, tienden a ser los más ingenuos. Si utilizas IE quiere decir que, o no pones cuidado, o no sabes nada sobre vulnerabilidades en IE.&lt;br /&gt;&lt;br /&gt;IE tiene un mecanismo llamado Browser Helper Object (BHO), que básicamente es un trozo de código ejecutable que consigue información de las solicitudes web que se están produciendo. Esto corre en el proceso actual del navegador, quiere decir que puede hacer cualquier cosa que pueda hacer el navegador - y esto básicamente quiere decir: cualquier cosa. Nosotros podemos tener un BHO que actualmente es el servidor de ads, y lo hemos realizado de forma que para eliminarlo tengas que eliminar todas las instancias del navegador. Esto es una pequeña parte en cuanto a la persistencia.&lt;br /&gt;&lt;br /&gt;Si además tienes un instalador, un pequeño ejecutable, puedes crear una entrada en el Registro para que en cada reinicio el instalador compruebe que el BHO existe. Si existe, bien. Sino existe lo instala. Esto funciona hasta que alguien elimina el ejecutable.&lt;br /&gt;&lt;br /&gt;Lo siguiente es crear un ejecutable que continuamente compruebe cada 10 segundos que el BHO está activo y en su sitio. Si así es, perfecto. Sino, el ejecutable lo instalará. Para asegurarse de que el ejecutable sea dificilmente detectable, desarrollamos un algoritmo para hacer que los nombres de estos ejecutables sean aleatorios, a la vez que estén relacionados con el ordenador anfitrión y que sea complicado descubrirlos. Creo que utilizabamos los primeros 6 u 8 caracteres de la codificación DES de la dirección MAC del ordenador. Codificas la MAC con DES, tienes en cuenta los primeros 6 u 8 caracteres y ya está. Esto está muy bien. La pega es que el archivo en sí podía ser el mismo binario. Si sumas el MD5 del archivo siempre sería el mismo, y siempre estaría en el mismo ordenador (con esa MAC).&lt;br /&gt;&lt;br /&gt;Lo siguiente que hicimos fue una función para repartir funciones, que podía ir dentro de un ejecutable, tomando funciones y repartiéndolas aleatoriamente, de forma que las firmas de los archivos estén mezcladas. También mezclábamos un montón de punteros con cada función corriendo. Esto cambia completamente la forma del ejecutable.&lt;br /&gt;&lt;br /&gt;Luego creamos un lanzador, que es un minúsculo trozo de código escrito en ensamblador que descifraba el ejecutable en memoria y lo ejecutaba. Al mismo tiempo también creabamos un proceso ejecutable virtual. Nunca he oído que alguien hiciera esto antes. Windows tiene una cosa llamada Create Remote Thread. Semánticamente quiere decir: eres un proceso, yo soy un proceso distinto, puedo llamarte y decirte "¡Oye! tengo este código, y me gustaría que lo ejecutaras". Tu dices "Claro" porque eres un proceso de Windows -tu eres un hippie que crees en el amor libre-. Los procesos de Windows, dicho sea de paso, son peligrosamente promíscuos. Por tanto, podemos pillar unos cuantos procesos de Windows y darles un trozo de código para que lo ejecuten. Cada proceso conoce a los dos anteriores (el anfitrión y el que le hemos dado que es el trozo de código), y de esta forma podemos hacer un anillo para que se ayuden mutuamente, ¿ok?.&lt;br /&gt;&lt;br /&gt;Hasta ahora tenemos una entrada en el registro, un ejecutable, nombres aleatorios para ejecutables, un ejecutable que es repartido en cada ordenador, uno de ellos está cifrado -y para más ofuscación- un ejecutable que ni siquiera se ejecuta como tal. Esto se ejecuta simplemente en forma de hilos. Ahora, esos hilos pueden comunicarse entre sí, pueden comprobar que el BHO está activo, y que cualquier otro software que queramos también esté bajo control.&lt;br /&gt;&lt;br /&gt;Hay una cosa más avanzada que empezamos a realizar pero no terminamos de probar, y es prescindir de los hilos y utilizar los manejadores de las interrupciones.Resulta que en Windows puedes acceder facilmente al manejador de interrupciones. De hecho, puedes registrar con el OS un trozo de código para manejar una interrupción dada. Todo lo que tienes que hacer es pillar una interrupción, y cuando ésta se inicie, haces tu trabajo y listo. Nunca hemos hecho esto pero es algo que estamos pensando hacer.&lt;br /&gt;&lt;br /&gt;Creamos claves de registro y nombres de archivos que no se podían modificar, explotando una "desajuste de impedancia" entre la API de Win32 y la API de NT. Windows XP está basado en el kernel de NT. La mayor parte de NT es un sistema Unicode, y debido a ello, los strings internamente son Unicode de 16-bit. La mayor parte de la API Win32 es ASCII. Existen strings que puedes expresar como Unicode 16-bit pero no puedes expresar en ASCII. Sorprendentemente, puedes ver cosas con un Null en medio de ello.&lt;br /&gt;&lt;br /&gt;Esto quiere decir que podemos, por ejemplo, escribir una clave de Registro que contenga un Null. Debido a que la interfaz de usuario está basada en la API Win32, éste podría ver la clave, pero no podría modificarla porque no sabría interpretar el Null. De esta forma podemos hacer que las claves del Registro sean invisibles o inmodificables para cualquiera que utilice la API Win32. Esto es muy interesante, no para la gente común, pero sí para nuestros competidores y para las compañías antivirus.&lt;br /&gt;&lt;br /&gt;También escribí un controlador y luego un controlador de impresora. Cuando escribes un controlador puedes hacer las cosas más locas que puedas imaginar, incluso más locas todavía que pudieras hacer normalmente con Windows. Esto ocurría cuando Eliot Spitzer demandó a la compañía y empezó a decaer. Tomaron una mala decisión justo cuando empezaron a dar más visibilidad a la compañía y entonces todo el mundo al mismo tiempo me quería para deshacerse de nuestros competidores y nosotros mientras tanto trabajando en todo lo anterior.&lt;br /&gt;&lt;br /&gt;Por supuesto que se trataba de un plan. No nos gustaba escribir un nuevo programa en C cada vez que queríamos echar a alguien fuera de una máquina. Todo el mundo decía, "Lo que necesitamos es algo configurable". Yo decía, "Instalemos un lenguaje basado totalmente en Turing", y para eso utilicé tinyScheme, que es un intérprete muy pequeño y rápido con licencia BSD que puede compilarse en un ejecutable de 20kb, si sabes lo que estas haciendo.&lt;br /&gt;&lt;br /&gt;A veces, en vez de escribir ejecutables independientes, utilizamos un gusano, así podemos escribir código, lo ponemos en el servidor, e inmediatamente las cosas deberían oscurecerse, llegando a repartirse el código en una guerra de entre 4 y 10 millones de nodos en red.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-9146777918231296014?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/9146777918231296014/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=9146777918231296014' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/9146777918231296014'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/9146777918231296014'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2009/01/la-persistencia-del-adware.html' title='La persistencia del adware'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-3264194984863887029</id><published>2008-11-22T13:07:00.041+01:00</published><updated>2009-12-10T15:51:52.565+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='defrag.exe'/><category scheme='http://www.blogger.com/atom/ns#' term='vbscript'/><category scheme='http://www.blogger.com/atom/ns#' term='cleanmgr.exe'/><title type='text'>Windows XP más rápido, rapidamente</title><content type='html'>El factor crítico de la seguridad TI en un entorno de muchos usuarios radica en éstos.&lt;br /&gt;&lt;br /&gt;Los usuarios actuales son seres humanos, y si su ordenador no va rápido, se fustran, se despistan y empiezan a ser peligrosos. Esto también se produce en el ordenador de casa, pero no es lo mismo que tu ordenador vaya lento a que te llamen todos los días 3 o 4 usuarios diciendo que su ordenador va lento.&lt;br /&gt;&lt;br /&gt;Las causas principales de la lentitud de un ordenador con Windows XP son:&lt;div&gt;&lt;ol&gt;&lt;li&gt;Consumo contínuo de de CPU por encima del 50%.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Consumo contínuo de RAM por encima del 75%.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Excesivo trabajo del disco duro debido a la paginación (consecuencia del punto anterior).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Excesivo trabajo del disco duro debido al poco espacio libre y la fragmentación de archivos.&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div&gt;Los dos primeros puntos se resuelven cambiando la CPU por otra más rápida y ampliando RAM, pero antes de eso hay una alternativa más asequible: eliminar procesos de memoria que no se utilizan. Para identificar qué procesos podemos quitar del medio y así bajar estos consumos, mirar &lt;a href="http://www.echogod.com/tmp/MalwareWindowsXP.pdf"&gt;este artículo&lt;/a&gt; (está enfocado al malware, y explica muy bien como identificar a los procesos para saber si los necesitamos o no).&lt;br /&gt;&lt;br /&gt;El punto 3 se resuelve al resolver el punto 2, y el punto 4 se resuelve centrándonos en los archivos de los discos duros, principalmente donde se aloja el sistema operativo (normalmente en la unidad C:).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Archivos temporales&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Windows XP tiende a guardar casi todo lo que hacemos (archivos temporales, descargas de Internet, cachés de todo tipo, etc). En un principio es una buena idea para recuperar de forma rápida un archivo que ya hemos utilizado, pero con el tiempo tiene dos inconvenientes: (1) si hay versiones nuevas del archivo, la versión guardada no sirve y (2) la acumulación de archivos temporales a largo plazo consume disco duro de forma innecesaria provocando lentitud (a la par que nos invita a comprar un disco duro más grande).&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic; font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Fragmentación de archivos&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;En el tiempo y con el espacio limitado del disco duro, escribimos muchos archivos y eliminamos pocos (tendencia humana con el agravante de los archivos temporales), lo que provoca huecos libres cada vez más pequeños.&lt;br /&gt;&lt;br /&gt;A medida que nos vamos quedando sin espacio, llega un punto donde se reutiliza el espacio libre de los huecos para escribir nuevos archivos. Si éstos archivos son más largos que los huecos (cosa normal), la escritura de un archivo continua en otros huecos que pueden estar en cualquier parte del disco, por tanto el archivo se fragmenta, y lo peor: se tarda más en escribirlo. La consecuencia colateral es que también se tarda más en leer un archivo muy fragmentado.&lt;br /&gt;&lt;br /&gt;El objetivo de la desfragmentación es: localizar los fragmentos dispersos de archivos grandes, reagruparlos y escribirlos de forma contigua. Ahora, para esto se necesita el espacio libre adecuado, y es conveniente no llenar el disco duro por encima del 75% de su total.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Herramientas&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Hay dos incluidas en Windows XP muy útiles para resolver el punto 4:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;cleanmgr.exe&lt;/span&gt;, más conocido por &lt;span class="Apple-style-span" style="font-style: italic;"&gt;Liberador de espacio en disco&lt;/span&gt;.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;defrag.exe&lt;/span&gt;, más conocido como &lt;span class="Apple-style-span" style="font-style: italic;"&gt;Desfragmentador de disco&lt;/span&gt;.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Al automatizar por primera vez &lt;span class="Apple-style-span" style="font-style: italic;"&gt;cleanmgr.exe&lt;/span&gt; &lt;a href="http://support.microsoft.com/kb/315246"&gt;mediante sus argumentos (sageset y sagerun)&lt;/a&gt;, requiere seleccionar en una ventana los grupos de archivos que queremos que sean eliminados. Estos grupos son:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Archivos de programa descargados.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Archivos temporales de Internet.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Archivos temporales de informe de errores.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Papelera de reciclaje (los archivos que contiene).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Archivos temporales.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;WebClient/Archivos temporales de Publisher.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Comprimir archivos antiguos (elimina versiones comprimidas de los archivos).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Catalogar archivos para el Indizador de contenidos.&lt;/li&gt;&lt;/ol&gt;Y obviamente, para hacerlo de forma desatendida en muchos ordenadores no sirve.&lt;br /&gt;&lt;br /&gt;Si sabemos lo que queremos eliminar y queremos evitar la ventana preguntándolo, debemos saber cómo funcionan los argumentos &lt;span class="Apple-style-span" style="font-style: italic;"&gt;sageset&lt;/span&gt; y &lt;span class="Apple-style-span" style="font-style: italic;"&gt;sagerun&lt;/span&gt; de &lt;span class="Apple-style-span" style="font-style: italic;"&gt;cleanmgr.exe,&lt;/span&gt; y también debemos saber qué ocurre cuando aceptamos dicha ventana con los grupos que marcamos para eliminar.&lt;br /&gt;&lt;br /&gt;Cada uno de estos grupos se corresponde con una carpeta de configuración en el registro de Windows, exactamente dentro de: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;img style="float:center; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 283px; height: 401px;" src="http://farm4.static.flickr.com/3124/3223014948_16df0a31ea.jpg?v=0" border="0" alt="" /&gt;&lt;div&gt;Cuando se marca un grupo en la ventana mencionada antes y aceptamos, en el registro de Windows se crea la clave &lt;span class="Apple-style-span" style="font-style: italic; "&gt;StateFlagsxxxxx&lt;/span&gt; con el valor 2 de tipo DWORD dentro de la carpeta que se refiere al grupo (las xxxxx las explicaremos después).&lt;br /&gt;&lt;br /&gt;Por ejemplo, si escribimos la clave &lt;span class="Apple-style-span" style="font-style: italic;"&gt;StateFlags0200&lt;/span&gt; con valor 2 de tipo DWORD dentro de la carpeta &lt;span class="Apple-style-span" style="font-style: italic;"&gt;Internet Cache Files&lt;/span&gt; del registro que hemos visto en el gráfico, se marcará el grupo de los Archivos Temporales de Internet para eliminación. Y para eliminar los Archivos Temporales de Internet que hemos marcado utilizamos el comando: &lt;span class="Apple-style-span" style="font-style: italic;"&gt;cleanmgr.exe /sagerun:200&lt;/span&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Las xxxxx en el ejemplo es el valor 200 (puede ser cualquier otro número entre 0 y 65535) e indica la identificación de la operación entre la clave &lt;span class="Apple-style-span" style="font-style: italic;"&gt;StateFlags&lt;/span&gt; (con el valor 2 que indica la marca) y el argumento &lt;span class="Apple-style-span" style="font-style: italic;"&gt;sagerun&lt;/span&gt; que invoca la eliminación correspondiente.&lt;br /&gt;&lt;br /&gt;Eliminados los archivos innecesarios, se producen numerosos huecos en el disco duro y seguramente se requiera una desfragmentación con el comando &lt;span class="Apple-style-span" style="font-style: italic;"&gt;defrag.exe c:&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic; font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;Juntándolo todo&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Todo esto puede ir en un script. Yo he realizado uno para eliminar lo siguiente:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Las carpetas temporales de instalaciones.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Los índices de contenidos del buscador de Windows.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Los archivos de programa descargados.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Los archivos temporales de Internet.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Los archivos de volcado de memoria.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Los archivos temporales de Microsoft_Event_Reporting.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Los archivos de páginas sin conexión.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Los archivos antiguos de las recuperaciones de ChkDsk.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Los archivos de la caché del Escritorio Remoto.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Los archivos logs de instalaciones.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Los archivos temporales.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Los archivos de caché WebClient y WebPublisher.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Como vemos, existen más grupos que los que indica &lt;span class="Apple-style-span" style="font-style: italic;"&gt;cleanmgr.exe&lt;/span&gt; para marcar, lo cual hace más interesante y amplio este método.&lt;br /&gt;&lt;br /&gt;La versión 1.0 del script está disponible &lt;a href="http://sites.google.com/site/ramiroencinas/soft/cleanc.vbs.txt"&gt;aquí&lt;/a&gt;, y como último paso realiza una desfragmentación si es necesaria.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-3264194984863887029?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/3264194984863887029/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=3264194984863887029' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3264194984863887029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3264194984863887029'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2008/11/windows-xp-ms-rpido-rapidamente.html' title='Windows XP más rápido, rapidamente'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-2864795035785083780</id><published>2008-08-28T11:38:00.010+02:00</published><updated>2009-01-24T17:35:46.672+01:00</updated><title type='text'>El caso L-A-C (3/3)</title><content type='html'>&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c.html"&gt;El caso L-A-C (1/3)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-23.html"&gt;El caso L-A-C (2/3)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-33.html"&gt;El caso L-A-C (3/3)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;El dominio principal en cuestión "http://l-a-c.cn" tiene &lt;a href="http://www.echogod.com/pics/lac/image_01.GIF"&gt;la sorpresa&lt;/a&gt; que vimos en &lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c.html"&gt;el primer post del caso L-A-C&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Ese pedazo de código en javascript es otro sistema de ofuscación  parecido al que hemos visto en el post anterior pero más complejo y extenso. No lo voy a explicar en profundidad pero, una vez interpretado vamos a ver directamente la sorpresa que lleva dentro:&lt;br /&gt;&lt;br /&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px;" src="http://farm4.static.flickr.com/3395/3222088915_ea596e937e.jpg?v=0" alt="" border="0" /&gt;Como vemos, define la variable url con el contenido que vemos que es una URL muy peculiar. Si ponemos esa URL en el navegador, éste descarga la sorpresa final: un fichero llamado "file.exe" de 20.480 bytes.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-style: italic;"&gt;Conclusión:&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;El peligro de este tipo de ataques es bastante eficiente y silencioso, debido a que si navegamos a cualquier URL que consideramos de confianza y ésta tiene agregado el código de javascript que vimos en el primer post de esta serie, automáticamente IFRAME hace el resto de forma oculta: descargar de la web maliciosa y ejecutar un fichero ejecutable con el premio.&lt;br /&gt;&lt;br /&gt;Aunque estas webs sospechosas utilicen ofuscación en javascript, es sencillo comprobar los resultados monitorizando el tráfico entre la web y el host que realiza la monitorización.&lt;br /&gt;&lt;br /&gt;La web en concreto todavía sigue activa, y eso quiere decir que la legislación del país donde reside el webserver (Tailandia) todavía no tiene una política madura en cuanto a perseguir el alojamiento de malware.&lt;br /&gt;&lt;br /&gt;rAmIx&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c.html"&gt;El caso L-A-C (1/3)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-23.html"&gt;El caso L-A-C (2/3)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-33.html"&gt;El caso L-A-C (3/3)&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-2864795035785083780?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/2864795035785083780/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=2864795035785083780' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/2864795035785083780'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/2864795035785083780'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-33.html' title='El caso L-A-C (3/3)'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-3269729002538223845</id><published>2008-08-24T22:12:00.014+02:00</published><updated>2009-01-24T17:33:53.426+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='iframe'/><title type='text'>El caso L-A-C (2/3)</title><content type='html'>&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c.html"&gt;El caso L-A-C (1/3)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-23.html"&gt;El caso L-A-C (2/3)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-33.html"&gt;El caso L-A-C (3/3)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Vamos a analizar el código javascript que genera el iframe malicioso en la web víctima y que lleva al navegador del usuario hacia la web maliciosa.&lt;br /&gt;&lt;br /&gt;Este código primero define la función Decode() y después la invoca al final del script para decodificar la secuencia de valores decimales que contiene la variable str y construir la sentencia completa del iframe. Para seguirlo con más claridad lo he formateado de una forma más estructurada:&lt;br /&gt;&lt;br /&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 500px; height: 311px;" src="http://farm4.static.flickr.com/3077/3222088903_9152cf52a3.jpg?v=0" alt="" border="0" /&gt;&lt;br /&gt;La función Decode comienza con la definición de las variables:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;temp: para transportar valores, iniciado con un blanco&lt;/li&gt;&lt;li&gt;i: que no se utiliza&lt;/li&gt;&lt;li&gt;c: es un contador iniciado a 0&lt;/li&gt;&lt;li&gt;out: contendrá la cadena resultante con la sentencia del iframe completo. Esta variable se inicia con un blanco&lt;/li&gt;&lt;li&gt;str: contiene los valores codificados&lt;/li&gt;&lt;li&gt;l: contiene la longitud en bytes de str, y tampoco se utiliza&lt;/li&gt;&lt;/ul&gt;Comienza la decodificación en la línea 7 con un while que dice que mientras c sea menor o igual a la longitud total de str menos 1 (esto es 221 porque la longitud total de str son 222), iremos dando vueltas a lo siguiente.&lt;br /&gt;&lt;br /&gt;Lo siguiente es el while de la línea 9 que aisla los números decimales de los símbolos de admiración, los deja en la variable temp, incrementa c en uno por cada posición de str y saldrá del while cuando llegue a la posición del siguiente símbolo de admiración.&lt;br /&gt;&lt;br /&gt;La línea 10 incrementa c en uno que es la posición que tiene el símbolo de admiración.&lt;br /&gt;&lt;br /&gt;En la línea 11 es donde realmente se produce la decodificación. Actualiza la variable out con su valor existente más el valor ASCII de temp.&lt;br /&gt;&lt;br /&gt;Por último, cuando c se incremente hasta 222, saltará del while de la línea 7 y sacará con document.write el resultado decodificado.&lt;br /&gt;&lt;br /&gt;En la primera vuelta, la variable str comienza con el decimal 60. El 6 del 60 es c=0 (primera posición) y el 0 del 60 es c=1 (segunda posición). Como c en la primera vuelta es 0 entra en la primera vuelta porque es menor a 221. Después entra en el while de la línea 9, y como 6 es distinto del símbolo de admiración, temp se actualiza con el valor 6 porque el valor original de temp es un blanco (blanco más 6 igual a 6), se incrementa c en uno y pasa a ser c=1. Seguimos en la línea 9 en la segunda vuelta y nos encontramos con el 0 del 60 (segunda posición de la variable str), y como no es un símbolo de admiración volvemos a meter en temp lo que tenia (6) más lo de ahora (0): se agrega el 0 al 6 y tenemos 60 en temp. Se incrementa c en uno (c=2) y nos encontramos con que en esta posición que es la tercera de str (c=2) tenemos una admiración, por tanto sale del while de la línea 9, se incrementa c en uno y mete en out el valor ASCII de 60 que es el símbolo menor que.&lt;br /&gt;&lt;br /&gt;Así, sucesivamente, el siguiente valor decimal (105) es i, el 102 es f... hasta llegar al 62 que es un mayor que, que cierra la sentencia siguiente y que ya vimos en el post anterior:&lt;br /&gt;&lt;br /&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 509px;" src="http://farm4.static.flickr.com/3369/3222088911_3c4e474771.jpg?v=0" alt="" border="0" /&gt;Esta sentencia sencillamente abre la URL indicada en src en el HTML que contiene el código javascript analizado.&lt;br /&gt;&lt;br /&gt;En el siguiente post intentaremos analizar el código javascript encontrado en el dominio principal de la URL indicada, que, como adelanté en el post anterior, provocaba un desbordamiento de buffer en el navegador con toda la pinta de un rootkit.&lt;br /&gt;&lt;br /&gt;rAmIx&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c.html"&gt;El caso L-A-C (1/3)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-23.html"&gt;El caso L-A-C (2/3)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-33.html"&gt;El caso L-A-C (3/3)&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-3269729002538223845?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/3269729002538223845/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=3269729002538223845' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3269729002538223845'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/3269729002538223845'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-23.html' title='El caso L-A-C (2/3)'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-6409511193771896455</id><published>2008-08-20T14:15:00.028+02:00</published><updated>2009-01-24T17:28:42.796+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='nmap'/><category scheme='http://www.blogger.com/atom/ns#' term='iframe'/><category scheme='http://www.blogger.com/atom/ns#' term='html'/><title type='text'>El caso L-A-C (1/3)</title><content type='html'>&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c.html"&gt;El caso L-A-C (1/3)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-23.html"&gt;El caso L-A-C (2/3)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-33.html"&gt;El caso L-A-C (3/3)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Analizando el origen del código de un website, al final y después de la etiqueta del fin del código &lt;a href="http://es.wikipedia.org/wiki/HTML"&gt;HTML&lt;/a&gt;, aparecía un trozo de &lt;a href="http://es.wikipedia.org/wiki/Javascript"&gt;javascript&lt;/a&gt; bastante sospechoso:&lt;br /&gt;&lt;br /&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 500px; height: 129px;" src="http://farm4.static.flickr.com/3486/3222088899_e25d643636.jpg?v=0" border="0" alt="" /&gt;&lt;br /&gt;Lo que más llama la atención aquí es el contenido de la cadena str, que es una serie de números decimales separados por el símbolo de admiración. Estos números decimales deben tener una correspondencia, y lo más seguro es que sea en ASCII.&lt;br /&gt;&lt;br /&gt;Para comprobar rápidamente esta correspondencia, utilicé la utilidad on-line &lt;a href="http://www.vortex.prodigynet.co.uk/misc/ascii_conv.html"&gt;JavaScript ASCII Converter&lt;/a&gt; de los chicos de HolyCarrot. Introduje la cadena en el campo "Enter decimal ASCII here.", le dí a "Calculate" y en el campo de arriba apareció la equivalencia en ASCII...&lt;br /&gt;&lt;br /&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 500px; height: 26px;" src="http://farm4.static.flickr.com/3369/3222088911_3c4e474771.jpg?v=0" border="0" alt="" /&gt;&lt;br /&gt;toda una revelación.&lt;br /&gt;&lt;br /&gt;Como sabemos, &lt;a href="http://es.wikipedia.org/wiki/Iframe"&gt;iframe&lt;/a&gt; incrusta un HTML en el HTML actual.&lt;br /&gt;&lt;br /&gt;Con la herramienta &lt;a href="http://www.parosproxy.org/"&gt;Paros Proxy&lt;/a&gt; intenté analizar la respuesta de "http://b.l-a-c.cn/" pero no hubo respuesta. Entonces intenté analizar la respuesta del dominio principal "http://l-a-c.cn/" y el resultado fué escalofriante:&lt;br /&gt;&lt;br /&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 450px; height: 500px;" src="http://farm4.static.flickr.com/3304/3222088901_d1925711e1.jpg?v=0" border="0" alt="" /&gt;&lt;br /&gt;Una obra de arte en javascript que, cargada en Internet Explorer provoca un desbordamiento de memoria: KERNEL32.LoadLibraryA. Tiene toda la pinta de un rootkit.&lt;br /&gt;&lt;br /&gt;Veamos más información acerca de "http://l-a-c.cn/":&lt;br /&gt;&lt;br /&gt;Domain Name: l-a-c.cn&lt;br /&gt;ROID: 20080726s10001s95148405-cn&lt;br /&gt;Domain Status: clientTransferProhibited&lt;br /&gt;Registrant Organization: l-a-c.cn&lt;br /&gt;Registrant Name: Alison Fineman&lt;br /&gt;Administrative Email: ****@CHINOPOSTALPLACE.COM&lt;br /&gt;Sponsoring Registrar: 厦门三五互联科技股份有限公司&lt;br /&gt;Name Server:ns1.mynsnet.biz&lt;br /&gt;Name Server:ns2.mynsnet.biz&lt;br /&gt;Registration Date: 2008-07-26 21:50&lt;br /&gt;Expiration Date: 2009-07-26 21:50&lt;br /&gt;&lt;br /&gt;IP Address: 202.151.177.35&lt;br /&gt;IP Location: Thailand&lt;br /&gt;Website Status: active&lt;br /&gt;Server Type: Apache/2&lt;br /&gt;Cache Date: 2008-08-19 12:36:49 MST&lt;br /&gt;&lt;br /&gt;Estos datos dicen que el host tiene la versión 2 de Apache, está en Thailandia a nombre de Alison Fineman (a saber de donde han sacado ese nombre) y lo de ****@CHINOPOSTALPLACE.COM es muy gracioso.&lt;br /&gt;&lt;br /&gt;El registro del nombre de dominio es bastante reciente: el 26 de julio de este año.&lt;br /&gt;&lt;br /&gt;Veamos los puertos abiertos de nuestro amigo el chino:&lt;br /&gt;&lt;br /&gt;C:\nmap&gt;nmap -sS 202.151.177.35&lt;br /&gt;&lt;br /&gt;Starting Nmap 4.60 ( http://insecure.org ) at 2008-08-20 16:00 Hora estandar romance&lt;br /&gt;Interesting ports on ppp-202.151.177.35.revip.proen.co.th (202.151.177.35):&lt;br /&gt;Not shown: 1703 closed ports&lt;br /&gt;PORT     STATE SERVICE&lt;br /&gt;21/tcp   open  ftp&lt;br /&gt;22/tcp   open  ssh&lt;br /&gt;25/tcp   open  smtp&lt;br /&gt;53/tcp   open  domain&lt;br /&gt;80/tcp   open  http&lt;br /&gt;110/tcp  open  pop3&lt;br /&gt;143/tcp  open  imap&lt;br /&gt;443/tcp  open  https&lt;br /&gt;587/tcp  open  submission&lt;br /&gt;993/tcp  open  imaps&lt;br /&gt;995/tcp  open  pop3s&lt;br /&gt;3306/tcp open  mysql&lt;br /&gt;&lt;br /&gt;Nmap done: 1 IP address (1 host up) scanned in 65.218 seconds&lt;br /&gt;&lt;br /&gt;C:\nmap&gt;&lt;br /&gt;&lt;br /&gt;Vamos, que tiene casi todas las ventanas bien abiertas, para dar servicio.&lt;br /&gt;&lt;br /&gt;Viendo todo esto, sólo queda la moraleja:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.mozilla-europe.org/es/firefox/"&gt;Firefox&lt;/a&gt; y &lt;a href="http://noscript.net/"&gt;Noscript&lt;/a&gt;&lt;br /&gt;siempre antes de salir.&lt;br /&gt;&lt;br /&gt;Que la calle está más mala que en los 80's&lt;br /&gt;&lt;br /&gt;Salu2.&lt;br /&gt;&lt;br /&gt;rAmIx&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c.html"&gt;El caso L-A-C (1/3)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-23.html"&gt;El caso L-A-C (2/3)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c-33.html"&gt;El caso L-A-C (3/3)&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-6409511193771896455?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/6409511193771896455/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=6409511193771896455' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6409511193771896455'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/6409511193771896455'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2008/08/el-caso-l-c.html' title='El caso L-A-C (1/3)'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5244980084824653865.post-5446891895748074901</id><published>2008-08-20T12:10:00.000+02:00</published><updated>2008-08-20T12:26:49.174+02:00</updated><title type='text'>La Cápsula Verde aterriza</title><content type='html'>&lt;span style="font-family:trebuchet;"&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet;"&gt;&lt;span style="font-family: trebuchet ms;"&gt;Estimados navegantes.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: trebuchet ms;"&gt;Este será un blog donde verteré información relacionada con la seguridad en las TI.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: trebuchet ms;"&gt;Espero resulte de vuestro agrado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: trebuchet ms;"&gt;Ramiro Encinas (rAmIx).&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5244980084824653865-5446891895748074901?l=lacapsulaverde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://lacapsulaverde.blogspot.com/feeds/5446891895748074901/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5244980084824653865&amp;postID=5446891895748074901' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/5446891895748074901'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5244980084824653865/posts/default/5446891895748074901'/><link rel='alternate' type='text/html' href='http://lacapsulaverde.blogspot.com/2008/08/la-cpsula-verde-aterriza.html' title='La Cápsula Verde aterriza'/><author><name>rAmIx</name><uri>http://www.blogger.com/profile/17790687039807753884</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
