La fonctionnalité des systèmes de sécurité des applications (WAF) modernes devrait être beaucoup plus large que la liste des vulnérabilités du Top 10 de l'OWASP.

Rétrospective

L’ampleur, la composition et la composition des cybermenaces contre les applications évoluent rapidement. Depuis de nombreuses années, les utilisateurs accèdent aux applications Web sur Internet à l’aide de navigateurs Web populaires. Il était nécessaire de prendre en charge 2 à 5 navigateurs Web à un moment donné, et l'ensemble des normes pour développer et tester des applications Web était assez limité. Par exemple, presque toutes les bases de données ont été créées à l'aide de SQL. Malheureusement, peu de temps après, les pirates ont appris à utiliser des applications Web pour voler, supprimer ou modifier des données. Ils ont obtenu un accès illégal aux fonctionnalités des applications et en ont abusé en utilisant diverses techniques, notamment la tromperie des utilisateurs de l'application, l'injection et l'exécution de code à distance. Bientôt, des outils commerciaux de sécurité des applications Web appelés Web Application Firewalls (WAF) sont arrivés sur le marché, et la communauté a réagi en créant un projet ouvert de sécurité des applications Web, l'Open Web Application Security Project (OWASP), pour définir et maintenir les normes et méthodologies de développement. .applications sécurisées.

Protection de base des applications

Liste des 10 meilleurs OWASP est le point de départ pour sécuriser les applications et contient une liste des menaces et des erreurs de configuration les plus dangereuses pouvant conduire à des vulnérabilités des applications, ainsi que des tactiques pour détecter et vaincre les attaques. L'OWASP Top 10 est une référence reconnue dans le secteur de la cybersécurité des applications à l'échelle mondiale et définit la liste de base des fonctionnalités qu'un système de sécurité des applications Web (WAF) devrait posséder.

De plus, la fonctionnalité WAF doit prendre en compte d'autres attaques courantes sur les applications Web, notamment la falsification de requêtes intersites (CSRF), le détournement de clics, le web scraping et l'inclusion de fichiers (RFI/LFI).

Menaces et défis pour assurer la sécurité des applications modernes

Aujourd’hui, toutes les applications ne sont pas implémentées en version réseau. Il existe des applications cloud, des applications mobiles, des API et, dans les architectures les plus récentes, même des fonctions logicielles personnalisées. Tous ces types d'applications doivent être synchronisés et contrôlés lorsqu'elles créent, modifient et traitent nos données. Avec l’avènement de nouvelles technologies et de nouveaux paradigmes, de nouvelles complexités et défis apparaissent à toutes les étapes du cycle de vie des applications. Cela inclut l'intégration du développement et des opérations (DevOps), les conteneurs, l'Internet des objets (IoT), les outils open source, les API, etc.

Le déploiement distribué des applications et la diversité des technologies créent des défis complexes et complexes non seulement pour les professionnels de la sécurité de l'information, mais également pour les fournisseurs de solutions de sécurité qui ne peuvent plus s'appuyer sur une approche unifiée. Les mesures de sécurité des applications doivent tenir compte de leurs spécificités métiers pour éviter les faux positifs et la perturbation de la qualité des services aux utilisateurs.

L’objectif ultime des pirates informatiques est généralement soit de voler des données, soit de perturber la disponibilité des services. Les attaquants bénéficient également de l’évolution technologique. Premièrement, le développement de nouvelles technologies crée davantage de lacunes et de vulnérabilités potentielles. Deuxièmement, ils disposent de plus d’outils et de connaissances dans leur arsenal pour contourner les mesures de sécurité traditionnelles. Cela augmente considérablement la « surface d’attaque » et l’exposition des organisations à de nouveaux risques. Les politiques de sécurité doivent constamment changer en réponse aux évolutions de la technologie et des applications.

Ainsi, les applications doivent être protégées contre une variété toujours croissante de méthodes et de sources d'attaque, et les attaques automatisées doivent être contrées en temps réel sur la base de décisions éclairées. Il en résulte une augmentation des coûts de transaction et du travail manuel, associée à un affaiblissement de la sécurité.

Tâche n° 1 : Gérer les robots

Plus de 60 % du trafic Internet est généré par des robots, dont la moitié est du « mauvais » trafic (selon Rapport de sécurité Radware). Les organisations investissent dans l’augmentation de la capacité du réseau, servant essentiellement une charge fictive. Une distinction précise entre le trafic utilisateur réel et le trafic des robots, ainsi que les « bons » robots (par exemple, les moteurs de recherche et les services de comparaison de prix) et les « mauvais » robots peut entraîner des économies significatives et une meilleure qualité de service pour les utilisateurs.

Les robots ne rendront pas cette tâche facile et ils peuvent imiter le comportement de vrais utilisateurs, contourner les CAPTCHA et autres obstacles. De plus, dans le cas d'attaques utilisant des adresses IP dynamiques, la protection basée sur le filtrage des adresses IP devient inefficace. Souvent, des outils de développement open source (par exemple, Phantom JS) capables de gérer du JavaScript côté client sont utilisés pour lancer des attaques par force brute, des attaques de credential stuffing, des attaques DDoS et des attaques de robots automatisées.

Pour gérer efficacement le trafic des robots, une identification unique de sa source (comme une empreinte digitale) est requise. Puisqu'une attaque de robot génère plusieurs enregistrements, son empreinte digitale lui permet d'identifier les activités suspectes et d'attribuer des scores, sur la base desquels le système de protection des applications prend une décision éclairée - bloquer/autoriser - avec un taux minimum de faux positifs.

La fonctionnalité des systèmes de sécurité des applications (WAF) modernes devrait être beaucoup plus large que la liste des vulnérabilités du Top 10 de l'OWASP.

Défi n°2 : Protéger l'API

De nombreuses applications collectent des informations et des données à partir des services avec lesquels elles interagissent via des API. Lors de la transmission de données sensibles via des API, plus de 50 % des organisations ne valident ni ne sécurisent les API pour détecter les cyberattaques.

Exemples d'utilisation de l'API :

  • Intégration de l'Internet des objets (IoT)
  • Communication de machine à machine
  • Environnements sans serveur
  • Applications mobiles
  • Applications pilotées par les événements

Les vulnérabilités des API sont similaires aux vulnérabilités des applications et incluent les injections, les attaques de protocole, la manipulation de paramètres, les redirections et les attaques de robots. Les passerelles API dédiées contribuent à garantir la compatibilité entre les services d'application qui interagissent via les API. Cependant, ils ne fournissent pas une sécurité des applications de bout en bout comme le peut un WAF avec des outils de sécurité essentiels tels que l'analyse des en-têtes HTTP, la liste de contrôle d'accès (ACL) de couche 7, l'analyse et l'inspection des charges utiles JSON/XML et la protection contre toutes les vulnérabilités de Liste OWASP Top 10. Ceci est réalisé en inspectant les valeurs clés de l'API à l'aide de modèles positifs et négatifs.

Défi n°3 : déni de service

Un ancien vecteur d'attaque, le déni de service (DoS), continue de prouver son efficacité pour attaquer les applications. Les attaquants disposent d'une gamme de techniques efficaces pour perturber les services d'application, notamment les inondations HTTP ou HTTPS, les attaques faibles et lentes (par exemple SlowLoris, LOIC, Torshammer), les attaques utilisant des adresses IP dynamiques, les débordements de tampon, les attaques par force brute et bien d'autres. . Avec le développement de l’Internet des objets et l’émergence des botnets IoT, les attaques contre les applications sont devenues la cible principale des attaques DDoS. La plupart des WAF avec état ne peuvent gérer qu’une quantité limitée de charge. Cependant, ils peuvent inspecter les flux de trafic HTTP/S et supprimer le trafic d’attaque et les connexions malveillantes. Une fois qu’une attaque a été identifiée, il ne sert à rien de retransmettre ce trafic. La capacité du WAF à repousser les attaques étant limitée, une solution supplémentaire est nécessaire au niveau du périmètre du réseau pour bloquer automatiquement les prochains « mauvais » paquets. Pour ce scénario de sécurité, les deux solutions doivent pouvoir communiquer entre elles pour échanger des informations sur les attaques.

La fonctionnalité des systèmes de sécurité des applications (WAF) modernes devrait être beaucoup plus large que la liste des vulnérabilités du Top 10 de l'OWASP.
Fig 1. Organisation d'une protection complète du réseau et des applications à l'aide de l'exemple des solutions Radware

Défi n°4 : Protection continue

Les applications changent fréquemment. Les méthodologies de développement et de mise en œuvre telles que les mises à jour progressives signifient que les modifications se produisent sans intervention ni contrôle humain. Dans des environnements aussi dynamiques, il est difficile de maintenir des politiques de sécurité fonctionnant correctement sans un nombre élevé de faux positifs. Les applications mobiles sont mises à jour beaucoup plus fréquemment que les applications Web. Les applications tierces peuvent changer à votre insu. Certaines organisations recherchent davantage de contrôle et de visibilité pour rester au courant des risques potentiels. Cependant, cela n’est pas toujours réalisable, et une protection fiable des applications doit utiliser la puissance de l’apprentissage automatique pour prendre en compte et visualiser les ressources disponibles, analyser les menaces potentielles et créer et optimiser des politiques de sécurité en cas de modifications des applications.

résultats

Les applications jouant un rôle de plus en plus important dans la vie quotidienne, elles deviennent une cible privilégiée pour les pirates informatiques. Les récompenses potentielles pour les criminels et les pertes potentielles pour les entreprises sont énormes. La complexité de la tâche de sécurité des applications ne peut être surestimée étant donné le nombre et les variations des applications et des menaces.

Heureusement, nous sommes à un moment où l’intelligence artificielle peut nous venir en aide. Les algorithmes basés sur l'apprentissage automatique offrent une protection adaptative en temps réel contre les cybermenaces les plus avancées ciblant les applications. Ils mettent également automatiquement à jour les politiques de sécurité pour protéger les applications Web, mobiles et cloud (et les API) sans faux positifs.

Il est difficile de prédire avec certitude quelle sera la prochaine génération de cybermenaces applicatives (éventuellement basées également sur l’apprentissage automatique). Mais les organisations peuvent certainement prendre des mesures pour protéger les données des clients, protéger la propriété intellectuelle et garantir la disponibilité des services, avec de grands avantages commerciaux.

Des approches et méthodes efficaces pour assurer la sécurité des applications, les principaux types et vecteurs d'attaques, les domaines à risque et les lacunes dans la cyberprotection des applications Web, ainsi que l'expérience mondiale et les meilleures pratiques sont présentés dans l'étude et le rapport Radware «Sécurité des applications Web dans un monde connecté numériquement ».

Source: habr.com

Ajouter un commentaire