OCS Inventory ¿software malicioso? Generalmente los programas maliciosos (virus, malware, spyware, ransomware) son creados por programadores que protegen su identidad con el anonimato para evitar ser responsabilizados por el daño, robo o problemas generados por sus creaciones. Contrario a esto, el equipo de OCS Inventory es conocido en la comunidad de desarrolladores y su negocio está en los cursos de capacitación de ésta y otras herramientas de software libre que van de los 1000 a los 1500 euros por persona en 2 a 7 días de capacitación. http://ocsinventory-ng.factorfx.com/en/formations/ http://www.factorfx.com/en/solutions/ ¿Qué se necesita para recopilar datos de harware y software? Con un poco de entrenamiento en cualquier lenguaje de programación, se pueden encontrar las herramientas necesarias para consultar información acerca del equipo y sus características (hardware y software, no datos). En el caso de OCS Inventory se usan funciones de consulta a los distintos sistemas operativos, ya que éstos están diseñados con funciones básicas para que los programas puedan consultar las características de la máquina en que están instalados, por ejemplo, cuando en Windows vamos a “Mi PC”, le damos click derecho y seleccionamos “Propiedades”, en realidad estamos corriendo un programa sencillo que le “pide” al sistema operativo información como: versión de Windows, Procesador, Memoria RAM, Nombre de equipo, Grupo de Trabajo, etc. ¿Por qué se puede consultar tan fácilmente ésta información? Por ejemplo, si se intenta instalar algún programa grande o que demande recursos importantes de procesador, memoria o accesorios; lo ideal es que el programador del instalador consulte al sistema operativo las características necesarias para poder usar el programa y hacerle saber al usuario en cuál de las capacidades de la máquina se cumple o si es necesaria alguna actualización de hardware o incluso de software. De este modo el programa o el instalador: Pueden reconocer qué le falta a la máquina o porqué llega a fallar el programa instalado. Así reconoce Skype la ausencia de webcam. Photoshop reconoce la falta de espacio en disco duro. AutoCad puede recomendar al usuario la adquisición de una mejor tarjeta gráfica. Otro ejemplo son las páginas web y los distintos navegadores de internet (Internet Explorer, Firefox, Chrome, Opera, etc). A los servidores le es de utilidad conocer qué navegador y sistema operativo tienen para ajustar el contenido que muestran para que la página se vea bien. Le sirve conocer el lenguaje y país de la máquina que intenta accesar a su web para incluso mostrar el lenguaje “nativo” del usuario o redireccionar a un servidor más cercano para proporcionar un mejor servicio o promociones locales. Un ejemplo sencillo de esta característica es la web siguiente: http://thismachine.info/ ¿Cómo lo hace? En el caso del hardware se usan API’s que son traductores entre el lenguaje de programación usado y la máquina. Dichas API’s son parte normal del sistema operativo que ayuda a gestionar funciones entre él y los programas que usa. Se usa la API de Windows, mejor conocida como Win32 (http://www.winprog.org/tutorial/), y ésta permite consultar características de hardware, sistema operativo, redes y más (como en el caso de las Propiedades de MiPC). Para Linux existe SysInfo y para MacOS se usa Sysctl. Para el software se usa en Windows por ejemplo, la lista de “Añadir/eliminar programas” que aparece en el Panel de Control y que se puede consultar a través del registro. Y su acceso se permite para que los instaladores sepan si un programa ya está instalado y si se puede actualizar (en vez de reinstalar y sobreescribir, lo que puede llevar a pérdida de datos ó configuración) o se puede consultar la lista de procesos para saber si se está corriendo algún programa que requiere que se cierre para proceder con la instalación. Todos estos tipos de consultas que usa un sistema como OCS Inventory no representan ningún riesgo para la máquina ni mucho menos para la información del usuario, ya que son consultas de generalidades sin otra utilidad que estadística e información y su acceso es controlado por el sistema operativo. ¿Qué se necesita para robar información? Para poder robar información se requiere accesar a las carpetas de Sistema Operativo y/o a las de datos de programas contenidas en las carpetas de Usuario y, además de que la información está encriptada, la protege el sistema operativo y los antivirus, ambos ponen especial atención a dichas carpetas y a las de archivos de programas, de tal modo que si un programa intentara entrar a esas carpetas el sistema operativo y el antivirus reconocerían el intento de movimiento y lo bloquearían. Claro que llega a suceder que un programador malicioso desarrolle y mediante engaños (con programas piratas, promociones, programas de ocio, barras de entretenimiento, etc.), logre hacer que se instale en máquinas desprotegidas su software de robo y consiga extraer la información personal del usuario. Pero tratándose de OCS Inventory, es un sistema que ha sido probado a nivel mundial, se mantiene gratuito porque no vende el programa, sino el soporte especializado de sistemas de software libre. La reputación del sitio es fácilmente comprobable desde plataformas como McAfee (ver imagen), WoT ó WatchGuard que analizan las páginas y reciben reportes de usuarios. Adicionalmente se ha probado ampliamente en el departamento de Informática tanto el servidor como el agente y en ningún momento ha levantado alertas de seguridad, spyware ni comportamiento malicioso (como sería el intento de acceso a la información personal del usuario).