本周的“周日趣味”挑战涉及审查 Microsoft 365 统一审计日志,因此我想,有什么比获取一个开发租户更好的借口呢。最初我研究了如何向 Microsoft 申请一个这样的租户,然后发现这事情“刚好有点麻烦”,所以我请一位朋友帮忙,他慷慨地提供了访问权限。谢谢你,Zach!
本周的挑战提出了以下问题: 当以下场景发生时,会留下哪些日志条目:
- 用户搜索自己的邮箱
- 用户搜索自己的OneDrive
- 管理员搜索自己的邮箱
- 管理员搜索自己的OneDrive
- 管理员搜索他人的邮箱
- 管理员搜索他人的OneDrive
第一步是设置几个账户,并(在确保分配了许可证之后——我一开始绝对没有忘记这件事)生成一些数据。这相当简单:登录账户,执行一些非常具体的搜索,然后等待结果进入统一审计日志。
首先,确保统一审计日志已启用。我是在生成数据之后才这么做的。所以,看来我们得重新做一遍所有这些数据生成了!
1. 用户搜索自己的邮箱
假设: 应该会记录搜索查询,但不会告诉我具体内容。 数据生成: 对于此测试,我发送了一封包含术语“TESTKITCHENSEARCHEMAIL”的电子邮件。邮箱里本来也只有一封邮件,不过还是让这个术语变得独特些为好。这返回了我的项目,并且我没有访问它。我在澳大利亚东部夏令时间早上7:05左右运行了搜索。 结果: 日志中没有任何迹象表明发生了搜索。 其他值得注意的点: 我不得不重做所有这些测试,因为统一审计日志没有启用,而且启用过程被证明很烦人。当我进入用户账户进行搜索时,它显示所有之前的搜索记录,所以这些搜索存储在Outlook.com的某个地方。
2. 用户搜索自己的OneDrive
假设: 应该会记录搜索查询,但不会告诉我具体内容。 数据生成: 为此我上传了几个文件,然后在地址栏中运行了一个搜索,查找我放在“test.txt”中的术语。我在澳大利亚东部夏令时间早上7:07左右运行了搜索。我为此访问了OneDrive.com(它重定向到SharePoint),而不是通过Outlook门户。 结果: 日志中没有任何迹象表明发生了搜索。
3. 管理员搜索自己的邮箱
假设: 我预计这会显示运行了搜索,但不会说明具体内容。 数据生成: 如前所述,但我以我的全局管理员账户身份登录,在澳大利亚东部夏令时间早上7:09左右运行了搜索。 结果: 没有返回任何记录。
4. 管理员搜索自己的OneDrive
假设: 我预计这会显示运行了搜索,但不会说明具体内容。 数据生成: 如前所述,但我以我的全局管理员账户身份登录,在澳大利亚东部夏令时间早上7:15左右运行了搜索。奇怪的是,我运行了针对确切字符串的搜索,却没有找到该文件。我又运行了一次对“TESTKITCHEN”的搜索,也找不到。真奇怪! 不过,有这个有趣的链接,因为它找不到,但点击那个链接也找不到任何东西。看起来它是在整个SharePoint范围内搜索,而在这个租户中,匹配项只会在OneDrive里。
结果: 没有返回任何记录。
5. 管理员搜索他人的邮箱
假设: 我预计内容搜索会被记录,但通过委派访问进行的搜索不会被记录。 数据生成: 我通过Purview中的电子数据展示门户运行了一个内容搜索(大约在早上7:22,截图是我前一天第一次做这件事时截的,所以搜索名称现在不同了),然后还添加了对用户账户的委派访问权限,以便在Outlook Web Access中查看。我还确保发送了一封包含特定措辞的电子邮件,用于搜索“TESTEMAILDELEGATEDACCESS”。 这如期返回了一个结果。
添加邮箱委派通过以下链接完成:https://admin.cloud.microsoft/exchange。我将我的管理员账户添加到我的用户账户,以获得完全访问权限。 然后,我将该邮箱作为共享文件夹添加到OWA中。 我运行了两次搜索,因为第一次(在所有文件夹中)没找到;当我点击收件箱再运行搜索时,它列出了搜索位置。所以大约在早上7:23左右可能有几次搜索。
结果: 电子数据展示相关的操作记录得非常详细,包含了诸如“查看电子数据展示案件”、“查看Purview搜索”、“检索搜索的所有操作”、“开始内容搜索”等活动。
“开始内容搜索”向我们显示了搜索文本,但我们需要做更多工作才能弄清楚他们搜索了什么资源。
在OWA中进行搜索根本没有被记录。我访问了另一个邮箱中的一些电子邮件,这些访问被记录了下来;证据显示MailboxOwnerUPN是我的“受害者”邮箱。
6. 管理员搜索他人的OneDrive
假设: 我预计委派访问搜索会被记录。 数据生成: 我没有费心再次通过Purview中的电子数据展示门户运行内容搜索,因为它应该和电子邮件搜索的记录方式相同。然后,我还通过管理门户添加了委派访问权限。 我能够通过点击管理门户中的这个链接获得访问权限: 生成的链接给了我直接访问用户OneDrive的权限。 然后我从搜索框运行了我的搜索。 不知为何,尽管它肯定在“test2.txt”的内容中,却没有返回结果。真奇怪。
结果: 又没有返回任何记录!我可以看到我查看了其他用户OneDrive的操作(虽然它显示为SharePoint链接),记录为“ListViewed”或“Viewed Page”。不过,应用程序显示名称清楚地写着“OneDrive Web App (modern)”。
附录:
其他有趣的事情: 如果你进入用户设置(针对每个账户——我找不到在其他地方或针对委派邮箱执行此操作的方法),你可以导出用户的搜索记录。 这会给你一个包含我搜索记录的文件:
附录2: 出于某种原因,记录搜索事件是一个需要专门启用的功能。你可以在这里看到方法。 为什么它不默认启用呢…
总的来说,这个测试非常有趣;主要是因为什么都没有显示。我非常期待能有一个“执行搜索查询”的活动记录,但这似乎没有发生。我在案件工作中看到过搜索记录,但大多不包括文本(或者只有一个星号)。 日志中真正与搜索相关的、被观察到的唯一内容是电子数据展示案件,这很合理,理应被记录。
我想更多地研究一下Entra,而且我仍然不明白为什么我们不能使用KQL直接查询统一审计日志。你可以勉强使用CloudEvents表,但实际上这并不是一个完整的记录。