Pruebas de seguridad automatizadas de GraphQL para desarrolladores

Rate this content
Bookmark

El escáner de seguridad amigable para desarrolladores de NeuraLegion permite a los equipos de desarrollo realizar pruebas de seguridad precisas en cada compilación como parte de su pipeline. Las alertas falsas y las pruebas periódicas poco frecuentes resultan en deuda técnica y de seguridad, así como en productos inseguros. Pero, ¿qué es DAST primero para desarrolladores, cuándo y cómo debes integrarlo en tus pipelines y qué debes buscar al mejorar tu automatización de pruebas de seguridad de GraphQL? Únete a esta charla para estar al día.

9 min
09 Dec, 2021

Video Summary and Transcription

Neuraligions es un escáner de pruebas de seguridad de aplicaciones dinámicas diseñado para que los desarrolladores prueben aplicaciones, APIs y aseguren una seguridad confiable. Se integra perfectamente en los pipelines, proporcionando resultados precisos sin falsos positivos. El mayor problema con los escáneres de seguridad es la precisión, y Neuralegion aborda esto validando automáticamente los hallazgos y eliminando los falsos positivos. También proporciona visibilidad completa de problemas recurrentes y nuevos, junto con pautas de remedio amigables para los desarrolladores. Las integraciones con herramientas y APIs comunes hacen que la colaboración sea fluida y precisa.

Available in English

1. Introducción a Neuraligions

Short description:

Neuraligions es un escáner dinámico de pruebas de seguridad de aplicaciones diseñado para desarrolladores para probar aplicaciones, APIs y garantizar una seguridad confiable. Se integra perfectamente en los flujos de trabajo, proporcionando resultados precisos sin falsos positivos. Con Neuraligions, puedes automatizar las pruebas de seguridad para aplicaciones web, aplicaciones internas y APIs, con soporte para REST, SOAP y GraphQL. El escáner te permite definir el alcance de la prueba, manejar contenido dinámico y aprovechar scripts funcionales existentes. Las pruebas son rápidas, cubriendo varias categorías de pruebas y vulnerabilidades de lógica empresarial. Las pruebas autenticadas son totalmente compatibles.

♪♪ Soy Oli, VP aquí en Neuraligions, un escáner de pruebas de seguridad enfocado en desarrolladores. Gracias por unirte mientras discutimos la automatización precisa de las pruebas de seguridad para desarrolladores y el CI/CD.

Ahora, una breve introducción a Neuraligions. Somos un equipo global de expertos e investigadores en seguridad que creamos el mejor escáner de pruebas de seguridad de aplicaciones dinámicas diseñado para ser amado por los desarrolladores para probar tus aplicaciones, tus APIs, pero lo más importante, para ser confiable para tu seguridad. Estás lanzando software más rápido que nunca y la seguridad debe mantenerse al día y este proceso debe ser gestionado por los propios desarrolladores.

Te permitimos construir la superficie de escaneo desde las primeras pruebas unitarias ejecutando pruebas en cada compilación o cada solicitud de extracción. Esto se integra perfectamente en tus flujos de trabajo pero lo más importante, sin falsos positivos. Por lo tanto, puedes confiar en los resultados para detectar y solucionar vulnerabilidades de seguridad de manera rápida y sencilla. Pero echemos un vistazo a lo que hay debajo del capó. Tenemos una interfaz de usuario agradable para los expertos en seguridad para jugar y configurar escaneos manualmente. Pero estamos diseñados para que los desarrolladores gestionen el proceso de pruebas de seguridad, como mencioné antes.

Si te registras en nuestra cuenta gratuita, verás esta interfaz de usuario muy, muy agradable pero también notarás de inmediato que puedes ejecutar escaneos a través del repetidor de la CLI instalado mediante Docker Compose, NPM, Win y realmente puedes configurar tus escaneos como código con archivos de configuración YAML globales integrados en tu CI/CD. Para obtener más información, puedes consultar nuestra documentación para obtener una lista completa de comandos. Por lo tanto, puedes seguir en tu terminal para gestionar estos escaneos.

Entonces, ¿cómo puedes empezar a automatizar tus pruebas de seguridad hoy? En cuanto a la cobertura, te tenemos cubierto. Con Neural Legion, puedes comenzar a escanear cada compilación en busca de vulnerabilidades de seguridad como parte de tu CI. Ya sea contra tus aplicaciones web, tus aplicaciones internas o incluso tus APIs, ya sea REST, SOAP o incluso GraphQL. Los microservicios y las aplicaciones de una sola página son totalmente compatibles. Ya sea que apuntes nuestro escáner a una URL local o a una URL de producción, ya sea que ingiramos tus esquemas de API o incluso colecciones de Postman, o si estás cargando tus archivos de archivo HTTP, tus archivos heart en nuestro motor.

Esto también significa que realmente puedes definir el alcance de la prueba de seguridad, tal vez contra un único punto de entrada o un único punto final, o contra una nueva función específica que acabas de crear. Estos métodos de descubrimiento se pueden ejecutar por separado o incluso de manera concurrente, lo que significa que puedes manejar contenido dinámico del lado del cliente, JavaScript y más. ¿Estás utilizando Selenium o incluso Cypress, por ejemplo? Bueno, puedes comenzar a aprovechar esos scripts funcionales existentes y realizar escaneos con estos archivos heart. Esto significa que tus desarrolladores y QA ahora pueden comenzar a trabajar juntos, tratando los errores de seguridad como los funcionales sin necesidad de ser un experto en ciberseguridad. De cualquier manera, las pruebas son rápidas, se ejecutan en minutos u horas, no en días, manteniendo tu velocidad de DevOps. Sin embargo, cuanto más puedas encontrar y solucionar, mejor.

Tenemos una lista completa de categorías de pruebas que cubren el top 10 de OS, el top 10 de API de OS, Mitre 25 y más. Además, nuestro motor comprende el contexto, comprende las respuestas que recibimos del servidor de aplicaciones. Y podemos utilizar esto para probar vulnerabilidades de lógica empresarial, no solo tus inyecciones triviales, sino cómo nuestro motor puede pasar por alto la lógica o los mecanismos de validación en tus aplicaciones y APIs, eliminando aún más las pruebas de seguridad manuales y realmente poniendo las pruebas de seguridad en manos de los desarrolladores. Las pruebas autenticadas son totalmente compatibles para maximizar la cobertura, ya sea utilizando autenticación formal o autenticación de encabezado, NTLM, OAuth o incluso personalizada, autenticación de múltiples pasos, entre otros. Estamos cubiertos en ese aspecto.

2. Beneficios del escáner de Neuralegion

Short description:

El mayor problema con los escáneres de seguridad es la precisión. Los desarrolladores quieren problemas reales, no falsos positivos. Neuralegion valida automáticamente los hallazgos, eliminando los falsos positivos. Proporciona una visibilidad completa de los problemas recurrentes y nuevos, junto con pautas de remedio amigables para los desarrolladores. Las integraciones con herramientas comunes y APIs hacen que la colaboración sea fluida y precisa.

Pero creo que el mayor problema con los escáneres de seguridad es la precisión, ¿verdad? Levanten la mano si les encantan las alertas falsas. No, no lo pensé. ¿Cuánto tiempo pasan validando problemas o solucionando problemas de hace seis meses o un año? DevOps y CICD significan automatización, ¿verdad? ¿Cómo pueden hacerlo sin precisión?

Los desarrolladores quieren conocer problemas reales, no exageraciones. Siempre se habla de reducir los falsos positivos. Bueno, aquí en New Religion, nos gusta hablar de eliminar los falsos positivos por completo de forma automática. Ya sea que estés en una startup o una organización pequeña, probablemente sin un equipo de seguridad dedicado, o tal vez seas una gran organización empresarial donde los desarrolladores superan en número a la seguridad en 50 o incluso 100 a uno. De cualquier manera, estás desarrollando y lanzando a una velocidad vertiginosa con múltiples compilaciones al día, pero también introduciendo problemas de seguridad en producción a la misma velocidad.

Lo último que quieres hacer es comenzar a introducir un montón de falsos positivos en tu carga de trabajo que necesitan validación, sin mencionar que no puedes validar realmente tu riesgo. Los resultados simplemente se ignoran y prácticamente la herramienta se desactivará. Los falsos positivos en esta validación manual de resultados están perjudicando tus ciclos rápidos de lanzamiento y aumentando tu deuda técnica. El escáner de Neuralegion valida automáticamente cada hallazgo con una prueba de concepto completa sin necesidad de validación manual. Tus compilaciones no fallarán sin motivo y tu ticket de JIRA no se llenará de falsos positivos.

Este ejemplo a la derecha muestra una captura de pantalla generada automáticamente de este problema de seguridad de scripting entre sitios reflectante que causa esta ejecución emergente creada tal vez por un usuario malintencionado. Buscamos automáticamente esta reflexión como parte de nuestro proceso de validación y te lo presentamos. Confirmamos el problema y nos aseguramos de que no estés persiguiendo tu cola. Pero ahora que sabes qué se informa como real, ¿cómo solucionas los problemas? Bueno, te brindamos una visibilidad completa de lo que está sucediendo. Comprende dónde se encuentran tus problemas recurrentes o se detectan nuevos problemas. Nuevamente, totalmente validado automáticamente por el motor para que no tengas que hacerlo tú. Se proporcionan pautas de remedio amigables para los desarrolladores con recursos adicionales para ayudarte a comprender los problemas y, lo que es más importante, cómo solucionarlos. Se proporcionan todas las solicitudes, respuestas, encabezados y todos los problemas se pueden copiar como un comando curl para depurar con una función de nueva prueba para ejecutar el mismo ataque o la misma carga y facilitar y acelerar la solución para ti, el desarrollador. Asignar equipos de ingeniería o activos a proyectos específicos te permite segregar el escaneo y obtener una visibilidad global ya sea de tus escaneos o incluso de tu postura de riesgo lo que significa que si los equipos están creando los mismos problemas se puede proporcionar capacitación. Míralo como un entrenamiento seguro sobre la marcha. Y todo esto se integra perfectamente en tus flujos de trabajo.

Con CICD y DevOps, hablamos de mover hacia la izquierda. DAST tradicionalmente se ha llevado a cabo en las etapas cuatro y cinco, dirigido por profesionales de la seguridad. Las herramientas se han construido para profesionales de la seguridad. Puedes comenzar a moverte hacia la izquierda, poniendo DAST en manos de los desarrolladores con Neuralegion. Escanea cada confirmación o solicitud de extracción, obtén comentarios inmediatos de los problemas, sin falsos positivos para comenzar a solucionar ahora. Tenemos integraciones con todas tus herramientas comunes o, mejor aún, utiliza nuestra API e integra. Se pueden abrir tickets de Jira, enviar mensajes a colegas relevantes en Slack. La colaboración es fluida, fácil y precisa. Entonces, ¿qué estás esperando? Regístrate para obtener una cuenta gratuita y podrás comenzar a escanear en minutos. Conéctate con nosotros, consulta nuestra documentación para obtener más información. De cualquier manera, disfruta de la conferencia y feliz escaneo de seguridad preciso. ♪♪

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

GraphQL Galaxy 2021GraphQL Galaxy 2021
32 min
From GraphQL Zero to GraphQL Hero with RedwoodJS
Top Content
We all love GraphQL, but it can be daunting to get a server up and running and keep your code organized, maintainable, and testable over the long term. No more! Come watch as I go from an empty directory to a fully fledged GraphQL API in minutes flat. Plus, see how easy it is to use and create directives to clean up your code even more. You're gonna love GraphQL even more once you make things Redwood Easy!
Vue.js London Live 2021Vue.js London Live 2021
24 min
Local State and Server Cache: Finding a Balance
Top Content
How many times did you implement the same flow in your application: check, if data is already fetched from the server, if yes - render the data, if not - fetch this data and then render it? I think I've done it more than ten times myself and I've seen the question about this flow more than fifty times. Unfortunately, our go-to state management library, Vuex, doesn't provide any solution for this.For GraphQL-based application, there was an alternative to use Apollo client that provided tools for working with the cache. But what if you use REST? Luckily, now we have a Vue alternative to a react-query library that provides a nice solution for working with server cache. In this talk, I will explain the distinction between local application state and local server cache and do some live coding to show how to work with the latter.
GraphQL Galaxy 2022GraphQL Galaxy 2022
16 min
Step aside resolvers: a new approach to GraphQL execution
Though GraphQL is declarative, resolvers operate field-by-field, layer-by-layer, often resulting in unnecessary work for your business logic even when using techniques such as DataLoader. In this talk, Benjie will introduce his vision for a new general-purpose GraphQL execution strategy whose holistic approach could lead to significant efficiency and scalability gains for all GraphQL APIs.

Workshops on related topic

GraphQL Galaxy 2021GraphQL Galaxy 2021
140 min
Build with SvelteKit and GraphQL
Top Content
Featured WorkshopFree
Have you ever thought about building something that doesn't require a lot of boilerplate with a tiny bundle size? In this workshop, Scott Spence will go from hello world to covering routing and using endpoints in SvelteKit. You'll set up a backend GraphQL API then use GraphQL queries with SvelteKit to display the GraphQL API data. You'll build a fast secure project that uses SvelteKit's features, then deploy it as a fully static site. This course is for the Svelte curious who haven't had extensive experience with SvelteKit and want a deeper understanding of how to use it in practical applications.

Table of contents:
- Kick-off and Svelte introduction
- Initialise frontend project
- Tour of the SvelteKit skeleton project
- Configure backend project
- Query Data with GraphQL
- Fetching data to the frontend with GraphQL
- Styling
- Svelte directives
- Routing in SvelteKit
- Endpoints in SvelteKit
- Deploying to Netlify
- Navigation
- Mutations in GraphCMS
- Sending GraphQL Mutations via SvelteKit
- Q&A
React Advanced Conference 2022React Advanced Conference 2022
95 min
End-To-End Type Safety with React, GraphQL & Prisma
Featured WorkshopFree
In this workshop, you will get a first-hand look at what end-to-end type safety is and why it is important. To accomplish this, you’ll be building a GraphQL API using modern, relevant tools which will be consumed by a React client.
Prerequisites: - Node.js installed on your machine (12.2.X / 14.X)- It is recommended (but not required) to use VS Code for the practical tasks- An IDE installed (VSCode recommended)- (Good to have)*A basic understanding of Node.js, React, and TypeScript
GraphQL Galaxy 2022GraphQL Galaxy 2022
112 min
GraphQL for React Developers
Featured Workshop
There are many advantages to using GraphQL as a datasource for frontend development, compared to REST APIs. We developers in example need to write a lot of imperative code to retrieve data to display in our applications and handle state. With GraphQL you cannot only decrease the amount of code needed around data fetching and state-management you'll also get increased flexibility, better performance and most of all an improved developer experience. In this workshop you'll learn how GraphQL can improve your work as a frontend developer and how to handle GraphQL in your frontend React application.
React Summit 2022React Summit 2022
173 min
Build a Headless WordPress App with Next.js and WPGraphQL
Top Content
WorkshopFree
In this workshop, you’ll learn how to build a Next.js app that uses Apollo Client to fetch data from a headless WordPress backend and use it to render the pages of your app. You’ll learn when you should consider a headless WordPress architecture, how to turn a WordPress backend into a GraphQL server, how to compose queries using the GraphiQL IDE, how to colocate GraphQL fragments with your components, and more.
TestJS Summit 2023TestJS Summit 2023
48 min
API Testing with Postman Workshop
Top Content
WorkshopFree
In the ever-evolving landscape of software development, ensuring the reliability and functionality of APIs has become paramount. "API Testing with Postman" is a comprehensive workshop designed to equip participants with the knowledge and skills needed to excel in API testing using Postman, a powerful tool widely adopted by professionals in the field. This workshop delves into the fundamentals of API testing, progresses to advanced testing techniques, and explores automation, performance testing, and multi-protocol support, providing attendees with a holistic understanding of API testing with Postman.
1. Welcome to Postman- Explaining the Postman User Interface (UI)2. Workspace and Collections Collaboration- Understanding Workspaces and their role in collaboration- Exploring the concept of Collections for organizing and executing API requests3. Introduction to API Testing- Covering the basics of API testing and its significance4. Variable Management- Managing environment, global, and collection variables- Utilizing scripting snippets for dynamic data5. Building Testing Workflows- Creating effective testing workflows for comprehensive testing- Utilizing the Collection Runner for test execution- Introduction to Postbot for automated testing6. Advanced Testing- Contract Testing for ensuring API contracts- Using Mock Servers for effective testing- Maximizing productivity with Collection/Workspace templates- Integration Testing and Regression Testing strategies7. Automation with Postman- Leveraging the Postman CLI for automation- Scheduled Runs for regular testing- Integrating Postman into CI/CD pipelines8. Performance Testing- Demonstrating performance testing capabilities (showing the desktop client)- Synchronizing tests with VS Code for streamlined development9. Exploring Advanced Features - Working with Multiple Protocols: GraphQL, gRPC, and more
Join us for this workshop to unlock the full potential of Postman for API testing, streamline your testing processes, and enhance the quality and reliability of your software. Whether you're a beginner or an experienced tester, this workshop will equip you with the skills needed to excel in API testing with Postman.
GraphQL Galaxy 2020GraphQL Galaxy 2020
106 min
Relational Database Modeling for GraphQL
Top Content
WorkshopFree
In this workshop we'll dig deeper into data modeling. We'll start with a discussion about various database types and how they map to GraphQL. Once that groundwork is laid out, the focus will shift to specific types of databases and how to build data models that work best for GraphQL within various scenarios.
Table of contentsPart 1 - Hour 1      a. Relational Database Data Modeling      b. Comparing Relational and NoSQL Databases      c. GraphQL with the Database in mindPart 2 - Hour 2      a. Designing Relational Data Models      b. Relationship, Building MultijoinsTables      c. GraphQL & Relational Data Modeling Query Complexities
Prerequisites      a. Data modeling tool. The trainer will be using dbdiagram      b. Postgres, albeit no need to install this locally, as I'll be using a Postgres Dicker image, from Docker Hub for all examples      c. Hasura