sql注入基础原理(基础知识之SQL)

sql注入基础原理(基础知识之SQL)小编带大家一起去了解一下sql注入基础原理(基础知识之SQL) 0x0 SQL注入的介绍以PHP为例子:$query ="SELECT * FROM users WHERE id=$_GET['id']";这里ID参数可控,非法用户可以仍以拼接SQL语句进行攻击。可以构造报错注入、盲注、union注入等方法。0x01SQ

sql注入基础原理(基础知识之SQL)小编带大家一起去了解一下

sql注入基础原理(基础知识之SQL)

0x0 SQL注入的介绍

以PHP为例子:

$query ="SELECT * FROM users WHERE id=$_GET['id']";

这里ID参数可控,非法用户可以仍以拼接SQL语句进行攻击。可以构造报错注入、盲注、union注入等方法。

0x01SQL注入原理

满足两个条件:

1、前端传入后端参数内容是用户可以进行控制。

2、参数传入数据库后可以进行执行。

例如:

select * from users where id =1 '

select * from users where id =1 and 1=1

因为1=1为真,where语句 id=1也为真,返回结果两个情况是一样的,当 and 1=2参数时候,返回为假的,出现页面错误。

现在SQL注入一般会拦截了and、=等关键字符的注入,注入要进行绕过。

0x02MYSQL数据库注入相关知识点

5.0版本之后,MYSQL默认有“information_schema"数据库,记住三个表名SCHEMATA、TABLES、COLUMNS


SCHEMTA表

TABLES表

基础知识之SQL注入原理
COLUMNS表

0x03MYSQL查询语句

select 字段名 FROM 库名.表名

select 字段名 FROM 库名.表名 where 已知条件字段名=‘已知条件值’

select 字段名 FROM 库名.表名 where 已知条件1字段名=‘已知条件1值’and 已知条件2值

='已知条件2值'

limit的用法

格式:limit m,n, 其中m是指记录开始的位置,n是取多少个记录。

基础知识之SQL注入原理
limit用法

记住几个常用函数:

database():当前网站使用的数据库。

version(): 当前Mysql版本。

user(): 当前Mysql的用户。

注释符:

#、--空格、/**/

内联注释:

/!**/

  • 发表于 2021-04-26 07:08
  • 阅读 ( 202 )
  • 分类:互联网

0 条评论

请先 登录 后评论
微/扣886
微/扣886

684 篇文章

你可能感兴趣的文章

相关问题