网络安全之攻防笔记--通用安全漏洞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": ""} }
相关推荐
RainCity9 分钟前
Java Swing 自定义组件库分享(十六)
java·笔记·后端
测开小菜鸟1 小时前
智能体安全与伦理测试:守护AI的“底线”,让智能体安全、负责任地工作
网络·人工智能·安全
蒸蒸yyyyzwd2 小时前
cpp选手秋招准备 学习笔记day7 webserver
笔记·学习
摸鱼停不住先生2 小时前
不安全反序列化利用篇(四):预构建 Gadget Chain——从反序列化检测到框架利用
开发语言·python·安全
小新讲网安3 小时前
PowerShell安全攻防实战:从渗透利用到检测防御全攻略
安全·web安全·网络安全·黑客·自动化·sqlmap·网安
天疆说3 小时前
02 API 鉴权与腾讯云公网桥接:把局域网模型服务安全地挂到域名上
安全·云计算·腾讯云
Chen—LSN4 小时前
C语言——数据在内存中的存储
c语言·开发语言·经验分享·笔记
weixin_431600444 小时前
NestJS 入门(9):连上数据库,SQL 写在哪?
数据库·后端·sql·学习·nest.js
嘟哩DuliDuli4 小时前
AI 账单变高的技术原因:重复上下文和用量归属
android·人工智能·安全·ai·软件工程
roman_日积跬步-终至千里4 小时前
【Spark与SQL网关(1)】Spark 提交模式与 Spark Thrift Server:到底在“提交”什么
大数据·sql·spark