El sandboxing es un concepto de alto nivel que se puede implementar de varias maneras.
La virtualización en la práctica es un tipo específico de sandboxing, generalmente mediante la emulación de "el sistema", es decir, la CPU y el hardware relacionado.
Por lo tanto, hay una gran superposición entre el sandbox y la virtualización; así como la virtualización y la emulación. Sin embargo, son diferentes en cuanto a la intención del diseño y / o la técnica.
El sandboxing es el efecto que quieres. Puede lograrlo de muchas maneras, ya sea construyendo alrededor de su sistema (protegiéndolo) o alrededor de su entorno de ejecución (restringiéndolo). De cualquier manera, es importante conocer el problema en su totalidad, y lo que se trata de un programa desconocido que está tratando de lograr, es más sencillo usar la virtualización (como en las máquinas virtuales) ya que tiene el alcance más amplio de aislamiento y software. disponible de forma gratuita.
por ejemplo, para implementar un comportamiento (análisis dinámico) de JavaScript, los dispositivos de seguridad necesitan un entorno de espacio aislado para ejecutar el JS entrante y observar "lo que cambia" (sistema de archivos, registro, etc.). El proveedor de dispositivos de seguridad puede usar un recinto de seguridad (probablemente necesite menos recursos cuando se ejecute, pero necesitaría más recursos para desarrollarlo) o usar un entorno existente, como una máquina virtual con aprovisionamiento dinámico (y desprovisionado) en combinación con el recinto de seguridad del navegador.
Algunos ("la mayoría?) dispositivos" anti-APT "que cuentan con esta capacidad eligen este último porque es más fácil de desarrollar y desplegar . es decir, reduce los costos de R & D (inicial & en curso), así como el tiempo de comercialización, mientras que al mismo tiempo diseña la red más amplia posible (alcance) para limitar el impacto del malware evasivo y, al mismo tiempo, ofrece la máxima capacidad de detección .