本文主要是介绍SQL注入的成因及原理浅析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、首先先介绍一下SQL注入的思维导图:
二、SQL注入的成因
三、SQL注入的原理
用户 可控参数中注入SQL语法,破坏原有SQL结构,达到编写程序时意料之外结果的攻击行为
某成因可以归结为以下两个原因叠加造成的:
1.程序编写者在处理应用程序和数据库交互时,使用字符串拼接的方式构造SQL语句。
2.未对用户可控参数进行足够的过滤便将参数内容拼接进入到SQL查询语句中。
四、哪里可能存在SQL注入?
1.任何客户端可控且传递到服务器的变量都有可能存在SQL注入
2.这些变量通常存在于GET,POST形式传递的参数中,如HTTP请求消息头部和COOKIE中。
五、注入的危害:
获取管理员账号密码
盗取数据库中的数据
修改数据库中的数据
获取Webshell
select 字段,字段 from 数据库,数据表
所有数据库名:
select schema_name from information_schema.schemata;
查找所有表名:
select table_name from information_schema.tables;
查找table表中的所有库名
select table_schema from information_schema.tables;
查找所有列名
select column_name from information_schema.columns;
这篇关于SQL注入的成因及原理浅析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!