读取验证报告
验证完成后,您可以导出报告或联机读取报告。
过程
- 在 QRadar® 控制台上单击 预验证 。
- 要以 JSON 格式下载报告,请单击页面右上角的下载图标 (
)。 - 要在线阅读报告,请单击页面右上角的文档图标 (
)。下表描述了验证步骤并提供了用于修正错误的解决方案。表 1. 扩展 .zip 文件 规则名称 描述 检查扩展 .zip 文件内容 检查是否可以解压缩扩展 .zip 文件并包含必需文件。 内容导出 XML 存在 检查扩展 .zip 文件是否包含内容 XML。 否则,将异常中止检查过程。 扩展清单存在 检查扩展 .zip 文件是否包含 manifest.txt。 否则,将异常中止检查过程。 表 2. 扩展清单 (manifest.txt) 规则名称 描述 装入扩展清单 检查 manifest.txt (扩展的信息) 是否为 JSON 格式。 否则,将异常中止检查过程。 您可以从 X-Force App Exchange 提交门户网站下载 manifest.txt 文件,并自动生成相关字段。 扩展版本格式有效 检查扩展版本 ( manifest.txt中的version 字段) 是否采用三位数的序列格式,如 MAJOR.MINOR.PATCH。 最低 QRadar 版本有效 检查受支持的 QRadar 版本 ( manifest.txt中定义的min_qradar_version ) 是否有效。 它的格式可以是三位数 (2019.14.6) 或四位数 (2019.14.6.20201205215722) 的序列。 您可以使用 SSH 登录到 QRadar ,并使用 /opt/qradar/bin/myver 在开发环境中查找 QRadar 版本。 扩展必须支持英语 检查 doc.extension_manifest.supported_language_set (数组) 是否至少包含 "en-US"。 此字段由 X-Force App Exchange 提交门户网站生成。 扩展包大小有效 检查 manifest.txt 文件中的 doc.extension_manifest.package_size 。 此字段由 X-Force App Exchange 提交门户网站生成。 根据其他字段进行检查 检查是否在 manifest.txt 文件中定义了必填字段 (名称,描述,作者和作者电子邮件)。 这些字段由 X-Force App Exchange 提交门户网站生成。 表 3. 扩展签名 规则名称 描述 签名工件放置在 META-INF 目录中 检查是否对扩展进行了签名。 有关更多信息,请参阅 How to get your extension .zip file ready for validation。 表 4。 内容 XML 规则名称 描述 装入内容导出 XML 检查是否可以成功装入内容 XML。 应用程序信息有效 检查是否在此内容 XML 中导出了任何应用程序。 如果是,请检查该应用程序的信息是否正确。 QRadar 版本号的格式有效 检查 <qradarversion>...</qradarversion> 是否包含格式正确的有效 QRadar 版本。 此字段由 QRadar自动生成。 有关更多信息,请参阅 导出不同类型的定制内容项。 定制事件属性完整性检查 检查此内容 XML 中的任何定制属性是否与已发布的扩展相冲突。 如果扩展包含与其他已发布的扩展同名的任何属性,那么它无法正确安装。 要修正或防止冲突的定制属性,可以在 QRadar Console 上安装 IBM QRadar Custom Properties Dictionary ,然后从控制台 UI 中选择该属性以导出内容 XML。 定制搜索合理性检查 检查是否由于手动修改而缺少任何搜索属性。 定制规则完整性检查 检查是否由于手动修改而缺少任何规则属性。 表 5。 应用程序 .zip 文件 规则名称 描述 应用程序 .zip 文件抽取 检查是否可以成功解压缩应用程序 .zip 文件。 正在装入应用程序 manifest.json 检查 manifest.json 文件是否为有效的 JSON 格式。 应用程序版本格式有效 检查应用程序版本 ( manifest.json中的version 字段) 是否在三位数的序列中,如 MAJOR.MINOR.PATCH。 受应用程序框架 V2 支持 检查应用程序是否使用 App Framework V2提供的新基本映像。 有关更多信息,请参阅 QRadar: How to migrate applications from app framework v1 to V2。 检查环境变量 检查 manifest.json 文件中 environment_variables 的值是否为有效格式。 有关更多信息,请参阅 QRadar App framework-Manifest 对象类型-环境变量。 检查服务名称和端口 检查 manifest.json 文件中 environment_variables 的值是否为有效格式。 有关更多信息,请参阅 QRadar App framework-Manifest 对象类型-服务类型。 注: 如果扩展不包含应用程序,那么将跳过 Application.zip 文件中的规则检查。表 6。 安装脚本 规则名称 描述 文件夹结构有效 检查应用程序 .zip 文件是否包含必需文件夹。 应该在不访问因特网的情况下解析 Python 包的依赖关系 检查是否可以在本地解析 Python 包的依赖关系。 它要求可以在不访问因特网的情况下成功安装应用程序。 安装脚本不应访问因特网 检查 container/run 和 container/build 中的 init 脚本是否不包含用于访问因特网的命令。 检查覆盖包 检查应用程序 .zip 文件是否安装其自己的 OpenSSH 和 SQLite3版本。 这些软件包已在 App Framework V2 运行时环境中提供。 不应在 init 脚本中使用 sudo 检查是否在 container/run 和 container/build 目录中的 init 脚本中使用了 sudo 命令。 不应使用定制 encdec.py 和 qpylib 检查应用程序 .zip 文件是否包含主构建的 qpylib 库。 qpylib 库已在 App Framework V2 运行时环境中提供。 注: 如果扩展不包含应用程序,那么将跳过 安装脚本 中的规则检查。表 7。 扩展和应用程序交叉检查 规则名称 描述 可以在提供的最低受支持 QRadar 版本上安装内容 检查是否可以在受支持的最低 QRadar 版本上安装内容 XML ,该版本在 manifest.txt的 min_qradar_version 字段中定义。 示例:
- min_qradar_version 设置为 "7.3.2" ,内容 XML 从 7.3.2 修订包 5 (7.3.2 20191022133252) 导出。
- min_qradar_version 设置为 "7.3.2" ,内容 XML 从 7.3.1 GA (7.3.1. 20171206222136) 导出。
- min_qradar_version 设置为 "2019.14.0" (7.3.3 GA) ,并且从 7.3.3 修订包 6 (2019.14.6.20201205215722) 导出内容 XML
注意:- 您可以使用 /opt/qradar/bin/myver 通过 SSH 登录到 QRadar 控制台,以查看内部 QRadar 版本 (四位数字)。
- manifext.txt 中的 min_qradar_version 是三位数 (2019.14.6) 或四位数 (2019.14.6.20201205215722) 的序列。
检查内容 XML 中导出的 QRadar 版本是否提供了 App Framework V2 应用程序框架 V2 在 QRadar 7.3.3 修订包 6 + , 7.4.1 修订包 2 + 或 QRadar 7.4.2+ (在 7.4.0.x中不受支持) 上提供。 如果扩展包含至少一个在 App Framework V2上运行的应用程序,那么此规则会检查是否在受支持的 QRadar 版本列表中导出了内容 XML。 检查 manifest.txt 提供的 App Framework V2 中支持的最低 QRadar 版本 如果扩展包含至少一个在 App Framework V2上运行的应用程序,那么此规则会检查您的最低受支持版本 ( manifest.txt中的min_qradar_version ) 是否提供了 App Framework V2。 表 8。 安全检查 规则名称 描述 Python 代码的安全性检查 IBM QRadar Pre-Validation 应用程序使用 Bandit 在 Python 代码中查找常见安全问题。
对于 Bandit 或任何其他自动化工具来说,生成假阳性结果并不少见。 分析报告以确定结果的有效性。
- 如果需要,请上载更正后的压缩文件并再次验证软件包。