injection SQL combat à base zéro

Remarque: Si elle est basée sur zéro, alors il doit être un haut ou vers le bas certainement le point d'apprendre un point ont beaucoup d'obstacles, a voulu commencer une surface finale de la baisse réelle est peu probable.

injection SQL ne suffit pas de savoir que je peux regarder un autre blog:
https://blog.csdn.net/weixin_45254208/article/details/105033276

Ne pas construire la plate - forme d'injection SQL peut également regarder mon autre blog: https://blog.csdn.net/weixin_45254208/article/details/104698495

Avant le besoin réel de maîtriser les bases:

Le contenu de ce qui précède deux pour blog juste faire comprendre aux gens simple injection SQL et l'environnement bâti, ces seuls deux points voulaient combattre gouttes certainement pas assez, vous avez aussi besoin de la base suivante:

1. L' apprentissage à base MYSQL
que vous pouvez apprendre est pas très profond, mais il faut comprendre la déclaration de base MYSQL (CRUD, et limite souvent utilisé) signifie. Internet partout peut apprendre déclaration MYSQL, beaucoup de gens ont écrit un blog, il y a des vidéos pédagogiques sur la station B, je ne pense pas, je pense, tant que l'Internet, vous pouvez jeter les bases de MYSQL
 
2. Rappelez - vous les trois nom de la table (Key)
Si vous avez une base MYSQL, alors vous savez des bases de données montrent sûr, cette commande, vous pouvez afficher toutes la base de données, qui contiendra information_schema, par défaut MYSQL stockées pour une base de données « information_schema » dans la base de données, vous devez vous rappeler 3 nom de la table dans la bibliothèque, sont schèmes, et les colonnades tAblEAUx .

Table schèmes:
tous les noms de base de données créé par l' utilisateur est enregistré, le nom du champ d'enregistrement de base de données nommée SCHEMA_NAME .

Tout d' abord, ouvrir phpMyAdmin, construire la plate - forme d'injection SQL en face du blog ont écrit comment aller
Insérer ici l'image Description
après l' entrée dans la gauche est la base de données de tous
Insérer ici l'image Description
cliquez dans la base de données de information_schema, trouver la table schèmes, vous pouvez voir le tableau SCHEMA_NAME champ est que toute la base de données suivante
Insérer ici l'image Description

TABLEAUX Tableau:
stockage nom de la bibliothèque créée par l' utilisateur et tous les noms de la table de base de données, comme le montre, les noms et les noms du référentiel enregistrement des champs de la table sont TABLE_SCHEMA et TABLE_NAME . (Cliquez sur Afficher Tout ce que vous ne pouvez pas tourner la page, voir directement tous les noms de bases de données et leurs noms de table correspondants)
Insérer ici l'image Description

table COLONNES:
nom de la bibliothèque toutes base de données stockant les noms de tables créés par l' utilisateur et les noms de champs, comme indiqué, les noms de magasin disques, les noms de champs et les noms des champs de la table est TABLE_SCHEMA, TABLE_NAME et COLUMN_NAME .
Insérer ici l'image Description

SQL combat:

Ouvrez phpstudy2018, démarrez le service, rappelez - vous phpstudy suivant le nom du dossier de la plate - forme d'injection SQL, où j'étais-labs-SQLI maître.
Insérer ici l'image Description
Accès plate - forme d'injection SQL, la première question à entrer dans
Insérer ici l'image Description
Insérer ici l'image Description
Insérer ici l'image Description
la police jaune fait l'objet de conseils: S'il vous plaît entrer l'ID en tant que paramètre avec une valeur numérique. Passez ensuite un? Id = 1 (? Utilisé pour séparer l'URL et les paramètres dans l'URL)
Insérer ici l'image Description
pas une erreur, et renvoie les informations
Insérer ici l'image Description
alors? Id = 1 retour plus' (généralement le premier essai de guillemets simples et erreur, en fait, double citations, barre oblique inverse, et peuvent donc l'essai numérique et erreur), les résultats du message d'erreur de vérification d'erreur « » 1 « » LIMITE 0,1 '
Insérer ici l'image Description
Insérer ici l'image Description
puisque l'information est donnée deux guillemets simples, deux extrémités simple pour mettre fin ainsi retiré la citation réelle est téléchargé, puis se débarrasser du problème peut être vu
Insérer ici l'image Description
dans l'ordre MYSQL par déclaration pour trier le jeu de résultats en fonction de la colonne spécifiée, le symbole de commentaire est deux - - un espace, mais pas dans l'url avec des espaces, les espaces dans l'URL est un signe plus + pour indiquer si le paramètre est transmis ?id=1' order by 3 --+, puis , en fait , cela est au- dessous de
Insérer ici l'image Description
l'entrée et accéder à l' URL, le retour à la normale, décrits peuvent être triés selon le troisième champ, maintenant connu pour avoir trois champs
Insérer ici l'image Description
Insérer ici l'image Description
afin de 3 indique que le champ trié selon 3, l'ordre de 4 elle? 3 4 remplacé l'erreur, de sorte que la table seulement trois champs d'
Insérer ici l'image Description
Insérer ici l'image Description
une façon entrant ?id=0' union select 1,2,3--+, jetez un oeil à Echo
select1,2,3 ici ne comprennent pas, il y a un bon blog peut les doutes: https: // Blog .csdn.net / weixin_44840696 / article / détails /
Insérer ici l'image Description
89166154 on peut le voir sur la figure 2 et on injecte le passage entre le passage 3, et l'extrémité avant de la base de données
Insérer ici l'image Description
2,3 au numérique n'interroge pas une base de données, simplement l' écho, il sera remplacé par la version 2,3 () et utilisateur ()
Insérer ici l'image Description
résultats font écho à une base de données de noms d'utilisateur et les versions de
Insérer ici l'image Description
l'utilisateur () base de données () a changé, voir le courant base de données
Insérer ici l'image Description
que la sécurité de base de données actuelle est
Insérer ici l'image Description
le nom de la base de données, connaît les noms de tables loin derrière? Suivant sera utilisé base de données précédemment mentionné information_schema dans trois de la table, donc je vais rapidement sur, cette fois -ci pour examiner la table d'épellation de lettres en minuscules, de toute façon, ne sont pas sensibles à la casse, minuscules facile à mémoriser les
Insérer ici l'image Description
requêtes de la sécurité de base de données table de données

?id=0' union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database() --+

Insérer ici l'image Description
Insérer ici l'image Description
Vérifiez - le, et même ces tableaux est
Insérer ici l'image Description
le nom du savoir de la table de données, les noms de champs loin derrière? Prenez les référants de table de données exemple

?id=0' union select 1,group_concat(column_name),3 from information_schema.columns where table_name='referers' --+

Insérer ici l'image Description
Insérer ici l'image Description
Verify, OK
Insérer ici l'image Description
champ connaissez le nom, la valeur du champ soit loin derrière? Tableau cas pour les utilisateurs, en plus de l'identifiant de clé primaire, il y a un nom d' utilisateur (nom d' utilisateur) et un mot de passe (mot de passe) deux champs
Insérer ici l'image Description
vérifier directement la valeur du champ (où les utilisateurs ne ont pas besoin les guillemets)

?id=0' union select 1,group_concat(username,password),3 from users --+

Insérer ici l'image Description
Requête succès
Insérer ici l'image Description
peut certainement être vu ici que l'utilisation initiale d'une vulnérabilité d'injection SQL peut voir la base de données qui a tant d' informations, il était un peu étonnant, de sorte que Mozhizhemowei ah, est vraiment de continuer à apprendre, d' autres gestes il y a beaucoup injecté, et je ne pas écrire. Le blog Un enregistrement de votre propre processus d'apprentissage par injection SQL, et , deuxièmement, de partager plus comme moi comme un tutoriel blanc à trois ... Trois est rien, il est Jiang Zi.

Publié 25 articles originaux · louange gagné 3 · Vues 591

Je suppose que tu aimes

Origine blog.csdn.net/weixin_45254208/article/details/105046357
conseillé
Classement