网络安全之攻防笔记--通用安全漏洞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": ""} }
相关推荐
万年咸鱼12 分钟前
HTTPS 是如何保证传输安全的?
网络协议·安全·https
卿卿的产品经理日记12 分钟前
【AI产品经理实战】Day 38|try-except 踩坑实录:报错是数据
人工智能·笔记·python·学习·产品经理
JackieDYH19 分钟前
深入理解iframe的allow属性与安全实践-iframe权限点
安全
OxYGC2 小时前
Spring 面经系列 · 第 1 篇:Bean 生命周期、单例语义、依赖注入与线程安全
java·安全·spring
ManageEngine卓豪3 小时前
企业网络安全建设实践:2026 威胁态势、合规基线与分层防御落地
web安全·网络安全·it运维·网络安全防护
himobrinehacken3 小时前
位运算揭秘:左右移与符号位陷阱
c语言·c++·算法·安全
mmsx3 小时前
Android 安全校验下沉到原生层:防 patch 与构建期自动化
android·安全·自动化
上海广测检测科技有限公司3 小时前
无线鼠标出口欧盟CE认证准备要点:RED指令下的射频、安全与电池义务梳理
经验分享·安全
NetX行者3 小时前
Rust 初体验:一个全栈工程师的编译器“毒打“笔记
开发语言·笔记·rust
QZ166560951593 小时前
可视化易用·低误报率·跨区域部署:知源-AI数据分类分级系统在金融行业的落地实践
大数据·网络·安全·网络安全