Category

Technique

Category

Attaques DOM-based XSS : principes, impacts, exploitations et bonnes pratiques sécurité

Les DOM-based XSS sont des vulnérabilités particulièrement méconnues car plutôt rares. En effet, il s’agit d’une variante de XSS (Cross-Site Scripting) – certainement l’une des failles les plus répandues dans les applications web.

Principes, impacts, exploitations possibles, nous vous présentons dans cet article un aperçu complet des vulnérabilités DOM XSS ainsi que les bonnes pratiques pour prévenir les risques d’attaques et de compromission de vos applications web.

Introduction

Audit d'une application protégée par jeton CSRF avec Stepper, une extension Burp

Le jeton CSRF est une protection qui requiert l’insertion d’une valeur aléatoire et dynamique dans une requête. Cette valeur est ensuite analysée par le serveur pour déterminer si la requête est légitime. Lors de vos tests d’intrusion, il vous est surement déjà arrivé de tomber sur une application utilisant ces jetons CSRF. Dans ce cas, vous avez sans doute constaté à quel point il est déroutant d’analyser une telle application avec Burp.

Injections SQL (SQLi) : principes, impacts, exploitations et bonnes pratiques de sécurité

La plupart des applications web utilisent une ou plusieurs base(s) de données pour stocker et traiter les informations en temps réel.

En effet, lorsqu’un utilisateur envoie des requêtes, l’application web interroge la base de données afin de construire la réponse. Cependant, lorsque les informations fournies par l’utilisateur sont utilisées pour forger la requête à la base de données, un attaquant peut altérer cette dernière en l’utilisant à d’autres fins que celles prévues par le développeur d’origine. Ainsi, cela permet à un attaquant d’interroger la base de données via une injection SQL, abrégé en SQLi.

node failles bonnes pratiques sécurité

Encore un article sur la sécurité de Node.js ? Mais dans celui-là, nous nous concentrons sur les failles rencontrées le plus fréquemment lors de tests d’intrusion.

Les vulnérabilités liées à Node ont des conséquences sur l’ensemble de votre application web. Il est donc essentiel de les détecter et de les corriger.  Certaines de ces failles ne sont pas spécifiques à Node et existent également dans d’autres langages et frameworks. C’est pour cela que nous nous sommes attachés à citer des bonnes pratiques générales et des outils propres à Node.js.

Entrons dans le vif du sujet.

Vulnerabilite RCE : Remote Code Execution

Lors des tests d’intrusion que nous menons, nous sommes régulièrement confrontés à des vulnérabilités qui permettent d’exécuter des commandes sur un système. Celles-ci peuvent prendre différentes formes en fonction du type d’application et des fonctionnalités impactées. Vous trouverez dans cet article un exemple de vulnérabilité RCE rencontrée lors d’un audit d’une application web codée en PHP.

SSTI : vulnerabilite Server Side Template Injection

Les failles server-side template injection (SSTI) restent moins recherchées que d’autres types de vulnérabilités. Pourtant, leur impact est important et mène souvent à de l’exécution de code à distance (RCE). Ce sont donc des failles à ne pas sous-estimer.

Dans quels contextes se produisent les vulnérabilités SSTI ? Comment détecter ces failles et comment s’en protéger ?

C’est ce que nous allons détailler dans cet article.

TL;DR

Pancake est un logiciel de facturation en ligne, de management de projets et de gestion du temps et des devis. Un secret codé en dur, partagé par l’ensemble des installations et utilisé pour signer le cookie de session nous a permis de falsifier un cookie de session valide pour n’importe quel compte pour toutes applications Pancake avant la version 4.13.29.

Comprendre XXE

Une XXE (XML External Entities) est une vulnérabilité faisant partie du Top 10 de l’OWASP et touchant les programmes interprétant le XML.

Elle se caractérise par la possibilité de lire des fichiers sur le serveur cible. Elle peut ainsi mettre en danger celui-ci, en accédant, par exemple, à un fichier de configuration contenant des mots de passe, en copiant les fichiers de la base de données ou en récupérant le code source d’une application.