哦!好快乐

My Links

Blog Stats

SQL注入(字符型)

 

@SQLi最重要的一点:别上来就对着输入框注入,完整语句写出来,始终在语句中写完整的,最后把完整的一部分截取出来作为输入

 

@URL编码:为避免歧义,URL中,如

%2b是+  ,  %23是#  , %26是&  ,  %27是'   , %25是%(+在mysql中不仅是加号,还是分隔符;&也是,在url中有歧义,so把它们编码)

 %3c 是<   ,%3d是> (XSS)

HTML实体中,"&lt;" 代表 "<","&gt;" 代表 ">"

@mysql注释符

 

 

@select database();

 

selec length(tabel_name):表的名字的长度

select length(database());数据库名字的长度(DBLab,length为5)

 

SQL注入如何得到数据库名的长度:http://localhost/index.php?id=2' and length(database())>1%23

 

 

@注入语句中’1’=’1   ,而不是1=1,因为字符型本身的搜索语句里就有select * from user where username='$name'   最'$name'的引号被拆散,最后一个引号无处安放,为了解决因为最后一个引号落单而报错,注入and  ’1’=’1这么句废话  ,配合最后一个引号

 

 

@union前面的select为false,不报错,显示后面union的内容

 

@优先级

 

 

@||连接符(mysql字符串连接可以使用 '||'或者concat函数)

 

 

@分隔符+ 代表空格。为什么不直接空格?和浏览器啥的有关系

         最后的and’’=’’纯属给最后一个落单的引号找伴,防报错

 

 

posted on 2019-08-08 16:33 亭台克亚 阅读(...) 评论(...) 编辑 收藏