SQL盲注过程中,确定存在SQL注入点,u中传递的是d=55参数,怎样通过注入的方式获取某个库表中所有的字段名?() ○A.在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,转换成原始字符后进行拼 接就可以获取到某个库表中所有的字段名 OB.在ur中输入?id=55 AND SUBSTR(SELECT COLUMN NAME FROM information schemcolumns WHERE TABLE SCHEMA='库名'AND TABLE NAME='表名'),n,1)=m,页面正常显示时,可以获取到第个字符的ASCII码值m,转换成原始字符后进行拼接,就可以获取到某个库表中所有的 字段名 ○C.在url中输入?id=55 AND SUBSTR(SELECT TABLE NAME FROM information schemcolumns WHERE TABLE SCHEMA='库名'AND TABLE NAME:='表名·),n,1)=m,页面正常显示时,可以获取到第n个字符的ASCII码值m,转换成原始字符后进行拼接,就可以获取到某个库表中所有的 字段名 ○D.在url中输入?id=55 AND SUBSTR(SELECT ASCII(COLUMN NAME)FROM information schemcolumns WHERE TABLE SCHEMA='库 名'AND TABLE NAME:='表名'),n,1)=m,页面正常显示时,可以获取到第n个字符的ASCII码值m,转换成原始字符后进行拼接就可以获取到某个库 表中所有的字段名
时间: 2024-02-11 17:08:13 浏览: 24
B. 在url中输入?id=55 AND SUBSTR(SELECT COLUMN NAME FROM information schemcolumns WHERE TABLE SCHEMA='库名' AND TABLE NAME='表名'),n,1)=m,页面正常显示时,可以获取到第n个字符的ASCII码值m,转换成原始字符后进行拼接,就可以获取到某个库表中所有的字段名。
在进行 SQL 盲注时,可以使用 UNION SELECT 和 SUBSTR 等函数来获取数据库中的信息。获取某个库表中所有的字段名时,可以使用类似以下的语句:
```
SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_NAME='表名' AND TABLE_SCHEMA='库名'
```
其中,information_schema 是 MySQL 中的一个系统数据库,可以用来查询数据库的元数据信息,如数据库名称、表名称、列名称等。在进行 SQL 盲注时,可以通过构造类似以下的语句来获取字段名:
```
?id=55 AND SUBSTR(SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_NAME='表名' AND TABLE_SCHEMA='库名'),n,1)=m
```
其中,n 表示需要获取的字段名中的字符位置,m 表示第 n 个字符的 ASCII 码值。通过不断地修改 n 和 m 的值,可以逐个获取所有的字段名,并将它们拼接起来。具体的获取方式可以使用脚本进行自动化处理,以提高效率。