当前位置:   article > 正文

简述sql注入中万能密码的原理_sql注入万能密码原理

sql注入万能密码原理

进行SQL注入的原理就是将特殊输入作为参数传入web程序,从而欺骗服务器执行信息查询功能,而万能密码则是利用sql库中运算符的优先级使得所传入数据库查询语句恒为true的SQL语句:

1.用户登录时,后台执行的数据库查询操作(SQL语句)是:Select user_id,user_type,email From users Where user_id='用户名' And password='密码'。

2.由于网站后台在进行数据库查询的时候没有对单引号进行过滤,当输入用户名 admin 和万能密码2'or'1时,执行的SQL语句为:

Select user_id,user_type,email From users Where user_id='admin' And password='2'or'1'。

3.由于SQL语句中逻辑运算符具有优先级,“=”优先于“and”,“and”优先于“or”,且适用传递性。因此,此SQL语句在后台解析时,分成两句:

select user_id,user_type,email From users Where user_id='admin' and password='2' 和'1',两句bool值进行逻辑or运算,恒为TRUE。

5.SQL语句的查询结果为TRUE,就意味着认证成功,也可以登录到系统中。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/运维做开发/article/detail/950530
推荐阅读
相关标签
  

闽ICP备14008679号