Cuando una empresa que desarrolla software u otro tipo de tecnología tiene un nuevo producto entre manos, es necesario probarlo antes de lanzarlo oficialmente al mercado. Esto puede parecer una etapa sencilla de organizar, pero muchas veces no lo es por cuestiones prácticas, técnicas e incluso regulatorias. Por ese motivo hace ya un tiempo surgió el término sandbox, un espacio donde las compañías pueden utilizar y ajustar sus creaciones antes de hacerlas llegar a sus clientes.
En la actualidad, la presencia de los sandbox se ha vuelto cada vez más común y, en algunos casos, hasta una cuestión de Estado. Los gobiernos de las ciudades y países están interesados en brindar esta herramienta a las organizaciones ya que más tarde también harán uso de las mismas. Además, es una manera de incentivar la creación de puestos de trabajo y la economía del conocimiento, por lo que los beneficios obtenidos son múltiples y variados.
En ese contexto, entender qué es un sandbox, un negocio que según la consultora internacional Markets and Markets generó cerca de 10 mil millones en 2022, cómo se puede utilizar y cuáles son los beneficios para las empresas resulta crucial. Al ser un término relativamente nuevo existen muchas preguntas al respecto y tener información clara para responderlas puede marcar la diferencia a la hora de lanzar un producto al mercado con éxito.
Sandbox o sandboxing qué es, origen, primer uso
Un sandbox es un espacio delimitado y controlado donde las empresas pueden probar y ajustar desde herramientas del mundo de la informática hasta software de sistemas antes de lanzarlos al mercado. Cómo estas tecnologías pueden necesitar desde meses hasta años para desarrollarse, el proceso de uso para corroborar que cumple efectivamente con sus funciones es de extrema importancia. Sin embargo, no todas las compañías cuentan con lugares apropiados para llevar a cabo estos procesos y fue a partir de esa necesidad que surgió este concepto.
Por otra parte, suele ocurrir que dichos desarrollos conllevan modelos de negocios que pueden no encajar adecuadamente en las legislaciones vigentes. Para evitar que esta dinámica corte el proceso de innovación, los gobiernos del mundo aprueban el uso de los sandbox para que las creaciones puedan utilizarse allí, donde hay una especie de “laguna legal” que lo permite. Posteriormente, los mismos legisladores pueden analizar los avances y debatir con las compañías un marco regulatorio que sea beneficioso para todas las partes.
“Los sandbox regulatorios han atraído una atención significativa por su potencial para empoderar a los reguladores financieros que luchan con la innovación acelerada”, explica Ivo Jenik, especialista en finanzas del grupo CGAP. Y agrega: “A través de esta ‘caja de arena’, los reguladores pueden monitorear cuidadosamente los productos, servicios y modelos comerciales digitales en un entorno controlado de prueba en vivo, lo que permite a las empresas llevar las innovaciones al mercado de manera más rápida y sencilla”.
El nacimiento de este concepto
El origen de este concepto se remonta a 1970 con el proyecto Hydra de la Universidad Carnegie Mellon, ubicada en los Estados Unidos. Los investigadores a cargo del mismo tenían como objetivo probar distintas estructuras relacionadas con la inteligencia artificial y para hacerlo necesitaban un espacio de prueba delimitado y seguro. Fue así como desarrollaron una plataforma con estas características que dio el puntapié inicial a los sandbox.
Durante las últimas décadas este concepto se expandió entre distintas industrias, como los videojuegos y el desarrollo de software, aunque ganó especial relevancia con el reciente surgimiento de las fintechs. De hecho, en 2015 el Reino Unido diseñó a través de la Autoridad de Conducta Financiera británica (FCA) el primer sandbox regulatorio para empresas financieras digitales. Más tarde, países como Japón, España y los Estados Unidos siguieron ese camino con leyes similares.
Para qué sirve y cómo funciona un sandbox
Según el ámbito de uso, un sandbox sirve para lograr distintos objetivos. El principal de ellos es probar en un espacio limitado y seguro un producto informático o un software antes de lanzarlo al mercado. De esta manera, se pueden realizar ajustes de último momento, evaluar los sistemas de seguridad informática y corregir errores para que el cliente reciba la mejor herramienta posible.
En cuestiones relacionadas con la informática, este concepto también brinda la posibilidad de llevar a cabo acciones o programas que se ejecutan, controlar los recursos disponibles y crear todo tipo de entornos de prueba. Mientras que para empresas relacionadas con el software, puede servir para reforzar la seguridad ante posibles ataques de malware y así evitar el robo de información, un delito cada vez más común que sufren este tipo de compañías.
Tres etapas a considerar
En cuanto al funcionamiento, existen tres etapas a tener en cuenta. Como los sandbox están coordinados por las autoridades de la ciudad o el país, primero debe presentarse el proyecto ante ellas para que sea analizado y se apruebe su ingreso al mismo. Una vez logrado esto, se pasa a la segunda etapa, que consiste en la prueba en sí misma. La extensión de este proceso dependerá de las necesidades propias de los creadores del proyecto que mientras llevan a cabo los testeos son acompañados por expertos y directivos que aseguran el cumplimiento de los límites establecidos a partir de monitoreos constantes.
Finalmente, la tercera etapa consiste en la aprobación final de la herramienta o el software. De transitar todas las pruebas con éxito, el producto final pasa por una última instancia en la que pueden existir debates sobre el marco regulatorio en el cual debe inscribirse, las medidas de seguridad para protegerlo y el resguardo que debe implementarse para que los usuarios lo utilicen de forma segura. Una vez que todas las partes se ponen de acuerdo, pasa a la etapa de comercialización y distribución.
Dónde se utiliza el aislamiento de procesos
Existen dos grandes ámbitos donde se aplica el aislamiento de procesos. Por un lado, se aplica para el software testing, en el cual se pone a prueba un software para corroborar su funcionamiento aislado del resto y ajustar características que lo necesiten. En este sentido, se equipara al término sandbox. Por otro lado, esta acción también se ejecuta en ciberseguridad para asegurar que no haya fallas que permitan a ciberdelincuentes apropiarse de información del producto.
En este último aspecto mencionado, los especialistas detrás del software ponen en funcionamiento el mismo en un ambiente controlado con el objetivo de encontrar vulnerabilidades en el sistema. De esta manera, si descubren algún defecto, pueden solucionarlo antes de salir al mercado y así evitar inconvenientes de seguridad a futuro.
Por lo general se suelen utilizar applets para conseguir estas metas. Estos son programas que se ejecutan en un entorno llamado “máquina virtual”, un dispositivo que emula una computadora para realizar las pruebas necesarias en un ambiente que garantice medidas de control. En el caso de identificar un software o código malicioso, se pueden llevar a cabo las operaciones en una máquina nativa con el foco puesto en entender y analizar cuáles son los daños que causa y cómo pueden contrarrestarse.
¿Es seguro el aislamiento de procesos?
Utilizar un aislamiento de procesos o sandbox es un método seguro para probar y ajustar distintos productos tecnológicos antes de su salida al mercado. Por sus características y forma de creación, son espacios que garantizan cierto nivel de control que respalda su correcta utilización.
De todas formas, esto no quiere decir que sean invulnerables o que los hackers no puedan acceder a ellos. De hecho, ciberdelincuentes han logrado filtrar malware en un entorno aislado de control que dañaron gran parte de los componentes del mismo. Por este motivo, un estándar de seguridad que suele aplicarse en la actualidad es el multi-sandbox array, es decir la utilización de varios sandbox en la nube al mismo tiempo para dividir la información y generar que el acceso a ella sea más dificultoso.
Sandbox en informática
Cuando se aplica un sandbox en informática se hace, por lo general, para realizar pruebas de seguridad. Quienes están a cargo de un software o un determinado producto tecnológico, pueden ejecutarlo sin la necesidad de instalarlo como una función de sistema operativo para testear que todos los recursos desarrollados con el objetivo de protegerlo funcionan correctamente.
Los applets son los ejemplos más usuales en lo que se refiere a sandbox en informática. Como se los puede hacer funcionar en una máquina virtual, un artefacto que simula ser una “computadora real” permiten llevar a cabo todo tipo de pruebas, de las que asta los clientes interesados en adquirir el producto final pueden participar. De esta manera se garantiza que todas las acciones se realizan de manera correcta y resguardada de ataques de cibercriminales.
Sandbox en pruebas de software
Los sandbox en pruebas de software son el uso más común para este concepto tecnológico. Básicamente, empresas desarrolladoras de estos productos lo implementan para ejecutar sus creaciones y probarlas en distintos ambientes simulados y controlados. En caso de encontrar fallos u errores se pueden corregir y una vez aprobados todos los estándares de funcionamiento, se da paso a la comercialización de la herramienta con la seguridad de haber testeado todos sus componentes y acciones.
Sandbox en el mundo de las empresas
Desde la pandemia, los ataques cibernéticos no dejan de aumentar a nivel mundial y en ese contexto el sandbox en el mundo cobra cada vez más relevancia. Según un informe de Check Point Software, las compañías han tenido un 50% más de este tipo de delitos virtuales en comparación al 2021, generando grandes pérdidas económicas a nivel internacional.
Al implementar un sandbox, estas organizaciones cuentan con un elemento más de seguridad informática para evitar malware o ransomware. Además, en la actualidad se pueden sumar otras herramientas como el machine learning para que los sistemas detecten automáticamente posibles riesgos de seguridad y den aviso a los responsables del área para que tomen las medidas necesarias y así eviten desde robo de información hasta daño en los equipos físicos.
Características de sandbox en una estrategia empresarial
A la hora de implementar un nuevo sistema informático o un software, las compañías deben hacerlo de forma correcta para evitar que genere dificultades con las herramientas ya existentes en la organización. En esa línea, el sandbox resulta un gran beneficio porque permite ejecutar estas acciones de manera tal que coincidan con la estrategia empresarial de la institución.
Esto se debe a que la tecnología permite llevar a cabo varios procesos para que el flujo de trabajo y la integración de nuevos dispositivos no choquen entre sí. En esa línea, la primera ventaja es la posibilidad de realizar pruebas en un ambiente controlado a modo de prueba. Una vez que se corrobora que todo se cumple de forma correcta, se procede a instalar el software en los ordenadores de la compañía y se ejecuta en el sistema general.
Por lo general se indica que este procedimiento es el mejor a la hora de combatir problemas de ciberseguridad. Sin embargo, no es para lo único que sirve. En el caso de empresas grandes con varios sistemas corriendo al mismo tiempo, la implementación de uno nuevo no se puede realizar de un día para el otro, ya que puede ser perjudicial y provocar desde retrasos hasta inconvenientes más graves. Es por eso que un sandbox se implementa para comprobar, en todas las pruebas que sean necesarias, la compatibilidad de los sistemas y su correcto desempeño antes de llevarlo al plano real de trabajo.
Flexibilidad
Para que esto cumpla con las expectativas deseadas, el sandbox debe tener ciertas características. Por un lado, está la flexibilidad a la hora de ser utilizado. Esto se refiere tanto a la capacidad de recibir todo tipo de software, pero también a la oportunidad de generar distintos ambientes con posibilidades variadas para agotar el 100% de los escenarios con probabilidades de enfrentar en el día a día de la compañía.
Facilidad para implementarlo
Por otro lado, la facilidad a la hora de implementarlo es un valor que suele ser muy apreciado por las instituciones. Si la herramienta es muy compleja y requiere de expertos especializados para ejecutarla, se puede volver tedioso para quienes están a cargo de su operación, ya que muchas veces no cuentan con tiempo disponible para probar un software antes de utilizarlo. Por lo tanto, entre más sencilla su implementación, mejor.
Colaboraciones
Finalmente, otra característica apreciada por estas organizaciones es la posibilidad de realizar colaboraciones. Qué varios trabajadores puedan usufructuar los beneficios de esta herramienta al mismo tiempo y analizar sus avances de forma inmediata, es una gran ventaja ya que acelera los testeos y permite descubrir errores o fallas que de forma individual no se hubiesen notado.
Software, sandbox y beneficios
Los beneficios de implementar un sandbox antes del lanzamiento al mercado de un software son varios. El primero de ellos es la oportunidad de simular que se es el usuario final. Como este espacio permite realizar pruebas y testeos del producto, los creadores pueden observar con claridad si los clientes obtendrán lo que están ofreciendo. De esta manera, pueden corroborar esta situación o ajustar errores que hayan arrastrado hasta la etapa final sin que nadie se diera cuenta.
Otro beneficio radica en la oportunidad de sumar más características al software. Al ejecutarlo en un contexto de prueba controlada, no solo se analiza su funcionamiento, sino que también se abarca aquello que no está dentro de las capacidades del software. Por lo tanto, en esta etapa se puede innovar, agregar herramientas y probar nuevas ideas con el respaldo de que si alguna de ellas no funciona, solo se elimina sin afectar al resto del sistema.
Finalmente, los controles de seguridad son otra ventaja que permiten los sandbox antes del lanzamiento de un software. Contar con fallas que puedan ser explotadas por hackers es uno de los peores escenarios para las empresas del sector. Por ese motivo, se intentan encontrar todas las vulnerabilidades posibles con la meta de solucionarlas antes del lanzamiento. Así, una vez en el mercado, el producto será más robusto, completo y con ventajas que serán usufructuadas por los usuarios finales.
Sandbox según el sistema operativo
El sistema operativo que utiliza una empresa marca el tipo de sandbox que deberá elegir. Esto hay que tenerlo en cuenta porque no solo cambia el producto, sino también las funcionalidades y los objetivos planteados. La meta final siempre es proteger al sistema operativo de las distintas amenazas existentes, pero las características propias de cada uno delimitan el modelo de trabajo a implementar.
En esa línea, existe la posibilidad de utilizar el sandbox en el código del software a través de capas y niveles de forma directa y sin intermediarios. Sin embargo, esto solo es posible en algunas aplicaciones porque al realizarlo el sandbox pasa a ser una parte del sistema operativo. Si bien mantiene la característica de estar cerrado y se establecen parámetros fijos sobre lo que se puede llevar a cabo y lo que no para que no influya en el resto del sistema, su presencia es constante.
Por otro lado, existe la posibilidad de aplicar sandbox que están por fuera del sistema operativo y que es el propio usuario quien decide si es activado o no. Al hacerlo, el mismo se integra, pero no de forma constante porque existe la forma de desactivarlo y automáticamente deja de ser parte del mismo.
Ejemplos de sandbox
A la hora de desarrollar un sandbox, este puede tener componentes de software y de hardware. Cuáles estarán presentes es una decisión que debe tomarse según las características del sistema operativo y las funcionalidades que se deseen implementar.
En el caso de querer operar con esta tecnología dentro de una red aislada, incluso se puede contar con un router de Wi-Fi y una conexión al ISP propia para evitar el acceso de códigos o aplicaciones dañinas a la red principal. Esta táctica suele ser establecida por navegadores web como Google Chrome para proteger al sistema operativo local de los constantes ataques que se pueden recibir.
Un ejemplo concreto de este tipo de dispositivos es el Windows 10 Sandbox, uno de las opciones más populares en el mercado. El mismo es un entorno de prueba, con el cual se pueden aislar programas por ejemplo, cuya función principal es la de proteger al escritorio de códigos poco seguros. Vale aclarar que esta herramienta es una forma más de defensa, pero bajo ninguna instancia reemplaza a un antivirus.
Otro ejemplo de sandbox es el HTML5, que evita que una función iframe lleve a cabo un uso inadecuado del sistema. Por otro lado, Linux como sistema operativo también cuenta con sus propios sandbox y en el caso de Google existe una API llamada Google Sandbox que puede instalarse y brinda la posibilidad de tener un entorno de prueba.
¿Cómo instalar un sandbox?
La instalación de un sandbox en un equipo depende del producto elegido y el sistema operativo con el cual se trabaja. Por lo general, los pasos suelen ser similares entre las opciones disponibles, pero en cada caso existen características propias que deben ser tenidas en cuenta.
Para brindar algunos ejemplos, se puede iniciar con el sandbox de Windows 10. Las etapas a seguir para llevar a cabo la instalación son las siguientes: Configuración > Aplicaciones > Aplicaciones y funciones > Programas y características > Activar o desactivar las características de Windows y, a continuación, seleccione Habilitar Windows Sandbox. Una vez hecho esto, ya estará disponible para ser utilizado.
En el caso de la API Google Sandbox, el proceso es un poco más complejo ya que primero hay que habilitar la configuración general de las APIs. Una vez hecho ese paso, es necesario configurar los servicios de AdServices. Finalmente, se Configura servicios de anuncios específicos de la API y se genera una Limitación del acceso en primer plano para poder utilizarlo de forma segura.
“Los diseños para Privacy Sandbox en Android permiten a los usuarios controlar si las APIs que preservan la privacidad y el entorno de ejecución del SDK están activos en sus dispositivos”, explican los desarrolladores de Android. Y agregan para concluir: “Estos parámetros de configuración están inhabilitados de forma predeterminada a partir de la Versión preliminar para desarrolladores 5”.
Busque información oficial
Para quienes tienen conocimiento sobre esta tecnología, realizar la instalación no es un proceso difícil de realizar. Sin embargo, para aquellos que están dando sus primeros pasos con sandbox sí puede serlo. Por ese motivo, se recomienda que a la hora de instalar un sandbox se obtenga información de las páginas oficiales y se sigan los pasos en el mismo orden que los expertos lo recomiendan. De esta manera, se evitarán inconvenientes e incluso ataques de ciberseguridad, ya que existen muchas aplicaciones que simulan ser un sandbox, pero que en realidad no lo son. Esto lleva a los especialistas en el área a recomendar productos oficiales desarrollados por empresas confiables y con larga trayectoria en el mercado.