Blog

Por qué las inyecciones SQL son las cucarachas del mundo de la AppSec (y cómo los CISOs pueden erradicarlas de una vez por todas)

Doctor Matias Madou
Publicado el 26 de septiembre de 2018

Es bien conocida la teoría de que las cucarachas pueden sobrevivir a todo, incluso a una explosión nuclear. Aunque esa teoría sólo es cierta hasta cierto punto, su sencilla composición corporal las hace extremadamente resistentes para su tamaño y difíciles de erradicar en la mayoría de las condiciones.

He estado pensando... si las cucarachas tuvieran un equivalente en el mundo digital, tendrían que ser las vulnerabilidades de inyección SQL (SQLi) en el código. Se trata de una vulnerabilidad conocida desde hace más de veinte años y, sin embargo, las organizaciones son víctimas de ellas una y otra vez. El extenso y costoso ataque a Target fue el resultado de la inyección SQL, al igual que un caso de piratería electoral en Illinois en el que se expusieron 200.000 registros de votantes, lo que llevó al FBI a recomendar a todos los administradores de TI que trabajaran rápidamente para reforzar sus prácticas de seguridad.

El Informe de la Iniciativa de Inteligencia de Hackers de Imperva reveló que entre 2005 y 2011, los ataques SQLi se utilizaron en el 83% de todas las violaciones de datos reportadas. Hoy en día, las vulnerabilidades de inyección siguen siendo la amenaza número uno en el Top 10 de OWASP. Son relativamente sencillas, pero no mueren.

Parece ridículo que esta misma vulnerabilidad siga apareciendo en un número importante de análisis de seguridad de aplicaciones. Sabemos cómo funciona y sabemos cómo detenerla. ¿Cómo es posible? La verdad es que la seguridad de nuestro software tiene un amplio margen de mejora.

El informe de Veracode sobre el estado de la seguridad del software -basado en 400.000 escaneos de aplicaciones en 2017- reveló una estadística alarmante: solo el 30% de las aplicaciones pasaron la política OWASP Top 10. Este ha sido un tema constante en los últimos cinco años, con inyecciones SQL que aparecen en casi 1 de cada 3 aplicaciones recién escaneadas. Esto evidencia un problema endémico; no estamos aprendiendo de nuestros errores, y los CISOs parecen enfrentarse a una ardua batalla para poder conseguir suficiente talento en seguridad. Normalmente, la proporción de especialistas en seguridad de aplicaciones con respecto a los desarrolladores es de 1:100.

¿Por qué la seguridad de los programas informáticos está en peligro de extinción?

No es ningún secreto que el talento especializado en seguridad es escaso, pero también debemos prestar atención al hecho de que los desarrolladores no están solucionando los problemas a medida que surgen, y están claramente mal equipados para no introducir vulnerabilidades en primer lugar. En el mismo informe de Veracode, se divulgó que había mitigaciones documentadas para sólo el 14,4% de todas las vulnerabilidades de desarrollo. En otras palabras, la mayoría de las vulnerabilidades se presentaron sin mitigación de desarrollo. Menos de un tercio de las vulnerabilidades se cerraron en los primeros 90 días, y el 42% de las vulnerabilidades nunca se cerraron dentro del periodo de desarrollo.

Hablo todo el tiempo con profesionales de la seguridad, CISOs y CEOs, y anecdóticamente, me he dado cuenta de que muchas empresas se frustran tanto con el número de vulnerabilidades encontradas que no pueden ser mitigadas (además de la plaga conocida como falsos positivos), que dejan de escanear en busca de ellas por completo, cruzando los dedos y esperando lo mejor.

¿Por qué los profesionales de la seguridad de las aplicaciones dejan que esto ocurra?

No se equivoque: La gente de AppSec es dolorosamente consciente de los problemas en el código. Después de todo, esa es una de sus principales habilidades que los convierte en un recurso de equipo tan valioso. Sin embargo, a menudo se ven obstaculizados por varios factores.

Por ejemplo, un director de AppSec encontrará un problema y preguntará al desarrollador: "¿puedes arreglar el código?". La respuesta a esta importante pregunta difiere de una organización a otra, pero en general, el desarrollador está tan apretado cumpliendo estrictos sprints de entrega de características que simplemente no tiene tiempo para arreglar estos problemas, ni herramientas decentes para ayudarles. Los propios profesionales de la seguridad de las aplicaciones pueden ser capaces de identificar las vulnerabilidades, pero a menudo no tienen las habilidades y/o el acceso para remediarlas en el acto.

También debemos darnos cuenta de que para cada problema hay que encontrar una solución, aplicarla y probarla. Para el más mínimo problema que se encuentre en el código, el tiempo que puede llevar arreglarlo, por no hablar de los recursos necesarios, es inmenso. Hay más de 700 vulnerabilidades que pueden introducirse en el software, y es sencillamente imposible que una sola persona pueda defenderse de todas ellas. Por esta razón, la mayoría de las empresas se limitan a seguir el Top 10 de OWASP. Mientras tanto, los desarrolladores siguen construyendo características y, a su vez, siguen introduciendo vulnerabilidades en el código que escriben.

¿Cuál es la solución?

El hecho es que no damos a nuestros desarrolladores las herramientas y la formación necesarias para fomentar el éxito de la codificación segura. No hay normas que obliguen a las organizaciones a garantizar que los desarrolladores posean las habilidades de seguridad adecuadas, y es una triste realidad que la mayoría de las universidades y las prácticas no preparan a los desarrolladores junior para codificar de forma segura, tampoco.

Cuando alguien quiere pilotar un avión, hay un proceso muy riguroso que garantiza la formación, la experiencia práctica, los controles médicos, los conocimientos de seguridad y los exámenes antes de poder volar. Nadie se atrevería a imaginar que se le dejaría suelto en el cielo sin esta amplia preparación y validación de habilidades, y sin embargo esto es lo que ocurre en el día a día con la escritura de código.  

Tenemos que dedicar tiempo a educar a los desarrolladores en la escritura de código seguro. Sin embargo, en el mundo actual, en el que el desarrollo de software es rápido y los buenos desarrolladores y profesionales de la seguridad escasean, nunca parece ser una prioridad. Es hora de cambiar la conversación.

Un reciente titular del Foro Económico Mundial gritaba: "No puede haber economía digital sin seguridad", y el contenido que lo acompañaba argumentaba la necesidad de que la seguridad sea una parte fundamental de cualquier estrategia de transformación digital. "La seguridad es lo que protege a las empresas, permitiéndoles innovar y crear nuevos productos y servicios. Más allá de un papel defensivo, la seguridad proporciona a las empresas una ventaja estratégica de crecimiento."

Mejorar las habilidades y los resultados de la codificación segura añadirá una poderosa capa de ciberprotección para las organizaciones, ayudándolas a crear un código mejor y más rápido. Los desarrolladores no necesitan convertirse en expertos en seguridad, pero hay que capacitarlos de forma positiva y práctica para que sean la primera línea de defensa contra los ciberataques. Los desarrolladores pueden ser los próximos héroes de la seguridad y la innovación. Son personas muy inteligentes, resuelven problemas de forma creativa y, por lo general, están dispuestos a desarrollar sus habilidades. Aproveche sus puntos fuertes con la formación especializada que se merecen y comprométase con un mayor nivel de seguridad del software. Lea nuestro libro blanco para saber más.

Cuando alguien quiere pilotar un avión, hay un proceso muy riguroso que garantiza la formación, la experiencia práctica, los controles médicos, los conocimientos de seguridad y los exámenes antes de poder volar. Nadie se atrevería a imaginar que se le dejaría suelto en el cielo sin esta amplia preparación y validación de habilidades, y sin embargo esto es lo que ocurre en el día a día con la escritura de código.
Ver recurso
Ver recurso

Es bien conocida la teoría de que las cucarachas pueden sobrevivir a cualquier cosa, incluso a una explosión nuclear.

¿Quiere saber más?

Matias Madou, Ph.D. es experto en seguridad, investigador y CTO y cofundador de Secure Code Warrior. Matias obtuvo su doctorado en Seguridad de Aplicaciones en la Universidad de Gante, centrándose en soluciones de análisis estático. Más tarde se incorporó a Fortify en EE.UU., donde se dio cuenta de que no bastaba con detectar problemas de código sin ayudar a los desarrolladores a escribir código seguro. Esto le inspiró para desarrollar productos que ayuden a los desarrolladores, alivien la carga de la seguridad y superen las expectativas de los clientes. Cuando no está en su escritorio como parte de Team Awesome, le gusta estar en el escenario presentando en conferencias como RSA Conference, BlackHat y DefCon.

Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.

Reservar una demostración
Compartir en:
Autor
Doctor Matias Madou
Publicado el 26 de septiembre de 2018

Matias Madou, Ph.D. es experto en seguridad, investigador y CTO y cofundador de Secure Code Warrior. Matias obtuvo su doctorado en Seguridad de Aplicaciones en la Universidad de Gante, centrándose en soluciones de análisis estático. Más tarde se incorporó a Fortify en EE.UU., donde se dio cuenta de que no bastaba con detectar problemas de código sin ayudar a los desarrolladores a escribir código seguro. Esto le inspiró para desarrollar productos que ayuden a los desarrolladores, alivien la carga de la seguridad y superen las expectativas de los clientes. Cuando no está en su escritorio como parte de Team Awesome, le gusta estar en el escenario presentando en conferencias como RSA Conference, BlackHat y DefCon.

Matías es un investigador y desarrollador con más de 15 años de experiencia práctica en seguridad de software. Ha desarrollado soluciones para empresas como Fortify Software y su propia empresa Sensei Security. A lo largo de su carrera, Matías ha dirigido múltiples proyectos de investigación sobre seguridad de aplicaciones que han dado lugar a productos comerciales y cuenta con más de 10 patentes en su haber. Cuando está lejos de su escritorio, Matias ha servido como instructor para la formación de seguridad de aplicaciones avanzadas courses y regularmente habla en conferencias mundiales como la Conferencia RSA, Black Hat, DefCon, BSIMM, OWASP AppSec y BruCon.

Matías es doctor en Ingeniería Informática por la Universidad de Gante, donde estudió la seguridad de las aplicaciones mediante la ofuscación de programas para ocultar el funcionamiento interno de una aplicación.

Compartir en:

Es bien conocida la teoría de que las cucarachas pueden sobrevivir a todo, incluso a una explosión nuclear. Aunque esa teoría sólo es cierta hasta cierto punto, su sencilla composición corporal las hace extremadamente resistentes para su tamaño y difíciles de erradicar en la mayoría de las condiciones.

He estado pensando... si las cucarachas tuvieran un equivalente en el mundo digital, tendrían que ser las vulnerabilidades de inyección SQL (SQLi) en el código. Se trata de una vulnerabilidad conocida desde hace más de veinte años y, sin embargo, las organizaciones son víctimas de ellas una y otra vez. El extenso y costoso ataque a Target fue el resultado de la inyección SQL, al igual que un caso de piratería electoral en Illinois en el que se expusieron 200.000 registros de votantes, lo que llevó al FBI a recomendar a todos los administradores de TI que trabajaran rápidamente para reforzar sus prácticas de seguridad.

El Informe de la Iniciativa de Inteligencia de Hackers de Imperva reveló que entre 2005 y 2011, los ataques SQLi se utilizaron en el 83% de todas las violaciones de datos reportadas. Hoy en día, las vulnerabilidades de inyección siguen siendo la amenaza número uno en el Top 10 de OWASP. Son relativamente sencillas, pero no mueren.

Parece ridículo que esta misma vulnerabilidad siga apareciendo en un número importante de análisis de seguridad de aplicaciones. Sabemos cómo funciona y sabemos cómo detenerla. ¿Cómo es posible? La verdad es que la seguridad de nuestro software tiene un amplio margen de mejora.

El informe de Veracode sobre el estado de la seguridad del software -basado en 400.000 escaneos de aplicaciones en 2017- reveló una estadística alarmante: solo el 30% de las aplicaciones pasaron la política OWASP Top 10. Este ha sido un tema constante en los últimos cinco años, con inyecciones SQL que aparecen en casi 1 de cada 3 aplicaciones recién escaneadas. Esto evidencia un problema endémico; no estamos aprendiendo de nuestros errores, y los CISOs parecen enfrentarse a una ardua batalla para poder conseguir suficiente talento en seguridad. Normalmente, la proporción de especialistas en seguridad de aplicaciones con respecto a los desarrolladores es de 1:100.

¿Por qué la seguridad de los programas informáticos está en peligro de extinción?

No es ningún secreto que el talento especializado en seguridad es escaso, pero también debemos prestar atención al hecho de que los desarrolladores no están solucionando los problemas a medida que surgen, y están claramente mal equipados para no introducir vulnerabilidades en primer lugar. En el mismo informe de Veracode, se divulgó que había mitigaciones documentadas para sólo el 14,4% de todas las vulnerabilidades de desarrollo. En otras palabras, la mayoría de las vulnerabilidades se presentaron sin mitigación de desarrollo. Menos de un tercio de las vulnerabilidades se cerraron en los primeros 90 días, y el 42% de las vulnerabilidades nunca se cerraron dentro del periodo de desarrollo.

Hablo todo el tiempo con profesionales de la seguridad, CISOs y CEOs, y anecdóticamente, me he dado cuenta de que muchas empresas se frustran tanto con el número de vulnerabilidades encontradas que no pueden ser mitigadas (además de la plaga conocida como falsos positivos), que dejan de escanear en busca de ellas por completo, cruzando los dedos y esperando lo mejor.

¿Por qué los profesionales de la seguridad de las aplicaciones dejan que esto ocurra?

No se equivoque: La gente de AppSec es dolorosamente consciente de los problemas en el código. Después de todo, esa es una de sus principales habilidades que los convierte en un recurso de equipo tan valioso. Sin embargo, a menudo se ven obstaculizados por varios factores.

Por ejemplo, un director de AppSec encontrará un problema y preguntará al desarrollador: "¿puedes arreglar el código?". La respuesta a esta importante pregunta difiere de una organización a otra, pero en general, el desarrollador está tan apretado cumpliendo estrictos sprints de entrega de características que simplemente no tiene tiempo para arreglar estos problemas, ni herramientas decentes para ayudarles. Los propios profesionales de la seguridad de las aplicaciones pueden ser capaces de identificar las vulnerabilidades, pero a menudo no tienen las habilidades y/o el acceso para remediarlas en el acto.

También debemos darnos cuenta de que para cada problema hay que encontrar una solución, aplicarla y probarla. Para el más mínimo problema que se encuentre en el código, el tiempo que puede llevar arreglarlo, por no hablar de los recursos necesarios, es inmenso. Hay más de 700 vulnerabilidades que pueden introducirse en el software, y es sencillamente imposible que una sola persona pueda defenderse de todas ellas. Por esta razón, la mayoría de las empresas se limitan a seguir el Top 10 de OWASP. Mientras tanto, los desarrolladores siguen construyendo características y, a su vez, siguen introduciendo vulnerabilidades en el código que escriben.

¿Cuál es la solución?

El hecho es que no damos a nuestros desarrolladores las herramientas y la formación necesarias para fomentar el éxito de la codificación segura. No hay normas que obliguen a las organizaciones a garantizar que los desarrolladores posean las habilidades de seguridad adecuadas, y es una triste realidad que la mayoría de las universidades y las prácticas no preparan a los desarrolladores junior para codificar de forma segura, tampoco.

Cuando alguien quiere pilotar un avión, hay un proceso muy riguroso que garantiza la formación, la experiencia práctica, los controles médicos, los conocimientos de seguridad y los exámenes antes de poder volar. Nadie se atrevería a imaginar que se le dejaría suelto en el cielo sin esta amplia preparación y validación de habilidades, y sin embargo esto es lo que ocurre en el día a día con la escritura de código.  

Tenemos que dedicar tiempo a educar a los desarrolladores en la escritura de código seguro. Sin embargo, en el mundo actual, en el que el desarrollo de software es rápido y los buenos desarrolladores y profesionales de la seguridad escasean, nunca parece ser una prioridad. Es hora de cambiar la conversación.

Un reciente titular del Foro Económico Mundial gritaba: "No puede haber economía digital sin seguridad", y el contenido que lo acompañaba argumentaba la necesidad de que la seguridad sea una parte fundamental de cualquier estrategia de transformación digital. "La seguridad es lo que protege a las empresas, permitiéndoles innovar y crear nuevos productos y servicios. Más allá de un papel defensivo, la seguridad proporciona a las empresas una ventaja estratégica de crecimiento."

Mejorar las habilidades y los resultados de la codificación segura añadirá una poderosa capa de ciberprotección para las organizaciones, ayudándolas a crear un código mejor y más rápido. Los desarrolladores no necesitan convertirse en expertos en seguridad, pero hay que capacitarlos de forma positiva y práctica para que sean la primera línea de defensa contra los ciberataques. Los desarrolladores pueden ser los próximos héroes de la seguridad y la innovación. Son personas muy inteligentes, resuelven problemas de forma creativa y, por lo general, están dispuestos a desarrollar sus habilidades. Aproveche sus puntos fuertes con la formación especializada que se merecen y comprométase con un mayor nivel de seguridad del software. Lea nuestro libro blanco para saber más.

Cuando alguien quiere pilotar un avión, hay un proceso muy riguroso que garantiza la formación, la experiencia práctica, los controles médicos, los conocimientos de seguridad y los exámenes antes de poder volar. Nadie se atrevería a imaginar que se le dejaría suelto en el cielo sin esta amplia preparación y validación de habilidades, y sin embargo esto es lo que ocurre en el día a día con la escritura de código.
Ver recurso
Ver recurso

Rellene el siguiente formulario para descargar el informe

Nos gustaría contar con su permiso para enviarle información sobre nuestros productos y/o temas relacionados con la codificación segura. Siempre trataremos sus datos personales con el máximo cuidado y nunca los venderemos a otras empresas con fines de marketing.

Enviar
Para enviar el formulario, habilite las cookies "Analytics". Siéntase libre de desactivarlas de nuevo una vez que haya terminado.

Es bien conocida la teoría de que las cucarachas pueden sobrevivir a todo, incluso a una explosión nuclear. Aunque esa teoría sólo es cierta hasta cierto punto, su sencilla composición corporal las hace extremadamente resistentes para su tamaño y difíciles de erradicar en la mayoría de las condiciones.

He estado pensando... si las cucarachas tuvieran un equivalente en el mundo digital, tendrían que ser las vulnerabilidades de inyección SQL (SQLi) en el código. Se trata de una vulnerabilidad conocida desde hace más de veinte años y, sin embargo, las organizaciones son víctimas de ellas una y otra vez. El extenso y costoso ataque a Target fue el resultado de la inyección SQL, al igual que un caso de piratería electoral en Illinois en el que se expusieron 200.000 registros de votantes, lo que llevó al FBI a recomendar a todos los administradores de TI que trabajaran rápidamente para reforzar sus prácticas de seguridad.

El Informe de la Iniciativa de Inteligencia de Hackers de Imperva reveló que entre 2005 y 2011, los ataques SQLi se utilizaron en el 83% de todas las violaciones de datos reportadas. Hoy en día, las vulnerabilidades de inyección siguen siendo la amenaza número uno en el Top 10 de OWASP. Son relativamente sencillas, pero no mueren.

Parece ridículo que esta misma vulnerabilidad siga apareciendo en un número importante de análisis de seguridad de aplicaciones. Sabemos cómo funciona y sabemos cómo detenerla. ¿Cómo es posible? La verdad es que la seguridad de nuestro software tiene un amplio margen de mejora.

El informe de Veracode sobre el estado de la seguridad del software -basado en 400.000 escaneos de aplicaciones en 2017- reveló una estadística alarmante: solo el 30% de las aplicaciones pasaron la política OWASP Top 10. Este ha sido un tema constante en los últimos cinco años, con inyecciones SQL que aparecen en casi 1 de cada 3 aplicaciones recién escaneadas. Esto evidencia un problema endémico; no estamos aprendiendo de nuestros errores, y los CISOs parecen enfrentarse a una ardua batalla para poder conseguir suficiente talento en seguridad. Normalmente, la proporción de especialistas en seguridad de aplicaciones con respecto a los desarrolladores es de 1:100.

¿Por qué la seguridad de los programas informáticos está en peligro de extinción?

No es ningún secreto que el talento especializado en seguridad es escaso, pero también debemos prestar atención al hecho de que los desarrolladores no están solucionando los problemas a medida que surgen, y están claramente mal equipados para no introducir vulnerabilidades en primer lugar. En el mismo informe de Veracode, se divulgó que había mitigaciones documentadas para sólo el 14,4% de todas las vulnerabilidades de desarrollo. En otras palabras, la mayoría de las vulnerabilidades se presentaron sin mitigación de desarrollo. Menos de un tercio de las vulnerabilidades se cerraron en los primeros 90 días, y el 42% de las vulnerabilidades nunca se cerraron dentro del periodo de desarrollo.

Hablo todo el tiempo con profesionales de la seguridad, CISOs y CEOs, y anecdóticamente, me he dado cuenta de que muchas empresas se frustran tanto con el número de vulnerabilidades encontradas que no pueden ser mitigadas (además de la plaga conocida como falsos positivos), que dejan de escanear en busca de ellas por completo, cruzando los dedos y esperando lo mejor.

¿Por qué los profesionales de la seguridad de las aplicaciones dejan que esto ocurra?

No se equivoque: La gente de AppSec es dolorosamente consciente de los problemas en el código. Después de todo, esa es una de sus principales habilidades que los convierte en un recurso de equipo tan valioso. Sin embargo, a menudo se ven obstaculizados por varios factores.

Por ejemplo, un director de AppSec encontrará un problema y preguntará al desarrollador: "¿puedes arreglar el código?". La respuesta a esta importante pregunta difiere de una organización a otra, pero en general, el desarrollador está tan apretado cumpliendo estrictos sprints de entrega de características que simplemente no tiene tiempo para arreglar estos problemas, ni herramientas decentes para ayudarles. Los propios profesionales de la seguridad de las aplicaciones pueden ser capaces de identificar las vulnerabilidades, pero a menudo no tienen las habilidades y/o el acceso para remediarlas en el acto.

También debemos darnos cuenta de que para cada problema hay que encontrar una solución, aplicarla y probarla. Para el más mínimo problema que se encuentre en el código, el tiempo que puede llevar arreglarlo, por no hablar de los recursos necesarios, es inmenso. Hay más de 700 vulnerabilidades que pueden introducirse en el software, y es sencillamente imposible que una sola persona pueda defenderse de todas ellas. Por esta razón, la mayoría de las empresas se limitan a seguir el Top 10 de OWASP. Mientras tanto, los desarrolladores siguen construyendo características y, a su vez, siguen introduciendo vulnerabilidades en el código que escriben.

¿Cuál es la solución?

El hecho es que no damos a nuestros desarrolladores las herramientas y la formación necesarias para fomentar el éxito de la codificación segura. No hay normas que obliguen a las organizaciones a garantizar que los desarrolladores posean las habilidades de seguridad adecuadas, y es una triste realidad que la mayoría de las universidades y las prácticas no preparan a los desarrolladores junior para codificar de forma segura, tampoco.

Cuando alguien quiere pilotar un avión, hay un proceso muy riguroso que garantiza la formación, la experiencia práctica, los controles médicos, los conocimientos de seguridad y los exámenes antes de poder volar. Nadie se atrevería a imaginar que se le dejaría suelto en el cielo sin esta amplia preparación y validación de habilidades, y sin embargo esto es lo que ocurre en el día a día con la escritura de código.  

Tenemos que dedicar tiempo a educar a los desarrolladores en la escritura de código seguro. Sin embargo, en el mundo actual, en el que el desarrollo de software es rápido y los buenos desarrolladores y profesionales de la seguridad escasean, nunca parece ser una prioridad. Es hora de cambiar la conversación.

Un reciente titular del Foro Económico Mundial gritaba: "No puede haber economía digital sin seguridad", y el contenido que lo acompañaba argumentaba la necesidad de que la seguridad sea una parte fundamental de cualquier estrategia de transformación digital. "La seguridad es lo que protege a las empresas, permitiéndoles innovar y crear nuevos productos y servicios. Más allá de un papel defensivo, la seguridad proporciona a las empresas una ventaja estratégica de crecimiento."

Mejorar las habilidades y los resultados de la codificación segura añadirá una poderosa capa de ciberprotección para las organizaciones, ayudándolas a crear un código mejor y más rápido. Los desarrolladores no necesitan convertirse en expertos en seguridad, pero hay que capacitarlos de forma positiva y práctica para que sean la primera línea de defensa contra los ciberataques. Los desarrolladores pueden ser los próximos héroes de la seguridad y la innovación. Son personas muy inteligentes, resuelven problemas de forma creativa y, por lo general, están dispuestos a desarrollar sus habilidades. Aproveche sus puntos fuertes con la formación especializada que se merecen y comprométase con un mayor nivel de seguridad del software. Lea nuestro libro blanco para saber más.

Cuando alguien quiere pilotar un avión, hay un proceso muy riguroso que garantiza la formación, la experiencia práctica, los controles médicos, los conocimientos de seguridad y los exámenes antes de poder volar. Nadie se atrevería a imaginar que se le dejaría suelto en el cielo sin esta amplia preparación y validación de habilidades, y sin embargo esto es lo que ocurre en el día a día con la escritura de código.
Acceso a recursos

Haga clic en el siguiente enlace y descargue el PDF de este recurso.

Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.

Ver el informeReservar una demostración
Descargar PDF
Ver recurso
Compartir en:
¿Quiere saber más?

Compartir en:
Autor
Doctor Matias Madou
Publicado el 26 de septiembre de 2018

Matias Madou, Ph.D. es experto en seguridad, investigador y CTO y cofundador de Secure Code Warrior. Matias obtuvo su doctorado en Seguridad de Aplicaciones en la Universidad de Gante, centrándose en soluciones de análisis estático. Más tarde se incorporó a Fortify en EE.UU., donde se dio cuenta de que no bastaba con detectar problemas de código sin ayudar a los desarrolladores a escribir código seguro. Esto le inspiró para desarrollar productos que ayuden a los desarrolladores, alivien la carga de la seguridad y superen las expectativas de los clientes. Cuando no está en su escritorio como parte de Team Awesome, le gusta estar en el escenario presentando en conferencias como RSA Conference, BlackHat y DefCon.

Matías es un investigador y desarrollador con más de 15 años de experiencia práctica en seguridad de software. Ha desarrollado soluciones para empresas como Fortify Software y su propia empresa Sensei Security. A lo largo de su carrera, Matías ha dirigido múltiples proyectos de investigación sobre seguridad de aplicaciones que han dado lugar a productos comerciales y cuenta con más de 10 patentes en su haber. Cuando está lejos de su escritorio, Matias ha servido como instructor para la formación de seguridad de aplicaciones avanzadas courses y regularmente habla en conferencias mundiales como la Conferencia RSA, Black Hat, DefCon, BSIMM, OWASP AppSec y BruCon.

Matías es doctor en Ingeniería Informática por la Universidad de Gante, donde estudió la seguridad de las aplicaciones mediante la ofuscación de programas para ocultar el funcionamiento interno de una aplicación.

Compartir en:

Es bien conocida la teoría de que las cucarachas pueden sobrevivir a todo, incluso a una explosión nuclear. Aunque esa teoría sólo es cierta hasta cierto punto, su sencilla composición corporal las hace extremadamente resistentes para su tamaño y difíciles de erradicar en la mayoría de las condiciones.

He estado pensando... si las cucarachas tuvieran un equivalente en el mundo digital, tendrían que ser las vulnerabilidades de inyección SQL (SQLi) en el código. Se trata de una vulnerabilidad conocida desde hace más de veinte años y, sin embargo, las organizaciones son víctimas de ellas una y otra vez. El extenso y costoso ataque a Target fue el resultado de la inyección SQL, al igual que un caso de piratería electoral en Illinois en el que se expusieron 200.000 registros de votantes, lo que llevó al FBI a recomendar a todos los administradores de TI que trabajaran rápidamente para reforzar sus prácticas de seguridad.

El Informe de la Iniciativa de Inteligencia de Hackers de Imperva reveló que entre 2005 y 2011, los ataques SQLi se utilizaron en el 83% de todas las violaciones de datos reportadas. Hoy en día, las vulnerabilidades de inyección siguen siendo la amenaza número uno en el Top 10 de OWASP. Son relativamente sencillas, pero no mueren.

Parece ridículo que esta misma vulnerabilidad siga apareciendo en un número importante de análisis de seguridad de aplicaciones. Sabemos cómo funciona y sabemos cómo detenerla. ¿Cómo es posible? La verdad es que la seguridad de nuestro software tiene un amplio margen de mejora.

El informe de Veracode sobre el estado de la seguridad del software -basado en 400.000 escaneos de aplicaciones en 2017- reveló una estadística alarmante: solo el 30% de las aplicaciones pasaron la política OWASP Top 10. Este ha sido un tema constante en los últimos cinco años, con inyecciones SQL que aparecen en casi 1 de cada 3 aplicaciones recién escaneadas. Esto evidencia un problema endémico; no estamos aprendiendo de nuestros errores, y los CISOs parecen enfrentarse a una ardua batalla para poder conseguir suficiente talento en seguridad. Normalmente, la proporción de especialistas en seguridad de aplicaciones con respecto a los desarrolladores es de 1:100.

¿Por qué la seguridad de los programas informáticos está en peligro de extinción?

No es ningún secreto que el talento especializado en seguridad es escaso, pero también debemos prestar atención al hecho de que los desarrolladores no están solucionando los problemas a medida que surgen, y están claramente mal equipados para no introducir vulnerabilidades en primer lugar. En el mismo informe de Veracode, se divulgó que había mitigaciones documentadas para sólo el 14,4% de todas las vulnerabilidades de desarrollo. En otras palabras, la mayoría de las vulnerabilidades se presentaron sin mitigación de desarrollo. Menos de un tercio de las vulnerabilidades se cerraron en los primeros 90 días, y el 42% de las vulnerabilidades nunca se cerraron dentro del periodo de desarrollo.

Hablo todo el tiempo con profesionales de la seguridad, CISOs y CEOs, y anecdóticamente, me he dado cuenta de que muchas empresas se frustran tanto con el número de vulnerabilidades encontradas que no pueden ser mitigadas (además de la plaga conocida como falsos positivos), que dejan de escanear en busca de ellas por completo, cruzando los dedos y esperando lo mejor.

¿Por qué los profesionales de la seguridad de las aplicaciones dejan que esto ocurra?

No se equivoque: La gente de AppSec es dolorosamente consciente de los problemas en el código. Después de todo, esa es una de sus principales habilidades que los convierte en un recurso de equipo tan valioso. Sin embargo, a menudo se ven obstaculizados por varios factores.

Por ejemplo, un director de AppSec encontrará un problema y preguntará al desarrollador: "¿puedes arreglar el código?". La respuesta a esta importante pregunta difiere de una organización a otra, pero en general, el desarrollador está tan apretado cumpliendo estrictos sprints de entrega de características que simplemente no tiene tiempo para arreglar estos problemas, ni herramientas decentes para ayudarles. Los propios profesionales de la seguridad de las aplicaciones pueden ser capaces de identificar las vulnerabilidades, pero a menudo no tienen las habilidades y/o el acceso para remediarlas en el acto.

También debemos darnos cuenta de que para cada problema hay que encontrar una solución, aplicarla y probarla. Para el más mínimo problema que se encuentre en el código, el tiempo que puede llevar arreglarlo, por no hablar de los recursos necesarios, es inmenso. Hay más de 700 vulnerabilidades que pueden introducirse en el software, y es sencillamente imposible que una sola persona pueda defenderse de todas ellas. Por esta razón, la mayoría de las empresas se limitan a seguir el Top 10 de OWASP. Mientras tanto, los desarrolladores siguen construyendo características y, a su vez, siguen introduciendo vulnerabilidades en el código que escriben.

¿Cuál es la solución?

El hecho es que no damos a nuestros desarrolladores las herramientas y la formación necesarias para fomentar el éxito de la codificación segura. No hay normas que obliguen a las organizaciones a garantizar que los desarrolladores posean las habilidades de seguridad adecuadas, y es una triste realidad que la mayoría de las universidades y las prácticas no preparan a los desarrolladores junior para codificar de forma segura, tampoco.

Cuando alguien quiere pilotar un avión, hay un proceso muy riguroso que garantiza la formación, la experiencia práctica, los controles médicos, los conocimientos de seguridad y los exámenes antes de poder volar. Nadie se atrevería a imaginar que se le dejaría suelto en el cielo sin esta amplia preparación y validación de habilidades, y sin embargo esto es lo que ocurre en el día a día con la escritura de código.  

Tenemos que dedicar tiempo a educar a los desarrolladores en la escritura de código seguro. Sin embargo, en el mundo actual, en el que el desarrollo de software es rápido y los buenos desarrolladores y profesionales de la seguridad escasean, nunca parece ser una prioridad. Es hora de cambiar la conversación.

Un reciente titular del Foro Económico Mundial gritaba: "No puede haber economía digital sin seguridad", y el contenido que lo acompañaba argumentaba la necesidad de que la seguridad sea una parte fundamental de cualquier estrategia de transformación digital. "La seguridad es lo que protege a las empresas, permitiéndoles innovar y crear nuevos productos y servicios. Más allá de un papel defensivo, la seguridad proporciona a las empresas una ventaja estratégica de crecimiento."

Mejorar las habilidades y los resultados de la codificación segura añadirá una poderosa capa de ciberprotección para las organizaciones, ayudándolas a crear un código mejor y más rápido. Los desarrolladores no necesitan convertirse en expertos en seguridad, pero hay que capacitarlos de forma positiva y práctica para que sean la primera línea de defensa contra los ciberataques. Los desarrolladores pueden ser los próximos héroes de la seguridad y la innovación. Son personas muy inteligentes, resuelven problemas de forma creativa y, por lo general, están dispuestos a desarrollar sus habilidades. Aproveche sus puntos fuertes con la formación especializada que se merecen y comprométase con un mayor nivel de seguridad del software. Lea nuestro libro blanco para saber más.

Cuando alguien quiere pilotar un avión, hay un proceso muy riguroso que garantiza la formación, la experiencia práctica, los controles médicos, los conocimientos de seguridad y los exámenes antes de poder volar. Nadie se atrevería a imaginar que se le dejaría suelto en el cielo sin esta amplia preparación y validación de habilidades, y sin embargo esto es lo que ocurre en el día a día con la escritura de código.

Índice

Descargar PDF
Ver recurso
¿Quiere saber más?

Matias Madou, Ph.D. es experto en seguridad, investigador y CTO y cofundador de Secure Code Warrior. Matias obtuvo su doctorado en Seguridad de Aplicaciones en la Universidad de Gante, centrándose en soluciones de análisis estático. Más tarde se incorporó a Fortify en EE.UU., donde se dio cuenta de que no bastaba con detectar problemas de código sin ayudar a los desarrolladores a escribir código seguro. Esto le inspiró para desarrollar productos que ayuden a los desarrolladores, alivien la carga de la seguridad y superen las expectativas de los clientes. Cuando no está en su escritorio como parte de Team Awesome, le gusta estar en el escenario presentando en conferencias como RSA Conference, BlackHat y DefCon.

Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.

Reservar una demostraciónDescargar
Compartir en:
Centro de recursos

Recursos para empezar

Más entradas
Centro de recursos

Recursos para empezar

Más entradas