Mercado de desarrollo de software de seguridad de la información y aplicaciones [cerrado]

1

Esta es una pregunta más acerca de cómo es el mercado para un ingeniero de software con un enfoque en seguridad de aplicaciones e información, principalmente desarrollo e ingeniería de software, ya sea de prácticas seguras al desarrollar aplicaciones / sistemas, o de desarrollo de software de seguridad real (ya sea herramientas o implementaciones criptográficas). He pasado algo de tiempo en este campo durante los últimos dos años, y me preguntaba cómo se vería mi futuro en él.

Una de mis preocupaciones es que la mayor parte del tiempo empleado en este campo parece estar centrado en el uso adecuado de bibliotecas / apis seguras y en la gestión / configuración de sistemas, y muy poco tiempo en desarrollar protocolos de seguridad personalizados utilizando primitivas de seguridad ( bibliotecas crypto / implementación, etc). La mayoría de las veces, el desarrollo de flujos personalizados está muy desaconsejado, por muy buenas razones. A menos que tenga la experiencia suficiente, e incluso entonces es una cuestión de no tener suficientes ojos en sus implementaciones. Y ni siquiera voy a mencionar la implementación de bibliotecas criptográficas, que es otra enorme lata de gusanos.

Pero, en última instancia, veo que para poder realizar una inversión total en este campo (como implementador, y no como simple consumidor de implementaciones), debe tener mucha experiencia, pero en todos los lugares donde escuche no adquiera experiencia en sistemas de producción como es demasiado arriesgado (como dije, por razones muy buenas y comprensibles). Entonces, estoy considerando qué caminos de actividad hay en este campo. Realmente es que la mayor parte de la actividad se reduce a mantenerse al día con las mejores prácticas y asegurarse de usar las implementaciones / configuraciones adecuadas)

Y la única oportunidad de trabajar como implementador real es en círculos académicos, y tal vez su trabajo obtenga el reconocimiento suficiente y se revise lo suficiente como para que comience a ser aceptado. O trabajar para compañías de software realmente grandes que realmente invierten en la investigación de diseño e implementación de seguridad.

Entonces, después de este largo preámbulo, mi pregunta: ¿es cierto que la mayor parte del tiempo dedicado al desarrollo de software con un enfoque en seguridad se reduce a consumir implementaciones y bibliotecas de seguridad, y configurar su uso? ¿Con mucho menos enfoque en la implementación de flujos de seguridad o primitivas de seguridad? Y si desea centrarse en el desarrollo real, sus mejores posibilidades son en el mundo académico o en grandes empresas que realmente invierten en investigación y desarrollo.

    
pregunta danutz_plusplus 30.03.2018 - 09:47
fuente

1 respuesta

1

Considero que este tipo de preguntas (y respuestas) son valiosas para fines de referencia, por lo que le daré algunas respuestas:

1. is it true that most of the time spent in software development with a 
focus on security comes down to consuming security libraries and 
implementations, and configuring the use of those, with far less focus 
on implementing security flows or security primitives? 

Sí, la gran mayoría de la industria consume en lugar de producir primitivas de seguridad. (Se podría decir, lo que resulta en la producción de más inseguridad ...)

2. And if you want to focus on actual development, your best chances are 
either in academia or large companies that are actually invested in
research and development.

Tipo de. Una mejor dinámica es mirar las relaciones productor / consumidor en el ecosistema de software. La prueba específica no es necesariamente sobre el tamaño de la empresa, sino sobre la distinción entre lo que es el núcleo y lo que es auxiliar a la misión de la empresa / organización. Una pequeña empresa que se enfoca en un nicho de seguridad específico (hay muchos de estos ahora) tendrá que tener un talento muy hábil trabajando en primitivas únicas. Y muchas de las grandes empresas que, por derechos y riesgos, deberían tener la seguridad como enfoque productivo, son simplemente consumidores, con problemas a gran escala que consumen bibliotecas y administran la configuración.

Voy a tocar en otro aspecto-

And the only chance to work as an actual implementer is either in 
academic circles, and maybe your work will get enough recognition 
and be reviewed enough that it starts to get acceptation. Or working 
for really big software companies that truly invest in researching 
security design and implementations. 

La implementación tiene muchos significados diferentes. Usar el término implementación para describir el proceso académico (trabajo en documentos, POC, obtener reconocimiento, revisar, etc.), según mi experiencia, no es un uso común de ese término. Típicamente la implementación significaría escribir código, construir un sistema. Los académicos típicamente reciben entrenamiento y construyen modelos; Muy, muy pocos construyen sistemas de trabajo en el mundo académico.

Re: el significado de la implementación que comprende escribir código y construir un sistema, hay una TONELADA de oportunidad / necesidad de escribir realmente y, mejor, código de seguridad LEER en la comunidad de código abierto. Uno solo tiene que ver la crisis de openssl hace unos años para ver qué tan desesperada estaba, y sigue siendo, la industria para los contribuyentes y revisores a nivel de implementación. No hay barreras estructurales, solo lea el código, encuentre problemas, envíe mejoras. Para una primera aproximación, las relaciones públicas cuidadosamente construidas son un gran ecualizador.

    
respondido por el Jonah Benton 31.03.2018 - 02:11
fuente

Lea otras preguntas en las etiquetas