sqlite - 我无法列出在 osquery 5.0.1 上加密的磁盘
问题描述
我有这个查询来列出我公园里所有没有加密磁盘的机器。
SELECT m.device, m.device_alias, m.path, m.type, de.encryption_status
FROM mounts m
LEFT JOIN disk_encryption de ON de.name = m.device_alias
WHERE m.path LIKE '/'
ORDER BY m.device;
但是,当我开始在某些机器上安装新的 osquery 版本(5.0.1)时,我开始收到那些机器未加密的警报。旧版本的机器(我的旧版本是4.5.1)我没有问题,只是在新版本。
所以我开始这个简单的查询来分析两个版本(5.0.1 和 4.0.9)的差异。首先是 5.0.1 版本
SELECT * FROM disk_encryption
结果是:
machine0101 1 encrypted /dev/dm-0 LUKS1-aes-xts-plain64
machine0101 1 encrypted /dev/dm-1 LUKS1-aes-xts-plain64
machine0101 1 encrypted /dev/dm-2 LUKS1-aes-xts-plain64
如果我把“哪里”的结果是不同的。同一张表,只有一个条件,给了我不同的结果,说磁盘没有加密。
SELECT * FROM disk_encryption where name in ('/dev/dm-0', '/dev/dm-1', '/dev/dm-2')
machine0101 1 encrypted /dev/dm-0 LUKS1-aes-xts-plain64
machine0101 0 not encrypted /dev/dm-1 -
machine0101 0 not encrypted /dev/dm-2
好的,现在我使用旧版本(4.5.1)运行相同的查询。
SELECT * FROM disk_encryption
machine0101 1 encrypted /dev/dm-0 aes-xts-plain64
machine0101 1 encrypted /dev/dm-1 aes-xts-plain64
machine0101 1 encrypted /dev/dm-2 aes-xts-plain64
SELECT * FROM disk_encryption where name in ('/dev/dm-0', '/dev/dm-1', '/dev/dm-2')
machine0101 1 encrypted /dev/dm-0 aes-xts-plain64
machine0101 1 encrypted /dev/dm-1 aes-xts-plain64
machine0101 1 encrypted /dev/dm-2 aes-xts-plain64
我不知道这里发生了什么,我的最后一个查询是错误的,或者新版本有一些错误。
那是 lsblk 命令的结果。
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
├─sda2 8:2 0 732M 0 part /boot
└─sda3 8:3 0 222,4G 0 part
└─sda3_crypt 253:0 0 222,4G 0 crypt
├─ubuntu--vg-root 253:1 0 221,4G 0 lvm /
└─ubuntu--vg-swap_1
253:2 0 976M 0 lvm [SWAP]
有人可以帮助我吗?
解决方案
推荐阅读
- r - 向量上的 ifelse 函数
- reactjs - 反应中的状态消息未正确打印到浏览器
- java - Java反射:将final修饰符添加到类字段
- javascript - 如何隐藏 YouTube 控件
- c# - 将 Powershell 中的变量用于 C# 的最佳方法是什么?
- admob - 使用 Admob 中介,为什么我使用 Facebook Audience Network(出价)的展示率如此之低?
- c++ - 访问中间犰狳对象成员而不命名它[C++]
- algorithm - 给定一个图 G、两个顶点 u 和 v 以及一个数组 A ,其中包含 G 的一些顶点,计算 A 中包含的 Z(继续)
- php - 使用 php 电子表格读取和写入单元格会导致性能问题
- interface - 如何使xampp界面看起来像?