SQL注入入门

Posted 清泉石上流

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL注入入门相关的知识,希望对你有一定的参考价值。

这几天做了不少SQL注入题,对SQL注入有点体会,所以写写自己的学习历程与体会。

什么是SQL注入

SQL注入就是指web程序对用户输入的数据的合法性没有进行判断,由前端传入的参数带着攻击者控制的非法语句,攻击者可以通过构造不同的数据库查询语句来实现对数据库的任意操作。

SQL注入原理

SQL注入产生的原理:

(1)由前端传入的参数是可以控制的。

(2)传入的参数可以拼接到SQL语句,并且能对数据库进行有效操作。

当你输入参数id=1时,数据库执行的代码如下   select * from users where id = 1  数据库可以正常执行操作。

当你输入参数id=1‘时,数据库执行的代码如下   select * from users where id = 1‘ 这不符合数据库语法规范,所以会报错。

当你传入参数1 and 1=1时,数据库执行的代码如下 select * from users where id = 1 and 1=1 因为1=1和1都为真,所以页面会返回id=1的结果。当你传入 1=2时 ,1=2为假,所以数据库会报错。

一般满足上面这两种条件的都可能存在注入漏洞,因此开发人员要对传入的参数进行过滤。

而且随着技术的发展,注入与反注入的技术都在不断升级,所以各种各样的注入漏洞被发现利用,然后被修复,新的漏洞再被发现,所以对于安全工程师来说,掌握最新的漏洞是非常重要的。

 

以上是关于SQL注入入门的主要内容,如果未能解决你的问题,请参考以下文章

SQL注入攻防入门详解

SQL注入基础入门

SQL注入(入门)

PHP代码审计入门(SQL注入漏洞挖掘基础)

基础Web漏洞-SQL注入入门(手工注入篇)

挖洞入门_显错型SQL注入