SÉCURISER LES API POUR LES APPLICATIONS D’ENTREPRISES
Les interfaces de programmation d’applications (API) facilitent les services technologiques essentiels pour les entreprises d’aujourd’hui dans tous les secteurs verticaux. Les API sont la principale méthode pour accéder aux données via les canaux numériques tels que les applications mobiles et web, l’infonuagique et l’internet des objets (IoT), permettant aux organisations d’accéder à et de partager des renseignements avec leurs clients et partenaires plus efficacement.
Les API faisant maintenant partie des standards de l’industrie des architectures d’entreprise, les risques de sécurité sont devenus une préoccupation majeure. Les cybermenaces et cyberattaques ciblent de plus en plus les applications d’entreprise, étant donné leur accessibilité via les environnements infonuagiques, mobiles et sur site. L’API peut être un point majeur de vulnérabilité, considérant sa capacité à offrir un accès programmatique aux développeurs externes. Ultimement, selon la façon dont l’API a été programmée, elle pourrait sérieusement exposer des donnés à des exploits dans les applications et les réseaux d’arrière-plan, et étendre encore plus la zone d’attaque.
Les API pourraient être exposées à plusieurs menaces et vulnérabilités, permettant aux cyberprédateurs de cibler le système sous-jacent, le serveur d’application ou même l’API elle-même. Les vulnérabilités liées à la configuration et aux correctifs de systèmes doivent être évaluées pour remédier aux risques associés aux problèmes de configuration, de logiciels en fin de vie ou de correctifs. Le serveur d’application qui héberge l’API pourrait faire l’objet de détournements de sessions ou de vulnérabilités liées à des configurations de sécurité inadéquates. L’API hébergée elle-même pourrait être le théâtre d’attaques par injection, de problèmes de contrôle d’accès ou d’exposition de données sensibles. Il est important de comprendre tous les niveaux de risques potentiels associés aux API et aux composantes qui y sont liées.
Il existe des méthodes fondamentales de protection qui devraient être mises en place pour mitiger les risques pour les API essentielles de votre environnement. Plus tôt on incorpore les processus de sécurité au déploiement des API, mieux ce sera. À l’étape de la planification, les architectes et les développeurs devraient considérer les questions de dépendances, d’authentification et d’autorisations, et les enjeux d’intégrité des données qui auront un impact sur les API après qu’elles auront été développées et déployées en production. Par exemple, contrôler l’accès aux API est essentiel pour mitiger les risques d’identité et les menaces de session. Il est essentiel de séparer l’identité de l’utilisateur de l’application qui accède à l’API. Les fournisseurs d’API devraient pouvoir identifier une application de façon unique et contrôler les opérations que l’application elle-même peut réaliser. Ces mesures devraient faire partie des politiques de sécurité et des pratiques standards qui régissent le développement d’API et d’applications sécuritaires.
Lors du développement, les politiques établies pour sécuriser les API devrait être exercées. Avant le déploiement en production, les API devraient subir des tests d’intrusion afin d’identifier toute vulnérabilité qui pourrait être exploitée pour compromettre les renseignements d’affaires sensibles. En production, les API devraient être surveillées afin de déceler tout problème de performance ou menaces qui pourraient indiquer un incident de sécurité potentiel. La qualité de service (QOS) devrait être établie afin de mitiger les attaques par déni de service et inondation. Des tests dynamiques continus de sécurité des applications (DAST) et des tests d’intrusion périodiques devraient faire partie de la stratégie de protection des API. Les API sont trop essentielles aux entreprises pour ignorer les implications de ne pas inclure la sécurité dans leur stratégie d’API. Établissez une stratégie de sécurité des API, exécutez-la et surveillez continuellement.