SlideShare une entreprise Scribd logo
1  sur  15
Télécharger pour lire hors ligne
Démonstration :
Injection de code18 mars 2016 – Polytech Marseille
ThomasVIAUD
Contenu
• Présentation du scénario et des objectifs
• Base de données SQL
• Langage SQL
• Injection SQL
• Failles XSS
• Conclusion
Présentation du scénario et des objectifs
Utilisateur Site internet Base de données
Base de données
Présentation du scénario et des objectifs
Hacker Maître de l’univers ?
Base de données SQL*
Users
Posts
Comments
userid intPK
firstname text
name text
postid intPK
title text
content text
commentid intPK
content text
postid intFK
userid intFK
userid intFK
username text
password text
Un article ne peut
appartenir qu’à un
seul utilisateur.
Plusieurs
utilisateurs
peuvent
commenter le
même article.
Fonctionnement simplifié d’un blog :
SQL : StructuredQuery Language
SELECT * FROM users;
+------------+-----------+-----------+----------------------------------+-------+
| username | firstname | name | password | level |
+------------+-----------+-----------+----------------------------------+-------+
| dscott | Debie | SCOTT | e80b5017098950fc58aad83c8c14978e | user |
+------------+-----------+-----------+----------------------------------+-------+
| edorsa | Elsa | DORSA | f25a2fc72690b780b2a14e140ef6a9e0 | user |
+------------+-----------+-----------+----------------------------------+-------+
| ikeurien | Iris | KEURIEN | e99a18c428cb38d5f260853678922e03 | user |
+------------+-----------+-----------+----------------------------------+-------+
| jbombeur | Jean | BOMBEUR | adff44c5102fca279fce7559abf66fee | user |
+------------+-----------+-----------+----------------------------------+-------+
| jhultou | Jeanne | HULTOU | ab4f63f9ac65152575886860dde480a1 | user |
+------------+-----------+-----------+----------------------------------+-------+
| ktartines | Kimberley | TARTINES | aa47f8215c6f30a0dcdb2a36a9f4168e | user |
+------------+-----------+-----------+----------------------------------+-------+
| ktrophobe | Klaus | TROPHOBE | fc63f87c08d505264caba37514cd0cfd | user |
+------------+-----------+-----------+----------------------------------+-------+
| lgolade | Larry | GOLADE | c33367701511b4f6020ec61ded352059 | user |
+------------+-----------+-----------+----------------------------------+-------+
| mtete | Maude | TETE | fe01ce2a7fbac8fafaed7c982a04e229 | user |
+------------+-----------+-----------+----------------------------------+-------+
| shuttofond | Sacha | HUTTOFOND | 8afa847f50a716e64932d995c8e7435a | user |
+------------+-----------+-----------+----------------------------------+-------+
| sstiquet | Sophie | STIQUET | 70e76a15da00e6301ade718cc9416f79 | admin |
+------------+-----------+-----------+----------------------------------+-------+
users
firstname varchar(50)
name varchar(50)
username varchar(100)PK
password varchar(32)
level enum('user','admin')
Schéma de la table :
Langage SQL
Langage SQL
SELECT * FROM users WHERE username LIKE 'dscott';
+------------+-----------+-----------+----------------------------------+-------+
| username | firstname | name | password | level |
+------------+-----------+-----------+----------------------------------+-------+
| dscott | Debie | SCOTT | e80b5017098950fc58aad83c8c14978e | user |
+------------+-----------+-----------+----------------------------------+-------+
SELECT firstname,name,'OK' FROM users WHERE username LIKE 'e%';
+-----------+-------+----+
| firstname | name | OK |
+-----------+-------+----+
| Elsa | DORSA | OK |
+-----------+-------+----+
SELECT * FROM users WHERE level LIKE 'admin';#Commentaire
+----------+-----------+---------+----------------------------------+-------+
| username | firstname | name | password | level |
+----------+-----------+---------+----------------------------------+-------+
| sstiquet | Sophie | STIQUET | 70e76a15da00e6301ade718cc9416f79 | admin |
+----------+-----------+---------+----------------------------------+-------+
users
firstname varchar(50)
name varchar(50)
username varchar(100)PK
password varchar(32)
level enum('user','admin')
Schéma de la table :
SELECT GROUP_CONCAT(username),COUNT(*) FROM users WHERE username LIKE 'j%';
+------------------------+----------+
| GROUP_CONCAT(username) | COUNT(*) |
+------------------------+----------+
| jbombeur,jhultou | 2 |
+------------------------+----------+
SELECT 1,2,3,4,5 UNION SELECT * FROM users WHERE username LIKE 'k%';
+-----------+-----------+----------+----------------------------------+------+
| 1 | 2 | 3 | 4 | 5 |
+-----------+-----------+----------+----------------------------------+------+
| 1 | 2 | 3 | 4 | 5 |
+-----------+-----------+----------+----------------------------------+------+
| ktartines | Kimberley | TARTINES | aa47f8215c6f30a0dcdb2a36a9f4168e | user |
+-----------+-----------+----------+----------------------------------+------+
| ktrophobe | Klaus | TROPHOBE | fc63f87c08d505264caba37514cd0cfd | user |
+-----------+-----------+----------+----------------------------------+------+
SELECT @@version AS 'Version:';
+--------------------------+
| Version: |
+--------------------------+
| 10.0.23-MariaDB-0+deb8u1 |
+--------------------------+
users
firstname varchar(50)
name varchar(50)
username varchar(100)PK
password varchar(32)
level enum('user','admin')
Schéma de la table :
Langage SQL
• Recherche de points
d’entrées
• Exécution de
requêtes forgées
ReconnaissanceReconnaissance
• Présence de
messages d’erreur
• Comportement
inattendu du site
VulnérabilitéVulnérabilité
• Contournement de
l’authentification
• Altération ou
exfiltration des
données
ExploitationExploitation
Injection SQL
Méthode d’attaque :
Injection SQL
SELECT * FROM users WHERE username LIKE '<user>' AND password = '<password>';
L’injection n’est possible que dans le champ 'username' car le champ 'password' est un hash :
SELECT * FROM users WHERE username LIKE 'mtete' AND password = 'fe01ce2a7fbac8fafaed7c982a04e229';
+----------+-----------+------+----------------------------------+-------+
| username | firstname | name | password | level |
+----------+-----------+------+----------------------------------+-------+
| mtete | Maude | TETE | fe01ce2a7fbac8fafaed7c982a04e229 | user |
+----------+-----------+------+----------------------------------+-------+
fe01ce2a7fbac8fafaed7c982a04e229 = md5('demo‘);
Exemple d’attaque :
Pour les besoins de démonstration notre site test ne possède
aucun filtrage sur les données entrées dans le formulaire.
Injection SQL
Exemple d’attaque :
Qui sait ? Sur un malentendu…
Injection SQL
Attaque avancée :
Utilisation de Sqlmap pour automatiser la récupération des données.
XSS : Cross-Site Scripting
Failles XSS*
Méthode d’attaque :
Injecter du contenu malveillant dans une page, qui sera exécuté par le navigateur.
Exemple d’attaque :
Insertion du code suivant dans la page :
<script>alert('xss');</script>
Conclusion
Il faut protéger son code et filtrer
systématiquement les données en
entrée autant qu’en sortie !
Sites proposant des challenges en sécurité :
www.newbiecontest.org
www.root-me.org
Listing des challenges « Capture The Flag » :
www.ctftime.org
Exemples de challenges :
www.0x90r00t.com
Questions ?
Mail : thomas.viaud@outlook.com

Contenu connexe

Similaire à Demonstration injection de code

Administration reseau
Administration reseauAdministration reseau
Administration reseaunadimoc
 
Alphorm.com Formation WSUS (Windows Server Update Services) 3.0 SP2
Alphorm.com Formation WSUS (Windows Server Update Services) 3.0 SP2 Alphorm.com Formation WSUS (Windows Server Update Services) 3.0 SP2
Alphorm.com Formation WSUS (Windows Server Update Services) 3.0 SP2 Alphorm
 
SQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les Notebooks
SQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les NotebooksSQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les Notebooks
SQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les NotebooksPhilippe Geiger
 
alphorm.com - Formation Windows Server Core 2008 (R2)
alphorm.com - Formation Windows Server Core 2008 (R2)alphorm.com - Formation Windows Server Core 2008 (R2)
alphorm.com - Formation Windows Server Core 2008 (R2)Alphorm
 
Power Shell V2 en action - avec Posh Board 2.0
Power Shell V2 en action - avec Posh Board 2.0Power Shell V2 en action - avec Posh Board 2.0
Power Shell V2 en action - avec Posh Board 2.0Patrick Guimonet
 
RADIUS ET TACACS+.pptx
RADIUS ET TACACS+.pptxRADIUS ET TACACS+.pptx
RADIUS ET TACACS+.pptxZokomElie
 
Algorithmique et langage de programmation c
Algorithmique et langage de programmation cAlgorithmique et langage de programmation c
Algorithmique et langage de programmation cEmilianoSala2
 
Cours d'Algorithmique et langage C .pdf
Cours d'Algorithmique et langage C  .pdfCours d'Algorithmique et langage C  .pdf
Cours d'Algorithmique et langage C .pdfkamalomari2
 
MeasureCamp Paris #5 , Présentation Bigquery = big problem?
MeasureCamp Paris #5 , Présentation Bigquery = big problem? MeasureCamp Paris #5 , Présentation Bigquery = big problem?
MeasureCamp Paris #5 , Présentation Bigquery = big problem? Sébastien PUJADE
 
Retours d'expériences et bonnes pratiques sur l'implémentation d'ADFS dans Sh...
Retours d'expériences et bonnes pratiques sur l'implémentation d'ADFS dans Sh...Retours d'expériences et bonnes pratiques sur l'implémentation d'ADFS dans Sh...
Retours d'expériences et bonnes pratiques sur l'implémentation d'ADFS dans Sh...Microsoft Technet France
 
Proposition d'une politique de sécurité pour les systèmes de base de données ...
Proposition d'une politique de sécurité pour les systèmes de base de données ...Proposition d'une politique de sécurité pour les systèmes de base de données ...
Proposition d'une politique de sécurité pour les systèmes de base de données ...Aichétou Djimé Gallédou
 
Rich Desktop Applications
Rich Desktop ApplicationsRich Desktop Applications
Rich Desktop Applicationsgoldoraf
 
Aucce formation-administrer-cisco-unified-contact-center-enterprise
Aucce formation-administrer-cisco-unified-contact-center-enterpriseAucce formation-administrer-cisco-unified-contact-center-enterprise
Aucce formation-administrer-cisco-unified-contact-center-enterpriseCERTyou Formation
 
laboratoire formation ccna cisco materiel .ppt
laboratoire formation ccna cisco materiel .pptlaboratoire formation ccna cisco materiel .ppt
laboratoire formation ccna cisco materiel .pptprofsn
 
Composants routeur cisco et différent mode de Configuration
Composants routeur cisco et différent mode de ConfigurationComposants routeur cisco et différent mode de Configuration
Composants routeur cisco et différent mode de ConfigurationZakariaBouzzitMadrid
 

Similaire à Demonstration injection de code (20)

Orchestration
OrchestrationOrchestration
Orchestration
 
Administration reseau
Administration reseauAdministration reseau
Administration reseau
 
Sécurité MySQL
Sécurité MySQLSécurité MySQL
Sécurité MySQL
 
Alphorm.com Formation WSUS (Windows Server Update Services) 3.0 SP2
Alphorm.com Formation WSUS (Windows Server Update Services) 3.0 SP2 Alphorm.com Formation WSUS (Windows Server Update Services) 3.0 SP2
Alphorm.com Formation WSUS (Windows Server Update Services) 3.0 SP2
 
SQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les Notebooks
SQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les NotebooksSQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les Notebooks
SQL Saturday Haïti 2023 - Bien maîtriser Azure Data Studio et les Notebooks
 
Les nouveautés de PowerShell 3.0
Les nouveautés de PowerShell 3.0Les nouveautés de PowerShell 3.0
Les nouveautés de PowerShell 3.0
 
Retour d'expérience sur PowerShell
Retour d'expérience sur PowerShellRetour d'expérience sur PowerShell
Retour d'expérience sur PowerShell
 
alphorm.com - Formation Windows Server Core 2008 (R2)
alphorm.com - Formation Windows Server Core 2008 (R2)alphorm.com - Formation Windows Server Core 2008 (R2)
alphorm.com - Formation Windows Server Core 2008 (R2)
 
Power Shell V2 en action - avec Posh Board 2.0
Power Shell V2 en action - avec Posh Board 2.0Power Shell V2 en action - avec Posh Board 2.0
Power Shell V2 en action - avec Posh Board 2.0
 
RADIUS ET TACACS+.pptx
RADIUS ET TACACS+.pptxRADIUS ET TACACS+.pptx
RADIUS ET TACACS+.pptx
 
Algorithmique et langage de programmation c
Algorithmique et langage de programmation cAlgorithmique et langage de programmation c
Algorithmique et langage de programmation c
 
Cours d'Algorithmique et langage C .pdf
Cours d'Algorithmique et langage C  .pdfCours d'Algorithmique et langage C  .pdf
Cours d'Algorithmique et langage C .pdf
 
MeasureCamp Paris #5 , Présentation Bigquery = big problem?
MeasureCamp Paris #5 , Présentation Bigquery = big problem? MeasureCamp Paris #5 , Présentation Bigquery = big problem?
MeasureCamp Paris #5 , Présentation Bigquery = big problem?
 
Retours d'expériences et bonnes pratiques sur l'implémentation d'ADFS dans Sh...
Retours d'expériences et bonnes pratiques sur l'implémentation d'ADFS dans Sh...Retours d'expériences et bonnes pratiques sur l'implémentation d'ADFS dans Sh...
Retours d'expériences et bonnes pratiques sur l'implémentation d'ADFS dans Sh...
 
iTunes Stats
iTunes StatsiTunes Stats
iTunes Stats
 
Proposition d'une politique de sécurité pour les systèmes de base de données ...
Proposition d'une politique de sécurité pour les systèmes de base de données ...Proposition d'une politique de sécurité pour les systèmes de base de données ...
Proposition d'une politique de sécurité pour les systèmes de base de données ...
 
Rich Desktop Applications
Rich Desktop ApplicationsRich Desktop Applications
Rich Desktop Applications
 
Aucce formation-administrer-cisco-unified-contact-center-enterprise
Aucce formation-administrer-cisco-unified-contact-center-enterpriseAucce formation-administrer-cisco-unified-contact-center-enterprise
Aucce formation-administrer-cisco-unified-contact-center-enterprise
 
laboratoire formation ccna cisco materiel .ppt
laboratoire formation ccna cisco materiel .pptlaboratoire formation ccna cisco materiel .ppt
laboratoire formation ccna cisco materiel .ppt
 
Composants routeur cisco et différent mode de Configuration
Composants routeur cisco et différent mode de ConfigurationComposants routeur cisco et différent mode de Configuration
Composants routeur cisco et différent mode de Configuration
 

Plus de PRONETIS

Gouvernance de la sécurité des Systèmes d'Information Volet-3
Gouvernance de la sécurité des Systèmes d'Information Volet-3Gouvernance de la sécurité des Systèmes d'Information Volet-3
Gouvernance de la sécurité des Systèmes d'Information Volet-3PRONETIS
 
Gouvernance de la sécurite des Systèmes d'Information Volet-2
Gouvernance de la sécurite des Systèmes d'Information Volet-2Gouvernance de la sécurite des Systèmes d'Information Volet-2
Gouvernance de la sécurite des Systèmes d'Information Volet-2PRONETIS
 
Sécurite opérationnelle des Système d'Information Volet-3
Sécurite opérationnelle des Système d'Information Volet-3Sécurite opérationnelle des Système d'Information Volet-3
Sécurite opérationnelle des Système d'Information Volet-3PRONETIS
 
Sécurite operationnelle des Systèmes d'Information Volet-2
Sécurite operationnelle des Systèmes d'Information Volet-2Sécurite operationnelle des Systèmes d'Information Volet-2
Sécurite operationnelle des Systèmes d'Information Volet-2PRONETIS
 
Sécurite operationnelle des systèmes d'information Volet-1
Sécurite operationnelle des systèmes d'information Volet-1Sécurite operationnelle des systèmes d'information Volet-1
Sécurite operationnelle des systèmes d'information Volet-1PRONETIS
 
C8 Réseaux : Couche applicative
C8 Réseaux : Couche applicativeC8 Réseaux : Couche applicative
C8 Réseaux : Couche applicativePRONETIS
 
C6 Réseaux : Introduction au routage
C6 Réseaux : Introduction au routageC6 Réseaux : Introduction au routage
C6 Réseaux : Introduction au routagePRONETIS
 
C5 Réseaux : vlsm-classe-nat
C5 Réseaux : vlsm-classe-natC5 Réseaux : vlsm-classe-nat
C5 Réseaux : vlsm-classe-natPRONETIS
 
C4 Réseaux : Couche reseau
C4 Réseaux : Couche reseauC4 Réseaux : Couche reseau
C4 Réseaux : Couche reseauPRONETIS
 
C3 Réseaux : sous-couche reseau - ethernet wifi
C3 Réseaux : sous-couche reseau - ethernet wifiC3 Réseaux : sous-couche reseau - ethernet wifi
C3 Réseaux : sous-couche reseau - ethernet wifiPRONETIS
 
C2 Réseaux : medias - equipements
C2 Réseaux : medias - equipementsC2 Réseaux : medias - equipements
C2 Réseaux : medias - equipementsPRONETIS
 
C1 Réseaux : introduction et concepts
C1 Réseaux : introduction et conceptsC1 Réseaux : introduction et concepts
C1 Réseaux : introduction et conceptsPRONETIS
 
Etude de cas de securite wifi vpn ssl camera ip video surveillance 2014
Etude de cas de securite  wifi vpn ssl camera ip video surveillance 2014Etude de cas de securite  wifi vpn ssl camera ip video surveillance 2014
Etude de cas de securite wifi vpn ssl camera ip video surveillance 2014PRONETIS
 
Tuto wifi vpn ssl camera ip video surveillance 2013
Tuto wifi vpn ssl camera ip video surveillance 2013Tuto wifi vpn ssl camera ip video surveillance 2013
Tuto wifi vpn ssl camera ip video surveillance 2013PRONETIS
 
Sécurisation d'accès à un CRM pour appareils Nomade
Sécurisation d'accès à un CRM pour appareils NomadeSécurisation d'accès à un CRM pour appareils Nomade
Sécurisation d'accès à un CRM pour appareils NomadePRONETIS
 
Sonic wall mobile_connect_for_ios_user_guide-rev_b
Sonic wall mobile_connect_for_ios_user_guide-rev_bSonic wall mobile_connect_for_ios_user_guide-rev_b
Sonic wall mobile_connect_for_ios_user_guide-rev_bPRONETIS
 
Authentification Réseau 802.1X PEAP-MSCHAP-V2
Authentification Réseau 802.1X PEAP-MSCHAP-V2Authentification Réseau 802.1X PEAP-MSCHAP-V2
Authentification Réseau 802.1X PEAP-MSCHAP-V2PRONETIS
 
Livre blanc sur l'authentification forte OTP - One Time Password
Livre blanc sur l'authentification forte OTP - One Time PasswordLivre blanc sur l'authentification forte OTP - One Time Password
Livre blanc sur l'authentification forte OTP - One Time PasswordPRONETIS
 
Tutoriel de configuration d'une architecture Sonicwall TZ-100 et Caméra IP DC...
Tutoriel de configuration d'une architecture Sonicwall TZ-100 et Caméra IP DC...Tutoriel de configuration d'une architecture Sonicwall TZ-100 et Caméra IP DC...
Tutoriel de configuration d'une architecture Sonicwall TZ-100 et Caméra IP DC...PRONETIS
 

Plus de PRONETIS (19)

Gouvernance de la sécurité des Systèmes d'Information Volet-3
Gouvernance de la sécurité des Systèmes d'Information Volet-3Gouvernance de la sécurité des Systèmes d'Information Volet-3
Gouvernance de la sécurité des Systèmes d'Information Volet-3
 
Gouvernance de la sécurite des Systèmes d'Information Volet-2
Gouvernance de la sécurite des Systèmes d'Information Volet-2Gouvernance de la sécurite des Systèmes d'Information Volet-2
Gouvernance de la sécurite des Systèmes d'Information Volet-2
 
Sécurite opérationnelle des Système d'Information Volet-3
Sécurite opérationnelle des Système d'Information Volet-3Sécurite opérationnelle des Système d'Information Volet-3
Sécurite opérationnelle des Système d'Information Volet-3
 
Sécurite operationnelle des Systèmes d'Information Volet-2
Sécurite operationnelle des Systèmes d'Information Volet-2Sécurite operationnelle des Systèmes d'Information Volet-2
Sécurite operationnelle des Systèmes d'Information Volet-2
 
Sécurite operationnelle des systèmes d'information Volet-1
Sécurite operationnelle des systèmes d'information Volet-1Sécurite operationnelle des systèmes d'information Volet-1
Sécurite operationnelle des systèmes d'information Volet-1
 
C8 Réseaux : Couche applicative
C8 Réseaux : Couche applicativeC8 Réseaux : Couche applicative
C8 Réseaux : Couche applicative
 
C6 Réseaux : Introduction au routage
C6 Réseaux : Introduction au routageC6 Réseaux : Introduction au routage
C6 Réseaux : Introduction au routage
 
C5 Réseaux : vlsm-classe-nat
C5 Réseaux : vlsm-classe-natC5 Réseaux : vlsm-classe-nat
C5 Réseaux : vlsm-classe-nat
 
C4 Réseaux : Couche reseau
C4 Réseaux : Couche reseauC4 Réseaux : Couche reseau
C4 Réseaux : Couche reseau
 
C3 Réseaux : sous-couche reseau - ethernet wifi
C3 Réseaux : sous-couche reseau - ethernet wifiC3 Réseaux : sous-couche reseau - ethernet wifi
C3 Réseaux : sous-couche reseau - ethernet wifi
 
C2 Réseaux : medias - equipements
C2 Réseaux : medias - equipementsC2 Réseaux : medias - equipements
C2 Réseaux : medias - equipements
 
C1 Réseaux : introduction et concepts
C1 Réseaux : introduction et conceptsC1 Réseaux : introduction et concepts
C1 Réseaux : introduction et concepts
 
Etude de cas de securite wifi vpn ssl camera ip video surveillance 2014
Etude de cas de securite  wifi vpn ssl camera ip video surveillance 2014Etude de cas de securite  wifi vpn ssl camera ip video surveillance 2014
Etude de cas de securite wifi vpn ssl camera ip video surveillance 2014
 
Tuto wifi vpn ssl camera ip video surveillance 2013
Tuto wifi vpn ssl camera ip video surveillance 2013Tuto wifi vpn ssl camera ip video surveillance 2013
Tuto wifi vpn ssl camera ip video surveillance 2013
 
Sécurisation d'accès à un CRM pour appareils Nomade
Sécurisation d'accès à un CRM pour appareils NomadeSécurisation d'accès à un CRM pour appareils Nomade
Sécurisation d'accès à un CRM pour appareils Nomade
 
Sonic wall mobile_connect_for_ios_user_guide-rev_b
Sonic wall mobile_connect_for_ios_user_guide-rev_bSonic wall mobile_connect_for_ios_user_guide-rev_b
Sonic wall mobile_connect_for_ios_user_guide-rev_b
 
Authentification Réseau 802.1X PEAP-MSCHAP-V2
Authentification Réseau 802.1X PEAP-MSCHAP-V2Authentification Réseau 802.1X PEAP-MSCHAP-V2
Authentification Réseau 802.1X PEAP-MSCHAP-V2
 
Livre blanc sur l'authentification forte OTP - One Time Password
Livre blanc sur l'authentification forte OTP - One Time PasswordLivre blanc sur l'authentification forte OTP - One Time Password
Livre blanc sur l'authentification forte OTP - One Time Password
 
Tutoriel de configuration d'une architecture Sonicwall TZ-100 et Caméra IP DC...
Tutoriel de configuration d'une architecture Sonicwall TZ-100 et Caméra IP DC...Tutoriel de configuration d'une architecture Sonicwall TZ-100 et Caméra IP DC...
Tutoriel de configuration d'une architecture Sonicwall TZ-100 et Caméra IP DC...
 

Dernier

Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Gilles Le Page
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSKennel
 
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSKennel
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .Txaruka
 
Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Alain Marois
 
Evaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxEvaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxAsmaa105193
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre françaisTxaruka
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSKennel
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxMartin M Flynn
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETMedBechir
 
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSKennel
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 37
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxrababouerdighi
 
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 37
 
Principe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsPrincipe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsRajiAbdelghani
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETMedBechir
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeXL Groupe
 
le present des verbes reguliers -er.pptx
le present des verbes reguliers -er.pptxle present des verbes reguliers -er.pptx
le present des verbes reguliers -er.pptxmmatar2
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSKennel
 

Dernier (20)

Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
 
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
 
Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024
 
Evaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxEvaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. Marocpptx
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre français
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptx
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSET
 
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptx
 
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
 
Principe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsPrincipe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 temps
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
 
DO PALÁCIO À ASSEMBLEIA .
DO PALÁCIO À ASSEMBLEIA                 .DO PALÁCIO À ASSEMBLEIA                 .
DO PALÁCIO À ASSEMBLEIA .
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directe
 
le present des verbes reguliers -er.pptx
le present des verbes reguliers -er.pptxle present des verbes reguliers -er.pptx
le present des verbes reguliers -er.pptx
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
 

Demonstration injection de code

  • 1. Démonstration : Injection de code18 mars 2016 – Polytech Marseille ThomasVIAUD
  • 2. Contenu • Présentation du scénario et des objectifs • Base de données SQL • Langage SQL • Injection SQL • Failles XSS • Conclusion
  • 3. Présentation du scénario et des objectifs Utilisateur Site internet Base de données
  • 4. Base de données Présentation du scénario et des objectifs Hacker Maître de l’univers ?
  • 5. Base de données SQL* Users Posts Comments userid intPK firstname text name text postid intPK title text content text commentid intPK content text postid intFK userid intFK userid intFK username text password text Un article ne peut appartenir qu’à un seul utilisateur. Plusieurs utilisateurs peuvent commenter le même article. Fonctionnement simplifié d’un blog : SQL : StructuredQuery Language
  • 6. SELECT * FROM users; +------------+-----------+-----------+----------------------------------+-------+ | username | firstname | name | password | level | +------------+-----------+-----------+----------------------------------+-------+ | dscott | Debie | SCOTT | e80b5017098950fc58aad83c8c14978e | user | +------------+-----------+-----------+----------------------------------+-------+ | edorsa | Elsa | DORSA | f25a2fc72690b780b2a14e140ef6a9e0 | user | +------------+-----------+-----------+----------------------------------+-------+ | ikeurien | Iris | KEURIEN | e99a18c428cb38d5f260853678922e03 | user | +------------+-----------+-----------+----------------------------------+-------+ | jbombeur | Jean | BOMBEUR | adff44c5102fca279fce7559abf66fee | user | +------------+-----------+-----------+----------------------------------+-------+ | jhultou | Jeanne | HULTOU | ab4f63f9ac65152575886860dde480a1 | user | +------------+-----------+-----------+----------------------------------+-------+ | ktartines | Kimberley | TARTINES | aa47f8215c6f30a0dcdb2a36a9f4168e | user | +------------+-----------+-----------+----------------------------------+-------+ | ktrophobe | Klaus | TROPHOBE | fc63f87c08d505264caba37514cd0cfd | user | +------------+-----------+-----------+----------------------------------+-------+ | lgolade | Larry | GOLADE | c33367701511b4f6020ec61ded352059 | user | +------------+-----------+-----------+----------------------------------+-------+ | mtete | Maude | TETE | fe01ce2a7fbac8fafaed7c982a04e229 | user | +------------+-----------+-----------+----------------------------------+-------+ | shuttofond | Sacha | HUTTOFOND | 8afa847f50a716e64932d995c8e7435a | user | +------------+-----------+-----------+----------------------------------+-------+ | sstiquet | Sophie | STIQUET | 70e76a15da00e6301ade718cc9416f79 | admin | +------------+-----------+-----------+----------------------------------+-------+ users firstname varchar(50) name varchar(50) username varchar(100)PK password varchar(32) level enum('user','admin') Schéma de la table : Langage SQL
  • 7. Langage SQL SELECT * FROM users WHERE username LIKE 'dscott'; +------------+-----------+-----------+----------------------------------+-------+ | username | firstname | name | password | level | +------------+-----------+-----------+----------------------------------+-------+ | dscott | Debie | SCOTT | e80b5017098950fc58aad83c8c14978e | user | +------------+-----------+-----------+----------------------------------+-------+ SELECT firstname,name,'OK' FROM users WHERE username LIKE 'e%'; +-----------+-------+----+ | firstname | name | OK | +-----------+-------+----+ | Elsa | DORSA | OK | +-----------+-------+----+ SELECT * FROM users WHERE level LIKE 'admin';#Commentaire +----------+-----------+---------+----------------------------------+-------+ | username | firstname | name | password | level | +----------+-----------+---------+----------------------------------+-------+ | sstiquet | Sophie | STIQUET | 70e76a15da00e6301ade718cc9416f79 | admin | +----------+-----------+---------+----------------------------------+-------+ users firstname varchar(50) name varchar(50) username varchar(100)PK password varchar(32) level enum('user','admin') Schéma de la table :
  • 8. SELECT GROUP_CONCAT(username),COUNT(*) FROM users WHERE username LIKE 'j%'; +------------------------+----------+ | GROUP_CONCAT(username) | COUNT(*) | +------------------------+----------+ | jbombeur,jhultou | 2 | +------------------------+----------+ SELECT 1,2,3,4,5 UNION SELECT * FROM users WHERE username LIKE 'k%'; +-----------+-----------+----------+----------------------------------+------+ | 1 | 2 | 3 | 4 | 5 | +-----------+-----------+----------+----------------------------------+------+ | 1 | 2 | 3 | 4 | 5 | +-----------+-----------+----------+----------------------------------+------+ | ktartines | Kimberley | TARTINES | aa47f8215c6f30a0dcdb2a36a9f4168e | user | +-----------+-----------+----------+----------------------------------+------+ | ktrophobe | Klaus | TROPHOBE | fc63f87c08d505264caba37514cd0cfd | user | +-----------+-----------+----------+----------------------------------+------+ SELECT @@version AS 'Version:'; +--------------------------+ | Version: | +--------------------------+ | 10.0.23-MariaDB-0+deb8u1 | +--------------------------+ users firstname varchar(50) name varchar(50) username varchar(100)PK password varchar(32) level enum('user','admin') Schéma de la table : Langage SQL
  • 9. • Recherche de points d’entrées • Exécution de requêtes forgées ReconnaissanceReconnaissance • Présence de messages d’erreur • Comportement inattendu du site VulnérabilitéVulnérabilité • Contournement de l’authentification • Altération ou exfiltration des données ExploitationExploitation Injection SQL Méthode d’attaque :
  • 10. Injection SQL SELECT * FROM users WHERE username LIKE '<user>' AND password = '<password>'; L’injection n’est possible que dans le champ 'username' car le champ 'password' est un hash : SELECT * FROM users WHERE username LIKE 'mtete' AND password = 'fe01ce2a7fbac8fafaed7c982a04e229'; +----------+-----------+------+----------------------------------+-------+ | username | firstname | name | password | level | +----------+-----------+------+----------------------------------+-------+ | mtete | Maude | TETE | fe01ce2a7fbac8fafaed7c982a04e229 | user | +----------+-----------+------+----------------------------------+-------+ fe01ce2a7fbac8fafaed7c982a04e229 = md5('demo‘); Exemple d’attaque : Pour les besoins de démonstration notre site test ne possède aucun filtrage sur les données entrées dans le formulaire.
  • 11. Injection SQL Exemple d’attaque : Qui sait ? Sur un malentendu…
  • 12. Injection SQL Attaque avancée : Utilisation de Sqlmap pour automatiser la récupération des données.
  • 13. XSS : Cross-Site Scripting Failles XSS* Méthode d’attaque : Injecter du contenu malveillant dans une page, qui sera exécuté par le navigateur. Exemple d’attaque : Insertion du code suivant dans la page : <script>alert('xss');</script>
  • 14. Conclusion Il faut protéger son code et filtrer systématiquement les données en entrée autant qu’en sortie ! Sites proposant des challenges en sécurité : www.newbiecontest.org www.root-me.org Listing des challenges « Capture The Flag » : www.ctftime.org Exemples de challenges : www.0x90r00t.com
  • 15. Questions ? Mail : thomas.viaud@outlook.com