Mostrando entradas con la etiqueta Windows. Mostrar todas las entradas
Mostrando entradas con la etiqueta Windows. Mostrar todas las entradas

14 de octubre de 2010

Warcraft DiscHack (y el Falso Positivo) I/II

El por qué de la idea

Todo comenzó a finales de Agosto, un poco cansado de que mi viejo K8 3000+ no diera mucho rendimiento con juegos relativamente viejos (Bioshock, Alone In the Dark 4, etc.) volví a instalarme el Warcraft III: The Frozen Throne. Hacía ya bastantes meses que no me ponía a “ownear” así que no sabía como estaba el percal en Battle.net, cual fue mi sorpresa cuando me di cuenta que estas batallas cibernéticas ya no son lo que eran, era muy habitual cruzarse con “hackers” que se valían de cheats como desactivar la niebla de guerra (que te permite ver las unidades enemigas) o simplemente desconectarlo, el llamado disc Hack:

Aunque a mi siempre me gustó más el video del guiry flipao que, tras padecer los sufrimientos de un demon hunter y su “Mana Burn”, lo desconecta:

El caso es que, desanimado como estaba por la ausencia de fair play decidí investigar en que consistía el dischack, que era el que más me preocupaba, por lo que podía ver el proceso del juego “war3.exe” crecía exponencialmente desde que se lanzaba el ataque, la desconexión no era instantanea, más bien el juego se ralentizaba en lo que parecía un envío de paquetes con un TTL incrementando al máximo (o al menos eso es lo 1º que pensé).

Investigación

Ni corto ni perezoso me dispuse a descargar un par de herramientas muy útiles en estos casos, el WinSock y el CheatEngine, esta última está especialmente diseñada para alterar parámetros de las partidas. Winsock es muy útil para analizar la actividad de los procesos y sus flujos de comunicaciones TCP/IP. También permite establecer filtros para parar determinados tipos de paquetes, lo que puede ser útil si queremos detener el dischack ;-)

Entonces ocurrió algo que personalmente odio, ante la descarga de Winsock el Avast saltó como loco y borró el .rar que lo contenía, dando una alerta por troyano, pensando que esto suele ocurrir con las herramientas de hacking lo subí a virustotal para conocer terceras opiniones, con este resultado : 37/43 positivos con muchos Generic.WinTrojan de por medio o W32/Trojan, etc. (deberían hacer un chiste con estas alertas: Tienes menos personalidad que un Generic.WinTrojan), en mi espíritu paranoico cesé mis actividades de investigación en Warcraft y las sustituía por otras, ¿Qué hacíar realmente WinSock?, ¿me podía fiar?

Lo que realmente investigué

Como laboratorio personal tengo una pequeña máquina virtual con Windows XP SP2 , ideal para hacer un destrozo y luego volver a la normalidad como si nada, en estos casos la función de snapshot de VMWare Workstation viene de perlas. Utilizaré solo dos herramientas para averiguar que hace WinSock:

- Regshot

- Process Monitor

Con regshot obtendré rápidamente una instantánea del registro de sistema, después instalaré y ejecutaré WinSock, tomando una nueva instánea. Regshot comparará ambas imágenes y me dirá los cambios. El programa es muy sencillo e intuitivo de utilizar así que no tiene pérdida:

Tras todo ello vemos bastantes cambios en el registro, aunque muchos están relacionados con cosas que no son WinSock, las únicas entradas relevantes son las siguientes:

HKU\S-1-5-21-1935655697-764733703-839522115-1003\Software\Microsoft\Windows\ShellNoRoam\MUICache\C:\Documents and Settings\GigA\Escritorio\WPE PRO.exe: "WPE PRO"

HKU\S-1-5-21-1935655697-764733703-839522115-1003\Software\WinRAR\ArcHistory\0: "C:\Documents and Settings\GigA\Escritorio\wpepro09x.zip"

La primera parece que ha incluido en el listado de software de Windows la aplicación WPE PRO, con la ruta que tiene en el sistema, y la ha cacheado para futuras llamadas. La segunda cambia el histórico de WinRar para que figure el zip de Winsock. Nada extraño por ahora.

Tras esto lanzamos process monitor, esta herramienta de Microsoft combina las bondades de Filemon y Regmon, que formaban parte de SysInternals y han sido combinadas en este nuevo producto. Es perfecto para monitorizar la actividad de un proceso, las librerías de las que depende, las llamadas que realiza, el tráfico de red que genera, los archivos que crea, etc. etc. En este caso vemos que WinSock genera bastante actividad en el sistema, que además mezclada con el resto de procesos puede generar bastante confusión, por suerte con un botón derecho “Hightlight WPE-PRO” nos resaltará en verde lo que nos interesa.


Hay bastantes líneas, muchas de ellas son sencillamente utilización de fuentes de Windows (para lo cual tiene que leer muchos archivos), hay otras en las que llama a la librería que adjunta, WpeSpy.dll.

El programa comienza como es obvio cargándose en memoria, después pasa a añadir a la carpeta prefetch de Windows varios un archivo con la aplicación, en el mismo se han encontrado referencias a entradas de registro del mismo WPE, por lo cual entendemos que quiere que Windows tenga cacheada la aplicación para próximas sesiones. Después realizar varias consultas al sistema, mapeando la unidad raiz “C:\” así como otras de Windows, System32, etc. Después pasa a generar varios archivos en la carpeta fantasma de Windows, la odiada, enigmática y poco comprendida desde el punto de vista de los usuarios WinSxS, así que podemos suponer correctamente que tenemos varios hard-links nuevos para la posteridad.

Tras perdernos durante varios minutos por el registro de actividades de WinSock comenzamos a sospechar que todo es terriblemente normal, no hay conexiones a Internet, no hay creación de ficheros extraños, vemos múltiples llamadas a principalmente dos archivos del core de Windows, kernel32.dll y ntdlm.dll, uno para realizar llamadas al sistema (recordemos que este software sirve para monitorizar procesos) y otro para el gestor de archivos. También hay llamadas a otras librerías y drivers (como wsock32.dll) que entiendo muy necesarios para su ejecución:



Conclusión

Si, ha sido una falsa alarma, lo cual puede dejar a uno más perplejo que anteriormente, ¿37 antivirus dando un falso positivo?, al menos podrían limar un poquito las alertas y que solo fuese un Warning: Hacking Tool, pero no veo el Trojano por ningún lado, e imagino que ellos tampoco. Mi teoría es la que todos estaréis pensado, alguien lo clasifica así una vez por alguna razón y los demás copian la firma. Recuerdo el caso de una casa de antivirus que generó un falso positivo “adrede” solo para comprobar que 24 horas después todas las demás habían hecho lo mismo, sin pararse a investigar claro qué era aquel positivo.

Bueno, y ahora que tenemos una cierta confianza en nuestras herramientas vamos a analizar el famoso, “dischack” de Warcraft, pero será en otra entrada ;-)

1 de diciembre de 2009

Black Screen Of Death

Hay días -muy pocos por suerte- en que es peor el remedio que la enfermedad. Esto también se aplica en el mundo de la Informática y concretamente en el Software no puede ser obviado. Parece ser que el último boletín de parches de Microsoft provoca un Black Screen,,, pero sin death (BlSoD), es decir si el usuario hace Ctrl + Alt + Sup puede acceder al administrador de tareas y ejecutar algunas acciones. Esto obviamente puede ser un dolor de cabeza para los técnicos de microinformática, administradores, etc.

Al parecer en la publicación de parches de seguridad del 10 de Noviembre se modifican reglas ACL de Windows que impiden el acceso al registro e invalidan determinadas entradas del mismo, estos parches tenían como objetivo corregir la vulnerabilidad MS09-065 donde se detectaba un bug en el kernel de Windows (XP, Vista, 7, Server 2003, Server 2008), ahora bien el parche provoca el temido BlSoD en algunos equipor por lo que llega el eterno dilema, ¿actualizar o no actualizar?, ¿tapamos unos agujeros para que nos salga un fuego?

Está claro que la única solución es alcanzar un equilibrio aristotélico, asumimos los riesgos durante un pequeño periodo de tiempo equivalente a probar las actualizaciones en un entorno aislado, comprobar que no existen incompatibilidades con nuestro software, etc. Después parcheamos y carretera.

Si por casualidad habéis tenido este problema la empresa que lo denunció (Prevx) ha publicado un pequeño parche que lo soluciona (¡antes que Microsoft!), yo no lo he probado (quizás no actualizo tan a menudo :-( ) pero si os animáis está aquí.

Adjunto imagen del comentado BISOD, no confundir con las típicas postales de “Cuenca de noche” o “Tenerife de noche” -->

Salu2!

NdA: Como habréis visto a través de meneame parece ser que al final la "culpa" de estos pantallazos no la tenían las actualizaciones, tal y como relata la gente de Prevx tiene que ver con la manera en que Windows almacena los Strings en el registro de Windows, requiriendo un carácter Null para finalizar el string, si ese carácter no aparece pueden surgir errores al leer los datos y no poder determinar cuando finaliza la cadena, de ahí el BlSoD. Las actualizaciones no están directamente relacionadas, lo que no significa que cierto software que acceda de forma incorrecta al registro provoque estos errores, lo que sí se ha demostrado es que el parche de Prevx funciona,,, en SysInternals tenéis un programa-demo de este error.

23 de noviembre de 2009

Sandboxie

Hoy presentamos una sencilla aplicación que hará las delicias de los muchas veces sufridos usuarios de máquinas virtuales. Una de las aplicaciones de estas últimas es disponer de un entorno “basura” en el que realizar nuestros experimentos, bajarnos esos archivos sospechosos o directamente analizar malware. Es probable que os pase como a mí, juntando fácilmente 4 o 5 de estas máquinas nuestro disco duro baja vertiginosamente, además se necesita mucha memoria RAM para que vayan decentemente ligeras.

Con SandBoxie se puede ahorrar bastante tiempo y recursos en maquinas virtuales, esta aplicación genera un entorno de virtual donde todo lo que se ejecute estará aislado del sistema operativo. Se integra en Windows perfectamente como una opción más del “botón derecho – click” y su complejidad es mínima:

Podemos trabajar con ficheros en un entorno virtual, darle los permisos que queramos sobre el entorno real, ubicar un espacio para almacenar aquellos archivos que querramos extraer de la cajita de arena, disponer de más de una sandbox, etc. Y todo esto de forma gratuita :)

Un detalle que me ha gustado es que no es trivial "salirse" de la sandbox, a pesar de que los procesos nuevos te aparezcan si haces un pslist lo que ellos generan está controlado y sus permisos restringidos. Por ejemplo, probad a ejecutar un cmd.exe en la sandbox y desde ahí un notepad, word, etc. No podréis grabarlos en la unidad física, casi casi como un appliance vmware. En la página de los autores hay un buen tutorial que os dejo por aquí , espero que os guste.

Happy Week!

30 de octubre de 2009

Kill a Zombie Day


Cómo ha cambiado la Seguridad Informatica, ¿verdad?, después de ver este vídeo seguro que habéis cancelado vuestros planes para Halloween. Como quiero que os lo paséis muy bien en este terrorífico dia aprovecho para dejaros un arma detecta zombies: OSAM autorun manager, recién salida del horno en su versión 5.0 hace un par de meses.

Por cierto, yo que soy un tipo más tradicional en la materia zombie siempre prefiero algo como esto:


Anyway, good hunting :)

27 de octubre de 2009

Spider Windows


¡Hola!, Hoy os presento una herramienta interesante, todos conocemos spiders web que buscan y rastrean información valiéndose del motor de Google, Yahoo, Bing, etc. La herramienta de hoy hace algo similar pero en la máquina que le digamos, que puede ser local o estar en la misma red. Se llama Spider Windows y es muy sencilla:


Spider Windows buscará números de tarjeta de crédito, de teléfono, DNI, etc. en la partición o unidad que le indiques, esto incluirá por supuesto ficheros ocultos. Esta búsqueda es configurable permitiendo añadir los patrones que queramos:

Con los resultados que encuentre generará un fichero de log con el PATH de los ficheros que contienen información sensible, este será depositado en la ubicación elegida, si es un servidor externo lo enviará valiéndose del protocolo SYSLOG. ¡Es sorprendente las cosas que uno almacena en su equipo!, yo me he encontrado con números de teléfono que ni recordaba andaban por ahí. En un ambiente un poco más profesional esto nos puede valer por ejemplo para saber que información sensible tenemos en una máquina, para ayudarnos en el cumplimiento de PCI-DSS, LOPD, etc. Si hacemos una auditoría con los patrones apropiados encontraremos qué información está expuesta para un usuario no-administrador en un servidor (por ejemplo).

Hay una alternativa Linux que incluye funcionalidades forenses detectando archivos borrados también, está incluida dentro de la distribución de Helix y se llama Spider Linux. Habrá que tenerla en cuenta también en el análisis de incidentes.

Salu2

27 de septiembre de 2009

Adobe getIcon Universal Exploiter

En las visitas habituales a milw0rm hay días aburridos en que apenas surgen exploits nuevos, otros en los que los que aparecen apenas están documentados y no acaban de describir que vulnerabilidad explotan (y como) y finalmente están los días normales es que aparecen programas de uso común para Windows y Linux, que son las plataformas con las que los usuarios trasteamos más. En uno de esos días de este mes de Septiembre surgió el exploit para Adobe 9.0 y 8.1.2 titulado “getIcon Universal Exploiter” el cual tenía una particularidad, estaba perfectamente documentado y era bastante fácil de explotar (así como de encontrar clientes explotables xd).

La vulnerabilidad, conocida por Adobe desde Julio del año pasado aprovecha el típico desbordamiento de buffer en la pila al no controlar los argumentos que se pasan al método “getIcon” (de ahí el original nombre). En los enlaces publicados en milw0rm hay amplia información de la vulnerabilidad, código ensamblador que muestra las llamadas no controladas, etc. Etc. A grandes rasgos el exploit desarrollado en Python aplica la conocida técnica de “Heap Spraying” para inyectar el payload que en este caso será una Shell remota, para ello formaremos un archivo .pdf que incluya una librería desarrollada en C y que luego incluiremos en el pdf mediante el exploit desarrollado en python. Me explico paso a paso:

1) En el archivo evil_payload.c se genera un socket que abrirá la conexión a la IP y puerto que indiquemos (aquí normalmente pondremos nuestra IP publica y un puerto que nos asegure no bloquee el firewall, digamos, el 80), además mostrará un error que mitigue las sospechas al usuario que abre el pdf. A partir de este código en C debemos generar la librería a inyectar en el pdf, si disponéis del Visual C++ 2008 Express Edition (gratuito) se puede compilar en un periquete:


Con la opción /LD especificamos que se genere una librería de enlace dinámico (.DLL, para más info sobre compilaciones acudir aquí:

2) Una vez que tenemos la librería toca darle paso al Script de Python, si le echamos un ojo vemos que lo único que hace es manipular el .pdf que le digamos inyectándole la librería, incluir un payload en javascript que genere la excepción y poco más:


Ejecutamos el script y creamos el .pdf especialmente modificado:

3) Llegado este punto ya tenemos nuestro documento .pdf especialmente manipulado para que las versiones no actualizadas de Adobe hagan “crash”. Probablemente al hacer este último paso os haya saltado el antivirus, y es que ya han pasado 3 semanas desde que se publicó el exploit y son varios los que lo detectan, en concreto 14 según virustotal*:

Pero claro, esto es relativo. Una idea sencilla para utilizarlo es compartir el archivo con el Emule bajo un nombre sugerente (de ahí el que yo he escogido) y esperar que la gente se lo vaya bajando, no es sofisticado pero funciona. De todas formas todavía no tendremos nada, si os fijáis nos falta algo, si queremos que se nos abra una Shell remota (para eso pusimos nuestra IP y puerto), ¿alguien tendrá que estar escuchando, verdad? Por suerte esto es facilísimo con netcat:

Recordar que deberéis tener configurado el NAT en vuestro router para que la conexión pueda abrirse, después solo queda esperar que “piquen” y se nos abrirá una bonita Shell. Fácil a la par que peligroso, ¿verdad?

Espero que os haya gustado, un saludo!

Nota*: He ofuscado el código de la librería, he eliminado los comentarios, renombrado variables, etc. pero solo he conseguido que un par de antivirus más no lo detecten hasta lograra una tasa de 12/41 :-( Se aceptan sugerencias :)

10 de septiembre de 2009

Flash Cookies


Que a todos nos gusta mantener la privacidad no es ninguna novedad, que ignoramos hasta que punto nuestra actividad queda registrada en nuestro sistema operativo muchas veces si. Todos sabemos que una cookie es (literal de Wikipedia) “un fragmento de información que se almacena en el disco duro del visitante de una página web a través de su navegador, a petición del servidor de la página. Esta información puede ser luego recuperada por el servidor en posteriores visitas. En ocasiones tambilén se le llama huella”. Esto está bastante bien ya que ayuda a los servidores a reconocer a los clientes y decir, ¡ey! Tu ya estuviste aquí, y la ultima vez te interesó esto, así que te voy a ofrecer información de eso, y de esto otro que seguro que también te gusta. Y miel sobre hojuelas.

No obstante muchas veces tenemos que compartir nuestro PC con familiares, amigos y quizás no nos gusta que vean “nuestras cosillas”, por ello de forma periódica decimos, ¡limpieza de historial”, ¡limpieza de contraseñas!, ¡limpieza de cookies!, incluso muchas veces miramos con curiosidad que guardan los servidores de nosotros y nos vamos a la carpeta de las cookies a indagar, al fin y al cabo nunca dieron buena espina y son susceptibles de múltiples ataques como robo de cookies, cookie spoofing o cross-site cooking (de los cuales por cierto, tengo que hablar un día).

Una vez realizada la limpieza que todos los navegadores permiten respiramos más tranquilos, ¿verdad?, ¡no, error! Todavía quedan cookies, y son las relativas a las paginas que utilizan objetos flash (léase, más de la mitad de las 100 páginas más visitadas de Internet), también conocidas como “Local Share Object” o Flash Cookies . Podemos buscar archivos .SOL en nuestro equipo que no encontraremos ninguno, sin embargo se encuentran aquí (en XP y Vista):

%APPDATA%\Macromedia\FlashPlayer\#SharedObjects\\\\.sol

Lo más curioso de todo es que la forma que han habilitado en Adobe para que las veamos, configuremos y demos permisos es a través de su página Web, desde donde de forma dinámica serán cargadas. Estas cookies además tienen poderes “especiales “ (recuerdan a las galletas de la tontuna del Facebook (...parecidos razonables)) y pueden “regenerar” cookies http que habíamos eliminado, tienen un tamaño por defecto de 100 KB y encima no tienen por qué expirar, así que si las miráis probablemente encontréis páginas de vuestra adolescencia.

Por suerte existen editores de archivos SOL como “soleditor” que permiten explorarlas todas y ver que guardan de nosotros, en la mayoría de los casos información relativa al volumen y poco más, en otros como esta de Terra Mitica hay objetos más chulos, aunque las posibilidades son muy variadas:

Ya sabéis, cuidado qué desayunáis ;-)

Salu2!

4 de septiembre de 2009

Sys Internals

Hagamos un Kit Kat en esta semana intensa de vuelta a la normalidad para presentaros un pack de herramientas de Windows, si con las Net Tools teníamos casi todo lo que hace falta para trabajar a nivel de red (como vimos aquí ) con Sys Internals tendremos un control mucho mayor sobre lo que pasa en nuestra máquina Windows (preferiblemente XP, algunas de ellas no se llevan bien con WVista y W7, otras sí) a nivel de procesos, registro de Windows, arranque del sistema operativo, conexiones de red e incluso un detector de Rootkits!, Merece la pena:

Process Explorer (): Un básico con unos añitos del que ya se oyó hablar cuando vimos el Svchost Analyzer. Procesos padres, hijos, consumo de CPU, hilos lanzados, consumo de CPU, etc. Una gozada:

PSTools : Pack de herramientas de gestión de procesos, con las que podremos jugar todo lo que queramos en nuestros sistema (o en otros xD) incluye:

- PsExec: Ejecuta procesos de forma remota.

- PsFile: Muestra archivos abiertos de forma remota.

- PsGetSid: Muestra el SID de un equipo o un usuario.

- PsInfo: Muestra información acerca de un sistema.

- PsKill: Elimina los procesos por el nombre o Id. de proceso.

- PsList: Muestra información acerca de procesos.

- PsLoggedOn: Averigua quién ha iniciado sesión de forma local y a través de recursos compartidos (origen completo incluido).

- PsLogList: Vuelca los registros de eventos.

- PsPasswd: Cambia las contraseñas de cuenta.

- PsService: Muestra y controla los servicios.

- PsShutDown: Apaga y reinicia opcionalmente un equipo.

- PsSuspend: Suspende los procesos.

- PsUptime: Muestra el tiempo durante el que se ha ejecutado un sistema desde el último reinicio (la funcionalidad de PsUptime se ha incluido en PsInfo).

AutoRuns: El comando msconfig nos permite editar el boot.ini, ver que servicios se arrancan con nuestro Sistema Operativo y que programas se ejecutarán sin necesidad de que estén en la carpeta de “Inicio”, todo eso está muy bien y es básico, pero con AutoRuns alcanzaremos una granularidad mucho mayor, librerias, drivers, tareas del scheduled, ¡codecs!, de todo lo que os podáis imaginar. Muy útil para entender como funciona nuestro sistema operativo:

RootkitRevealer: ¿Crees que tu antivirus no lo detecta todo? Entonces crees bien, si quieres echar un vistazo rápido a tu registro de Windows y detectar inconsistencias, buscar el gato encerrado que hay en tu sistema operativo y alimentar tu paranoia, esta es tu herramienta:

TCPView: Yo creo que si los millones de Script Kiddies del mundo que buscan en los foros el Puerto del messenger conocieran esta herramienta saldrían hackers como setas. No, en serio, con TCPView tendremos un conocimiento casi total sobre todos los flujos TCP y UDP que llegan y salen de nuestra máquina, su estado, el proceso que los inició (algo parecido al netstat –ban pero más profundo) así como la posibilidad de matar los procesos o cerrar las conexiones que no tengan buena pinta, muy util:

Poco a poco vamos ampliando nuestro kit de herramientas, ¿verdad?

Espero que tengáis una vuelta “amable”, ¡salu2!

11 de agosto de 2009

Visual Basic 2008: Security Features


La vuelta de las vacas este año ha sido un poco más dura de lo habitual, es de esas veces donde desconectas del mundo de la Seguridad al 99% y olvidas casi casi a lo que te dedicas haciendo que el dia de vuelta te apetezca realizar Ctrl + Alt + Sup mental. Mientras que el año pasado aproveché para realizar “experimentos” de diversa índole en esta ocasión he tenido otras tareas. Por razones familiares tuve que crear una pequeña aplicación Cliente – Servidor para una clínica.

Haciendo flash—back recordé la agilidad con la que allá por el 2000 me desenvolvía en Visual Basic 5.0 y me dije, ¿Cuánto habrá podido cambiar? Y me decidí a bajarme el Visual Studio Express Edition, concretamente el Visual Basic (que ya va por la versión 9.0). Lo cierto es que no me llevé muchas sorpresas, en su esencia sigue siendo tremendamente cómodo, intuitivo y ágil. Eso sí, hay muchas novedades y utilidades para aplicar Seguridad desde los albores de un proyecto:

Permisos de aplicación: UAC

Dentro del explorador de soluciones en las propiedades del proyecto podemos cambiar los privilegios que requiera la aplicación así como las posibles llamadas al UAC. Como es obvio debemos tratar de trabajar con los menores de los permisos, así evitaremos por ejemplo que ante un “crash” de nuestra aplicación tiremos el sistema.


Código XML con el que definimos la seguridad UAC de la aplicación

Seguridad ClickONCE

Las aplicaciones que desarrollamos en VB se apoyan en la infraestructura .NET Framework y estarán sujetas a restricciones de código. Dentro de las propiedades del proyecto también podremos habilitar o deshabilitar restricciones según los permisos que requiera nuestro código, esto puede incluir transferencia de ficheros, cuadros de diálogo, permisos de impresión, generación de sockets, etc. etc.

Configurando permisos ClickONCE

Firma de Código: Generación de certificados

Es cierto, podremos garantizar a nuestros clientes que el software distribuido es nuestro a través de la firma digital. Para ello disponemos de una utilidad de generación de certificados que en cierta forma me recuerda al PGP y que a buen seguro aumentará la confianza a nuestros clientes:

Acceso a BBDD

También me ha llamado la atención la gestión de BBDD que hay disponible, si bien a priori podemos tirar “solo” de Microsoft Access y SQL Server (en el Wizard de Agregar Conexión), próximamente disponemos de opciones de autenticación de usuario al realizar las consultas, restringido eso sí a usuarios de SQL Server o de Windows (supongo que se podrán utilizar usuarios de Dominio, pero no lo he probado). También podremos crear y cifrar BBDD basadas en SQL Compact Server así como incluir o no en los argumentos de nuestras cadenas de conexión y consultas SQL el usuario y password con el que nos conectamos (no recomendable ya que viajará en claro).

Agregamos la cadena de conexión a nuestra BBDD

Creamos nuestra BBDD con el cifrado que permita la plataforma host.

Login Form

Todavía recuerdo esos viejos días en que independientemente del texto que introdujeras en el TextBox debías mostrar asteriscos para que ataques por shoulder surfing no fuesen un problema (algo que todavía no está limado del todo en plataformas como el Iphone [^^!]), en la última versión de VB tenemos los formularios predefinidos más comunes disponibles a un par de clicks (Proyecto à Agregar), entre ellos el Login Form, una gozada :D (que por supuesto he usado).

Formulario por defecto para hacer "Login"

Y tras haber trasteado con esta plataforma y tener casi terminada mi aplicación no he utilizado ni visto mucho más, aunque a buen seguro habrá muchas más opciones, solo hace falta explorar un poquito. La esencia de Visual Basic no ha variado un ápice en estos 9 años, sin embargo el abanico de facilidades no ha dejado de crecer (incluso para nosotros).

Salu2 y,,, ¡cuidado con la vuelta!

2 de junio de 2009

Secure Process (Windows)

Red cable give us power, the black one is earth, these two look led’s cables and i don’t know about the yellow one, just remember it from the sham...

Response: Cut up the yellow!

Los procesos, esas extrañas cositas que están siempre corriendo desde el momento que nuestro sistema operativo se carga en memoria. Llenos de instrucciones, en ejecución, en espera, procesos zombie y procesos suspendidos por un examen que nunca hicieron. Ahora en serio, todos recordamos los apuntes de Sistemas Operativos, estamos familiarizados con el Ctrl + Alt + Sup o de algo nos suena el comando “ps” pero, ¿qué narices están haciendo nuestros procesos?, ¿cómo sabemos si están ocultos?, ¿qué librerías están utilizando?, ¿quién los puso ahí?

Probablemente alguna vez os hayais preguntado, ¿por qué la CPU no baja del 80%?, ¿Quién está consumiendo todos los recursos y por qué? Hoy os voy a presentar un par de herramientas que nos sacarán de dudas. La primera es el Security Task Manager que detrás de sus colores fosforito (cuando arranca) te muestra todos los procesos que corren en el sistema, tanto ocultos como visibles, quien es el fabricante, path en el disco duro y un ratio de riesgo que calcula la probabilidad de que sea malware, para mayor seguridad se integra con virustotal y si estamos seguros podemos poner el ratio nosotros mismos (por ejemplo ante herramientas de seguridad que conocemos y hemos instalado):

Una utilidad interesante que incluye es la de poner procesos en cuarentena o directamente desinstalar la aplicación que inició ese proceso:

Pero esto no es todo, todavía existe un proceso misterioso, usa antifaz y se oculta bajo la oscuridad,,, es el,,,, ¡svchost.exe! Todos lo hemos visto pero nadie sabe de donde viene ni a donde va, los virus aprovechan para ocultarse en sus entrañas y algunos incautos deciden cargárselo directamente, normalmente con malas consecuencias. Por suerte disponemos de la utilidad de enrevesado nombre conocida como Svchost Analyzer.

Igual que el Task Manager, nos advertirá sobre lo que considere no debería estar ahí, o al menos es de comportamiento extraño.

Y si con todo esto seguís sin ubicar vuestros procesos, podéis ayudaros con:

http://www.procesoswindows.com/

http://www.what-is-exe.com/

Salu2!

21 de mayo de 2009

Super Tool Box

Pásame la llave allen, la crimpadora y la llave inglesa, que te voy a hacer la 3/14.

Respuesta: ¿Pero tu no eras informático?

Hacía tiempo que no veía un pack de esos “imprescindibles” pero gracias a un compi he podido descubrir las Net Tools , que no son más que un conjunto de herramientas completísimo que funciona bajo plataformas Windows y va como la seda. 175 herramientas en apenas 25 MB que incluyen desde GeoLocator, codificador en base 64, obtención de hash, Nmap, e-mail spoofing, analizador de cookies, programas de esteganografía, etc. etc. Todo de forma gratuita y en entorno “ventanita” para la mayor de las facilidades:

Además incluye dos screensavers bastante graciosos, mejor que los veáis vosotros mismos :-)

Lista completa de herramientas (vereis que chorrazo):

1) IP Address Scanner

2) IP Calculator

3) IP Converter

4) Port Listener

5) Port Scanner

6) Ping

7) NetStat (2 ways)

8) Trace Route (2 ways)

9) TCP/IP Configuration

10) Online - Offline Checker

11) Resolve Host & IP

12) Time Sync

13) Whois & MX Lookup

14) Connect0r

15) Connection Analysator and protector

16) Net Sender

17) E-mail seeker

18) Net Pager

19) Active and Passive port scanner

20) Spoofer

21) Hack Trapper

22) HTTP flooder (DoS)

23) Mass Website Visiter

24) Advanced Port Scanner

25) Trojan Hunter (Multi IP)

26) Port Connecter Tool

27) Advanced Spoofer

28) Advanced Anonymous E-mailer

29) Simple Anonymous E-mailer

30) Anonymous E-mailer with Attachment Support

31) Mass E-mailer

32) E-mail Bomber

33) E-mail Spoofer

34) Simple Port Scanner (fast)

35) Advanced Netstat Monitoring

36) X Pinger

37) Web Page Scanner

38) Fast Port Scanner

39) Deep Port Scanner

40) Fastest Host Scanner (UDP)

41) Get Header

42) Open Port Scanner

43) Multi Port Scanner

44) HTTP scanner (Open port 80 subnet scanner)

45) Multi Ping for Cisco Routers

46) TCP Packet Sniffer

47) UDP flooder

48) Resolve and Ping

49) Multi IP ping

50) File Dependency Sniffer

51) EXE-joiner (bind 2 files)

52) Encrypter

53) Advanced Encryption

54) File Difference Engine

55) File Comparasion

56) Mass File Renamer

57) Add Bytes to EXE

58) Variable Encryption

59) Simple File Encryption

60) ASCII to Binary (and Binary to ASCII)

61) Enigma

62) Password Unmasker

63) Credit Card Number Validate and Generate

64) Create Local HTTP Server

65) eXtreme UDP Flooder

66) Web Server Scanner

67) Force Reboot

68) Webpage Info Seeker

69) Bouncer

70) Advanced Packet Sniffer

71) IRC server creater

72) Connection Tester

73) Fake Mail Sender

74) Bandwidth Monitor

75) Remote Desktop Protocol Scanner

76) MX Query

77) Messenger Packet Sniffer

78) API Spy

79) DHCP Restart

80) File Merger

81) E-mail Extractor (crawler / harvester bot)

82) Open FTP Scanner

83) Advanced System Locker

84) Advanced System Information

85) CPU Monitor

86) Windows Startup Manager

87) Process Checker

88) IP String Collecter

89) Mass Auto-Emailer (Database mailer; Spammer)

90) Central Server (Base Server; Echo Server; Time Server; Telnet Server; HTTP Server; FTP Server)

91) Fishing Port Scanner (with named ports)

92) Mouse Record / Play Automation (Macro Tool)

93) Internet / LAN Messenger Chat (Server + Client)

94) Timer Shutdown/Restart/Log Off/Hibernate/Suspend/ Control

95) Hash MD5 Checker

96) Port Connect - Listen tool

97) Internet MAC Address Scanner (Multiple IP)

98) Connection Manager / Monitor

99) Direct Peer Connecter (Send/Receive files + chat)

100) Force Application Termination (against Viruses and Spyware)

101) Easy and Fast Screenshot Maker (also Web Hex Color Picker)

102) COM Detect and Test

103) Create Virtual Drives

104) URL Encoder

105) WEP/WPA Key Generator

106) Sniffer.NET

107) File Shredder

108) Local Access Enumerater

109) Steganographer (Art of hiding secret data in pictures)

110) Subnet Calculater

111) Domain to IP (DNS)

112) Get SNMP Variables

113) Internet Explorer Password Revealer

114) Advanced Multi Port Scanner

115) Port Identification List (+port scanner)

116) Get Quick Net Info

117) Get Remote MAC Address

118) Share Add

119) Net Wanderer

120) WhoIs Console

121) Cookies Analyser

122) Hide Secret Data In Files

123) Packet Generator

124) Secure File Splitting

125) My File Protection (Password Protect Files, File Injections)

126) Dynamic Switch Port Mapper

127) Internet Logger (Log URL)

128) Get Whois Servers

129) File Split&Merge

130) Hide Drive

131) Extract E-mails from Documents

132) Net Tools Mini (Client/Server, Scan, ICMP, Net Statistics, Interactive, Raw Packets, DNS, Whois, ARP, Computer's IP, Wake On LAN)

133) Hook Spy

134) Software Uninstaller

135) Tweak & Clean XP

136) Steganographic Random Byte Encryption

137) NetTools Notepad (encrypt your sensitive data)

138) File Encrypter/Decrypter

139) Quick Proxy Server

140) Connection Redirector (HTTP, IRC, ... All protocols supported)

141) Local E-mail Extractor

142) Recursive E-mail Extractor

143) Outlook Express E-mail Extractor

144) Telnet Client

145) Fast Ip Catcher

146) Monitor Host IP

147) FreeMAC (MAC Address Editor)

148) QuickFTP Server (+user accounts support)

149) NetTools Macro Recorder/Player (Keybord and Mouse Hook)

150) Network Protocol Analyzer

151) Steganographic Tools (Picture, Sounds, ZIP Compression and Misc Methods)

152) WebMirror (Website Ripper)

153) GeoLocate IP

154) Google PageRank Calculator

155) Google Link Crawler (Web Result Grabber)

156) Network Adapter Binder

157) Remote LAN PC Lister

158) Fast Sinusoidal Encryption

159) Software Scanner

160) Fast FTP Client

161) Network Traffic Analysis

162) Network Traffic Visualiser

163) Internet Protocol Scanner

164) Net Meter (Bandwidth Traffic Meter)

165) Net Configuration Switcher

166) Advanced System Hardware Info

167) Live System Information

168) Network Profiler

169) Network Browser

170) Quick Website Maker and Web Gallery Creator

171) Remote PC Shutdown

172) Serial Port Terminal

173) Standard Encryptor

174) Tray Minimizer

175) Extra Tools (nmap console & win32 version)

Casi nada,,, ¡a jugar!

Un saludo

19 de mayo de 2009

Seguridad Coste 0: Autorun Vs Confincker

No todas las medidas de seguridad son caras, de hecho la mayor parte de ellas son más que asequibles. Como consultores de seguridad vivimos en un constante ciclo de Deming, el conocido Plan-Do-Check-Act, indispensable si nos creemos aquello de “la seguridad es un proceso” o sabemos algo de la ISO 27001 o de ITIL. Dentro del Check detectaremos las cosas que no están funcionando, o aquellas donde es necesario transformar el nivel de riesgo, para ello debemos ser partícipes de los procesos de negocio de nuestra empresa ponderándolos con los riesgos actuales y futuros, informando del estado actual y futuro de sus sistemas. El negocio nunca quiere asumir excesivo riesgo, a no ser que genere mayores oportunidades de negocio (esto es una curiosa paradoja), y tampoco quiere gastar dinero en más seguridad, quiere tener mejor seguridad.

Medidas de seguridad gratuitas y de bajo impacto son las que siempre nos reclamarán, esto muchas veces parece imposible, hace falta inversión, pero otras podemos quitarnos de una tacada un porcentaje alto de riesgos con una mínima cultura de la seguridad, o simplemente estando al día de las amenazas. Si habéis leído el Informe Mcaffe sobre amenazas del primer trimestre de este año) os encontrareis con apartados curiosos como “la exageración del Confincker frente a la realidad del autorun”, con gráficas como la siguiente donde se compara la aparición de gusanos que explotan el autorun de Windows  con el gusano Confincker:

Después de ver cosas así a uno le viene el regustillo de aquellos virus que se transmitían por disquetes y esos antivirus imposibles de actualizar cuando no se disponía de Internet. La in-seguridad, como la moda, siempre se repite. El caso es que la medida para mitigar este tipo de amenazas “nuevas”, aparte de tener antivirus actualizado (se da por supuestísimo) pueden pasar por una sencilla desactivación del autorun. Esto es un inicio à ejecutar à gpedit.msc (edición de las directivas de seguridad de grupo), Sistema y veremos la siguiente ventanita:

Con ello tendremos la falsa sensación de seguridad de que nuestros gusanos autorun no se ejecutarán, craso error. Basta un doble click sobre la unidad extraíble para que se ejecute, por lo que habrá que eliminarlo del registro con Inicio à Ejecutar à regedit y

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2

Donde configurando los permisos de la clave tendremos:


Y ahora ya tendremos la certeza de que el autorun no nos dará quebraderos de cabeza, esta medida aplicada a todo el parqué de microinformatica en una empresa, ¿Cuántas infecciones evitará?

Ah, y si queréis hacerlo de forma más cómoda tenéis las “Power Toys” disponibles aquí:

Y si teneis Vista un buen artículo de Microsoft aquí. A “nuevas” amenazas, “nuevas” soluciones, todo entre comillas xD

Salu2

11 de mayo de 2009

Blue Screen Of Death (II)

¿Os habéis tomado ya la pastillita roja? Entonces prepararos para conocer todo lo que hay detrás de las letritas Matrix que hay detrás de los BSOD.

A lo largo de la historia de los sistemas operativos Microsoft, el aspecto de los pantallazos azules ha ido cambiando sustancialmente. Por ejemplo este era uno de los pantallazos que podía producir Windows NT, el cual incluía la lista de procesos cargados en memoria en el momento del error:

BSOD Windows NT

Como veis difiere un poquito del que nos producía el kon_boot en Windows 7 hace unos días. No obstante a grandes rasgos todos se dividen en 4 zonas bien conocidas:

-         Bug Check Information

-         Recommended User Action

-         Driver Information

-         Debug Por and Dump Status Information

Si logramos entender correctamente el significado de cada una de estas secciones seremos el Neo del mundo Windows. Ahora bien es recomendable apoyarse en otras herramientas para esta labor, como sabéis Windows genera logs de los principales eventos ocurridos en el sistema, acudir al visor de logs y revisar qué ocurrió en el sistema en la hora aproximada puede ayudar mucho, los eventos que mas nos interesan serán los de sistema y aplicación. Aquí tenemos por ejemplo un error de Google Update:

Si no sabemos muy bien como interpretar esta información podemos acudir aquí. Una vez que conozcamos los eventos que rodearon a la "hora H”, es conveniente revisar la “zona cero” del BSOD, esto se puede realizar examinando los “Post Mortem Dump Files”, donde a lo CSI examinaremos el volcado de memoria que realiza Windows antes de expirar, para ello nos podemos valer de alguna de las herramientas que nos contó Silverhack en las charlas Fist del año pasado o podemos utilizar directamente la utilidad de Windows Debug Diagnostic Tool:

Con todo ello tendremos una idea bastante aproximada de lo que estaba ocurriendo en el sistema en el momento del error. Volvamos a la BSOD, es recomendable saber que el 90% de los pantallazos azules son debidos a nuevo hardware, nuevo software, archivos corruptos o memoria RAM dañada. Partiendo de esa base y conociendo el significado de los 4 campos que contábamos antes, es fácil entender todo lo demás, voy por partes:

Bug Check Information

En este apartado tendremos un “Stop Error Code” junto con 4 parámetros entre paréntesis, todo en hexadecimal. Para un administrador lo más importante es el error code, en cambio si sois desarrolladores el resto de parámetros serán más críticos para vosotros (celdas de memoria, etc.), ya que es muy probable que vuestro nuevo software haga cosas que no deba. Uno de los error code más conocidos es el 0x0000000A, correspondiente a la excepción IRQ_NOT_LESS_OR_EQUAL, un listado de los principales error code lo teneis aquí.

Recommended User Action

Aquí es donde nunca pone “formatee el disco duro y reinstale el Sistema Operativo” pero que es lo que todo el mundo entiende. El mensaje más común es que desinstales todo el hardware o software nuevo que hayas incluido en el sistema, ya que es la causa más probable de error. Aquí es donde nos debe dar información adicional del Error Code con mensajes como el “IRQ_NOT_LESS_OR_EQUAL”. Los principales error code y mensajes que da Windows Vista los tenéis por aquí.

Driver Information

Si podemos ver este campo estamos de suerte ya que nos dirá exactamente que archivo ha originado el error, este será un archivo de drivers que quizás esté obsoleto, corrupto o directamente será incompatible con nuestro Sistema Operativo (algo que ocurría sobretodo en los primeros meses de Windows Vista).

Debug Port and Dump Status Information

Con este apartado completamos el puzzle BSOD, el debug port indica el puerto COM y la velocidad del mismo para que desde un equipo externo y a través del Debugger analicemos el equipo que produjo el BSOD, actualmente no se utiliza (de hecho creo que Windows Vista ya no incluye esta info). La información del volcado de memoria es mucho más interesante, indica qué se ha volcado y si se ha hecho correctamente, lo que nos llevará a las herramientas que vimos al principio de esta entrada.

Y esto es todo, solo hace falta añadir un poco de paciencia para llegar al origen de error, después de todo nunca hay que entrar en el Panic Mode, eso sí que da miedo :-D

Salu2!

Blue Screen Of Death (I) 

Blue Screen Of Death (II)