SQL注入攻击与防御(第一,二章)

算是系统的重新学一遍SQL了,把细节和运用在熟悉一遍


注入原因: 缺少用户输入验证、数据和控制结构混合在同一传输通道中

返回的错误情况:1.错误直接显示在页面上        2.将sql错误隐藏在web源代码中

     3.检测到错误时跳转到另一个页面    4.返回500或302    5.适当处理错误但返回一个通用的错误页面

四种数据库的常见错误和利用:

1.SqlServer

    将id=1的1换成字符串的话,不加引号的字符串会被认为是列名,从而返回找不到该列的错误

    还可以把字符串转化为整数来产生错误,.aspx?category=bikes' and 1=0/@@version;--   version作为一个除法会把它转化为数字,但当然转化会失败,失败时会显示出变量的内容,version当然也可以替换成别的。由此可以有一种注入,使用having和order by爆字段  举例:bikes' having '1'='1 数据库会要求group by和having一起使用并且返回当前数据库内容的第一列。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 35,116评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,994评论 19 139
  • 防御<待续>1、构造动态字符串动态SQL语句是在执行过程中构造的,根据不同的条件产生不同的SQL语句。当开发人员在...
    plutoG7阅读 1,197评论 1 4
  • 姓名:于川皓 学号:16140210089 转载自:https://baike.baidu.com/item/sq...
    道无涯_cc76阅读 2,057评论 0 2
  • 刚入大学的时候,第一节课上就听闻了有师姐通过AIESEC这个社团,利用假期的时间去了坦桑尼亚做海外志愿者。当...
    小嘉擎阅读 339评论 0 0

友情链接更多精彩内容