SOLi-LABS Page-3 (Stacked injections) --39-53关
sql-39GET-Stacked Queryinjection -String
?id=1 and 1=1 --+ //页面正常
?id=1 and 1=2 --+ //页面不正常,数字型
联合注入即可。
sql-40GET-Stacked Query Injection -intiger based
这关是 ') 闭合,之后使用联合注入即可。
sql-41GET-BLIND based -String -Stacked
这关和39关一样。
sql-42GET -BLIND based -intiger -stacked
这关是POST型注入,所以去抓包,看看注入点在哪。经过观察页面是否正常来判断,尝试发现注入点是在密码框,且闭合方式是单引号。有报错信息,尝试报错注入(extractvalue和updatexml函数都可以)。
1' and updatexml(1,concat(1,(select database())),1)--+
1' and updatexml(1,concat(1,(select group_concat(table_name) from information_schema.tables where table_schema='security')),1)--+
1' and updatexml(1,concat(1,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')),1)--+
1' and updatexml(1,concat(1,(select group_concat(username,'~',password) from users)),1)--+
sql-43POST -Error based -string -stacked with twist
这关和42关一样,只不过是 ') 闭合。
sql-44POST-Error based -String -Stacked -Blind
这关解法和42关一样,但是没有报错信息,所以选择布尔盲注或者时间盲注。我就不介绍了,详细步骤大家可以看下面两篇博客。
时间盲注:Blind- Time based-Single Quotes-String--SQL注入-CSDN博客
布尔盲注:Blind-Boolian-Single Quotes-String--SQL注入-CSDN博客
sql-45POST-Error based-String-Stacked -Blind
这关和44关一样,只不过是 ') 闭合。
sql-46GET -Error based -Numeric -ORDER BY CLAUSE
这关使用sort进行传参。(数字型注入)
接下来用报错注入即可。
sql-47GET -Error based -String - ORDER BY CLAUSE
这关和46关一样,但是闭合方式是单引号。
sql-48GET -Error based -Blind-Numeric- ORDER BY CLAUSE
没有信息显示,用时间盲注或者布尔盲注即可。(数字型注入)
sql-49GET -Error based -String- Blind -ORDER BY CLAUSE
和上一关一样,但是闭合方式是单引号。
sql-50GET -Error based -ORDER BY CLAUSE -numeric-Stacked injection
和46关一样,数字型注入,但是不需要用--+进行闭合。
sql-51GET -Error based-ORDER BY CLAUSE-String-Stacked Injection
和50一样,但是闭合方式是单引号,同样也不需要用--+进行闭合。
sql-52GET -Blind based -ORDER BY CLAUSE -numeric-Stacked injection
数字型注入,和48关一样。
sql-53GET -GET - Blind based -ORDER BY CLAUSE -String- stacked injection
跟上一关一样,但是闭合方式是单引号。