网络安全之攻防笔记--通用安全漏洞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": ""} }
相关推荐
麦田里的稻草人w16 分钟前
拍摄学习笔记【前期】(一)曝光
笔记·学习
C++ 老炮儿的技术栈17 分钟前
C++中什么是函数指针?
c语言·c++·笔记·学习·算法
再睡一夏就好21 分钟前
C语言常见的文件操作函数总结
c语言·开发语言·c++·笔记·学习笔记
闪电麦坤951 小时前
SQL:SELF JOIN(自连接)与CROSS JOIN(交叉连接)
数据库·sql·mysql
大刘讲IT1 小时前
IT/OT 融合架构下的工业控制系统安全攻防实战研究
经验分享·安全·web安全·架构·制造
hao_wujing1 小时前
基于LLM的6G空天地一体化网络自进化安全框架
网络·安全
中杯可乐多加冰2 小时前
【解决方案】CloudFront VPC Origins 实践流程深入解析 —— 安全高效架构的实战之道
安全·架构·安全架构·vpc·cloudfront
码农飞哥2 小时前
互联网大厂Java面试实战:从Spring Boot到微服务的技术问答与解析
java·数据库·spring boot·安全·微服务·面试·电商
大G哥3 小时前
【SQL 周周练】爬取短视频发现数据缺失,如何用 SQL 填充
数据库·sql
Alessio Micheli3 小时前
国债收益率、需求与抛售行为的逻辑解析
笔记