Burp靶场——SQL注入(二)允许绕过登录的SQL注入漏洞

一、SQL注入绕过登录的原理

SQL注入绕过登录的核心是利用应用程序对用户输入数据的过滤不严格,通过在用户名或密码字段注入恶意SQL代码,篡改原始SQL查询的逻辑,从而达到无需正确凭证即可登录的目的。

二、常见绕过方式

1.注入逻辑表达式 (这是本关下面例子用到的方式)在用户名或密码字段输入类似admin' --的内容,注释掉后续密码验证部分。原始查询可能为:

SELECT * FROM users WHERE username='admin' AND password='password'
 

注入后变为:

SELECT * FROM users WHERE username='admin'--' AND password='password'
 

2.利用OR逻辑 输入' OR 1=1 --使查询条件永远为真:

SELECT * FROM users WHERE username='' OR 1=1 --' AND password=''
 

3.联合查询注入 使用UNION SELECT构造虚假身份信息:

' UNION SELECT 1,'admin','hashed_password',... FROM users --
 

三、通关步骤

Burp靶场——SQL注入(二)允许绕过登录的SQL注入漏洞_第1张图片

实验要求以管理员身份登录

访问实验室后,用户名位置输入administrator'--  ,密码随便输,点击登录,就发现绕过成功了

你可能感兴趣的:(sql,java,数据库)