Violation de Gestion d'Authentification et de Session

Slides:



Advertisements
Présentations similaires
Novembre 2005 – Michel Desconnets PHP : théorie Objectif : introduire les concepts globaux permettant d'aborder la programmation en PHP.
Advertisements

Université Nancy 2 - CRI Propositions de mécanisme de SSO dans un environnement d’applications web.
Audit technique et analyse de code
Xavier Tannier Yann Jacob Sécurite Web.
Le mécanisme de Single Sign-On CAS (Central Authentication Service)
Référence directe non sécurisée à un objet
Révision Avant lintra – Architecture de lordinateur, les composants, le fonctionnement, codage – Système dexploitation: organisation des données (fichier),
MODEX WEB BAPTISTE DESPREZ Un peu de sécurité. Avant dentrer dans le vif du sujet JavaScript Langage de script (comme PHP) Exécuté par votre navigateur.
Les Redirections et renvois non validés
Violation de Gestion d’authentification et de Session
Développement dapplications web Initiation à la sécurité 1.
Le langage PHP 5.
Le langage ASP Les variables d'environnement HTTP avec Request.
Xavier Tannier Sécurite Web.
Jeudi, 20 août 2009 Sécurité informatique Cégep de St-Hyacinthe Par Hugo St-Louis.
Développement dapplications web Authentification, session.
802.1x Audric PODMILSAK 13 janvier 2009.
PHP Géant Aurélien. PHP (Hypertext Preprocessor) Langage de scripts libre Permet produire des pages Web dynamiques dispose d'un très grand nombre d'API(Application.
MODEX WEB BAPTISTE DESPREZ Un peu de sécurité. Javascript JavaScript / Jquery Langage de script (comme PHP) Exécuté par votre navigateur (Firefox, IE,
MODEX WEB BAPTISTE DESPREZ Un peu de sécurité. Avant dentrer dans le vif du sujet JavaScript Langage de script (comme PHP) Exécuté par votre navigateur.
Authentification à 2 facteurs
Initiation au web dynamique
Commutation de niveau 5 Guillaume CASSIN Charles DESMOULINS 24 Mars 2001.
PHP 5° PARTIE : LES COOKIES
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Auvray Vincent Blanchy François Bonmariage Nicolas Mélon Laurent
PHP 6° PARTIE : LES SESSIONS 1.Introduction 2.Identificateur de session 3.Variables de session 4.Client / Serveur 5.Principe 6.Ouverture de session 7.Enregistrement.
Protocole HTTP, cookies, sessions, authentification
 Fonctions diverses, scripts PHP Variables de session Les sessions sous PHP permettent de conserver des données d'un utilisateur coté serveur, lors de.
Programmation Web : Protocole HTTP
Sécurité des Web Services
ATTENTION Ce « tutoriel » a été entièrement réalisé avec l’outil présenté !
S ÉCURISER IIS 8.5 Commerce électronique. P LAN Recommandation sur la sécurité d’un serveur Web (Best practices) Configuration d’un serveur IIS 8.5 sur.
JI Les systèmes d’autorisation et d’authentification dans AMI Fabian Lambert.
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
COMPTE RENDU DU PPE 3 Cyrille Matungulu 1. S OMMAIRE Présentation de la demande du client MFC Choix techniques pour le projet Securisa Etapes du Montage.
Chapitre10 Prise en charge des utilisateurs distants Module S41.
Développement d’application avec base de données Semaine 3 : Modifications avec Entité Framework Automne 2015.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 5 Support de cours rédigé par Bernard COFFIN Université.
V- Identification des ordinateurs sur le réseau??? ? ? ? ?
Freeplane Free mind mapping and knowledge ree mind mapping and knowledge Freeplane Free mind mapping and knowledge ree mind mapping and knowledge.
POSTURE DE CONSEILLÈRE PÉDAGOGIQUE STRATÉGIES PÉDAGOGIQUES FAVORISANT LA RÉUSSITE, POUR OÙ COMMENCER? 9 mars 2016 – Caroline Boucher, Cégep de Lévis-Lauzon.
Un outil de communication : la liste de diffusion Mis à jour en juillet 2008 Anne Maincent-Bourdalé CRDoc IUT Paul Sabatier.
 Sensibiliser les gens du problème et des dangers des entrées par infraction.  Faire valoir leur technologie avant-gardiste.
Office MIX. Présentation Add-on pour PowerPoint (gratuit et en anglais) : un nouvel onglet Nécessite OFFICE 2013 ou OFFICE 365.
Module S42 Chapitre 1  Présentation de l'administration des comptes et des ressources.
FACTORY systemes Module 5 Page 5-1 Les outils clients Wonderware FORMATION InSQL 7.0.
Violation de Gestion d’authentification et de Session
Projet Personnel (Epreuve 6) Projet réalisé dans le cadre de mon épreuve E6 au sein de mon alternance au conseil départemental du val de marne Arnaud PICANO.
Migration Plan adressage EPLE Migration Plan d'adressage EPLE.
Les méthodes de tests Les grands principes pour réaliser des tests efficaces.
Chapitre 6 Déploiement et gestion des logiciels à l'aide d'une stratégie de groupe Module S44.
Du panier à la commande client Créer un panier Identification Validation de la commande Paiement Formulaire de création de compte Etats de la commande.
INTERNET #2 Les Protocoles utilisés quotidiennement sur internet http & https POP3 & SMTP IMAP.
Jobs multicore dans WLCG Présentation en partie basée sur des présentations faites dans le cadre du groupe de travail multicore.
Sals vélo Titouan OUVRARD Antoine BROSSIER Benjamin RUAU.
Eric Fede - 1 GESTION DES PRIORITES SUR LA GRILLE.
 Introduction  Les protocoles de sécurité  Les attaques possibles  Conclusion.
Com. info., 7 avril 2011 Vincent Poireau 1. Rôle de la commission informatique Faire un bilan de l’informatique Evaluer les besoins des utilisateurs Proposer.
Classe virtuelle et réunion en ligne CENTRA Présentation dU dispositif Octobre 2010Pôle de compétences FOAD Formation Ouverte et A Distance.
Introduction Depuis le début des sites web les urls sont utilisé pour la navigation. Avec l’arrivée des bases de données, les urls ont prit de l’importance.
Étude des émissions diffuses avec l’expérience H.E.S.S. Tania Garrigoux.
(fait son épicerie les jeudi). Cross site Scripting est l'attaque web la plus commune.
A9 – Utilisation de composants avec des vulnérabilités connues Présenté par Mikael Andries-Gounant.
Chapitre 9 Gestion des maîtres d'opérations
INSCRIPTIONS SPORTIVES
Test de compréhension sur l’éducation centrée sur l’élève.
Développement d’applications Web
Persistance des données O.Legrand. Persistance developer.android.com/guide/topics/data/data-storage.htmll Plusieurs moyens sur le mobile: –Système de.
Transcription de la présentation:

Violation de Gestion d'Authentification et de Session

Mise en contexte Informations d’authentification : Username / password Session : Génération d’un session ID unique Session ID cookie ou URL But : Preuve d’authentification Éviter de passer les informations confidentielles du user

Présentation du problème Méthode de Hijacking Emprunte identité du user (session ID) Danger : Envoyer demandes au site web à partir des privilèges du vrai user Risque d’attaque si : - User interaction avec un site affecté - L’attaquant a réussi a prédire le session ID du user User peut ne pas se douter de l’intrusion

Environnements affectés Cookies URL de sites web Champs de formulaires invisible pour l’utilisateur Tous les Framework d’applications web sont vulnérables

Attaques possibles Prérequis: Posséder au moins 1 ID de session valide pour prédire/deviner les autres Analyser Déterminer l’algorithme de génération Attaques : Se connecter à l’application web avec ID de session trouvé Brute Force le prochain ID de session Échanger la valeur actuelle dans le cookie/URL avec l’ID du prochain user

Cas possibles Partage d’URL en étant authentifié Timeouts mal définies (fermer l’app ne déconnecte pas) Capture de paquets non sécurisés

Exemple 1 Solution : Empêcher d’accepter les ID par GET/POST session.use_only_cookies = 1 ID dans URL Mis à 0 par défaut Encrypter le session ID

Exemple 2 - Solution : Intégrer configuration SSL

Exemple 3 GET /profile.php HTTP/1.1 Requête 1: GET / HTTP/1.1 Host: example.org User-Agent: Mozilla/5.0 Accept: text/xml, image/png, image/jpeg, image/gif, */* Cookie: PHPSESSID=1234 Requête 2: GET /profile.php HTTP/1.1 User-Agent: Mozilla/5.0 (compatible; MSIE) Accept: text/xml, image/jpeg, image/png, image/gif, */*

Exemple 3 solution <?php session_start(); if (isset($_SESSION['HTTP_USER_AGENT']) && $_SESSION['HTTP_USER_AGENT'] != md5($_SERVER['HTTP_USER_AGENT'])) { /* Vérifier le mot de passe*/ exit; } else { $_SESSION['HTTP_USER_AGENT'] = md5($_SERVER['HTTP_USER_AGENT']); }   ?>

Comment faire pour éviter Indices d’occurrence : User: Le site répond différemment à une entrée du user Le site arrête de fonctionner pour une raison inconnue Host: Requêtes avec ID invalide Même IP pour chaque requête d’ID différent 2 ID connectés en même temps

Comment faire pour éviter Solutions/mesures de sécurité : Grande source de hasard pour ID de session Agrandir l’ID Expirer l’ID Limiter nb d’erreurs de connection Brute Force Pas donner d’indice quant à l’origine de l’erreur Pas utiliser les informations du User pour générer Encrypter l’ID lorsqu’il est exposé au User ex : Rangé dans un cookie en format encrypté Pas exposer ID valide dans les URL/logs Accepter seulement ID générés par serveur

Conclusion Méthode doit être prise en compte: Faille évidente et compromettante Peu rendre le site vulnérable Facilement évitable sécurité

Sources http://webcache.googleusercontent.com/search?q=cache:http://projects.webappsec.org/Credential-and-Session- Prediction&gws_rd=cr&ei=egxRVpXKOcOoe6jokaAE https://www.owasp.org/index.php/Session_Prediction http://shiflett.org/articles/session-hijacking http://hungred.com/useful-information/solutions-session-attacks/ http://www.c-sharpcorner.com/UploadFile/suthish_nair/how-to-avoid-session-hijacking-in-web-applications/