Maison développement back-end tutoriel php 关于sql注入的请问

关于sql注入的请问

Jun 13, 2016 pm 01:10 PM
quot request select

关于sql注入的请教
刚才看了这个帖子
http://topic.csdn.net/u/20121011/08/ed0d9538-0ed1-49c4-95c3-0fc1ef686aa2.html

他的登录代码是这样的:

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->$username = $_REQUEST['username'];
$password = $_REQUEST['password'];
$sql="select * from users where username='$username' and password='$password'";
Copier après la connexion

后来根据他的方法,在知道用户名的情况下确实可以绕过密码提交登录成功。

不过他的方法首要先满足get_magic_quotes_gpc过滤关闭的情况下,这是基础条件。

然后他的登录代码似乎太落后了,现在的密码一般都是用md5加密一下,比如我的登录验证一般是这样写的:
PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->$username = $_REQUEST['username'];
$password = md5($_REQUEST['password']);//改了这行
$sql="select * from users where username='$username' and password='$password'";
Copier après la connexion

这样提交表单得到的$sql就成了:
Select * from users where username='sean' and password='7e2705cbd698f255b7fe11eff40de898'


像这种情况应该怎么注入呢?

------解决方案--------------------
不是还有 $username 吗?干嘛非要是 $password

只要 magic_quotes_gpc = on 这些小儿科的攻击立即失效
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Que signifie la requête php ? Que signifie la requête php ? Jul 07, 2021 pm 01:49 PM

La signification chinoise de request est "request". Il s'agit d'une variable globale en PHP et c'est un tableau contenant "$_POST", "$_GET" et "$_COOKIE". La variable "$_REQUEST" peut obtenir des données et des informations COOKIE soumises par POST ou GET.

Comment utiliser la fonction urllib.request.urlopen() pour envoyer une requête GET en Python 3.x Comment utiliser la fonction urllib.request.urlopen() pour envoyer une requête GET en Python 3.x Jul 30, 2023 am 11:28 AM

Comment utiliser la fonction urllib.request.urlopen() dans Python3.x pour envoyer une requête GET En programmation réseau, nous avons souvent besoin d'obtenir des données d'un serveur distant en envoyant une requête HTTP. En Python, nous pouvons utiliser la fonction urllib.request.urlopen() dans le module urllib pour envoyer une requête HTTP et obtenir la réponse renvoyée par le serveur. Cet article explique comment utiliser

Comment masquer l'élément select dans jquery Comment masquer l'élément select dans jquery Aug 15, 2023 pm 01:56 PM

Comment masquer l'élément select dans jquery : 1. méthode hide(), introduisez la bibliothèque jQuery dans la page HTML, vous pouvez utiliser différents sélecteurs pour masquer l'élément select, le sélecteur ID remplace le selectId par l'ID de l'élément select que vous utilisez réellement ; 2. la méthode css(), utilisez le sélecteur d'ID pour sélectionner l'élément de sélection qui doit être masqué, utilisez la méthode css() pour définir l'attribut d'affichage sur aucun et remplacez selectId par l'ID de l'élément de sélection.

Méthode de traitement asynchrone de la programmation simultanée Select Channels Go à l'aide de Golang Méthode de traitement asynchrone de la programmation simultanée Select Channels Go à l'aide de Golang Sep 28, 2023 pm 05:27 PM

Méthode de traitement asynchrone de la programmation simultanée SelectChannelsGo à l'aide de golang Introduction : La programmation simultanée est un domaine important dans le développement de logiciels modernes, qui peut améliorer efficacement les performances et la réactivité des applications. Dans le langage Go, la programmation simultanée peut être implémentée de manière simple et efficace à l'aide des instructions Channels et Select. Cet article explique comment utiliser Golang pour les méthodes de traitement asynchrone de la programmation simultanée SelectChannelsGo et fournit des informations spécifiques.

Comment implémenter la liaison d'événement de changement d'éléments sélectionnés dans jQuery Comment implémenter la liaison d'événement de changement d'éléments sélectionnés dans jQuery Feb 23, 2024 pm 01:12 PM

jQuery est une bibliothèque JavaScript populaire qui peut être utilisée pour simplifier la manipulation du DOM, la gestion des événements, les effets d'animation, etc. Dans le développement Web, nous rencontrons souvent des situations dans lesquelles nous devons modifier la liaison d'événements sur des éléments sélectionnés. Cet article explique comment utiliser jQuery pour lier des événements de modification d'éléments sélectionnés et fournit des exemples de code spécifiques. Tout d'abord, nous devons créer un menu déroulant avec des options utilisant des étiquettes :

Comment encapsuler l'intercepteur Vue3 Axios dans un fichier de requête Comment encapsuler l'intercepteur Vue3 Axios dans un fichier de requête May 19, 2023 am 11:49 AM

1. Créez un nouveau fichier appelé request.js et importez Axios : importaxiosfrom'axios' ; 2. Créez une fonction appelée request et exportez-la : Cela créera une fonction appelée request et l'exportera. Configurez une nouvelle instance Axios avec une URL de base. . Pour ajouter des paramètres de délai d'attente dans une instance Axios encapsulée, vous pouvez transmettre l'option de délai d'attente lors de la création de l'instance Axios. exportconstrequest=axios.create({baseURL:'https://example.

Qu'est-ce que l'objet Request en PHP ? Qu'est-ce que l'objet Request en PHP ? Feb 27, 2024 pm 09:06 PM

L'objet Request en PHP est un objet utilisé pour gérer les requêtes HTTP envoyées par le client au serveur. Grâce à l'objet Request, nous pouvons obtenir les informations de demande du client, telles que la méthode de demande, les informations d'en-tête de demande, les paramètres de demande, etc., afin de traiter et de répondre à la demande. En PHP, vous pouvez utiliser des variables globales telles que $_REQUEST, $_GET, $_POST, etc. pour obtenir les informations demandées, mais ces variables ne sont pas des objets, mais des tableaux. Afin de traiter les informations demandées de manière plus flexible et plus pratique, vous pouvez

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

See all articles