zoukankan      html  css  js  c++  java
  • SQL注入

    SQL注入

    参考:

    https://www.kanxue.com/book-6-110.htm

    原理

    在owasp发布的top10 漏洞里面,注入漏洞一直是危害排名第一,其中数据库注入漏洞是危害的。

    当攻击者发送的sql语句被sql解释器执行,通过执行这些恶意语句欺骗数据库执行,导致数据库信息泄漏

    分类

    按注入类型

    常见的sql注入按照参数类型可分为两种:数字型和字符型

    当发送注入点的参数为整数时,比如ID,num,page等,这种形式的就属于数字型注入漏洞。同样,当注入点是字符串时,则称为字符型注入,字符型注入需要引号来闭合

    按返回结果

    • 回显注入:可以直接在存在注入点的当前页面中获取返回结果。
    • 报错注入:程序将数据库的返回错误信息结果直接显示在页面中,虽然没有返回数据库查询的结果,但是可以构造一些报错语句从错误信息中获取想要的结果。
    • 盲注:程序后端屏蔽了数据库的错误信息,没有直接显示结果也没有显示数据库报错信息,只能通过数据库的逻辑和延时函数来判断注入的结果。根据表现形式的不同,盲注又分为based boolean(返回结果只有对与错) 和 based time(执行了sleep) 两种

    按注入位置与方式

    按照注入位置及方式可分为:post注入,get注入,cookie注入,盲注,延时注入,搜索注入,base64注入,无论分类如何,都可以归纳为以上两种形式

    使用Mybatis的预先编译即可很好的预防sql注入

  • 相关阅读:
    机器学习中常见的优化算法
    linux端安装Anaconda,方便远端访问jupyter
    核心③自动分号插入
    setTimeout 和 setInterval
    核心②undefined 和 null
    类型④类型转换
    核心①为什么不要使用 eval
    类型③instanceof 操作符
    类型①相等与比较
    类型②typeof 操作符
  • 原文地址:https://www.cnblogs.com/kikochz/p/13657154.html
Copyright © 2011-2022 走看看