Éviter l'apocalypse : un guide pour trouver des API zombies

Nouvelles

MaisonMaison / Nouvelles / Éviter l'apocalypse : un guide pour trouver des API zombies

Dec 22, 2023

Éviter l'apocalypse : un guide pour trouver des API zombies

Accueil » Réseau des blogueurs sur la sécurité » Éviter l'apocalypse : un guide pour trouver

Accueil » Réseau des blogueurs sur la sécurité » Éviter l'apocalypse : un guide pour trouver des API zombies

Considérez cette statistique d'un récent rapport de Noname Security. Plus que87% de leurs répondants sont préoccupés par les risques de sécurité des API obsolètes ou inutiles. Dans le monde du piratage d'API, nous appelons cesAPI zombies.

Vous connaissez le type de point de terminaison d'API dont je parle. Ce sont ces API oubliées qui ne sont plus maintenues mais qui existent toujours pour la "compatibilité descendante". Ces API peuvent devenir obsolètes, peu fiables et vulnérables au piratage. Un risque de sécurité potentiel pour toute application qui les utilise.

C'est une classe de vulnérabilité tellement importante. Il atterrit comme#9sur la liste 2023 OWASP API Security Top 10 comme API9:2023 Mauvaise gestion des stocks.

Parlons-en avant que le mauvais code ne vous écrive et que vous ne rejoigniez les morts-vivants. (gémissement… ouais, c'est une très mauvaise blague de zombie)

Trouver des API zombies est crucial pour nous car ces API négligées peuvent être une mine d'or de vulnérabilités et de failles de sécurité. Nous pouvons exploiter ces vulnérabilités pour obtenir un accès non autorisé aux données, contourner les contrôles de sécurité ajoutés aux versions ultérieures et même compromettre des systèmes entiers lorsque les correctifs en cours ne sont pas maintenus.

Les API ont tendance à devenir plus fragiles avec le temps. C'est pourquoi les meilleures pratiques de sécurité des API parlent toujours de temporisation et de désactivation des anciennes versions.

Mais les équipes de sécurité qui gèrent les risques ne sont pas toujours au courant des API exposées grâce à la prolifération des API. Et quand plus d'un tiers (35%) des organisations publient quotidiennement des mises à jour de leurs API, et un autre40%faites-le chaque semaine, du point de vue de la sécurité, il devient beaucoup plus difficile de suivre tout le trafic de l'API.

Voici une autre découverte majeure dans les recherches de Noname Security. Avec la migration vers le cloud des applications existantes et l'adoption de services basés sur SaaS qui offrent une nouvelle valeur commerciale, au cours des deux prochaines années, on s'attend à ce que plus de 50 % des organisations interrogées aient des API actives déployées dans toutes leurs applications.

Combinée aux architectures d'applications axées sur l'API qui deviennent de plus en plus courantes pour les développeurs de nos jours, la production rapide d'API entraînera sans aucun doute une plus grande prolifération des API et le risque d'API plus vulnérables.

Bien qu'une stratégie stricte de gouvernance des API puisse aider à atténuer ce risque, la réalité est qu'il est difficile de gérer la prolifération des API lorsque l'équipe de l'application utilise des API tierces tout en connectant en même temps des données à des systèmes internes et externes que les équipes de sécurité peuvent ne pas avoir. visibilité à.

Si vous souhaitez identifier les API zombies au sein d'une organisation, vous pouvez suivre plusieurs étapes.

La première étape consiste à créer un inventaire de toutes les API utilisées dans l'organisation cible. Cela inclut les API internes et externes. Cela vous aidera à comprendre la portée de l'utilisation de l'API et à identifier les zombies potentiels qui pourraient exister. Les outils de découverte d'API peuvent aider ici pendant la reconnaissance.

Une fois que vous avez un inventaire des API, vous pouvez commencer à analyser leur utilisation. Cela implique d'examiner le nombre de demandes adressées à chaque API, qui effectue les demandes et comment ces API sont utilisées. Cela peut vous aider à identifier les API qui ne sont plus utilisées ou qui ne sont utilisées que par les anciens systèmes. C'est beaucoup plus difficile à faire si vous êtes limité aux tests en boîte noire. Cependant, si vous pouvez accéder aux données de trafic de la passerelle API, vous pouvez généralement les analyser.

Il est important de vérifier si les API cibles disposent d'un contrôle de version. La gestion des versions permet la prise en charge de la rétrocompatibilité avec les anciennes versions du point de terminaison de l'API. Cela signifie également que les anciennes versions peuvent ne plus être maintenues et pourraient être vulnérables. Vérifiez les métadonnées telles que le chemin d'URL, les cookies, les revendications dans les jetons d'accès, les en-têtes HTTP personnalisés et les paramètres de requête HTTP pour les artefacts de version évidents. Si vous trouvez des versions obsolètes d'une API, vous devez d'abord y envisager les menaces d'attaque.

Les API sont souvent négligées et non entretenues. Les signes de négligence incluent une documentation obsolète, le manque de mises à jour et l'absence de support ou d'informations de contact. Si vous rencontrez des API présentant ces signes, il peut s'agir de zombies. Portez une attention particulière aux métadonnées qui peuvent exposer des frameworks et des services plus anciens. Il n'est pas rare de tomber sur une ancienne version d'API exécutée dans de très anciennes images de conteneurs qui peuvent être vulnérables.

Enfin, vous devez effectuer des analyses de sécurité sur vos API pour identifier toute vulnérabilité de plate-forme ou de framework. Cela peut vous aider à identifier les risques potentiels associés à l'infrastructure de vos API, y compris les API zombies susceptibles d'être vulnérables aux attaques. Les outils FOSS comme nikto sont conçus pour le faire assez rapidement.

Une fois que vous avez identifié un point de terminaison d'API qui pourrait être un zombie, utilisez BurpSuite pour capturer une requête vers celui-ci. Ensuite, capturez la même demande dans une version plus récente et utilisez Burp Comparer pour voir ce qui est différent. En quelques secondes, vous pourrez peut-être identifier les modifications de la charge utile que vous pouvez modifier. J'ai déjà parlé de la falsification des données de l'API dans des endroits étranges. Vous devriez être en mesure de suivre ces conseils (en particulier la section sur la contamination des charges utiles) pour commencer à essayer d'explorer comment tuer l'API zombie.

Portez une attention particulière aux propriétés JSON qui sont ajoutées ou supprimées entre les versions dans le corps de la charge utile. Les développeurs peuvent avoir modifié le schéma de données d'un objet, ce qui peut vous permettre de falsifier une requête pour exposer une vulnérabilité d'exposition excessive des données. Vous ne savez jamais si un développeur exposait des données sensibles de manière incorrecte dans une ancienne version qui a depuis été corrigée.

Vous pouvez même voir que l'ancienne version permet la modification des données pour déclencher une vulnérabilité d'affectation de masse. J'ai en fait trouvé quelques problèmes de sécurité critiques de haute gravité qui permettaient une élévation des privilèges au sein d'un locataire utilisant cette tactique. Alors que le développeur empêchait la modification des propriétés sensibles dans la nouvelle version du point de terminaison, l'ancienne ne l'a pas fait, ce qui m'a permis de corrompre les données de l'API et de me donner plus d'accès que prévu par l'application.

Vous devez également vérifier les en-têtes de la réponse HTTP pour toute différence qui pourrait indiquer un changement dans la plate-forme ou le framework. La passerelle API peut rediriger les anciennes versions vers un serveur d'API interne qui peut ne pas disposer des contrôles appropriés que possèdent les nouvelles versions d'API. L'utilisation de plusieurs plates-formes technologiques n'est pas rare et la capacité fonctionnelle ou de sécurité peut être différente entre les versions qui peuvent vous donner un pied.

Certains disent que trouver des API fantômes ou des API malveillantes représente un risque plus important pour une entreprise que ceux posés par les API zombies.

Je ne suis pas d'accord.

Une API fantôme peut être trouvée via la découverte d'API. Mais les anciennes API peuvent rester inactives et oubliées pendant un certain temps à mesure que de nouvelles API (ou du moins de nouvelles versions) sont déployées. Et ce code dormant augmente la fragilité et la surface d'attaque d'une API par ailleurs fiable.

Alors que les attaques d'API deviennent de plus en plus fréquentes et sophistiquées, les entreprises doivent donner la priorité à la sécurité des API et mettre en œuvre des stratégies de gouvernance strictes et les meilleures pratiques pour atténuer les risques des API zombies. Ce faisant, ils peuvent éviter les conséquences potentiellement catastrophiques des API zombies apocalyptiques qui peuvent entraîner des violations de données, un accès non autorisé et une compromission du système.

Et vous, en tant que pirate de l'API, pouvez les aider à trouver et à éradiquer ces zombies avant qu'ils ne soient mordus.

Avez-vous trouvé cela utile? Alors vous aimerez peut-être mon Guide ultime des ressources de piratage d'API. Apprécier!

Le message Éviter l'apocalypse : un guide pour trouver des API zombies est apparu en premier sur le blog de Dana Epp.

*** Il s'agit d'un blog syndiqué du réseau des blogueurs de sécurité du blog de Dana Epp rédigé par Dana Epp. Lisez le message original sur : https://danaepp.com/guide-to-finding-zombie-apis

87 % API zombies #9 35 % 40 % API d'inventaire Analyser l'utilisation de l'API Vérifier les versions Rechercher les signes de négligence Effectuer des analyses de sécurité Je ne suis pas d'accord.