Cómo los hackers encuentran filtraciones de datos en tus API
Descubre por qué la seguridad de las API es crucial frente a los hackers y cómo los especialistas en pentesting de Tozetta pueden ayudarte a proteger tus sistemas.
Hoy en día, dependemos cada vez más de diversas soluciones basadas en la nube. Como usuarios, a menudo queremos que todo el software y los sistemas se comuniquen entre sí. Por ejemplo, las facturas del programa de contabilidad deben transferirse al sistema CRM. Y el stock de productos del software de almacén también debe ser visible en la tienda online.
Todo esto es posible gracias al uso de API (Application Programming Interfaces). Sin embargo, estas API también conllevan riesgos. En Tozetta, el Hacker Ian van der Wurff está especializado, entre otras cosas, en hackear API. En este blog, explica con detalle cómo operan los cibercriminales, así como la forma en que él mismo identifica los riesgos cibernéticos relacionados con las API.
Vulnerabilidades en las API
Cuando se trata de la seguridad de las API, es crucial entender cómo los hackers pueden encontrar y explotar vulnerabilidades. Las API son una parte importante de las aplicaciones web modernas y, por lo tanto, son un objetivo atractivo para los hackers malintencionados.
Un método habitual que utilizan los hackers para encontrar vulnerabilidades en las API es ejecutar escaneos automatizados. Estos escaneos se pueden realizar con herramientas especiales que rastrean internet en busca de API públicas y luego intentan automáticamente encontrar puntos débiles. Esto puede tratarse, por ejemplo, de endpoints sin protección que exponen información sensible al mundo exterior.
Un buen ejemplo de esto es una Insecure Direct Object Reference (IDOR)

Imagina un escenario en el que creas una cuenta en un sitio web de citas y, al registrarte, dejas diversa información. Piensa en:
-
Nombre / Apellido
-
Edad
-
Número de teléfono
-
Lugar de residencia
-
Dirección de correo electrónico
-
Intereses
En cuanto vas a tu perfil, ves aparecer la siguiente URL en la barra de búsqueda:
Ejemplo
https://api.voorbeelddatingsite.nl/users?accountnum=1542362
"accountnum": {
"userid": "1542362",
"name": "Bob de Boer",
"tel": "0612345678",
"age": "56",
"email": "bob@voorbeeldmail.nl",
"interests": "woman"
}
Los hackers podrían intentar ahora adivinar si pueden encontrar cuentas entre 0 - 1542362.
Si no hay ninguna restricción en el endpoint correspondiente, los datos (personales) de otras personas podrían filtrarse y acabar en manos de usuarios malintencionados.
Ejemplo
GET https://api.voorbeelddatingsite.nl/users?accountnum=1542300
HTTP/2 200 OK
"accountnum": {
"userid": "1542300",
"name": "Alice de Jong",
"tel": "0687654321",
"age": "43",
"email": "alice@voorbeeldmail.nl",
"interests": "men"
}
A menudo, la aplicación web utiliza un token para establecer restricciones para un usuario determinado, de modo que solo ese usuario pueda modificar o leer su propio perfil. Lamentablemente, esto se olvida a menudo en la aplicación móvil.
¿Quieres estar al tanto de las últimas vulnerabilidades?
Cada día se añaden más de 50 vulnerabilidades a la base de datos Common Vulnerabilities and Exposures (CVE). Es casi imposible mantenerse al día por cuenta propia con todas estas vulnerabilidades. Aun así, en Tozetta intentamos ofrecer de forma estructural una visión clara de las vulnerabilidades en vuestro software y sistemas. Ofrecemos gratuitamente nuestra Vulnerability Update semanal, en la que compartimos este tipo de artículos cada semana.
Pero si quieres saber más sobre cómo obtener de forma estructural una visión clara de las vulnerabilidades en software y sistemas, lee más sobre nuestra solución de Hacking as a Service. Además de realizar pentests periódicos, también ofrecemos una herramienta de monitorización de seguridad que escanea diariamente tus aplicaciones web y/o tu red interna en busca de estos innumerables CVE.
O lee más sobre Hacking as a Service >>