¿Qué es un arenero y por qué deberías estar jugando en uno?

¿Qué es un arenero y por qué deberías estar jugando en uno? / Cultura web

Eche un vistazo a las aplicaciones que más utiliza en su computadora. Lo más probable es que un buen número de ellos ofrezcan una funcionalidad altamente conectiva, especialmente su navegador web. Estos programas altamente conectivos pueden hacer mucho, pero también son una invitación abierta para que los malos hackers golpeen.

Para evitar que los ataques tengan éxito, un desarrollador tendría que detectar y cerrar cada agujero en su código, lo que simplemente no es posible. En su lugar, los desarrolladores tienen que tomar ese hecho y planear su código con eso en mente. La solución más común y efectiva: un arenero..

Arena en una caja?


No, lo que prefiero no es la caja de arena del parque local, sino las cajas de arena del software. Estas cajas de arena tienen un propósito clave: prevenir la propagación de un ataque. Como mencioné anteriormente, los desarrolladores inteligentes saben que el código no es perfecto, y que su producto eventualmente será pirateado o penetrado. Para proteger al usuario, implementan una caja de arena que aísla partes de su programa. En esencia, todo lo que sucede en un arenero, permanece en ese arenero..

Arenales En Acción


Para explicar los entornos limitados en acción, usaré Google Chrome como ejemplo principal. Chrome es uno de los productos más conocidos para implementar sandboxing, que Google con orgullo promociona como una característica de seguridad única entre los navegadores. Google tomó Chrome y, básicamente, lo dividió en tres categorías diferentes: el proceso principal que une todo, los procesos de pestañas que contienen las páginas e incluyen el procesador y los procesos de complementos. Todas estas categorías tienen diferentes niveles de permisos para que puedan ejecutarse, pero esos permisos son los mínimos necesarios para que todos ellos estén bastante restringidos. Además, los diferentes procesos realmente no pueden hablar entre sí, sino que simplemente coexisten. Por ejemplo, aunque el contenido de Flash del complemento Flash puede estar presente en una página, los procesos aún están separados y no se hablan entre sí. El renderizador solo deja un espacio en la página para que se muestre ese proceso. Esta incapacidad para comunicarse es importante porque si una pestaña se bloquea o es secuestrada, no puede afectar a las demás pestañas ni al sistema en sí..

Firefox también lo tiene, más o menos


Firefox también tiene una función de sandbox, aunque limitada, que lo separa de los complementos de terceros como Flash. Si bien el navegador y todas sus pestañas se combinan en un solo proceso, hay un proceso separado para todos los complementos. En el enfoque de Firefox, confía más en su propio código que Googles con Chrome, y se responsabiliza de cualquier problema de navegación en los complementos. Por lo tanto, si los complementos fallan de alguna manera, el navegador y las pestañas no se ven afectados.

Pensar más allá


Si bien es una buena estrategia contar con técnicas de sandboxing implementadas en el código de un programa, hay muchos otros programas que no tienen ningún sandbox en absoluto. En su lugar, querrá ejecutar un recinto de seguridad virtual donde puede ejecutar programas que solo pueden causar tantos estragos como pueden dentro del recinto de seguridad, dejando su sistema intacto. Si bien esto a menudo está destinado a probar software, también es una buena opción ejecutar un navegador web o realmente cualquier otro software si está bastante paranoico (o inserte su otra palabra favorita aquí). Una opción muy popular para esto es Sandboxie Cómo aislar y probar aplicaciones inseguras en su PC Cómo aislar y probar aplicaciones inseguras en su PC Lea más, pero hay otros productos, tanto gratuitos como de pago, que pueden lograr lo mismo.

Conclusión

El sandboxing es actualmente uno de los temas más candentes en materia de seguridad, y definitivamente está haciendo el trabajo bastante bien. Por supuesto, los desarrolladores siempre deben concentrarse en hacer que su código sea lo mejor posible, pero definitivamente no ayuda tener algunos planes de acción para cuando ocurre un problema. Tenga en cuenta que las cajas de arena aún no son perfectas, ya que la caja de arena de Chrome fue derrotada en Pwn2Own 2012 después de algunos trucos extremadamente difíciles, pero definitivamente son una opción mucho mejor que ninguna..

¿Qué opinas de las aplicaciones de sandboxing? ¿Qué mejoras le gustaría ver en los navegadores web de sandboxing, o qué aplicaciones cree que necesitan sandboxing? Háganos saber en los comentarios.!

Créditos de la imagen: Katie Gregory, Ernst Vikne

Explorar más sobre: ​​Desarrollo de aplicaciones, programación, virtualización.