En estos tiempos en que la información es una pieza escencial en cualquier compañía, su protección pasa a ser una tema de prioridad; cada vez nos encontramos en ambientes de alto riesgo, en particular cuando información sensible es traspasada entre los distintos actores que interactúan con ella.
Existen distintas tecnologías que ofrecen estrategias y herramientas para lidiar con la seguridad de la información, desde sistemas operativos, protocolos de red, motores de bases de datos, aplicaciones, máquinas virtuales, entre otras.
Si la cantidad de usuarios que interactúa con una tecnlogía es significativa, la información que es manejada a nivel empresarial es altamente sensible. Por ejemplo, el 97% de los escritorios empresariales ejecutan la máquina virtual de Java, también conocida como JVM (https://www.java.com/es/about).
Por lo tanto, toda aplicación que es ejecutada bajo Java es localizada en la memoria de la máquina virtual, cuyo nombre en inglés es Heap. El heap es el espacio de memoria en tiempo de ejecución que se usa para almacenar las instancias de clases, objetos y arrays. Se crea en el inicio de la máquina virtual y es gestionado por el recolector de basura (Garbage Collector).
Asimismo, podemos definir al Garbage Collector como un mecanismo implícito de gestión de memoria implementado en algunos lenguajes de programación de tipo interpretado o semi-interpretado.
En muchos casos, existe la posibilidad que la máquina virtual presente problemas en el manejo de su memoria. Para poder diagnosticar que sucede en ésta en un momento dado se puede generar un Heap Dump, el cual recaba toda la información contenida en un determinado momento. En otras palabras, es tomar una fotografía de la memoria, conteniendo los objetos y referencias dentro de la máquina virtual en tiempo de ejecución.
¿Sabía usted que cuando genera un heap dump usando máquinas virtuales Hotspot o JRockit tal vez la información de su aplicación puede estar contenida ahí?
Un interesante tema ha aparecido cuando se han analizado este tipo de datos; usualmente cuando los heap dumps son capturados y entregados a cualquier organización de soporte, la mayor parte de los clientes no saben que (probablemente) información confidencial puede estar presente.
Existen varias organizaciones que protegen su información, por ejemplo: Entidades financieras, médicas, gubernamentales y la lista sigue creciendo. También he propuesto una solicitud de mejora que produce heap dumps editados para así proteger toda información confidencial y trabajar en conjunto con organizaciones de soporte, para resolver problemas en un ambiente seguro donde los heap dumps estén involucrados (link: https://bugs.openjdk.java.net/browse/JDK-8078234)
Como podemos apreciar, hoy en día existen vulnerabilidades que requieren atención. Cada vez que la información es compartida con terceros se debe consultar con el departamento de seguridad correspondiente y así evitar complicaciones; por lo tanto, antes de subir cualquier tipo de información pregúntese si es realmente seguro hacerlo.
Alexis Verdugo
Ingeniero Informático
Certificado en Oracle Weblogic Server



