SQL Parser XML Xquery : Approche de détection des injections SQL
|
|
- Raymond Chaput
- il y a 8 ans
- Total affichages :
Transcription
1 SQL Parser XML Xquery : Approche de détection des injections SQL Ramahefy T.R. 1, Rakotomiraho S. 2, Rabeherimanana L. 3 Laboratoire de Recherche Systèmes Embarqués, Instrumentation et Modélisation des Systèmes et Dispositifs Electroniques (LR-SE-I-MSDE) Ecole Doctorale en Sciences et Techniques de l Ingénierie et de l Innovation (ED-STII) Ecole Supérieure Polytechnique - Université d Antananarivo BP Antananarivo 101 Madagascar 1 ramahefy@yahoo.fr rakmiraho@yahoo.fr 2 lilirabe@voila.fr 3 Résumé Cet article présente une proposition de méthode de détection des injections SQL qui s'est basée sur l'approche SQL Parser XML- XQuery. L approche utilise la technique d'analyse lexicale et l'analyse syntaxique pour contrôler les entrées avant d'exécuter la requête correspondante dans la base de données. Le processus consiste à construire un profil de comportement de l'application dans deux fichiers XML pendant la phase d apprentissage et pendant la phase de détection. Le résultat de ces analyses permet d'extraire et d'indiquer la requête qui s'écarte du comportement normal via le préprocesseur XQuery. Mots-clés: Injection SQL, SQL parser, vulnérabilité web, analyse lexicale, analyse syntaxique Abstract This article presents a proposal method of detecting SQL injection which is based on SQL Parser XML - XQuery approach. This approach uses lexical and parsing analysis to control data inputs before executing the corresponding query in the database. The process involves building application behavior profile in two XML files during the learning and detection phase. The result of these analyses allowed extracting and specifying the query that deviates from the normal behavior via XQuery preprocessor. Keywords: SQL injection, SQL parser, web vulnerability, lexical analysis, syntactic analysis 1- Introduction L application web et son infrastructure utilisent des technologies diverses. La maturité du marché de sécurité réseau et les nombreuses fonctions d'entrées utilisées à travers les interfaces web font que l'application est un objectif populaire pour l'attaque. L'injection SQL est l'une des failles les plus critiques pour une application utilisant une base de données SQL [1] et fait la Une des presses mondiales ces dernières 1
2 années. Les injections SQL commencent par entrer des données suspicieuses ou par utiliser des fragments de codes à travers les applications web. Cette approche nous permet de les détecter facilement. Il est ainsi intéressant de voir successivement l approche de détection de l injection SQL, le processus de la détection, la simulation et le résultat de l'approche, son évaluation et quelques recommandations. 2- Approche de détection de l injection SQL En général, l approche de détection des injections SQL se fait en deux étapes très distinctes [2] la phase de formation ou phase d apprentissage et la phase de détection. La figure 01 suivante montre le schéma synoptique de l approche PHP Parser XML- XQuery Requête Analyseur Lexical Syntaxique Compilation XML Fichier référence Fichier requête Figure 01 : Schéma synoptique du processus de l approche 2.1 Phase d apprentissage Requête XML Processeur XQuery Analyse résultat La phase d apprentissage consiste à étudier le comportement normal de l application depuis que les données sont entrées dans l interface web jusqu à ce que les requêtes créées soient envoyées dans la base de données. La source d obtention des traces est soit par le journal de la base de données soit par SQL Parser en faisant une simulation à vide de la requête que le développeur veut envoyer dans la base de données. Autrement dit, le but étant d encoder efficacement les requêtes afin d extraire leurs caractéristiques utiles et d avoir l empreinte de l application dans un fichier XML. En appliquant les règles d associations sur le fichier XML, le fichier obtenu contient ainsi une liste des requêtes légitimes classées susceptibles à l attaque d injection SQL. 2.2 Phase de détection La phase de détection considère à la fois la détection des anomalies et la détection d abus. La phase précédente a montré comment les requêtes bénignes sont collectées et saisies dans un fichier XML pour créer une règle sur une requête. Lors de l utilisation de l application par l utilisateur, chaque requête sensible est testée sur cette empreinte de l application et chaque règle qui dépasse le minimum de soutien et la confiance ne serait pas envoyée dans la base 2
3 de données et ne sera pas exécutée. Dans une application typique de base, l interface demande à l utilisateur de fournir les données d entrées nécessaires pour les clauses à partir de WHERE de la requête et la clause FROM reste statique au moment de l exécution. Toute modification à partir de la clause WHERE par des attaquants qui ne peut pas être tirée à partir du profil des règles sera considérée comme une injection SQL. 3. Processus de détection Plusieurs étapes sont suivies pour le processus de détection allant de la recherche des requêtes sensibles, de la décomposition de la requête par SQL Parser, de la création des fichiers XML jusqu à l extraction des fichiers par XQuery. Ceci est récapitulé par la figure 02. Oui Interface web Données entrées Requête SQL Sensible SQL Parser Création fichier XML Vérifier séquence Séquence existe Matrice Fichier XML/profil Figure 02 : Organigramme de détection a- Recherche des requêtes sensibles La première étape à faire pour commencer le processus de détection des injections SQL est de spécifier toutes les requêtes sensibles. Souvent les requêtes dans une authentification, les requêtes utilisées dans les affichages filtrés sont considérées comme requêtes sensibles et sont exposées aux attaques. C est le travail des développeurs de les déterminer avant que les attaqueurs les trouvent pour mettre le site hors de la vulnérabilité SQL. b- SQL Parser Après avoir trouvé les requêtes sensibles, l étape suivante consiste à les décomposer en plusieurs sections en fonction de la commande «SELECT, UPDATE, DELETE, SHOW, ALTER», du nom de la table, des noms des opérateurs ainsi que les valeurs des champs. Le SQL Parser n est autre qu un analyseur lexical et syntaxique des requêtes SQL basés essentiellement sur des automates. Un arbre de syntaxe abstrait est ainsi formé comme le montre la figure 03. Effacer fichiers XML et XQUERY Non Revérifier requête Non Oui Ajouter séquence Autoriser envoi requête Base de données Bloquer requête Alerter injection 3
4 Figure 03 : Arbre syntaxique d une requête par SQL Parser principale FLWOR (For-Let-Where-Order- Return). XQuery arrive à gérer un calcul complexe à partir des informations extraites et à la reconstruire en un fichier XML [3]. Le but de notre approche est d exploiter le fragment de code ainsi que le contenu des nœuds via le processeur XQuery. Chaque requête sensible aura ainsi son propre fichier XQuery pour faire cette interrogation 3. Résultat de l approche c- Création des fichiers XML Le XML (Extensible Markup Language) est utilisé ici pour stocker et traiter les données issues de la requête décomposée. Le fichier XML de référence ou empreinte de l application est le premier fichier à créer. Pour optimiser la recherche du processeur XQuery, l ajout d identificateur id dans chaque séquence de balise est nécessaire. Il ne faut pas oublier qu il existe aussi des références d entités de caractères spécifiques pour XML. Le second fichier XML est créé lors de la manipulation de l interface de l application. d- XQuery XQuery est un langage conçu pour l interrogation des arbres dans un fichier XML. Il utilise les expressions XPath pour faire la recherche au niveau de la position dans un arbre à travers son expression 4 L approche a été testée avec plusieurs types de commande. La commande SELECT est donnée dans la figure 04. SELECT nom, FROM users WHERE blocked=0 username='rakoto' and password ='Test1234' Figure 04 : Exemple de requête à analyser 3.1 Décomposition d une requête par SQL Parser PHP est le langage utilisé pour décomposer la requête SQL de la figure 04. Notre script PHP analyse la requête SQL en utilisant ses librairies de fonction surtout les «regex» ou «expressions régulières». L analyse se limite ainsi à une décomposition de la
5 grammaire SQL. L arbre syntaxique obtenu est ainsi représenté par la figure 05 suivante. MADA-ETI, ISSN , Vol.1, 2015, SELECT nom, FROM users WHERE blocked=0 and username= Rakoto and passeword= Test1234 SELECT List select FROM List table Where List-where commande colref commande table commande colref operator const nom users username Rakoto Figure 05 : Arbre syntaxique de la requête SELECT d un login L affichage à la sortie est un tableau multidimensionnel dont les clés et les valeurs sont bien structurées et exploitées comme indique la figure Figure 06 : Variable array du SQL Parser pour une requête SELECT 3.2 Script XML Le fichier XML de référence a été créé pendant la phase d apprentissage. Le but de la création du fichier XML est de généraliser les requêtes, c est-à-dire d avoir une requête généralisée dans les séquences de chaque nœud dont la valeur à l intérieur est globale. La valeur d un champ est alors testée et remplacée par string si c est une chaîne de caractère, number si c est du nombre ainsi de suite. L autre fichier XML est créé de la même manière mais la différence c est que la première est considérée comme une matrice pour l interrogation du second fichier. La balise <querys> comporte l identification id de la requête. Si la requête n est pas une attaque alors le contenu de ce dernier fichier devrait être le même que celui de la séquence dans le fichier de la phase de formation. Si la requête est une attaque, la balise <querys> comporte
6 toujours la même identification mais c est la séquence des nœuds qui n est pas pareille à la séquence stockée dans le fichier matrice c est pourquoi elle est considérée comme une attaque. La figure 07 est un exemple de fichier XML de référence créé lors de la phase d apprentissage. <modelquery> <querys id="1"> <command>update</command> <table>employee</table> <command>set</command> <colref>salary</colref> <const>number</const> </querys> <querys id="3"> <command>select</command> <colref>nom</colref> <colref> </colref> <command>from</command> <table>user</table> <command>where</command> <colref>blocked</colref> <const>const</const> <colref>user</colref> <colref>password</colref> </querys> </modelquery> Figure 07: Fichier XML de référence pendant la phase d apprentissage Lors de la phase de détection, toutes les requêtes sensibles passent toujours par SQL Parser dans le but de pouvoir les transformer en fichier XML. La création du fichier XML lors de la phase de détection est le même principe que celui de la phase d apprentissage. Lorsqu un utilisateur 6 Rakoto/Test1234 veut s authentifier la requête correspondante est donnée par la figure 04. Quand un attaquant entre «attacker or 1= 1 --» dans le champ identifiant en remplissant ou non dans la zone de password, la requête correspondante est donnée par la figure 08 et le fichier XML créée est illustré par la figure 09. SELECT nom, FROM users WHERE blocked='0' AND user ='attacker' or 1=1 -- ' AND paswd = '' Figure 08: Requête d authentification avec injection SQL Comme or 1=1 retourne toujours vrai alors si cette requête n est pas passée dans notre détecteur d injection SQL avant d être exécutée, alors l attaqueur arrivera à contrôler l administration du site Web. <querys id="3"> <command>select</command> <colref>nom</colref> <colref> </colref> <command>from</command> <table>user</table> <command>where</command> <colref>blocked</colref> <const>const</const> <colref>user</colref> <colref>password</colref> </querys> <querys id="3"> <command>select</command> <colref>nom</colref> <colref> </colref> <command>from</command> <table>user</table> <command>where</command> <colref>blocked</colref> <const>const</const> <colref>user</colref> <operator>or</operator> <const>1</const> <const>number</const> <colref>==' AND password='test1234'</colref> /
7 a- Requête normale b- Requête anormale Figure 09 : Fichier XML généré pour une requête normale et anormale 3.3 Script principal en PHP La fonction checksqlia () est le cœur de notre approche développée en PHP. Toutes les requêtes sensibles appellent cette fonction avant d être exécutées à la BD. checksqlia () est une fonction qui rassemble toutes les étapes de cette approche. Chaque étape se présente sous forme de «classe» composée de plusieurs «méthodes» ou «fonctions membres». Le script aura successivement une classe pour SQL Parser [4], une classe pour la création des fichiers XML, pour la création du fichier XQuery. Le code de lancement de la commande shell pour XQuery est aussi présent dans cette fonction checksqlia(). La fonction checksqlia () de la figure 10 retourne ainsi une valeur booléenne «false» pour détecter cette attaque. 7 Figure 10 : Programme principal de l approche 3.4 Script XQuery Le code XQuery utilisé pour extraire les informations dans les fichiers matrices XML est donné par la figure 11. La fonction «détection SQLIA» en XQuery est créée pour faire cette interrogation dans le fichier XML de référence. En réalité ce fichier fait une comparaison étroite des nœuds des deux fichiers XML et retourne sous une variable booléenne la réponse de cette comparaison. Figure 11 : Exemple de programme XQuery pour l approche En lançant ce programme, la seconde requête (fig 09b) est identifiée comme une SQLIA. Cette requête n est pas envoyée dans la BD puisque la variable retournée par la fonction check SQLIA est false. Une autre fonction est créée pour le reporting afin d alerter l administrateur du site Web en envoyant un mail ou des alertes de SQLIA pour que ce dernier prenne des décisions y afférentes.
8 4- Evaluation et recommandation Cette approche ne génère pas de faux négatifs et en passant par un bon apprentissage, elle ne génère pas non plus de faux positifs. La création des deux fichiers.xml et.xquery pourrait charger le serveur, c est la raison pour laquelle il est toujours nécessaire de supprimer les fichiers issus des requêtes bénignes. L exécution de l extension du XQuery n est pas automatique sur la version actuelle de PHP. En réalité pour ajouter une extension sur la version 5.3, l utilisation de la fonction dl_() nécessite quelque paramétrage d entrée [5]. Pour notre cas, nous avons choisi Zorba pour simuler cette approche. Zorba est un simulateur de code XQuery qui contient des API utilisables en java, PHP et Perl ainsi que les autres plateformes SQL. Alors nous avons installé Zorba et lancé la commande «exec()» pour faire fonctionner notre simulation 5- Conclusion Les injections permettent d avoir accès aux données, de les modifier voire de les supprimer, d usurper le compte d un utilisateur, d accéder à la structure de la base, de contourner les règles de gestion, ou encore obtenir certaines informations concernant le serveur. Prendre en compte 8 ces risques potentiels apportés par les injections SQL a conduit à concevoir une approche pour les détecter. L approche SQL Parser XML-XQuery s appuie sur la technique d analyse lexicale et syntaxique. Les deux phases principaux pour cette approche sont la phase d apprentissage qui nous a permis d avoir un fichier XML de référence et la phase de détection qui nous a transformé la requête «chaude» en un autre fichier XML. Pendant la phase de détection, l analyseur de requête XQuery fait une interrogation du dernier fichier XML au fichier de référence. Une requête est considérée comme SQLIA si le résultat de la recherche retourne false. L analyse de cette approche nous a permis de dégager une piste de travail répondant à nos objectifs d avoir une approche effective et efficace de detection des injections SQL en exploitant l analyse lexicale et l analyse sémantique. Notre prochain travail consistera à l exploitation de l analyse sémantique qui n est autre que la partie complémentaire. 6. Références [1]- «OWASP TOP » OWASP, The open web application Security Projecthttps:// php/top_10_2013, Mai 2013
9 [2]- William G.J., Halfond and Orso A.,«Combining Static Analysis and Runtime Monitoring to Counter SQL-Injection Attacks», College of Computing Georgia Institute of Technology,Mai rs/halfond.orso.woda05.pdf, Mai 2005 Rawat R., Kumar S., Samrat S. Ashok «SQL injection attack Detection using SVM», Technological Institute, March /number13/pxc pdf - Chung Y-C., Wu M-C.,Chen Y-C, Chang W-K «A Hot Query Bank approach to improve detection performance against SQL injection attacks» act/2012_11_07_09_51_ pdf, Janvier 2012 [5] «Fonction dl_» Novembre 2013 [3] «xquery» Fevrier 2014 [4] «php-sql-parser» Novembre
Mysql. Les requêtes préparées Prepared statements
Mysql Les requêtes préparées Prepared statements Introduction Les prepared statements côté serveur sont une des nouvelles fonctionnalités les plus intéressantes de MySQL 4.1 (récemment sorti en production
Plus en détailOWASP Open Web Application Security Project. Jean-Marc Robert Génie logiciel et des TI
OWASP Open Web Application Security Project Jean-Marc Robert Génie logiciel et des TI A1: Injection Une faille d'injection, telle l'injection SQL, OS et LDAP, se produit quand une donnée non fiable est
Plus en détailcedric.foll@(education.gouv.fr laposte.net) Ministère de l'éducation nationale Atelier sécurité Rabat RALL 2007
A t t a q u e s c o n t r e l e s a p p l i s w e b cedric.foll@(education.gouv.fr laposte.net) Ministère de l'éducation nationale Atelier sécurité Rabat RALL 2007 D e l ' u t i l i t é d e l ' a t t a
Plus en détailSécurité des applications web. Daniel Boteanu
I F8420: Éléments de Sécurité des applications web Daniel Boteanu Architecture des applications web Client légitime Internet HTTP 浀 HTML Server Web 2 Architecture des applications web Client légitime Internet
Plus en détailAttaques applicatives
Attaques applicatives Attaques applicatives Exploitation d une mauvaise programmation des applications Ne touche pas le serveur lui-même mais son utilisation/ configuration Surtout populaire pour les sites
Plus en détailTech-Evenings Sécurité des applications Web Sébastien LEBRETON
Tech-Evenings Sécurité des applications Web Sébastien LEBRETON Pourquoi revoir la sécurité des applications Web Des technologies omniprésentes Facilité de mise en œuvre et de déploiement. Commerce en ligne,
Plus en détailDSL. Domain Specific Language. À l'aide des technologies Eclipse Modeling. Goulwen Le Fur goulwen.lefur@obeo.fr. Le 23 novembre 2012
DSL Domain Specific Language À l'aide des technologies Eclipse Modeling Le 23 novembre 2012 Goulwen Le Fur goulwen.lefur@obeo.fr Le but de cette session Montrer : Ce qu'est-un DSL/DSM Comment implémenter
Plus en détailSécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin
Sécurité des sites Web Pas un cours un recueil du net INF340 Jean-François Berdjugin Vulnérabilité Définition (wikipédia) : Dans le domaine de la sécurité informatique, une vulnérabilité est une faiblesse
Plus en détailAccès à l'information XML par des requêtes XQuery au travers de son XSchema
Rapport projet de fin d étude ASR Accès à l'information XML par des requêtes XQuery au travers de son XSchema Réalisé par : DAB Marwa MGARRECH Oussama Encadré par : Mme LOPES GANCARSKI Alda 2011/2012 Remerciements
Plus en détailXML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)
Présentation du langage XML 1. De SGML à XML 17 2. Les bases de XML 18 2.1 Rappel sur HTML 18 2.2 Votre premier document XML 19 2.3 Les avantages de XML 21 3. La syntaxe XML 21 3.1 La première ligne du
Plus en détailPrincipales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement
Guillaume HARRY l Contenu sous licence Creative Commons CC-BY-NC-ND Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement P. 2 1. Introduction 2.
Plus en détailInformation utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/
Systèmes de gestion de bases de données Introduction Université d Evry Val d Essonne, IBISC utiles email : cinzia.digiusto@gmail.com webpage : http://www.ibisc.univ-evry.fr/ digiusto/ Google+ : https://plus.google.com/u/0/b/103572780965897723237/
Plus en détailSQL MAP. Etude d un logiciel SQL Injection
Introduction Ce TP a pour but d analyser un outil d injection SQL, comprendre les vulnérabilités d une BD et de mettre en œuvre une attaque par injection SQL. Prise en main du logiciel SQLMap est un outil
Plus en détailPHP. PHP et bases de données
Accés aux bases de données Une des raisons du succès de PHP Support d un grand nombre de bases - MySQL - Oracle - PostgreSQL - SQLite - Microso> Access - DBM - IBM Informix -... Accés aux bases de données
Plus en détailFileMaker Server 11. Publication Web personnalisée avec XML et XSLT
FileMaker Server 11 Publication Web personnalisée avec XML et XSLT 2007-2010 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker est une
Plus en détailFormula Negator, Outil de négation de formule.
Formula Negator, Outil de négation de formule. Aymerick Savary 1,2, Mathieu Lassale 1,2, Jean-Louis Lanet 1 et Marc Frappier 2 1 Université de Limoges 2 Université de Sherbrooke Résumé. Cet article présente
Plus en détailEvolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht.
Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht.fr 1 MVC et le web 27/05/14 2 L'évolution des systèmes informatiques
Plus en détailTravaux soutenus par l ANR. Jean-François CAPURON (DGA) Bruno LEGEARD (Smartesting)
Travaux soutenus par l ANR Jean-François CAPURON (DGA) Bruno LEGEARD (Smartesting) 03 Avril 2012 1. Test de sécurité et génération de tests à partir de modèle 2. Le projet SecurTest à DGA Maîtrise de l
Plus en détailÉvaluation et implémentation des langages
Évaluation et implémentation des langages Les langages de programmation et le processus de programmation Critères de conception et d évaluation des langages de programmation Les fondations de l implémentation
Plus en détailLangage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes
Langage SQL (1) Sébastien Limet Denys Duchier IUT Orléans 4 septembre 2007 Notions de base qu est-ce qu une base de données? SGBD différents type de bases de données quelques systèmes existants Définition
Plus en détailPHP. Bertrand Estellon. 26 avril 2012. Aix-Marseille Université. Bertrand Estellon (AMU) PHP 26 avril 2012 1 / 214
PHP Bertrand Estellon Aix-Marseille Université 26 avril 2012 Bertrand Estellon (AMU) PHP 26 avril 2012 1 / 214 SQLite et PDO Base de données SQLite et PDO SQLite écrit les données relatives à la base dans
Plus en détail2011 Hakim Benameurlaine 1
Table des matières 1 UTILISATION DES OUTILS DE REQUÊTES... 2 1.1 Bases de données SQL Server... 2 1.2 Éditions de SQL Server... 3 1.3 Les outils de SQL Server... 4 2011 Hakim Benameurlaine 1 1 UTILISATION
Plus en détailPHP 4 PARTIE : BASE DE DONNEES
PHP 4 PARTIE : BASE DE DONNEES 1. Introduction 2. Présentation de MySQL 3. Principe 4. Connexion 5. Interrogation 6. Extraction des données 7. Fonctions de services 8. Traitement des erreurs 9. Travaux
Plus en détailRevue de code Sécuritéou Test d Intrusion Applicatif. Quel est le plus efficace pour évaluer un niveau de sécurité applicatif?
Revue de code Sécuritéou Test d Intrusion Applicatif Quel est le plus efficace pour évaluer un niveau de sécurité applicatif? http://www.google.fr/#q=sebastien gioria Responsable de la branche Audit S.I
Plus en détailSécurité des bases de données Nicolas Jombart Alain Thivillon
HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet Sécurité des bases de données Nicolas Jombart Alain Thivillon Place
Plus en détailLa base de données XML exist. A. Belaïd
La base de données XML exist Introduction Qu est-ce-que exist? C est une base de donnée native, entièrement écrite en Java XML n est pas une base de données en soi Bien qu il possède quelques caractéristiques
Plus en détailCREATION WEB DYNAMIQUE
CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de
Plus en détailModule BD et sites WEB
Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD
Plus en détailCours Bases de données
Informations sur le cours Cours Bases de données 9 (10) séances de 3h Polycopié (Cours + TD/TP) 3 année (MISI) Antoine Cornuéjols www.lri.fr/~antoine antoine.cornuejols@agroparistech.fr Transparents Disponibles
Plus en détailopenarchitectureware & transformation de modèle Yannick Lizzi Architecte Logiciel itemis France Mail: lizzi@itemis.de
openarchitectureware & transformation de modèle Yannick Lizzi Architecte Logiciel itemis France Mail: lizzi@itemis.de itemis France 2009 All rights reserved 1 Itemis en quelques mots Spécialisé dans l
Plus en détailVulnérabilités et sécurisation des applications Web
OSSIR 09/09/2002 Vulnérabilités, attaques et sécurisation des applications Web Pourquoi les firewalls sont impuissants patrick.chambet@edelweb.fr http://www.edelweb.fr http://www.chambet.com Page 1 Planning
Plus en détailCatalogue des formations Edition 2015
Antidot - Formations Catalogue des formations Edition 2015 : catalogue_formation_2015 Révision du 06.01.2015 Sommaire!!"##$%&'( )! $*$+,(-'(."##'+.'&( /!,'.0+"1"2%'( /!!."3'( /! $(3&"3"!(-4(5(.$,$1"24'(-'!(6"&#$,%"+!(7('-%,%"+()89:(;(
Plus en détailIyad Alshabani SysCom - CReSTIC Université de Reims 17/02/2011 1
SysCom - CReSTIC Université de Reims 17/02/2011 1 Motivation Gestion des expérimentations Avec les workflows Simulation Simulation des Systèmes Distribués ANR USS SimGrid Campagne de Test et gestion de
Plus en détailles techniques d'extraction, les formulaires et intégration dans un site WEB
les techniques d'extraction, les formulaires et intégration dans un site WEB Edyta Bellouni MSHS-T, UMS838 Plan L extraction des données pour un site en ligne Architecture et techniques Les différents
Plus en détailPHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)
PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et
Plus en détailChapitre 2 : Abstraction et Virtualisation
Virtualisation et Cloud Computing Chapitre 2 : Abstraction et Virtualisation Objectifs Présenter la notion de niveaux d abstraction séparés par des interfaces bien définies Description des avantages et
Plus en détail1. Formation F5 - Local Traffic Manager Configuring (LTM)
Description F5 F5 Networks, Inc. (NASDAQ: FFIV) est une entreprise informatique américaine fondée en 1996 établie à Seattle qui commercialise des équipements réseau. Dans les années 1990, la société a
Plus en détailTechnologies du Web. Ludovic DENOYER - ludovic.denoyer@lip6.fr. Février 2014 UPMC
Technologies du Web Ludovic DENOYER - ludovic.denoyer@lip6.fr UPMC Février 2014 Ludovic DENOYER - ludovic.denoyer@lip6.fr Technologies du Web Plan Retour sur les BDs Le service Search Un peu plus sur les
Plus en détailForthcoming Database
DISS.ETH NO. 15802 Forthcoming Database A Framework Approach for Data Visualization Applications A dissertation submitted to the SWISS FEDERAL INSTITUTE OF TECHNOLOGY ZURICH for the degree of Doctor of
Plus en détailLe Langage SQL version Oracle
Université de Manouba École Supérieure d Économie Numérique Département des Technologies des Systèmes d Information Le Langage SQL version Oracle Document version 1.1 Mohamed Anis BACH TOBJI anis.bach@isg.rnu.tn
Plus en détailPHP 5. La base de données MySql. A. Belaïd 1
PHP 5 La base de données MySql A. Belaïd 1 Base de données C est quoi une base de données? Une base de données contient une ou plusieurs tables, chaque table ayant un ou plusieurs enregistrements Exemple
Plus en détailXML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million
XML, PMML, SOAP Rapport EPITA SCIA Promo 2004 16 janvier 2003 Julien Lemoine Alexandre Thibault Nicolas Wiest-Million i TABLE DES MATIÈRES Table des matières 1 XML 1 1.1 Présentation de XML.................................
Plus en détailLEA.C5. Développement de sites Web transactionnels
LEA.C5 Développement de sites Web transactionnels LEA.C5 Développement de sites Web transactionnels Toutes les entreprises et les organisations utilisent le réseau Internet comme outil de promotion, de
Plus en détailGraphes d attaques Une exemple d usage des graphes d attaques pour l évaluation dynamique des risques en Cyber Sécurité
Graphes d attaques Une exemple d usage des graphes d attaques pour l évaluation dynamique des risques en Cyber Sécurité Emmanuel MICONNET, Directeur Innovation WISG 2013, UTT le 22/1/13 2 / CyberSécurité,
Plus en détailSécurité des Applications Web Comment Minimiser les Risques d Attaques les plus Courants
GUIDE: Sécurité des Applications Web Comment Minimiser les Risques d Attaques les plus Courants Sommaire I. L essentiel II. Les bases de la sécurité des applications Web III. Types de vulnérabilités inhérentes
Plus en détailProgrammation des Applications Réparties. Parsers XML DOM et SAX
Programmation des Applications Réparties Parsers XML DOM et SAX Luiz Angelo Steffenel luiz-angelo.steffenel@univ-reims.fr Steffenel Programmation des Applications Réparties Master M1-2007-2008 1 Comment
Plus en détailPrésentation de la solution Open Source «Vulture» Version 2.0
Présentation de la solution Open Source «Vulture» Version 2.0 Advens IST Day 15 septembre 2011 http://www.vultureproject.org 1 s/apache/mod_perl/ LE PROJET VULTURE Advens IST Day 15 septembre 2011 http://www.vultureproject.org
Plus en détailMaarch Framework 3 - Maarch. Tests de charge. Professional Services. http://www.maarch.fr. 11, bd du Sud Est 92000 Nanterre
Maarch Professional Services 11, bd du Sud Est 92000 Nanterre Tel : +33 1 47 24 51 59 Fax : +33 1 47 24 54 08 Maarch Framework 3 - Maarch PS anime le développement d un produit d archivage open source
Plus en détailJava et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige.
: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java Michel Bonjour http://cuiwww.unige.ch/~bonjour Plan JDBC: API bas niveau pour l accès aux BD (SQL) - Introduction - JDBC et : Java, ODBC, SQL
Plus en détailTHEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL
. THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL Mr MEZRED MOHAMED Ingénieur météorologue INTRODUCTION Il existe de nombreuses manières de construire une base de données. En effet,
Plus en détailOpen Source Job Scheduler
Open Source Job Scheduler Interface web Pré-requis : o Installation Interface Web Configuration Utilisation Administration SOS-Paris 2 Rôle o Interface de publication o Gestion de la base de données o
Plus en détailBASE DE DONNÉES XML NATIVE
BASE DE DONNÉES XML NATIVE NXDB - exist - XQuery IvMad, 2011-2012 2 1. exist exist-db Open Source Native XML Database Ce cours s inspire, reprend, modifie et enrichi des supports disponibles sur Internet
Plus en détailDevenez un véritable développeur web en 3 mois!
Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web
Plus en détailORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010
ORACLE 10G DISTRIBUTION ET REPLICATION Distribution de données avec Oracle G. Mopolo-Moké prof. Associé UNSA 2009/ 2010 1 Plan 12. Distribution de données 12.1 Génération des architectures C/S et Oracle
Plus en détailCOMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2
SQL Sommaire : COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 COMMANDES DE MANIPULATION DE DONNEES... 2 COMMANDES DE CONTROLE TRANSACTIONNEL... 2 COMMANDES DE REQUETE DE DONNEES... 2 COMMANDES
Plus en détailFileMaker Server 12. publication Web personnalisée avec XML
FileMaker Server 12 publication Web personnalisée avec XML 2007-2012 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker et Bento sont
Plus en détailIndicateur et tableau de bord
Agenda Indicateur et tableau de bord «La sécurité n est pas une destination mais un voyage» 1. Jean-François DECHANT & Philippe CONCHONNET jfdechant@exaprobe.com & pconchonnet@exaprobe.com +33 (0) 4 72
Plus en détailOpenPaaS Le réseau social d'entreprise
OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3
Plus en détailFailles XSS : Principes, Catégories Démonstrations, Contre mesures
HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet Séminaire 15 ans HSC Failles XSS : Principes, Catégories Démonstrations,
Plus en détailMercredi 15 Janvier 2014
De la conception au site web Mercredi 15 Janvier 2014 Loïc THOMAS Géo-Hyd Responsable Informatique & Ingénierie des Systèmes d'information loic.thomas@anteagroup.com 02 38 64 26 41 Architecture Il est
Plus en détailTable des matières. Avant-propos... Préface... XIII. Remerciements...
Avant-propos... XI Préface... XIII Remerciements... XV Introduction... XVII Pourquoi faire un pentest?... XVII Pourquoi Metasploit?... XVII Un bref historique de Metasploit.... XVIII À propos de ce livre...
Plus en détail4. Utilisation d un SGBD : le langage SQL. 5. Normalisation
Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :
Plus en détail1/ Présentation de SQL Server :
Chapitre II I Vue d ensemble de Microsoft SQL Server Chapitre I : Vue d ensemble de Microsoft SQL Server Module: SQL server Semestre 3 Année: 2010/2011 Sommaire 1/ Présentation de SQL Server 2/ Architerture
Plus en détailEtude de la pertinence et de l'intérêt des appliances WAF (IPS web) à l'inria
Etude de la pertinence et de l'intérêt des appliances WAF (IPS web) à l'inria 1 Philippe Lecler TutoJRES «Sécurité des sites WEB» 4 février 2010 Contexte 2 PCI-DSS : Payment Card Industry Data Security
Plus en détailApache Camel. Entreprise Integration Patterns. Raphaël Delaporte BreizhJUG 07.11.2011
Apache Camel & Entreprise Integration Patterns Raphaël Delaporte BreizhJUG 07.11.2011 1 Speaker CTO Zenika Ouest Consultant et formateur Responsable comité technique Architecture d'entreprise Domaine ESB
Plus en détail1. LA GESTION DES BASES DE DONNEES RELATIONNELLES
Dossier G11 - Interroger une base de données La base de données Facturation contient tout un ensemble d'informations concernant la facturation de la SAFPB (société anonyme de fabrication de produits de
Plus en détailSQL Server et Active Directory
SQL Server et Active Directory Comment requêter AD depuis SQL Server Comment exécuter des requêtes de sélection sur un Active Directory depuis SQL Server? L'utilisation du principe des serveurs liés adapté
Plus en détailFormation Cloudera Data Analyst Utiliser Pig, Hive et Impala avec Hadoop
Passez au niveau supérieur en termes de connaissance grâce à la formation Data Analyst de Cloudera. Public Durée Objectifs Analystes de données, business analysts, développeurs et administrateurs qui ont
Plus en détailGestion de stock pour un magasin
Département d Informatique Université de Fribourg, Suisse http://diuf.unifr.ch Gestion de stock pour un magasin Stock online utilise ASP/MS-Access DO Thi Tra My No étudiant : 05-333-750 Travail de séminaire
Plus en détailAnalyse statique de code dans un cycle de développement Web Retour d'expérience
Analyse statique de code dans un cycle de développement Web Retour d'expérience Laurent Butti et Olivier Moretti Orange France prenom.nom@orange.com Agenda Introduction Notre contexte L (in)sécurité des
Plus en détailGénérer du code à partir d une description de haut niveau
Cedric Dumoulin Générer du code à partir d une description de haut niveau Ce projet vise à fournir un environnement de développement permettant de modéliser des UI Android à un haut niveau d abstraction,
Plus en détailProgrammation Web. Madalina Croitoru IUT Montpellier
Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance
Plus en détailSGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)
SGBDR Systèmes de Gestion de Bases de Données (Relationnelles) Plan Approches Les tâches du SGBD Les transactions Approche 1 Systèmes traditionnels basés sur des fichiers Application 1 Gestion clients
Plus en détailUne méthode d apprentissage pour la composition de services web
Une méthode d apprentissage pour la composition de services web Soufiene Lajmi * Chirine Ghedira ** Khaled Ghedira * * Laboratoire SOIE (ENSI) University of Manouba, Manouba 2010, Tunisia Soufiene.lajmi@ensi.rnu.tn,
Plus en détailE-TRANSACTIONS. Guide du programmeur API Plug-in. Version 1.1
E-TRANSACTIONS Guide du programmeur API Plug-in Version 1.1 Avertissements : Le fichier Version.txt précise l'environnement dans lequel l API a été compilée et testée. L'installation de l API sur tout
Plus en détailDÉVELOPPER DES APPLICATIONS WEB SÉCURISÉES
DÉVELOPPER DES APPLICATIONS WEB SÉCURISÉES De la théorie à la pratique Juillet 2012 www.advens.fr Document confidentiel - Advens 2012 Développer des Applications Web Sécurisées Intervenants Agenda Frédéric
Plus en détailBases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications
Bases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications P.-A. Sunier, HEG-Arc Neuchâtel avec le concours de J. Greub pierre-andre.sunier@he-arc.ch http://lgl.isnetne.ch/
Plus en détailSQL Server Installation Center et SQL Server Management Studio
SQL Server Installation Center et SQL Server Management Studio Version 1.0 Grégory CASANOVA 2 SQL Server Installation Center et SQL Server Management Studio [03/07/09] Sommaire 1 Installation de SQL Server
Plus en détailMYSQLDUMP & ZRM COMMUNITY
Meetup Viadeo & LeMUG / Paris, November 16, 2011 MYSQLDUMP & ZRM COMMUNITY Scheduling and Monitoring Cédric PEINTRE www.mysqlplus.net 2 Sondage ancien mais toujours valide! mysqldump n est pas mort! Sauvegarde
Plus en détailWhitepaper. Méthodologie de création de rapports personnalisés SQL Server Reporting Services
Ce Whitepaper décrit la méthodologie de développement d un rapport personnalisé au format SQL Server Reporting Service (SSRS) appliqué à System Center Operations Manager (SCOM) Whitepaper Méthodologie
Plus en détailMysql avec EasyPhp. 1 er mars 2006
Mysql avec EasyPhp 1 er mars 2006 Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requètes vers les bases de données relationnelles. Il en reprend la syntaxe
Plus en détailLes formations. ENI Ecole Informatique
Titre professionnel : Inscrit au RNCP de niveau I (Bac) (J.O. du 14 avril 2012) 17 semaines page 1/7 Unité 1 : Spécifier, concevoir et réaliser une application n-tiers 7 semaines Module 1 : Algorithme
Plus en détailProjet Viticulture - TP 3 : bases de données distantes BTS Services informatiques aux organisations
Projet Viticulture TP 3 : bases de données externes Description du thème Partie 1 : bases de données locales SQLite Partie 2 : projet H2O stockage local Partie 3 : bases de données distantes Partie 4 :
Plus en détailNotes de cours : bases de données distribuées et repliquées
Notes de cours : bases de données distribuées et repliquées Loïc Paulevé, Nassim Hadj-Rabia (2009), Pierre Levasseur (2008) Licence professionnelle SIL de Nantes, 2009, version 1 Ces notes ont été élaborées
Plus en détailCIBLE DE SECURITE CSPN DU PRODUIT PASS. (Product for Advanced SSO)
CIBLE DE SECURITE CSPN DU PRODUIT PASS (Product for Advanced SSO) Préparé pour : ANSSI Préparé par: Thales Communications & Security S.A. 4 Avenue des Louvresses 92622 GENNEVILLIERS CEDEX France This document
Plus en détailExemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions
Exemple accessible via une interface Web Une base de données consultable en ligne : Bases de données et systèmes de gestion de bases de données The Trans-atlantic slave trade database: http://www.slavevoyages.org/tast/index.faces
Plus en détailMySQL. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada
MySQL (Administrateur) (Dernière édition) Programme de formation Microsoft Partner France, Belgique, Suisse, Roumanie - Canada WWW.SASGROUPE.COM Formez vos salariés pour optimiser la productivité de votre
Plus en détailpalais des congrès Paris 7, 8 et 9 février 2012
palais des congrès Paris 7, 8 et 9 février 2012 Analysis Services 2012 BI Personnelle, couche sémantique, cube, quelle(s) solution(s) pour un nouveau projet décisionnel? 08/02/2012 Aurélien KOPPEL Microsoft
Plus en détailBases de données Page 1 de 11. Bases de données. Prof. : Dzenan Ridjanovic
Bases de données Page 1 de 11 1- Objectifs généraux Bases de données Prof. : Dzenan Ridjanovic acquérir les principes et concepts fondamentaux dans le domaine des bases de données; développer les connaissances
Plus en détailQuelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)
Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07
Plus en détailProgramme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence
É C O L E D I N G É N I E U R D E S T E C H N O L O G I E S D E L I N F O R M A T I O N E T D E L A C O M M U N I C A T I O N Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION Mentions
Plus en détailSession S12 Les bases de l optimisation SQL avec DB2 for i
Session S12 Les bases de l optimisation SQL avec DB2 for i C. GRIERE cgriere@fr.ibm.com STG Lab Services IBM i Avril 2012 Les fleurs et les requêtes SQL Lorsque l on veut planter de nouvelles fleurs dans
Plus en détailPratique et administration des systèmes
Université Louis Pasteur Licence Informatique (L2) UFR de Mathématiques et Informatique Année 2007/2008 1 But du TP Pratique et administration des systèmes TP10 : Technologie LAMP Le but de ce TP est de
Plus en détailUTILISATION DE LA PLATEFORME WEB D ANALYSE DE DONNÉES GALAXY
UTILISATION DE LA PLATEFORME WEB D ANALYSE DE DONNÉES GALAXY Yvan Le Bras yvan.le_bras@irisa.fr Cyril Monjeaud, Mathieu Bahin, Claudia Hériveau, Olivier Quenez, Olivier Sallou, Aurélien Roult, Olivier
Plus en détailIntroduction à la B.I. Avec SQL Server 2008
Introduction à la B.I. Avec SQL Server 2008 Version 1.0 VALENTIN Pauline 2 Introduction à la B.I. avec SQL Server 2008 Sommaire 1 Présentation de la B.I. et SQL Server 2008... 3 1.1 Présentation rapide
Plus en détailGrandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test
Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite
Plus en détail