当前位置: 首页 > news >正文

SQL注入操作

sql注入

  • 一,SQL注入分类
    • 按照注入的网页功能类型分类
    • 按照注入点值的属性分类
    • 基于从服务器返回内容
    • 按照注入的程度和顺序

一,SQL注入分类

按照注入的网页功能类型分类

  1. 登录注入
  2. cms注入
    cms逻辑:index.php首页展示内容,具有文章列表(链接具有文章id),articles.php文章详细页,URL中article.php?id=文章id读取id文章

按照注入点值的属性分类

  1. 数字型注入
    特征:参数直接用于数字比较或计算
    示例SQL:SELECT * FROM products WHERE id = 1
    判断方法:
    输入1+1看是否返回id=2的结果
    输入1 AND 1=1和1 AND 1=2观察响应差异
    输入1’看是否报错

  2. 字符型注入
    特征:参数被单引号/双引号包裹
    示例SQL:SELECT * FROM users WHERE username = ‘admin’
    判断方法:
    输入’看是否报错
    输入admin’ AND ‘1’='1测试
    观察闭合符号(单引号/双引号)

  3. 搜索型注入
    特征:参数用于LIKE模糊查询
    示例SQL:SELECT * FROM articles WHERE title LIKE ‘%keyword%’
    判断方法:
    输入%’ AND 1=1 AND ‘%’='测试
    尝试使用通配符%和_

  4. 排序型注入
    特征:参数用于ORDER BY子句
    示例SQL:SELECT * FROM products ORDER BY 1
    判断方法:
    修改排序参数为(SELECT 1)
    尝试ASC/DESC后接注入语句

基于从服务器返回内容

  1. 显错型注入
    特征:错误信息直接显示在页面上
    判断方法:
    输入特殊字符('、"、)等)触发错误
    观察是否返回数据库错误信息

  2. 盲注(无显错)
    –布尔盲注:
    通过页面返回的真假状态判断
    测试方法:AND 1=1/AND 1=2观察响应差异
    –时间盲注:
    通过响应时间延迟判断
    测试方法:AND IF(1=1,SLEEP(5),0)

  3. 联合查询注入
    特征:可以使用UNION合并查询结果
    判断方法:
    测试ORDER BY确定列数
    尝试UNION SELECT 1,2,3

按照注入的程度和顺序

  1. 一阶注入
  2. 二阶注入

相关文章:

  • EF Core 执行原生SQL语句
  • 大模型应用平台架构
  • Android 12系统源码_系统启动(二)Zygote进程
  • 批量处理word里面表格单元格中多余的回车符
  • JavaScrip-模版字符串的详解
  • 文献学习:单细胞+临床+模型构建 | 一篇Molecular Cancer文献如何完整解读CDK4/6i耐药机制
  • http 和 https
  • 《云原生安全攻防》-- K8s容器安全:使用gVisor构建安全沙箱运行环境
  • 阶段三:高级特性
  • 50.topodijkstra
  • Python Grpc安装protoc-gen-js并执行 grpc-web生成py文件
  • 【翻译】OmniSQL——大规模生成高质量文本转SQL数据
  • 002射影几何
  • 力扣刷题79. 单词搜索
  • 基于MCU实现的电机转速精确控制方案:软件设计与实现
  • 电机控制常见面试问题(二十)
  • 推荐一款好看的 vue3 后台模板
  • 《STL 六大组件之容器探秘:深入剖析 vector》
  • Python | 计算散度
  • TF-IDF算法
  • 汪海涛评《线索与痕迹》丨就虚而近实
  • 工人日报关注跟着演出去旅游:票根经济新模式兴起,让过路客变过夜客
  • 视觉周刊|劳动开创未来
  • “特朗普效应”下澳大利亚执政工党赢得大选,年轻选民担忧房价
  • 5月人文社科中文原创好书榜|巫蛊:中国文化的历史暗流
  • 中国固体火箭发动机领域杰出专家赵殿礼逝世,享年92岁