La seguridad de PHP en Snyk Code ya está disponible de forma general
DeveloperSteve Coochin
26 de enero de 2022
0 minutos de lecturaHace poco anunciamos nuestra versión beta con compatibilidad para PHP en Snyk Code, que permite identificar posibles vulnerabilidades de seguridad de PHP en el código. Tras un exitoso programa de beta pública, la compatibilidad con la seguridad de PHP en Snyk Code ya está disponible de forma general.
PHP es un lenguaje de programación popular que usan desarrolladores de todo el mundo. En esta publicación del blog, veremos algunas de las funciones de Snyk Code y cómo usarlo con PHP. También incluiremos algunos ejemplos para ayudarte a empezar, tanto si estás dando tus primeros pasos como si tienes experiencia como desarrollador.
Novedades de la disponibilidad general
La compatibilidad con la seguridad del lenguaje PHP en Snyk Code se suma a nuestra funcionalidad existente de análisis de PHP, que analiza los manifiestos de Composer para identificar vulnerabilidades en bibliotecas de código abierto y dependencias.
Además, la extensión de Snyk para Visual Studio Code ahora también admite el análisis de código y de Composer para PHP. Esto es especialmente útil porque resalta código que podría no ser seguro mientras lo escribes y te avisa si hay vulnerabilidades ocultas en una biblioteca de código abierto o una dependencia.

La versión de disponibilidad general de PHP en Snyk Code te permite profundizar en los problemas y rastrearlos a través del código cuando sea necesario. Esto resulta útil al tratar con funciones rastreables que pueden originarse en otros puntos del código.

Prueba el análisis de Snyk Code con nuestra app de demostración para PHP
En Snyk, nos encanta crear aplicaciones de demostración intencionalmente vulnerables, a las que llamamos apps goof. Son una excelente manera de probar en la práctica y encontrar vulnerabilidades reales. Con el lanzamiento de la compatibilidad con PHP en Snyk Code, agregamos una app PHP goof.
Veremos algunos ejemplos con la app PHP goof. Para probarla, necesitarás una cuenta de Snyk. Si todavía no tienes una, puedes crear una gratis en segundos.
Para empezar, inicia sesión en el panel de Snyk y agrega un proyecto. Para este análisis, puedes usar la opción monitorear repositorio público para analizar el repositorio de la app PHP goof, o puedes bifurcar el código y conectarlo al repositorio que prefieras.

Consejo profesional: El análisis de repositorios públicos también es útil para analizar proyectos de código abierto que usas todos los días.
El análisis toma solo unos instantes, y enseguida puedes ver que se identificaron algunos problemas tanto en el código como en los manifiestos de paquetes. Snyk Code identifica docenas de tipos de problemas y, literalmente, millones de combinaciones de origen y destino en los flujos de datos. Veamos dos ejemplos muy comunes con la app PHP goof.
Inyección SQL
Lo primero que notarás después de ejecutar un análisis es lo fácil que Snyk Code hace revisar tu código. En la captura de pantalla de abajo, puedes ver que identifica una consulta a la base de datos a la que se le pasan datos de entrada sin sanitizar.

Además de mostrar vulnerabilidades de forma rápida y clara, Snyk Code también ofrece análisis de correcciones y recomendaciones para remediar los problemas. Si desarrollas en PHP y no tienes mucha experiencia en seguridad, quizá no sepas que hay varias formas de procesar los datos de entrada de manera segura en PHP, ya sea mediante una biblioteca o con la función filter_var. Snyk te brinda la experiencia en seguridad en tiempo real que necesitas para mantener tu código seguro y te ayuda a aprender en el proceso.
Si te interesa aprender más sobre la seguridad de PHP, consulta nuestra publicación 5 formas de prevenir la inyección de código en PHP.
Uso de credenciales incorporadas directamente en el código
En la app goof, usamos intencionalmente credenciales de MySQL codificadas para que aparezcan en el análisis de Snyk Code. Como puedes ver en la captura de pantalla de abajo, Snyk Code las detectó y señaló como un problema. (Una forma más segura de gestionar las credenciales en el código sería almacenarlas como variables de entorno, ya sea en la plataforma o en un archivo de entorno).

Vulnerabilidades de código abierto
Además, el análisis también identificó un problema con una versión de una biblioteca de código abierto incluida en el manifiesto de Composer. La incluimos intencionalmente en la app para mostrar cómo puede introducirse una vulnerabilidad de cross-site scripting.

Empieza a proteger tus proyectos de PHP
Nos entusiasma que la compatibilidad con PHP en Snyk Code ya esté disponible de forma general, y esperamos que a ti también. Pruébala con una cuenta gratuita de Snyk y envíanos tus comentarios.
Comienza con Capture the Flag
Aprende a resolver desafíos de Capture the Flag con nuestro taller virtual 101 a pedido.



