1.什么是sql注入
所谓sql注入攻击,就是攻击者把sql命令插入到web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的sql命令。在某些表单中,用户输入的内容直接用来构造(或者影响)动态sql命令,或作为存储过程的输入参数,这类表单特别容易收到sql注入式攻击。
国内的网站用ASP+Access或SQLserver的占70%以上
PHP+MySQL占20%,其他的不足10%
2.sql注入的测试
本章方案
发现sql注入
确认sql注入
自动sql注入发现
web表单的get和post发送数据
GET的主要任务是获得数据,但在获得数据前也可以向服务器提交一些数据;
POST的主要任务是提交数据,但在提交数据之后服务器也会向用户端返回一些显示用的数据。
3.sql注入常用函数
access:asc(字符)
sql server :unicode(字符)
作用:返回某个字符的ascii码
access:chr(数字)
sqlserver:nchar(数字)
作用:与asc相反,根据ascii码返回字符
access:mid(字符串,N,L)
sql server:substring(字符串,N,L)
作用:返回字符串从N个字符长度为L的子字符串,即N到N+L之间的字符串
access:abc(数字)
sql server:abc(数字)
作用:返回数字的绝对值(在猜解汉子的时候会用到)
access:A between B And C sql server: A between B And C
作用:判断A是否界于B与C之间
第三节。中文处理方法
在注入中碰到中文字符是常有的事情,有时看到中文字符就退堂鼓了。其实只要对中文的编码有所了解,中文恐惧症可以很快客服
先说一点常识
在access中,中文的ascii码可能会出线负数,取出该负数后用abs()
浙公网安备 33010602011771号