Oracle 数据库安全评估(DBSAT)简明过程

下载DBSAT

从这里下载。

实际是从MOS中下载,即:Oracle Database Security Assessment Tool (DBSAT) (Doc ID 2138254.1)。

最新版本为3.1.0 (July 2024),名为dbsat.zip,近45MB。

$ ls -lh dbsat.zip
-rw-rw-r-- 1 oracle oinstall 45M Mar 21 03:40 dbsat.zip

DBSAT支持的操作系统包括LInux,Windows,IBM AIX,HP-UX和Solaris。
支持的数据库为11.2.0.4或以上。

安装DBSAT

文档参见这里。

以oracle用户登入。

mkdir ~/dbsat
unzip dbsat.zip -d ~/dbsat

解压目录概况:

$ cd ~
[oracle@xy23ai ~]$ du -h dbsat
796K    dbsat/xlsxwriter
232K    dbsat/Discover/conf
4.5M    dbsat/Discover/lib
60K     dbsat/Discover/bin
4.8M    dbsat/Discover
50M     dbsat

可执行程序都在dbsat里,因此可加入到PATH路径。

export PATH=$PATH:/home/oracle/dbsat

使用 DBSAT

DBSAT 可生成2类报告:

  1. Oracle 数据库安全评估报告
  2. Oracle 数据库敏感数据评估报告

收集器(Collector)和报告器(Reporter)用于生成“Oracle 数据库安全评估报告”。 收集器收集数据,报告器分析收集器收集的数据。其架构如下:

在这里插入图片描述

发现器生成“Oracle 数据库敏感数据评估报告”。其架构如下:

在这里插入图片描述

运行DBSAT,OS用户通常用oracle,数据库用户通常用system(也可以用一特定用户,但需要赋权)。

DBSAT语法概览:

$ ./dbsat --helpDatabase Security Assessment Tool version 3.1 (July 2024)Usage: dbsat collect [ -n ] <database_connect_string> <output_file>dbsat report [ -a ] [ -n ] [ -g ] [ -x <section> ] [ -u <user> ] <input_file>dbsat discover [ -n ] -c <config_file> <output_file>Options:-a  Report with all user accounts, including locked and schema-only,Oracle-supplied users-n  No encryption for output-g  Show all grants including Common Grants in a Pluggable Database-x  Specify sections to exclude from report (may be repeated formultiple sections)-u  Specify users to exclude from report-c  Configuration file for discoverer

运行收集器

收集器必须在包含数据库的服务器上运行,因为它会执行一些操作系统命令来收集无法从数据库中获取的进程和文件系统信息。此外,必须以对 ORACLE_HOME 下的文件和目录具有读取权限。

收集器大部分的数据都来自数据库的系统视图。

运行示例:

$ ./dbsat collect system@orclpdb output_orclpdb1Database Security Assessment Tool version 3.1 (July 2024)This tool is intended to assist you in securing your Oracle database
system. You are solely responsible for your system and the effect and
results of the execution of this tool (including, without limitation,
any damage or data loss). Further, the output generated by this tool may
include potentially sensitive system configuration data and information
that could be used by a skilled attacker to penetrate your system. You
are solely responsible for ensuring that the output of this tool,
including any generated reports, is handled in accordance with your
company's policies.Connecting to the target Oracle database...SQL*Plus: Release 19.0.0.0.0 - Production on Fri Mar 21 05:28:21 2025
Version 19.16.0.0.0Copyright (c) 1982, 2022, Oracle.  All rights reserved.Enter password:Last Successful login time: Fri Mar 21 2025 04:11:55 +00:00Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.16.0.0.0Setup complete.
SQL queries complete.
Warning: Exit status 256 from OS rule: dbcs_status
/bin/cat: /u01/app/oracle/product/19c/dbhome_1/network/admin/cman.ora: No such file or directory
Warning: Exit status 256 from OS rule: cman.ora
/bin/cat: /u01/app/oracle/product/19c/dbhome_1/ldap/admin/fips.ora: No such file or directory
Warning: Exit status 256 from OS rule: fips1.ora
/bin/cat: /fips.ora: No such file or directory
Warning: Exit status 256 from OS rule: fips2.ora
/bin/ls: cannot access '/u01/app/oracle/product/19c/dbhome_1/rdbms/log/diag': No such file or directory
Warning: Exit status 512 from OS rule: diag_dest_home
OS commands complete.
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.16.0.0.0
DBSAT Collector completed successfully.Calling /u01/app/oracle/product/19c/dbhome_1/bin/zip to encrypt output_orclpdb1.json...Enter password:加密输出zip包的口令
Verify password: 加密输出zip包的口令adding: output_orclpdb1.json (deflated 79%)
zip completed successfully.

这一步生成了一个zip包output_orclpdb1.zip,此zip包只包含一个json文件:

$ unzip -l output_orclpdb1.zip
Archive:  output_orclpdb1.zipLength      Date    Time    Name
---------  ---------- -----   ----443823  03-21-2025 05:28   output_orclpdb1.json
---------                     -------443823                     1 file

运行报告器

收集完后,就可以根据收集的信息生成报告了。报告器的输入可以是JSON文件或经压缩的收集器输出文件。

报告器是一Java程序,因此必须先设置JAVA_HOME,示例如下:

$ java -version
java version "1.8.0_341"
Java(TM) SE Runtime Environment (build 1.8.0_341-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.341-b10, mixed mode)$ export JAVA_HOME=/usr/java/jdk1.8.0_341-amd64

运行示例:

$ ./dbsat report output_orclpdb1Database Security Assessment Tool version 3.1 (July 2024)This tool is intended to assist you in securing your Oracle database
system. You are solely responsible for your system and the effect and
results of the execution of this tool (including, without limitation,
any damage or data loss). Further, the output generated by this tool may
include potentially sensitive system configuration data and information
that could be used by a skilled attacker to penetrate your system. You
are solely responsible for ensuring that the output of this tool,
including any generated reports, is handled in accordance with your
company's policies.Archive:  output_orclpdb1.zip
[output_orclpdb1.zip] output_orclpdb1.json password: 解压收集器输出包的密码inflating: output_orclpdb1.json
DBSAT Reporter ran successfully.Calling /usr/bin/zip to encrypt the generated reports...Enter password: 压缩报告器输出包的密码
Verify password: 压缩报告器输出包的密码zip warning: output_orclpdb1_report.zip not found or emptyadding: output_orclpdb1_report.txt (deflated 74%)adding: output_orclpdb1_report.html (deflated 83%)adding: output_orclpdb1_report.xlsx (deflated 2%)adding: output_orclpdb1_report.json (deflated 80%)
zip completed successfully.

此命令生成压缩包output_orclpdb1_report.zip。其内容如下:

$ unzip -l output_orclpdb1_report.zip
Archive:  output_orclpdb1_report.zipLength      Date    Time    Name
---------  ---------- -----   ----152422  03-21-2025 05:35   output_orclpdb1_report.txt262187  03-21-2025 05:35   output_orclpdb1_report.html40085  03-21-2025 05:35   output_orclpdb1_report.xlsx192868  03-21-2025 05:35   output_orclpdb1_report.json
---------                     -------647562                     4 files

其中输出了4种格式的报告,内容相同,格式不同。建议使用HTML格式的报告。

运行发现器

发现器用来分析数据库敏感数据。发现器的全称应是敏感数据发现器。

和收集器和报告器不同,连接数据库的信息需写在Discover/conf目录下的配置文件中。

由于只需连接数据库,因此发现器运行的位置可以和数据库主机不同。

例如,你可以拷贝实例配置文件并修改:

cd Discover/conf
cp sample_dbsat.config custom_dbsat.config

需要修改的部分如下,其他参数使用默认:

TNS_ADMIN = /u01/app/oracle/product/19c/dbhome_1/network/admin
NET_SERVICE_NAME = orclpdb

运行示例:

$ ./dbsat discover -c Discover/conf/custom_dbsat.config orclpdb1Database Security Assessment Tool version 3.1 (July 2024)This tool is intended to assist you in securing your Oracle database
system. You are solely responsible for your system and the effect and
results of the execution of this tool (including, without limitation,
any damage or data loss). Further, the output generated by this tool may
include potentially sensitive system configuration data and information
that could be used by a skilled attacker to penetrate your system. You
are solely responsible for ensuring that the output of this tool,
including any generated reports, is handled in accordance with your
company's policies.Enter username: system
Enter password:
DBSAT Discover ran successfully.
Calling /usr/bin/zip to encrypt the generated reports...Enter password: 压缩输出文件的口令
Verify password: 压缩输出文件的口令zip warning: orclpdb1_report.zip not found or emptyadding: orclpdb1_discover.html (deflated 72%)adding: orclpdb1_discover.csv (deflated 30%)
Zip completed successfully.

输出中包含2个文件:

$ unzip -l orclpdb1_report.zip
Archive:  orclpdb1_report.zipLength      Date    Time    Name
---------  ---------- -----   ----11312  03-21-2025 06:12   orclpdb1_discover.html137  03-21-2025 06:12   orclpdb1_discover.csv
---------                     -------11449                     2 files

以下为基于Oracle 19c Sample schema生成的报告:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/74052.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux 维测专栏 1 -- Hung Task 分析与验证】

文章目录 Linux Hung Task 简介1. Hung Task 概述2. D 状态与 Hung Task3. Hung Task 的工作原理4. Hung Task 的配置5. Hung Task 的典型输出6. Hung Task 的应用场景7. kernel 配置7.1 编译选项7.2 参数控制7.3 验证方法4. 扩展接口 8. 注意事项 Linux Hung Task 简介 1. Hu…

GCC 预定义宏:解锁编译器的隐藏信息

GCC 预定义宏&#xff1a;解锁编译器的隐藏信息 在 GCC 编译器中&#xff0c;有许多内置的预定义宏&#xff0c;它们可以提供编译环境的信息&#xff0c;如文件名、行号、时间、版本等。这些宏在调试、日志记录、条件编译等场景中非常有用。本文将介绍常见的 GCC 预定义宏&…

公链开发费用及其构成内容详析

在区块链技术迅速发展的今天&#xff0c;公链&#xff08;Public Blockchain&#xff09;作为去中心化、不可篡改、高安全性的重要应用之一&#xff0c;在金融、供应链、游戏等多个领域得到了广泛应用。然而&#xff0c;开发一条公链并非易事&#xff0c;它不仅需要高度专业技能…

Java求101-200之间有多少素数

Java学习笔记 今天看教程看到了这个题&#xff0c;对于一名打过算法竞赛的选手还是很简单的&#xff0c;但由于之前是c组的&#xff0c;所以用java写一下&#xff0c;练一下手。 代码&#xff1a; package com.itheima.hello;public class Test1 {public static void main(S…

DM 达梦上的日志挖掘 DBMS_LOGMNR

适用场景 在 DM 中&#xff0c;用户可以使用 DBMS_LOGMNR 包对归档日志进行挖掘&#xff0c;重构出 DDL 和 DML 等操作&#xff0c;并通过获取的信息进行更深入的分析&#xff1b;同样&#xff0c;可以对归档日志文件进行恢复被误操作的数据&#xff0c;并进行故障跟踪&#x…

JavaWeb之WebSocket

目录 一、 websocket 概念二、WebSocket原理三、WebSocket特点四、WebSocket应用场景五、Websocket基本使用1、创建Websocket对象2、Websocket事件3、Websocket方法4、前端服务程序 六、聊天室案例1、Tomcat版本&#xff1a;8.0.442、Maven 依赖&#xff1a;3、前端代码4、后端…

Unity Shader编程】之透明物体渲染

以下是针对您提出的关于 Unity Shader 渲染 Pass 的查看方法、多个 Pass 的影响、Pass 的含义&#xff0c;以及 Unity 渲染物体的流程和处理多个透明/半透明/不透明物体的详细解答。 1. Unity Shader 渲染 Pass 的查看方法 查看 Pass 的方法 通过 Shader 代码&#xff1a; 打开…

字符指针的三道例题+算法改进

目录 一.杨氏矩阵 1.初级 2.想把下标带回来 二.字符串左旋 算法改进 三.判断是否为字符串旋转结果 算法改进 四. 3个字符函数 1.strcat 2.strncat 3.strstr 一.杨氏矩阵 数字矩阵&#xff0c;每行从左到右递增&#xff0c;每列从上到下递增&#xff0c;编写程序在矩…

VSCode中搜索插件显示“提取扩展时出错。Failed to fetch”问题解决!

大致的问题如下&#xff0c;在VSCode的插件商店搜索插件时提示如下&#xff1a; 导致的情况有以下几点&#xff1a; 1、代理问题&#xff0c;如果是代理引起的&#xff0c;可以继续使用代理后也能搜索和安装插件。 2、还有可能是你的所连接的网络设置了防火墙&#xff0c;比较…

双指针(2)—三数之和

文章目录 题目解析解法&#xff08;排序双指针&#xff09;&#xff1a;哈希解法附加Java代码&#xff1a; 力扣题目&#xff1a;三数之和 题目解析 解法&#xff08;排序双指针&#xff09;&#xff1a; **算法思路&#xff1a;** 本题与两数之和类似&#xff0c;是⾮常经典的…

设计一套水产养殖系统

设计一套水产养殖系统 引言 水产养殖在全球粮食安全和经济发展中日益重要。它不仅为不断增长的人口提供了重要的蛋白质来源&#xff0c;还在许多地区创造了就业机会并促进了经济增长 。全球超过一半的人类消费的海产品来自水产养殖&#xff0c;并且这一比例预计将继续上升 。…

统计可重复列表中的TOP N

文章目录 方案1&#xff1a;HashMap统计 全排序实现步骤&#xff1a;代码实现&#xff1a;优缺点&#xff1a; 方案2&#xff1a;HashMap统计 最小堆&#xff08;优先队列&#xff09;实现步骤&#xff1a;代码实现&#xff1a;优缺点&#xff1a; 方案3&#xff1a;Java Str…

JVM 知识点梳理

JDK 、JRE、JVM JDK&#xff08; Java Development Kit &#xff09; Java开发工具包 JRE 开发命令工具&#xff08;运行java.exe、编译javac.exe、javaw.exe&#xff09; JRE&#xff08; Java Runtime Environment &#xff09;Java运行环境 JVM Java核心类库&#xff08;l…

淘宝历史价格数据获取指南:API 与爬虫方案的合法性与效率对比

引言 在淘宝平台的购物生态中&#xff0c;消费者希望通过了解商品历史价格来判断当前价格是否实惠&#xff0c;商家也需要借助历史价格数据制定合理的营销策略、分析市场趋势。获取淘宝商品历史价格数据主要有 API 和爬虫两种方案&#xff0c;它们在合法性与效率上存在显著差异…

DeepSeek-R1论文深度解析:纯强化学习如何引爆LLM推理革命?

技术突破&#xff1a;从“无监督”到“自主进化”的跨越 paper &#xff1a;https://arxiv.org/pdf/2501.12948目录 技术突破&#xff1a;从“无监督”到“自主进化”的跨越1 DeepSeek-R1-Zero&#xff1a; RLnoSFT1.1 R1-Zero&#xff1a; GRPO&#xff08;Group Relative Po…

表格标题竖直

使用文本方式使表格怎么竖列 思路&#xff1a;表格竖直书写&#xff0c;里面的内容水平书写 使用到的是css中的文本效果&#xff1a; writing-mode&#xff1a;书写方式horizontal-tb&#xff1a;水平vertical-rl&#xff1a;竖直<style>table {writing-mode: vertical…

AI+视频赋能智慧农业:EasyCVR打造全域可视化农场监管平台

随着科技的飞速发展&#xff0c;传统农业正加速向智慧农业转型&#xff0c;农场管理也迎来了前所未有的变革机遇。在这一进程中&#xff0c;如何有效整合先进的信息技术&#xff0c;实现农场的精准化、智能化管理&#xff0c;成为了摆在农场主和农业管理者面前的关键课题。 基于…

HarmonyOS鸿蒙开发 BuilderParam在父组件的Builder的点击事件报错:Error message:is not callable

HarmonyOS鸿蒙开发 BuilderParam在父组件的Builder的点击事件报错&#xff1a;Error message:is not callable 最近在鸿蒙开发过程中&#xff0c;UI做好了&#xff0c;根据列表item进行点击跳转&#xff0c;报错了 报错信息如下 Error message:is not callable Stacktrace:at…

简化神经元模型6 -- Hindmarsh-Rose Model

Hindmarsh-Rose 模型 目录 0. 写在前面 1. Hindmarsh-Rose 模型的定义 2. Hindmarsh-Rose 模型簇发放的动力学机制 3. Hindmarsh-Rose 模型的其他发放模式 4. 分析过程所用到的一系列 BrainPy 代码 0. 写在前面 前面介绍了: Hodgkin-Huxley Model 简化神经元模型1 – LIF M…

第六届电气、电子信息与通信工程国际学术会议 (EEICE 2025)

重要信息 官网&#xff1a;www.eeice.net&#xff08;点击了解参会投稿等&#xff09; 时间&#xff1a;2025年4月18-20日 地点&#xff1a;中国-深圳技术大学 简介 第六届电气、电子信息与通信工程 (EEICE 2025&#xff09;将于2025年4月18-20日在中国深圳召开。 EEICE 20…