OSquery-如何预加载数据以查找受感染的文件

时间:2019-03-03 18:36:22

标签: baseline osquery infection

在网络练习中,我必须“接管”一些已经被感染的Windows工作站和服务器。 计划是建立例如。干净的Windows 7工作站以及最新的补丁程序...然后将受感染的工作站7更新为最新的补丁程序...加载osquery数据(文件校验和,文件所有者/组,权限等),并根据此已知信息检查受感染的工作站“基准”。 是否可以通过osquery做到这一点,或者为此推荐另一个工具?

3 个答案:

答案 0 :(得分:0)

我不确定“加载osquery数据”到底是什么意思,但是可以肯定地使用osquery查询该信息。例如,以下将使您获得用户下载目录中所有文件的文件信息(包括权限,所有者等):

select * from file where path like '/Users/user/Downloads/%';

如果要散列,可以查询hash表:

select * from hash where path like '/Users/user/Downloads/%';

答案 1 :(得分:0)

这应该可行,但是您的问题很广泛。获得已知的良好Windows 7系统外观的基准很重要,这很大程度上取决于您关心的内容。我建议做的是获取一些您认为可能对您的特定调查很重要的表的json转储,也许是这样的:

PS C:\Users\thor\Desktop> osqueryi --json -A drivers
PS C:\Users\thor\Desktop> osqueryi --json -A programs
PS C:\Users\thor\Desktop> osqueryi --json -A users
PS C:\Users\thor\Desktop> osqueryi --json -A startup_items
PS C:\Users\thor\Desktop> osqueryi --json "select f.filename, f.path, h.md5, h.sha256 from file f, hash h where h.path = f.path and f.path like 'C:\Windows\%';"
PS C:\Users\thor\Desktop> osqueryi --json "select f.filename, f.path, h.md5, h.sha256 from file f, hash h where h.path = f.path and f.path like 'C:\Windows\system32\%%';"
PS C:\Users\thor\Desktop> osqueryi --json -A scheduled_tasks
PS C:\Users\thor\Desktop> osqueryi --json -A certificates

注意,这绝对不是一个详尽的列表,只是一些可能需要检查的事情。我还建议添加上面提到的查询@fmanco。

一旦您使用基准系统的数据构建了一个庞大的JSON Blob列表,然后就可以对受感染的系统运行相同的查询,并“比较” JSON输出以查找差异。这可能会变得非常棘手,尤其是在考虑C:\ Windows \ system32 \ %%文件的哈希时,考虑到即使在相同的系统补丁版本上,哈希值也可能发生巨大变化。

希望有帮助!

答案 2 :(得分:0)

您可能对https://github.com/Netflix-Skunkworks/diffy感兴趣

这是一个用于比较主机之间差异的工具。