VSRC感谢业界小伙伴——队长别开枪是我啊,投稿翻译稿件。VSRC欢迎精品原创类文章投稿,优秀文章一旦采纳发布,将有好礼相送,我们已为您准备好了丰富的奖品!
一种基于Bitlocker的
移动存储介质管控“食用”指南
00. 参考贴镇楼
-
Group Policy Home :
https://admx.help/?Category=MDOP&Policy=Microsoft.Policies.BitLockerManagement::OSDriveRecoveryPolicy
-
manage-bde 指令:
https://docs.microsoft.com/zh-cn/windows-server/administration/windows-commands/manage-bde
-
BitLocker 组策略:
https://docs.microsoft.com/zh-cn/windows/security/information-protection/bitlocker/bitlocker-group-policy-settings
-
Bitlocker、TPM和系统安全:
https://zhuanlan.zhihu.com/p/29840740
-
UEFI安全启动 :
https://zhuanlan.zhihu.com/p/25279889
01. 写在前面
如今,很多公司内部会有使用U盘、移动硬盘等可移动存储介质(Removable Driver)来拷贝、传递、存储项目重要文件的需求,并希望这些内部专用的可移动介质能够被有效管控。如,仅在项目或部门内流转,在丢失、被窃、外借的情况下,其中存储的数据仍然只有指定的设备和人员才能访问。目前市面上针对USB和U盘管控的第三方工具虽然不少,但大多鱼龙混杂,盲目引入不仅徒增采购和管理成本,还可能带来兼容性问题和新的安全问题,最终适得其反。
如果你的企业使用windows域环境办公,那么采用基于Windows平台自带的Bitlocker磁盘加密技术就可以有效解决上述问题,不仅不需要额外采购第三方工具,也不需要堆人进行复杂的二次开发的情况下,通过简单配置(或脚本)即可实现对U盘和移动硬盘等移动存储介质的定制化安全管理。
以下进入“菜单”正式内容,请按顺序食用。
02. 前序备注
使用此方案需要了解和具备的条件:
首先,Bitlocker技术仅支持微软产品系OS的桌面终端和DC域控,尤其建议Server在2012及以上,桌面终端在win10及以上;
使用Bitlocker加密后会有一定程度的读写性能下降,尚无量化指标,但我本人使用下来几乎无感知;
主要使用到的加解密方式分为密码和TPM密钥,因密码方式存在诸多弊端,本文将阐述后者,至于智能卡选项,我相信很少公司会单独采购;
顾名思义,基于TPM密钥加解密和自动解锁的技术方式需要桌面终端具有并启用TPM模块,否则只能使用设置密码的方式加密;
最后,目前尚无曝光的Bitlocker破解技术,所以一旦解密密钥和还原密钥都丢失,被加密的分区则无法解密,只能格式化。所以使用Bitlocker技术,密钥备份是关键,这一点我会在后面的配置中再次强调。
03. 实现功能
基于此技术加密后的可移动存储介质,可实现如下管理需求:
-
授权用户使用自动解锁U盘,无需输入密码或密钥信息,过程透明化;
-
以域内账户(account)为SID添加保护器的,U盘只能在指定账户登录的终端上使用;
-
以域内组(group)为SID添加保护器的,U盘只能在指定组成员登录的终端上使用;
-
恢复密钥备份在域控服务器,不易丢失;密钥对用户不可见,安全性更有保障。
04. 配置步骤
配置部分分为AD域控server端和桌面操作终端两部分,server端配置Bitlocker相关组策略和添加域内账号/小组,操作终端执行命令/脚本,实施U盘加密操作。
4.1 AD域控服务器
a. 首先在域控server中安装Bitlocker密码恢复器。
b. 安装完成后,打开组策略管理GPM,创建Bitlocker的GPO,这里我设置为“bitlocker”。
c. 编辑该策略,路径Computer Configuration > Policies > Administrative Templates > Windows Components > BitLocker Drive Encryption>Removable Data Drives,编辑Choose how Bitlocker-protected removable drives can be recovered,如下所示:其他选项如无特殊需求,可保持Not configured状态。这里注意,最后一项务必勾上,它能保证还原密钥备份成功后再对U盘加密。
d.若没有创建组,运行dsa.msc打开AD用户页,根据部门或项目等需求,创建group,这里我创建一个测试组testgroup.
e. 根据业务需要把域用户加入组内:
f. (可选项)很多时候管理者并不希望用户擅自备份和使用解密的还原密钥,因为可能有用户会使用它在授权范围外访问U盘,此时可采用如下方式隐藏:
在user configuration中,添加桌面PC的Bitlocker管理工具隐藏选项,具体路径为User configuration > Policies > Administrative Templates > Control Panel: Hide specified Control Panel items,设置隐藏值Microsoft.BitLockerDriveEncryption
至此,AD Server端的配置完成。接下来在桌面终端电脑上执行命令,对需要被管控的可移动介质执行加密操作即可。
4.2 桌面终端电脑
-
选择一台域内并具有管理员权限的PC,操作系统建议在Win10或以上,启用TPM。
-
插上需要加密的U盘,假设此时盘符为F:,运行powershell中依次执行以下命令:(个人比较推荐,可标记区分命令和参数,自动记录执行历史,比cmd好用)
-
manage-bde-protectors-add F: -sid DomainnameAccount or Groupname //按需求,采用特定账户名或组名为U盘添加保护器
-
manage-bde -autounlock -enable f: //(可选)打开U盘的自动解锁功能
-
manage-bde-on-sid DomainnameAccount or Groupname F: -usedspaceonly -encryptionmethod xts_aes128 -rp //这里使用xts_aes128加密U盘,此算法能够提供足够的安全性并能兼顾加解密开销(推荐新存储介质仅加密已用空间 -usedspaceonly,可以极大节省加密时间)
-
manage-bde -status //查询U盘加密进度和结果
注:为确保加密过程顺利,建议U盘的文件格式为exFAT,且磁盘分区为inactive,否则可能出现Bitlocker无法识别,参数执行错误的报错。关于磁盘格式及分区的调整,如有需要,我可另开一贴介绍。
4.3 登录AD服务器检查
在AD服务器上运行dsa.msc,此时可以在操作终端的属性中查看到Bitlocker Recovery,根据Password ID可查询到对应48位恢复密钥,证明密钥备份成功。
注:若上述“Bitlocker Recovery”的计算机属性标签看不到,在powershell中执行命令Install-WindowsFeature RSAT-Feature-Tools-BitLocker-BdeAducExt 打开。
4.4 试用
截止到现在,所有配置工作已完成,测试效果:
-
在授权范围内的其他桌面终端上运行tpm.msc查看tpm模块是否启用,若未启用,需在BISO内启用TPM;
-
在授权范围内的PC上使用已加密U盘,其访问和使用与常规U盘无异,对用户来说没有区别;
-
对授权范围外的设备、账户,或直接无法访问,或提示需输入还原密钥。
05. 小结
Bitlocker是微软的一款极其强大的安全工具,自Vista时代开始,并在Win10上获得了极好的兼容。企业日常管理中的需求场景可能千奇百怪,本文只介绍了其中的一种应用方法,但 Bitlocker还有很多灵活的配置和指令,并可通过powershell脚本来简化执行过程,如有需要,将继续开贴。
最后,本人也是工作中的实用派,并非微软安全产品的研究人员,其中的部分原理也还在学习中,如果文中有哪些描述不妥之处,欢迎指正反馈。
。
。
VSRC招人啦!
精彩原创文章投稿有惊喜!
原文始发于微信公众号(唯品会安全应急响应中心):【技术分享】一种基于Bitlocker的移动存储介质管控“食用”指南
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论