堆叠注入

平常我们注入时都是通常对原来sql语句传输数据的地方进行相关修改,注入情况会应为该语句本身的情况而受到相关限制,例如进行select语句的时候,无法进行增、删、改。但堆叠注入则完全打破了这种限制,其名字顾名思义,就是可以堆一堆sql注入进行注入,这个时候我们就不受前面语句的限制可以为所欲为了。原理就是将原来的语句构造完后加上分号。

例题

[SUCTF 2019]EasySQL

当输入123的时候弹出以下内容。并同时发现这里是POST传参。

image-20250312204200052

尝试进行字符和数字的验证,发现当输入万能密码的时候情况如下。这里应该是对and等等关键词进行了过滤。

image-20250312204306434

常规思路不太行,而且回文只有这几种。于是考虑堆叠注入。

  1. 得到库名
1
query=0;show databases;
image-20250312204503297

发现过滤的东西太多了。这道题目前对我来说有点偏,只放个链接在这

https://blog.csdn.net/RABCDXB/article/details/111398725

1;set sql_mode=PIPES_AS_CONCAT;select 1