Pruebas de seguridad para aplicaciones respaldadas por GraphQL

Rate this content
Bookmark

Con StackHawk, los equipos de ingeniería pueden realizar pruebas de seguridad en aplicaciones respaldadas por GraphQL para encontrar y solucionar vulnerabilidades antes de que lleguen a producción. Con pruebas automatizadas en cada PR, puedes estar seguro de que tu API de GraphQL es segura. Únete a Ryan Severns, cofundador de StackHawk, para obtener una breve descripción general de la seguridad de GraphQL con StackHawk.

This talk has been presented at GraphQL Galaxy 2020, check out the latest edition of this Tech Conference.

FAQ

StackHawk es una herramienta de prueba de seguridad de aplicaciones que permite a los desarrolladores encontrar y solucionar errores de seguridad de manera eficiente.

StackHawk realiza pruebas de seguridad de aplicaciones dinámicas, analizando activamente versiones en ejecución de aplicaciones, incluyendo HTML del lado del servidor, APIs REST, aplicaciones de una sola página y GraphQL.

StackHawk es único en la realización de pruebas automatizadas activas en GraphQL, enfocándose en buscar posibles vulnerabilidades de seguridad en los puntos finales de GraphQL.

Las pruebas en StackHawk se configuran mediante un archivo YAML donde se especifica qué escanear, cómo manejar la autenticación y otros detalles de personalización del escáner.

StackHawk se integra en el proceso de CI/CD para ejecutar pruebas de seguridad cada vez que se abre una solicitud de extracción, ayudando a detectar y corregir vulnerabilidades antes de la producción.

StackHawk proporciona un acceso fácil a la descripción de la vulnerabilidad, enlaces a documentación para su solución, detalles de las solicitudes y respuestas involucradas y comandos para recrear el error.

Sí, StackHawk ofrece una cuenta gratuita para un solo usuario y pruebas gratuitas para productos en equipo, permitiendo probar la herramienta antes de realizar cualquier compromiso financiero.

Ryan Severns
Ryan Severns
7 min
02 Jul, 2021

Comments

Sign in or register to post your comment.
Video Summary and Transcription
Soy Ryan Severns, COO de StackHawk, una herramienta de pruebas de seguridad de aplicaciones que se enfoca en GraphQL. StackHawk ofrece pruebas automatizadas activas de los puntos finales de GraphQL para encontrar posibles vulnerabilidades de seguridad. La herramienta se integra con herramientas de desarrollo como Slack y Jira para una fácil gestión de vulnerabilidades y corrección de errores. Proporciona información detallada, incluyendo la solicitud, la respuesta y el comando curl, para depurar. StackHawk ofrece cuentas gratuitas para usuarios individuales y pruebas de equipo, y los visitantes pueden encontrar más información en su stand en GraphQL Galaxy.

1. Introducción a StackHawk y Pruebas de GraphQL

Short description:

Soy Ryan Severns, COO de StackHawk, una herramienta de prueba de seguridad de aplicaciones. Nos enfocamos en GraphQL y ofrecemos pruebas automatizadas activas de los puntos finales de GraphQL para encontrar posibles vulnerabilidades de seguridad. Creemos en la automatización en CI/CD y nos aseguramos de que cada solicitud de extracción se pruebe en busca de vulnerabilidades antes de pasar a producción. Todo comienza con un archivo de configuración YAML donde se describe qué escanear, incluyendo HTML del lado del servidor, aplicaciones de una sola página, APIs REST y GraphQL.

¡Hola a todos, GraphQL Galaxy! Soy Ryan Severns, uno de los fundadores y COO de StackHawk. Estoy aquí para contarles un poco sobre lo que hacemos en StackHawk. Somos una herramienta de prueba de seguridad de aplicaciones. Facilitamos a los desarrolladores encontrar y solucionar errores de seguridad. Y en particular, tenemos algunas cosas realmente geniales relacionadas con GraphQL. Así que les contaré sobre eso.

Como dije, hacemos pruebas de seguridad de aplicaciones y también de las APIs subyacentes. Y parte de eso es GraphQL. Si no estás familiarizado con las pruebas de seguridad de aplicaciones, hay realmente tres tipos principales. Uno es el análisis de composición de software. Consiste en analizar los componentes de código abierto en busca de vulnerabilidades. Otro es el análisis de código estático. Consiste en analizar el código en busca de tipos de errores conocidos en el lenguaje que estés utilizando. Y lo que hacemos aquí en StackHawk se llama prueba de seguridad de aplicaciones dinámicas. Realizamos pruebas activas contra tu aplicación, contra una versión en ejecución de tu aplicación. Y también probamos el HTML del lado del servidor, las APIs REST, las aplicaciones de una sola página y también probamos GraphQL. Somos el único producto que realiza pruebas automatizadas activas de GraphQL. Hay algunos que verifican algunas buenas prácticas, asegurándose de que estés haciendo ciertas cosas que se conocen como buenas prácticas desde el punto de vista de la seguridad. Nosotros somos los únicos que ejecutan pruebas activas contra tus puntos finales de GraphQL y buscan posibles vulnerabilidades de seguridad. Un gran principio para StackHawk es la automatización en CI/CD. Creemos que cada vez que abres una solicitud de extracción, se debe ejecutar una prueba de seguridad de aplicaciones. Asegúrate de que no estás introduciendo nuevas vulnerabilidades antes de que pase la compilación y se envíe a producción. En última instancia, hacemos que encontrar y solucionar las vulnerabilidades de seguridad sea muy sencillo. Permíteme contarte un poco sobre cómo funciona. Todo comienza con un archivo de configuración YAML. Como dije, describimos qué escanear. Tenemos HTML del lado del servidor, aplicaciones de una sola página,

2. Configuración de Pruebas de GraphQL y Solución de Errores

Short description:

Puedes configurar la autenticación y personalizar el escáner para las pruebas de GraphQL. Ejecutándolo en Docker, se puede implementar en cualquier lugar, incluyendo localmente y en CI/CD. Proporciona pruebas rápidas de seguridad de aplicaciones con resultados en la terminal y enlaces a la aplicación StackHawk para solucionar errores. StackHawk se integra con herramientas de desarrollo como Slack y Jira, facilitando la gestión de vulnerabilidades y el acceso a la documentación de solución de errores.

APIs REST, GraphQL. Describes qué escanear. Si tienes autenticación para tu aplicación, puedes configurarla aquí. También tenemos todo tipo de personalización en términos de cómo se ejecuta el escáner. Lo bueno de GraphQL es que la configuración es realmente simple. Puedes ver en la imagen aquí, marcas GraphQL habilitado igual a verdadero y lo apuntas a la ruta del esquema de tu punto de introspección. También puedes controlar ciertas cosas en torno a las operaciones que estás probando, la profundidad de recursión. Hay mucho que puedes personalizar allí. Luego inicias un escaneo con el comando Docker run Hawk scan. Este GIF se mostrará y nos dará una vista previa de ello. Lo bueno de que se ejecute en Docker es que puede ejecutarse en cualquier lugar. Puede ejecutarse localmente en tu máquina mientras desarrollas. Muy fácil de implementar en CI/CD. Puedes apuntarlo a una aplicación en producción. Siempre digo que tengas precaución porque esto ejecuta una prueba de seguridad activa e intenta encontrar errores de validación de entrada, entre otras cosas. Intenta ingresar datos en tu base de datos. Por eso siempre recomendamos probar esto en un entorno de prueba o preproducción en CI/CD. Es una prueba de seguridad de aplicaciones muy rápida. Puedes ver los resultados en la terminal. Lo cual es genial para los registros de CI/CD. Y siempre tiene un enlace a los hallazgos dentro de la aplicación StackHawk. Lo cual mostraré a continuación. Y eso ayuda a saber a dónde ir cuando realmente necesitas solucionar un error. Entonces, ingresas a la aplicación StackHawk. Lo primero que digo es que creemos firmemente en la integración con herramientas de desarrollo. Nos integramos con Slack, con Jira. Alertas en Slack, gestión de problemas en Jira. Y solo llegamos a StackHawk cuando hay una vulnerabilidad que necesitas solucionar. Y cuando llegas allí, lo hacemos muy fácil para que ingreses. Descubras el contexto de ese error. Tenemos una descripción de cuál es la vulnerabilidad. Tenemos enlaces a

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

De GraphQL Zero a GraphQL Hero con RedwoodJS
GraphQL Galaxy 2021GraphQL Galaxy 2021
32 min
De GraphQL Zero a GraphQL Hero con RedwoodJS
Top Content
Tom Pressenwurter introduces Redwood.js, a full stack app framework for building GraphQL APIs easily and maintainably. He demonstrates a Redwood.js application with a React-based front end and a Node.js API. Redwood.js offers a simplified folder structure and schema for organizing the application. It provides easy data manipulation and CRUD operations through GraphQL functions. Redwood.js allows for easy implementation of new queries and directives, including authentication and limiting access to data. It is a stable and production-ready framework that integrates well with other front-end technologies.
Estado Local y Caché del Servidor: Encontrando un Equilibrio
Vue.js London Live 2021Vue.js London Live 2021
24 min
Estado Local y Caché del Servidor: Encontrando un Equilibrio
Top Content
This Talk discusses handling local state in software development, particularly when dealing with asynchronous behavior and API requests. It explores the challenges of managing global state and the need for actions when handling server data. The Talk also highlights the issue of fetching data not in Vuex and the challenges of keeping data up-to-date in Vuex. It mentions alternative tools like Apollo Client and React Query for handling local state. The Talk concludes with a discussion on GitLab going public and the celebration that followed.
Baterías Incluidas Reimaginadas - El Resurgimiento de GraphQL Yoga
GraphQL Galaxy 2021GraphQL Galaxy 2021
33 min
Baterías Incluidas Reimaginadas - El Resurgimiento de GraphQL Yoga
Envelope is a powerful GraphQL plugin system that simplifies server development and allows for powerful plugin integration. It provides conformity for large corporations with multiple GraphQL servers and can be used with various frameworks. Envelope acts as the Babel of GraphQL, allowing the use of non-spec features. The Guild offers GraphQL Hive, a service similar to Apollo Studio, and encourages collaboration with other frameworks and languages.
Aplicaciones sólidas de React y GraphQL para personas con prisa
GraphQL Galaxy 2022GraphQL Galaxy 2022
29 min
Aplicaciones sólidas de React y GraphQL para personas con prisa
The Talk discusses the challenges and advancements in using GraphQL and React together. It introduces RedwoodJS, a framework that simplifies frontend-backend integration and provides features like code generation, scaffolding, and authentication. The Talk demonstrates how to set up a Redwood project, generate layouts and models, and perform CRUD operations. Redwood automates many GraphQL parts and provides an easy way for developers to get started with GraphQL. It also highlights the benefits of Redwood and suggests checking out RedwoodJS.com for more information.
Adoptando GraphQL en una Empresa
GraphQL Galaxy 2021GraphQL Galaxy 2021
32 min
Adoptando GraphQL en una Empresa
Today's Talk is about adopting GraphQL in an enterprise. It discusses the challenges of using REST APIs and the benefits of GraphQL. The Talk explores different approaches to adopting GraphQL, including coexistence with REST APIs. It emphasizes the power of GraphQL and provides tips for successful adoption. Overall, the Talk highlights the advantages of GraphQL in terms of efficiency, collaboration, and control over APIs.
Deja paso a los resolvers: un nuevo enfoque para la ejecución de GraphQL
GraphQL Galaxy 2022GraphQL Galaxy 2022
16 min
Deja paso a los resolvers: un nuevo enfoque para la ejecución de GraphQL
GraphQL has made a huge impact in the way we build client applications, websites, and mobile apps. Despite the dominance of resolvers, the GraphQL specification does not mandate their use. Introducing Graphast, a new project that compiles GraphQL operations into execution and output plans, providing advanced optimizations. In GraphFast, instead of resolvers, we have plan resolvers that deal with future data. Graphfast plan resolvers are short and efficient, supporting all features of modern GraphQL.

Workshops on related topic

Masterclass Práctica: Introducción a Pentesting para Aplicaciones Web / APIs Web
JSNation US 2024JSNation US 2024
148 min
Masterclass Práctica: Introducción a Pentesting para Aplicaciones Web / APIs Web
Featured Workshop
Gregor Biswanger
Gregor Biswanger
En esta masterclass práctica, estarás equipado con las herramientas para probar efectivamente la seguridad de las aplicaciones web. Este curso está diseñado tanto para principiantes como para aquellos que ya están familiarizados con las pruebas de seguridad de aplicaciones web y desean ampliar su conocimiento. En un mundo donde los sitios web juegan un papel cada vez más central, asegurar la seguridad de estas tecnologías es crucial. Comprender la perspectiva del atacante y conocer los mecanismos de defensa apropiados se han convertido en habilidades esenciales para los profesionales de TI.Esta masterclass, dirigida por el renombrado entrenador Gregor Biswanger, te guiará a través del uso de herramientas de pentesting estándar de la industria como Burp Suite, OWASP ZAP y el marco profesional de pentesting Metasploit. Aprenderás a identificar y explotar vulnerabilidades comunes en aplicaciones web. A través de ejercicios prácticos y desafíos, podrás poner en práctica tu conocimiento teórico y expandirlo. En este curso, adquirirás las habilidades fundamentales necesarias para proteger tus sitios web de ataques y mejorar la seguridad de tus sistemas.
Construye una aplicación WordPress sin cabeza con Next.js y WPGraphQL
React Summit 2022React Summit 2022
173 min
Construye una aplicación WordPress sin cabeza con Next.js y WPGraphQL
Top Content
WorkshopFree
Kellen Mace
Kellen Mace
En esta masterclass, aprenderás cómo construir una aplicación Next.js que utiliza Apollo Client para obtener datos de un backend de WordPress sin cabeza y usarlo para renderizar las páginas de tu aplicación. Aprenderás cuándo debes considerar una arquitectura de WordPress sin cabeza, cómo convertir un backend de WordPress en un servidor GraphQL, cómo componer consultas usando el IDE GraphiQL, cómo colocar fragmentos GraphQL con tus componentes, y más.
Masterclass de Pruebas de API con Postman
TestJS Summit 2023TestJS Summit 2023
48 min
Masterclass de Pruebas de API con Postman
Top Content
WorkshopFree
Pooja Mistry
Pooja Mistry
En el panorama siempre en evolución del desarrollo de software, garantizar la fiabilidad y funcionalidad de las API se ha vuelto primordial. "Pruebas de API con Postman" es una masterclass completa diseñada para equipar a los participantes con los conocimientos y habilidades necesarios para sobresalir en las pruebas de API utilizando Postman, una herramienta poderosa ampliamente adoptada por profesionales en el campo. Esta masterclass profundiza en los fundamentos de las pruebas de API, avanza a técnicas de prueba avanzadas y explora la automatización, las pruebas de rendimiento y el soporte multiprotocolo, proporcionando a los asistentes una comprensión holística de las pruebas de API con Postman.
Únete a nosotros para esta masterclass para desbloquear todo el potencial de Postman para las pruebas de API, agilizar tus procesos de prueba y mejorar la calidad y fiabilidad de tu software. Ya seas un principiante o un probador experimentado, esta masterclass te equipará con las habilidades necesarias para sobresalir en las pruebas de API con Postman.
Construir con SvelteKit y GraphQL
GraphQL Galaxy 2021GraphQL Galaxy 2021
140 min
Construir con SvelteKit y GraphQL
Top Content
WorkshopFree
Scott Spence
Scott Spence
¿Alguna vez has pensado en construir algo que no requiera mucho código de plantilla con un tamaño de paquete pequeño? En esta masterclass, Scott Spence irá desde el hola mundo hasta cubrir el enrutamiento y el uso de endpoints en SvelteKit. Configurarás una API de GraphQL en el backend y luego usarás consultas de GraphQL con SvelteKit para mostrar los datos de la API de GraphQL. Construirás un proyecto rápido y seguro que utiliza las características de SvelteKit, y luego lo desplegarás como un sitio completamente estático. Este curso es para los curiosos de Svelte que no han tenido una experiencia extensa con SvelteKit y quieren una comprensión más profunda de cómo usarlo en aplicaciones prácticas.

Tabla de contenidos:
- Inicio e introducción a Svelte
- Inicializar el proyecto frontend
- Recorrido por el proyecto esqueleto de SvelteKit
- Configurar el proyecto backend
- Consultar datos con GraphQL
- Recuperación de datos en el frontend con GraphQL
- Estilización
- Directivas de Svelte
- Enrutamiento en SvelteKit
- Endpoints en SvelteKit
- Despliegue en Netlify
- Navegación
- Mutaciones en GraphCMS
- Envío de mutaciones GraphQL a través de SvelteKit
- Preguntas y respuestas
Modelado de Bases de Datos Relacionales para GraphQL
GraphQL Galaxy 2020GraphQL Galaxy 2020
106 min
Modelado de Bases de Datos Relacionales para GraphQL
Top Content
Workshop
Adron Hall
Adron Hall
En esta masterclass profundizaremos en el modelado de datos. Comenzaremos con una discusión sobre varios tipos de bases de datos y cómo se mapean a GraphQL. Una vez que se haya establecido esa base, el enfoque se desplazará a tipos específicos de bases de datos y cómo construir modelos de datos que funcionen mejor para GraphQL en varios escenarios.
Índice de contenidosParte 1 - Hora 1      a. Modelado de Datos de Bases de Datos Relacionales      b. Comparando Bases de Datos Relacionales y NoSQL      c. GraphQL con la Base de Datos en menteParte 2 - Hora 2      a. Diseño de Modelos de Datos Relacionales      b. Relación, Construcción de Tablas Multijoin      c. Complejidades de Consulta de Modelado de Datos Relacionales y GraphQL
Prerrequisitos      a. Herramienta de modelado de datos. El formador utilizará dbdiagram      b. Postgres, aunque no es necesario instalar esto localmente, ya que estaré utilizando una imagen de Dicker de Postgres, de Docker Hub para todos los ejemplos      c. Hasura
Construye y Despliega un Backend con Fastify y Platformatic
JSNation 2023JSNation 2023
104 min
Construye y Despliega un Backend con Fastify y Platformatic
WorkshopFree
Matteo Collina
Matteo Collina
Platformatic te permite desarrollar rápidamente APIs GraphQL y REST con un esfuerzo mínimo. La mejor parte es que también te permite aprovechar todo el potencial de Node.js y Fastify cuando lo necesites. Puedes personalizar completamente una aplicación de Platformatic escribiendo tus propias características y complementos adicionales. En el masterclass, cubriremos tanto nuestros módulos de código abierto como nuestra oferta en la nube:- Platformatic OSS (open-source software) — Herramientas y bibliotecas para construir rápidamente aplicaciones robustas con Node.js (https://oss.platformatic.dev/).- Platformatic Cloud (actualmente en beta) — Nuestra plataforma de alojamiento que incluye características como aplicaciones de vista previa, métricas integradas e integración con tu flujo de Git (https://platformatic.dev/).
En este masterclass aprenderás cómo desarrollar APIs con Fastify y desplegarlas en la nube de Platformatic.