La respuesta es realmente: no hay una respuesta simple de sí o no. Pero la seguridad es al menos tan importante para los usuarios de desarrollo como para cualquier otra persona.
Por un lado, sí, los desarrolladores tienden a ser técnicamente más inteligentes. Por otro lado, el suyo a menudo es un trabajo estresante y es probable que sus hitos de desarrollo tengan prioridad sobre el cuidado adicional necesario para mantener el propio sistema como un entorno seguro. Esto no es una crítica de los desarrolladores; Es una consideración directa de sus deberes diarios.
Si va a dar a los desarrolladores acceso completo y sin restricciones a sus sistemas, entonces debería considerar las siguientes medidas adicionales:
- Proporcione otro sistema, bloqueado tanto como los sistemas de usuario normales están bloqueados, para uso normal sin desarrollo.
- Ponen sus máquinas de desarrollo de acceso completo en una VLAN especial, con acceso solo a recursos de desarrollo.
- Pregunte si algo evitaría que un sistema infectado ponga en peligro la base de código. ¿Podría una máquina de puerta trasera registrar código maligno, o borrar la base de código, en manos de un hacker hostil? Tome las medidas adecuadas para mitigar este riesgo.
- Del mismo modo, pregunte si algo protege los datos comerciales almacenados en los sistemas a los que los desarrolladores tienen acceso.
- Realice regularmente el inventario de software y la auditoría de seguridad de los sistemas de desarrollo.
- Obtenga una idea de lo que están ejecutando y use esta información para construir sus imágenes de redistribución del sistema de desarrollo.
- Tarde o temprano tendrás un desarrollador que se descuida e instala cosas que son claramente peligrosas o que no están relacionadas con el trabajo. Al enviar advertencias rápidamente cuando esto sucede, le informará a la comunidad de desarrolladores que sí, que alguien está observando y que tienen la responsabilidad de mantenerse dentro de los estándares razonables.
- ¿Estás haciendo escaneos regulares de malware? En algunos casos, los desarrolladores se quejarán con razón del impuesto sobre el rendimiento aplicado por los sistemas AV de acceso (aquellos sistemas AV que siempre están encendidos, siempre escaneando en cada acceso a archivos). Puede ser preferible pasar a una estrategia de escaneo nocturno y / o crear exclusiones de archivos / carpetas para su escaneo en acceso. Sin embargo, asegúrese de que los archivos excluidos se escaneen de alguna otra manera.
- ¿Pueden sus desarrolladores habilitados para administrador desactivar todos los escaneos AV? ¿Cómo detectarías y remediarías esto?
Si va a bloquear los sistemas de desarrollo, entonces debe considerar lo siguiente:
- ¿Tiene la capacidad de soporte para responder a sus solicitudes de soporte rápidamente? Considere la tasa de pago promedio de sus desarrolladores y pregunte si se merecen o no un SLA de tiempo de respuesta más rápido. Probablemente no tenga sentido mantener a su desarrollador de $ 120k (quién es la clave de un proyecto multimillonario) esperando mientras maneja las necesidades de soporte de los empleados de $ 60k / año.
- ¿Tiene una política clara e inequívoca sobre qué solicitudes de soporte atenderá y no atenderá a sus desarrolladores? Si empiezan a tener la sensación de que el apoyo es arbitraria, que tendrá finalmente sentir el dolor.
De cualquier manera, debe admitir que los desarrolladores son un caso especial y que necesitan soporte adicional de algún tipo. Si no está presupuestando para esto, es probable que los problemas se agraven en este momento ... o lo serán en el futuro.
Como nota al margen, he visto argumentos muy similares que tienen lugar con los administradores de sistemas. En al menos dos trabajos diferentes, he visto a los administradores de sistemas discutir con bastante acritud cuando se sugirió que ellos mismos deberían haber bloqueado los sistemas, o al menos usar dos inicios de sesión (uno con privilegios de administrador / raíz; uno sin él). Muchos administradores de sistemas sintieron que no deberían ser encerrados de ninguna manera y argumentaron enérgicamente en contra de tales medidas. Tarde o temprano, algún administrador reacio al bloqueo tendría un incidente de seguridad y el ejemplo tendría un efecto educativo en todos nosotros.
Solía ser uno de esos administradores de sistemas que se ejecutaban con privilegios de administrador todo el tiempo. Cuando realicé el cambio a cuentas duales y solo elevé a medida que lo necesitaba, admito que fue bastante frustrante durante los primeros meses. Pero el lado positivo en la nube fue que aprendí mucho más sobre la seguridad de los sistemas que administraba, cuando mi cuenta normal vivía bajo las mismas restricciones que estaba imponiendo a los usuarios. ¡Me hizo un mejor administrador! Sospecho que lo mismo es cierto para los desarrolladores. Y afortunadamente en el mundo de Windows, ahora tenemos UAC, lo que hace que sea más fácil ejecutarlo como usuario limitado y elevarlo solo cuando sea necesario.
Personalmente, no creo que nadie deba estar por encima de alguna forma de prácticas de seguridad. Todos (administradores de sistemas, desarrolladores, gerentes superiores incluidos) deben estar sujetos a suficientes procedimientos de seguridad y supervisión para mantenerlos alerta. Decir lo contrario es decir que no vale la pena proteger los sistemas y los datos de la empresa.
Digámoslo de otra manera. Si Mark Russinovich puede ser absorbido por un rootkit , ¡cualquiera puede!