|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre habitué
![]() Inscription : octobre 2008 Messages : 745 ![]() |
Bonjour
Je subis actuellement des injection sql. Est ce que quelqu'un pourrai contact avec moi pour voir d'ou sa provient ? Merci |
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Webmaster Inscription : mars 2011 Messages : 36 ![]() |
Comment vous savez que vous subissez des attaques par Injection SQL ?
et dans quel page de votre site sont produites ces attaques ? car il faut savoir quel page pour corriger cette page il faut contrôler tout ce qui passe par vos variable avec se code : Code :
$variable=mysql_real_escape_string(htmlspecialchars($_POST['nom'])); |
|
|
00
|
|
|
#3 |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 808 ![]() |
En plus des conseils de Devildz, il faut bien garder en tête le principe fondamental : Never trust user input !
Et attention, ce qu'on appelle user input, ce ne sont pas uniquement les valeurs récupérées en GET ou en POST. Un cookie, une variable de session, ... Toute valeur qui n'a pas été définie dans le code qui l'utilise doit être vérifiée ! Ensuite, tant que cela est possible, il faut définir un format strict pour le genre de données attendues. Si on attend un nombre, on ne doit pas autoriser d'autres caractères que des chiffres, idem pour les chaines qui doivent être filtrées au maximum.
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
10
|
|
|
#4 |
|
Membre expérimenté
![]() |
Salam ; si sa peut t'aidé je vous propose ce lien http://www.php.net/manual/fr/securit...-injection.php
SQL Inject-Me est Extension Firefox utilisé pour tester les vulnérabilités d'injection SQL. https://addons.mozilla.org/fr/firefo...sql-inject-me/ ![]() bonne utilisation Red |
|
|
00
|
|
|
#5 | ||
|
Membre habitué
![]() Inscription : octobre 2008 Messages : 745 ![]() |
Quel est l'équivalend en odbc pour sa :
Code :
|
||
|
|
00
|
|
|
#6 |
|
Expert Confirmé
![]() ![]() |
Bonjour,
quel SGBD est utilisé pour gérer le site ?
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
|
00
|
|
|
#7 |
|
Membre habitué
![]() Inscription : octobre 2008 Messages : 745 ![]() |
Comment on connait son SGBD ?
|
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Baptiste ROUSSELÉtudiant Inscription : janvier 2011 Messages : 818 ![]() |
A ce que je vois dans la DOC les fonctions ODBC n'échappent rien d'autre que les apostrophes simple.
Tu peux cependant passer par l'interface PDO qui elle échappe correctement les données (PDO::quote() ou bien avec les requêtes préparées).
__________________
|
|
|
00
|
|
|
#9 | ||
|
Membre habitué
![]() Inscription : octobre 2008 Messages : 745 ![]() |
Moi je fais sa :
Code :
|
||
|
|
00
|
|
|
#10 |
|
Expert Confirmé
![]() ![]() |
Tu lances une requête du genre :
mysql : pgsql : sqlserver : Code sql :
SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('productlevel'), SERVERPROPERTY ('edition')
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
|
00
|
|
|
#11 | |||
|
Expert Confirmé
![]() Olivier Développeur Web Inscription : août 2003 Messages : 1 837 ![]() |
Citation:
1- htmlspecialchars n'a aucun effet sur les injection sql , il est en général conseillé de l'appliqué à l'affichage et non à l'insertion. 2- addslashes n'echappe "que" ' " \ et NUL alors que les fonction spécifique au SGBD en on en général plus. Dans le cas ou il n'existe pas de fonction spécifique il est vivement conseillé d'utiliser les requêtes préparée en plus d'un filtrage/validation des données stricte. |
|||
|
00
|
|
|
#13 | |
|
Membre Expert
![]() Baptiste ROUSSELÉtudiant Inscription : janvier 2011 Messages : 818 ![]() |
Citation:
__________________
|
|
|
|
00
|
|
|
#14 | |
|
Expert Confirmé
![]() Olivier Développeur Web Inscription : août 2003 Messages : 1 837 ![]() |
Citation:
La requête étant compilée , tu peux lui passer ce que tu veux comme argument , il n'auront aucun effet. |
|
|
10
|
|
|
#15 |
|
Membre Expert
![]() Baptiste ROUSSELÉtudiant Inscription : janvier 2011 Messages : 818 ![]() |
Exact, j'étais pas très bien réveillé.
Je rajouterai cependant ce n'est pas pour autant qu'il faut toujours utiliser des requêtes préparées. C'est utile uniquement dans les cas où on exécute la requête plusieurs fois avec plusieurs injections différentes de données. Dans les autres cas c'est utiliser une bombe nucléaire pour tuer une mouche.
__________________
|
|
|
00
|
|
|
#16 | |
|
Expert Confirmé
![]() Olivier Développeur Web Inscription : août 2003 Messages : 1 837 ![]() |
Citation:
Donc tout bénéf. Pour les requêtes simple le gain de tranquillité vaut bien les quelques ms perdues |
|
|
01
|
|
|
#17 | ||
|
Membre habitué
![]() Inscription : octobre 2008 Messages : 745 ![]() |
sinon comme je disais je tourne sous ODBC et non mysql ou mysqli...
Donc quel est l'equivalent de sa en odbc : Code :
|
||
|
|
00
|
|
|
#18 |
|
Expert Confirmé
![]() Olivier Développeur Web Inscription : août 2003 Messages : 1 837 ![]() |
Y'a pas en ODBC puisque ça permet de se connecter à différent SGBD. La seule solution, c'est les requêtes préparées + un filtrage /validation des entrées utilisateurs.
|
|
00
|
Copyright © 2000-2012 - www.developpez.com