La plataforma Java y las bibliotecas de terceros proporcionan varias características de seguridad para facilitar la codificación segura. Sin embargo, el mal uso de estas funciones puede costar un tiempo y un esfuerzo tremendos a los desarrolladores o causar vulnerabilidades de seguridad en el software.
La investigación anterior se centró en el uso indebido de la criptografía y las API de SSL, pero no exploró la pregunta fundamental clave de la investigación: ¿cuáles son los mayores desafíos y vulnerabilidades en las prácticas de codificación segura?
En este documento, realizamos un estudio empírico integral sobre las publicaciones de StackOverflow para comprender las preocupaciones de los desarrolladores sobre la codificación segura de Java, sus obstáculos de programación y las posibles vulnerabilidades en su código.
Observamos que los desarrolladores han cambiado su esfuerzo al uso de las funciones de autenticación y autorización proporcionadas por la seguridad de Spring, un marco de terceros diseñado para proteger las aplicaciones empresariales.
Los múltiples desafíos de programación están relacionados con las API o las bibliotecas, incluido el complicado manejo de datos en varios idiomas de las API de criptografía, y los complejos enfoques basados en Java o XML para configurar la seguridad de Spring.
Más interesante aún, identificamos vulnerabilidades de seguridad en el código sugerido de respuestas aceptadas. Las vulnerabilidades incluyeron el uso de funciones hash inseguras como MD5, rompiendo la seguridad SSL / TLS mediante la omisión de la validación de certificados y la inhabilitación insegura de la protección predeterminada contra ataques de falsificación de solicitudes entre sitios (CSRF).
Nuestros hallazgos revelan la insuficiencia de la asistencia y la educación de codificación seguras, y la brecha entre la teoría de la seguridad y las prácticas de codificación.
La plataforma Java y las bibliotecas de terceros proporcionan varias características de seguridad para facilitar la codificación segura. Sin embargo, el mal uso de estas funciones puede costar un tiempo y un esfuerzo tremendos a los desarrolladores o causar vulnerabilidades de seguridad en el software.
La investigación anterior se centró en el uso indebido de la criptografía y las API de SSL, pero no exploró la pregunta fundamental clave de la investigación: ¿cuáles son los mayores desafíos y vulnerabilidades en las prácticas de codificación segura?
En este documento, realizamos un estudio empírico integral sobre las publicaciones de StackOverflow para comprender las preocupaciones de los desarrolladores sobre la codificación segura de Java, sus obstáculos de programación y las posibles vulnerabilidades en su código.
Observamos que los desarrolladores han cambiado su esfuerzo al uso de las funciones de autenticación y autorización proporcionadas por la seguridad de Spring, un marco de terceros diseñado para proteger las aplicaciones empresariales.
Los múltiples desafíos de programación están relacionados con las API o las bibliotecas, incluido el complicado manejo de datos en varios idiomas de las API de criptografía, y los complejos enfoques basados en Java o XML para configurar la seguridad de Spring.
Más interesante aún, identificamos vulnerabilidades de seguridad en el código sugerido de respuestas aceptadas. Las vulnerabilidades incluyeron el uso de funciones hash inseguras como MD5, rompiendo la seguridad SSL / TLS mediante la omisión de la validación de certificados y la inhabilitación insegura de la protección predeterminada contra ataques de falsificación de solicitudes entre sitios (CSRF).
Nuestros hallazgos revelan la insuficiencia de la asistencia y la educación de codificación seguras, y la brecha entre la teoría de la seguridad y las prácticas de codificación.