SQL注入漏洞笔记


一:注入原理
SQL注入是一种常见的Web安全漏洞,攻击者利用这个问题,可以访问或修改数据,或者利用潜在的数据库漏洞进行攻击
SQL注入是一种将SQL语句插入或天机到应用(用户)的输入参数中的攻击,之后再将这些参数传递给后台的SQL服务器加以解析并执行

常见的web架构
表示层 :访问网址 逻辑层:加载,变异并执行脚本 存储层:执行SQL

那里存在SQL注入
GET
POST
HTTP头部注入
Cookie注入
任何客户端可控,传递到服务器的变量

漏洞原理
1.成语编写着在处理程序和数据库交互时,使用字符串评级的方式构造SQL语句
2.未对用户可控参数进行足够的过滤边疆参数内容坪街道SQL语句中

漏洞危害
攻击者利用SQL注入漏洞 可以获取多种信息
管理员后台密码,脱库 修改数据库内容,插入内容到数据库
如果数据库权限分配存在问题 或者数据库本身存在缺陷 那么可以直接获取webshell或者服务器系统权限

SQL注入的分类

根据SQL数据类型分类
整形注入
字符串类型注入

根据注入的语法分类
可联合查询注入
报错型注入
布尔型注入
寄予时间延迟注入
可多语句查寻注入

判断注入
and 1=1 /and 1=2 会显页面不同(整形判断)
单引号判断' 线束数据库错误信息或者页面回显不同(整形,字符串类型判断)
\(转义符)
-1/+1 回西安下一个或者上一个页面(整形判断)
and sleep(5)判断页面返回时间

SQL3种注释风格
#(url编码为%23)
-- (--后面要根上一个或者多个空格)
/*......*/  多行注释
/*!.....*/  内敛注释

猜你喜欢

转载自blog.csdn.net/weixin_43608762/article/details/84036371