网络安全之攻防笔记--通用安全漏洞SQL注入&sqlmap&Oracle&mongodb&DB2

  • 通用安全漏洞SQL注入&sqlmap&Oracle&mongodb&DB2

    • 数据库类型

      • ACCESS

        • 特性

          • 没数据库用户
          • 没数据库权限
          • 没数据库查询参数
          • 没有高权限注入说法
        • 暴力猜解,借助字典得到数据
        • 注入方式

          • 联合注入
          • 偏移注入
        • 表名列名猜解不到
          • 偏移注入
      • MySQL

        • 低权限
          • 常规注入
        • 高权限

          • 常规注入
          • 文件读取
            • load_file
          • 文件写入
            • into outfile
        • 权限原因&判断

          • 代码连接用户决定
          • 查询函数user()
          • 其他

            • database()
            • version()
            • @@version_compile_os
      • MSSQL

        • 低权限
          • 常规注入
        • 高权限

          • 常规注入
          • 文件读取
          • 文件读写
          • 命令执行
          • 注册表读取
        • 权限原因&判断

          • 代码连接用户决定
          • 查询函数-user()
          • 其他

            • db_name() 当前数据库名字
            • @@version 获取版本信息
            • @@SERVERNAME 获取服务器主机信息
      • postgreSQL

        • 低权限
          • 常规注入
        • 权限原因&判断

          • 代码连接用户决定
          • 查询函数current_user
          • 其他

            • version()
            • current_database()
      • db2

        • 特性:

          • 数据库结构复杂,表名和列名通常需要猜解。
          • 高权限用户可以通过 LOAD 和 CALL 执行系统命令。
        • 注入方式:

          • 联合注入:通过 UNION SELECT 获取数据。
          • 报错注入:通过 XMLQUERY 等函数触发报错。
        • 权限判断:

          • 使用 SELECT user FROM sysibm.sysdummy1 查询当前用户。
          • 使用 SELECT * FROM sysibm.sysversions 查询数据库版本。
      • sybase

        • Sybase 的基本特点

          • 支持标准的 SQL 语法。
          • 支持存储过程、触发器等高级功能。
          • 数据库结构包括数据库、表、视图、存储过程等。
          1. Sybase 的权限模型
          • 高权限用户(如 sa)可以执行系统命令、读写文件等操作。
          • 低权限用户只能访问特定的数据库对象。
          • Sybase 的权限分为数据库用户和角色。
      • oracle

        • 特性:

          • 数据库结构复杂,表名和列名通常需要猜解。
          • 高权限用户可以通过 UTL_FILE 读写文件。
        • 注入方式:

          • 联合注入:通过 UNION SELECT 获取数据。
        • 权限判断:

          • 使用 SELECT user FROM dual 查询当前用户。
          • 使用 SELECT * FROM v$version 查询数据库版本。
      • mangodb

        • 特性:

          • NoSQL 数据库,不支持传统 SQL 注入。
          • 可能存在 NoSQL 注入漏洞,通常通过 JSON 查询注入。
        • 注入方式:

          • 通过修改 JSON 查询条件,绕过身份验证或获取数据。
          • { "username": {"ne": ""}, "password": {"ne": ""} }
相关推荐
蓝田生玉1236 小时前
BEVFormer论文阅读笔记
论文阅读·笔记
西瓜堆7 小时前
提示词工程学习笔记: 工程技术行业提示词推荐
笔记·学习
Knight_AL8 小时前
Spring 事务传播行为 + 事务失效原因 + 传播行为为什么不用其他模式
数据库·sql·spring
wxr06168 小时前
GOF笔记
笔记·适配器·ooad
charlie11451419110 小时前
嵌入式的现代C++教程——constexpr与设计技巧
开发语言·c++·笔记·单片机·学习·算法·嵌入式
童话名剑10 小时前
锚框 与 完整YOLO示例(吴恩达深度学习笔记)
笔记·深度学习·yolo··anchor box
2301_7833601312 小时前
关于RNAseq——从fastq到gene_counts全流程
笔记·学习
_李小白12 小时前
【AlohaMini学习笔记】第三天:AlohaMini相关技术
笔记·学习
yatingliu201912 小时前
将深度学习环境迁移至老旧系统| 个人学习笔记
笔记·深度学习·学习
week_泽12 小时前
第1课:AI Agent是什么 - 学习笔记_1
人工智能·笔记·学习