MISC N°
Numéro
101

Sécurité des applications web

Temporalité
Janvier/Février 2019
Image v3
Sécurité des applications web
Article mis en avant

Dans ce numéro...


C’est avec une certaine fascination que j’ai suivi l’évolution du mouvement des gilets jaunes sur la Toile. La presse a largement commenté l’usage dont le mouvement a fait des réseaux sociaux et tout particulièrement Facebook. Mais avant de revenir sur ce mouvement, prenons un peu de recul pour remettre en perspective l’évolution de Facebook ces quinze dernières années, son usage et sa perception par le grand public.
Cela fait 20 ans qu’une vulnérabilité présente dans OpenSSH permet d’énumérer les utilisateurs. Elle a été rendue publique le 17 août 2018 sous la référence CVE ID 2018-15473. Du fait de sa facilité d’exploitation, des exploits ont rapidement vu le jour sur des sites de dépôt de code comme GitHub, des scripts Python ont également été codés et même le très célèbre Metasploit a mis à jour son module d'énumération des utilisateurs SSH [Ref] « modules/auxiliary/scanner/ssh/ssh_enumusers.rb ». Cette vulnérabilité ne donne pas la liste des noms d'utilisateurs valides, mais permet, sans faire d’attaque par mot de passe, de dire si un utilisateur existe ou non. Nous allons voir ensemble au travers de cet article pourquoi cette vulnérabilité existe, comment l'exploiter et de quelle manière nous pouvonsnous en prévenir.
Les processus de sérialisation et de désérialisation Java ne manipulent que des données et non du code. Malheureusement, comme pour une chaîne ROP, il est possible de combiner des « gadgets » Java pour exécuter du code arbitraire lorsque la désérialisation s’effectue sur des données contrôlées par un attaquant. Nous présentons dans cet article une vulnérabilité de désérialisation affectant directement les libraires standards de la machine virtuelle Java.
Si le suivi du flot d’exécution permet de restituer le code d’un noyau Android, peu de désassembleurs s’appuient sur la présence des symboles pour affiner leur analyse. Cet article se propose de fournir les points clefs pour retrouver ces symboles de façon statique dans ce cadre précis, même si l’approche peut être adaptée à d’autres environnements.
MEAN est un socle technique composé de MongoDB, Express, Angular et Node.js. Ces quatre composants ont un point commun : le JavaScript ! La connaissance de cet unique langage de programmation vous permet désormais de créer une application web dynamique et moderne. Ce socle technique est donc largement utilisé par les développeurs « full stack » et c’est ainsi que de nombreuses applications MEAN viennent s’installer progressivement dans les SI des entreprises. Mais voilà ! Ce socle technique est-il suffisant pour développer des applications sécurisées qui seront amenées à manipuler des données sensibles (carte bancaire, santé…) ?
On ne plaisante pas avec un contrôle d’identité ! Il en va de même en sécurité applicative où l’authentification est une fonctionnalité primordiale à mettre en œuvre. Mais quand il faut s’y mettre, le développeur sera confronté à de nombreuses problématiques et se posera beaucoup de questions sans y trouver de réponses, faute d’avoir un expert en sécurité applicative à sa disposition. Tout au long de cet article, vous suivrez pas à pas le questionnement d’un développeur back end accompagné d’un expert sécurité pour l’aider dans son raisonnement.
HttpOnly, vous connaissez ? Non ? Et X-XSS-Protection ? Zut… Pourtant ces petits mots doux nous aident à rendre la vie de nos utilisateurs plus sûre. Cet article liste un ensemble d’en-têtes qui aident à réduire le risque d’exploitation de failles de sécurité. Pour chacune d’entre elles, un exemple d’implémentation avec Express.js est présenté.
Développer une application qui répond aux besoins du client est compliqué. Développer une application répondant à l’ensemble des exigences non fonctionnelles est encore plus compliqué. Et développer une application industrialisée et sécurisée relève de l’exploit ! Mais, nous verrons dans cet article qu’à l’impossible nul n’est tenu…
Il existe un monde hostile où l’inertie règne trop souvent… pour ne pas faire progresser la sécurité. C’est le monde du Système d’Information et de ses applications. Ce monde est peuplé de gens à l’excuse facile. Parmi celles-ci, il y aura pêle-mêle qu’il faut mettre à jour l’application web pour installer le correctif, que cela prend du temps, que cela coûte, que tout marche bien alors pourquoi changer, bla bla bla… Dans ce monde cruel où seules patience, zénitude et opiniâtreté permettent d’avancer péniblement dans la souffrance, il peut parfois apparaître une lueur d’espoir : « URL interceptor ». Il est le justicier solitaire qui n’a besoin d’aucun compromis, car il se place en protecteur et passage obligé pour atteindre les mécréants à l’excuse bidon, il sait être discret tout en étant puissant au besoin, et surtout il a su rester simple et frugal d’exigences…
Depuis plus de quarante ans, le piratage de logiciels demeure un phénomène planétaire, que rien ne semble véritablement pouvoir enrayer. Cet article s’intéresse à l’évolution du piratage de logiciels dans le monde, plus particulièrement au cours de la dernière décennie (2007-2017). Pour alimenter notre étude, nous nous appuyons sur les séries statistiques produites par la BSA et sur un ensemble de rapports et d’études publiés tout au long de la période. Dans un premier chapitre, nous rappelons les principaux enjeux du piratage (économiques, juridiques). Puis nous mettons en évidence quelques caractéristiques de l’évolution du piratage dans le monde, telles qu’elles émergent des séries statistiques de la BSA. Enfin, dans la troisième partie de l’article, nous formulons quelques constats et hypothèses sur les déterminants du piratage et les caractéristiques de son évolution. Des résultats significatifs sont-ils obtenus par les acteurs de la lutte contre le piratage ? Le développement de l’arsenal juridique et le durcissement des sanctions prononcées contre les contrefacteurs sont-ils vraiment de nature à impacter l’évolution du phénomène ?
Nous abordons ici une des questions posées en marge du modèle implémenté par Intel SGX : celle de la sécurisation de la communication entre une enclave et un périphérique.

Magazines précédents

Les derniers articles Premiums

Les derniers articles Premium

Sécurisez vos applications web : comment Symfony vous protège des menaces courantes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les frameworks tels que Symfony ont bouleversé le développement web en apportant une structure solide et des outils performants. Malgré ces qualités, nous pouvons découvrir d’innombrables vulnérabilités. Cet article met le doigt sur les failles de sécurité les plus fréquentes qui affectent même les environnements les plus robustes. De l’injection de requêtes à distance à l’exécution de scripts malveillants, découvrez comment ces failles peuvent mettre en péril vos applications et, surtout, comment vous en prémunir.

Bash des temps modernes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les scripts Shell, et Bash spécifiquement, demeurent un standard, de facto, de notre industrie. Ils forment un composant primordial de toute distribution Linux, mais c’est aussi un outil de prédilection pour implémenter de nombreuses tâches d’automatisation, en particulier dans le « Cloud », par eux-mêmes ou conjointement à des solutions telles que Ansible. Pour toutes ces raisons et bien d’autres encore, savoir les concevoir de manière robuste et idempotente est crucial.

Présentation de Kafka Connect

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Un cluster Apache Kafka est déjà, à lui seul, une puissante infrastructure pour faire de l’event streaming… Et si nous pouvions, d’un coup de baguette magique, lui permettre de consommer des informations issues de systèmes de données plus traditionnels, tels que les bases de données ? C’est là qu’intervient Kafka Connect, un autre composant de l’écosystème du projet.

Le combo gagnant de la virtualisation : QEMU et KVM

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

C’est un fait : la virtualisation est partout ! Que ce soit pour la flexibilité des systèmes ou bien leur sécurité, l’adoption de la virtualisation augmente dans toutes les organisations depuis des années. Dans cet article, nous allons nous focaliser sur deux technologies : QEMU et KVM. En combinant les deux, il est possible de créer des environnements de virtualisation très robustes.

Body