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

Rétrospective


L'échelle, la composition et la structure des cybermenaces pour les applications évoluent rapidement. Depuis de nombreuses années, les utilisateurs accèdent aux applications Web sur Internet à l'aide de navigateurs Web courants. À chaque instant, il était nécessaire de prendre en charge 2 à 5 navigateurs Web, et l'ensemble de normes pour développer et tester des applications Web était suffisamment limité. Par exemple, presque toutes les bases de données ont été créées à l'aide de SQL. Malheureusement, après un court laps de temps, les pirates ont appris à utiliser des applications Web pour voler, supprimer ou modifier des données. Ils ont obtenu un accès illégal et abusé des capacités des applications en utilisant diverses méthodes, y compris le tromper les utilisateurs d'applications, la mise en œuvre 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 apparus sur le marché, et la société a réagi en créant un projet de sécurité des applications Web ouvertes, l'Open Web Application Security Project (OWASP), pour définir et maintenir des normes et des méthodologies de développement. applications sécurisées.

Protection d'application de base


La liste OWASP Top 10 est le point de départ pour la sécurisation des applications et contient une liste des menaces les plus dangereuses et des paramètres incorrects qui peuvent conduire à des vulnérabilités des applications, ainsi que des tactiques pour détecter et repousser les attaques. OWASP Top 10 est une référence reconnue dans l'industrie des applications de cybersécurité dans le monde et définit la liste de base des capacités qu'un système de sécurité des applications Web (WAF) devrait avoir.

En outre, la fonctionnalité WAF doit prendre en compte d'autres attaques courantes contre les applications Web, notamment la falsification de demandes intersites (CSRF), le détournement de clics, le raclage Web et l'inclusion de fichiers (RFI / LFI).

Menaces et défis de sécurité pour les applications d'aujourd'hui


À ce jour, toutes les applications ne sont pas exécutées dans la version réseau. Il existe des applications cloud, des applications mobiles, des API et, dans les dernières architectures, même des fonctions logicielles individuelles. Tous ces types d'applications doivent être synchronisés et contrôlés, car ils créent, modifient et traitent nos données. Avec l'avènement de nouvelles technologies et de nouveaux paradigmes, de nouveaux défis et défis se posent à toutes les étapes du cycle de vie de l'application. Cela comprend l'intégration du développement et de l'exploitation (DevOps), des conteneurs, de l'Internet des objets (IoT), des outils open source, des API, etc.

Le déploiement d'applications distribuées et une variété de technologies créent des tâches complexes et complexes non seulement pour les spécialistes de la sécurité de l'information, mais aussi pour les fabricants de solutions de sécurité qui ne peuvent plus compter sur une approche unifiée. Les fonctionnalités de sécurité des applications doivent prendre en compte les spécificités de leur entreprise pour éviter les opérations erronées et compromettre la qualité des services pour les utilisateurs.

L'objectif ultime des pirates est généralement le vol de données ou une violation de la disponibilité des services. Les attaquants profitent é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, dans leur arsenal apparaît plus d'outils et de connaissances pour contourner les remèdes traditionnels. Cela augmente considérablement la soi-disant «surface d'attaque» et l'exposition des organisations à de nouveaux risques. Les politiques de sécurité doivent être en constante évolution suite aux changements de technologie et d'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 automatiques doivent être reflétées en temps réel sur la base de décisions éclairées. En conséquence, les coûts d'exploitation et le travail manuel augmentent dans un contexte de sécurité affaibli.

Tâche numéro 1: gérer les robots


Plus de 60% du trafic Internet est généré par des robots, dont la moitié est qualifiée de «mauvais» trafic (selon le rapport de sécurité de Radware ). Les entreprises investissent dans une bande passante réseau accrue, servant essentiellement la charge factice. La distinction exacte entre le trafic réel des utilisateurs et le trafic des robots, ainsi que les «bons» robots (par exemple, les robots de recherche et les services de comparaison de prix) et les «mauvais» robots peut entraîner des économies importantes et une augmentation de la qualité des services pour les utilisateurs.

Les bots ne vont pas faciliter cette tâche, et ils peuvent imiter le comportement des vrais utilisateurs, contourner CAPTCHA et d'autres obstacles. De plus, dans le cas d'attaques utilisant des adresses IP dynamiques, la protection basée sur le filtrage par adresse IP devient inefficace. Souvent, des outils de développement open source (par exemple, Phantom JS) qui peuvent exécuter JavaScript côté client sont utilisés pour lancer des attaques par force brute, des attaques de bourrage d'informations d'identification, des attaques DDoS et des attaques de robots automatisées .

Une gestion efficace du trafic des robots nécessite une identification unique de sa source (comme une empreinte digitale). Étant donné que de nombreuses entrées se produisent dans le cas d'une attaque de bot, son empreinte digitale vous permet d'identifier une activité suspecte et d'attribuer des points, sur la base desquels le système de protection des applications prend une décision éclairée - bloquer / autoriser - avec un taux de faux positifs minimum.

image

Tâche n ° 2: protection des API


De nombreuses applications collectent des informations et des données à partir des services avec lesquels elles interagissent via l'API. Lors du transfert de données confidentielles via l'API, plus de 50% des organisations ne vérifient ni ne protègent les API pour détecter les cyberattaques.

Exemples d'utilisation des API:

  • Intégration IoT
  • Interaction 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, les manipulations de paramètres, les redirections et les attaques de robots. Les passerelles API dédiées garantissent la compatibilité des services d'application qui communiquent via l'API. Cependant, ils ne fournissent pas une sécurité de bout en bout pour l'application, car WAF peut être utilisé avec les outils de sécurité nécessaires, tels que l'analyse des en-têtes HTTP, les listes de contrôle d'accès (ACL) de couche 7, l'analyse et la vérification 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.

Tâche 3: déni de service


L'ancien vecteur d'attaque par déni de service (DoS) continue de prouver son efficacité dans les attaques sur les applications. Les attaquants ont un certain nombre de techniques efficaces pour perturber les services d'application, y compris 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, la force brute -les attaques, et bien d'autres. Avec le développement de l'Internet des objets et l'émergence subséquente des botnets IoT, les attaques contre les applications sont devenues le principal objectif des attaques DDoS. La plupart des WAF de suivi des connexions ne peuvent supporter qu'une charge limitée. 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 est détectée, cela n'a aucun sens de repasser ce trafic. Étant donné que la bande passante de WAF pour repousser les attaques est limitée, une solution supplémentaire sur le périmètre du réseau est nécessaire pour bloquer automatiquement les prochains «mauvais» paquets. Pour ce scénario de sécurité, les deux solutions doivent pouvoir interagir entre elles pour échanger des informations sur les attaques.

image
Figure 1. Organisation d'une protection complète du réseau et des applications en utilisant les solutions Radware à titre d'exemple.

Tâche 4: protection continue


Les demandes sont souvent sujettes à changement. Les méthodologies de développement et de mise en œuvre, telles que les mises à jour continues, signifient que les modifications sont effectuées sans intervention et contrôle humains. Dans ces conditions dynamiques, il est difficile de maintenir des politiques de sécurité qui fonctionnent correctement sans un nombre élevé de faux positifs. Les applications mobiles sont mises à jour beaucoup plus souvent que les applications Web. Les applications tierces peuvent changer à votre insu. Certaines organisations recherchent un meilleur contrôle et une meilleure visualisation pour se tenir au courant des risques potentiels. Cependant, cela n'est pas toujours réalisable, et une protection fiable des applications devrait utiliser des capacités d'apprentissage automatique pour prendre en compte et présenter visuellement les ressources disponibles, analyser les menaces potentielles, créer et optimiser les politiques de sécurité en cas de modifications d'application.

Conclusions


Les applications jouant un rôle de plus en plus important dans la vie quotidienne, elles deviennent la cible principale des pirates. Le jackpot potentiel pour les cybercriminels et les pertes potentielles pour l'entreprise sont énormes. La complexité de la tâche d'assurer la sécurité des applications ne peut pas être exagérée, compte tenu du nombre et des 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 destinées aux applications. Ils mettent également à jour automatiquement les politiques de sécurité pour protéger les applications Web, mobiles et cloud - ainsi que les API - sans faux positifs.

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

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

Source: https://habr.com/ru/post/fr476490/


All Articles