sql注入中的万能密码

信息安全不简单鸭 2024-07-11 19:26:14

我上学那会,老师喊来了老学长来给我们讲他从事网络安全行业的经历,老学长ppt演示的就是他通过sql注入万能钥匙成功登录网站的故事,没有你的密码,也能登录你的账号,当时同学们心中都种下了一颗神奇黑客的种子。

ailx10

网络安全优秀回答者

网络安全硕士

去咨询

所以说,web渗透测试是一门手艺活,不懂原理没关系,一顿突突就完事,又不是不能跑,如果能知道原理,那就更上一层楼了,随着时间的增长,自然而然,耳濡目染,就懂了原理了。话说回来,这种注入已经是实验室古董了,现实环境几乎绝迹了,因为加密和盐。

常见的sql注入 万能密码

a' or 'a'='a'

a' or 1 #

a" or ""a"="a

123 or 1

a"" or ""a""=""a

'or'

&mo#

sql注入本质上是拼接sql语句,其中$uname和$passwd是用户提交的用户名和密码,如果where后面是true,那么就能成功登录$uname的账号,本意是只有用户名和密码都输入正确,才能成功登录

select * from user where username='$uname' and password = '$passwd'

但是黑客$uname正常输入admin,$passwd异常输入a' or 'a'='a' ,组合的sql语句如下,强制绕过了密码检查,where后面铁定是true,自然成功登录了admin的账号

select * from user where username='admin' and password = 'a' or 'a'='a'

现在这种套路已经很难奏效了,因为密码会经过加密计算,你输入的信息,需要经过一轮解密运算,得到新的字符串,再拼接就很难是一个有效的sql语句了,从而导致sql注入失败,这也是一个高频的网络安全面试题,你学会了吗?

0 阅读:1

信息安全不简单鸭

简介:感谢大家的关注