sql注入数据库原理详情介绍
目录 1 介绍 2 一般步骤 3 注入 3 函数 3.1 常用的系统函数 3.2 字符串连接函数 3.2.1 concat() 函数 3.2.2 concat_ws() 函数 3.2.3 group_concat() 函数 4 注入 4.1 联合查询 union 注入 4.2 information_schema 注入
目录1 介绍2 一般步骤3 注入3 函数3.1 常用的系统函数3.2 字符串连接函数3.2.1 concat() 函数3.2.2 concat_ws() 函数3.2.3 group_concat() 函数4 注入4.1 联合查询 union 注入4.2 information_schema 注入5.2.1 获取所有数据库4.2.2 获取指定数据库的表4.2.3 获取指定表的字段名4.2.4 获取字段值得内容4.3 基于报错信息注入4.3.1 三个常用报错函数4.4 数字注入4.5 搜索注入5 sql注入防御<p></p>
1 介绍
SQL注入漏洞主要是由于,在请求的时候没有做严格的过滤,导致传入的语句被当做SQL语句被执行,从而导致数据库受损(被脱库、删除、甚至数据付权限沦陷)
2 一般步骤
SQL注入点探测:
判断什么地方存在SQL注入点,通常在表单,文章查询等与数据库有关操作的页面。
收集后台数据库信息:
不同的数据库的注入方法、函数各不相同,因此注入前要判断数据库的类型。
如:
特殊字符、单引号:让数据库返回错误
函数:
version()函数:MSQL专用
1 and version()>0
猜测用户名和密码:
表名、字段名、字段数、用户名和密码。
查找 Web 后台管理入口:
可以使用 目录扫描工具
入侵and破坏:
登录后台:上传木马、篡改网页、窃取信息。进一步提权:入侵Web服务器和数据库服务器。
3 注入
测试数据;
+---------------+----------------------------------+ | isbn | title | +---------------+----------------------------------+ | 9787302458210 | SQL Server 从入门到精通(第2版) | | 9787115496003 | 虚拟化技术应用与实践 | | 9787302510109 | 算法设计与分析(第4版) | | 9787503442490 | 心灵密码 | | 9787503421884 | 雪狼 | | 9787539635835 | 龙头老太 | +---------------+----------------------------------+
3 函数
3.1 常用的系统函数
3.2 字符串连接函数
三大法宝:concat(),group_concat(),concat_ws()