iOS MDM 配置文件是公开的吗?
Posted
技术标签:
【中文标题】iOS MDM 配置文件是公开的吗?【英文标题】:Are iOS MDM profile config file meant to be public? 【发布时间】:2021-06-05 09:08:49 【问题描述】:下面是我的示例 MDM profile.mobileconfig 文件。
<plist version="1.0">
<dict>
<key>PayloadContent</key>
<array>
<dict>
<key>AccessRights</key>
<integer>8191</integer>
<key>CheckInURL</key>
<string> [my url] </string>
<key>CheckOutWhenRemoved</key>
<true/>
<key>PayloadDescription</key>
<string>Configures Mobile Device Management</string>
<key>PayloadDisplayName</key>
<string>Mobile Device Management</string>
<key>PayloadIdentifier</key>
<string>com.mytests.mdm</string>
<key>PayloadOrganization</key>
<string> [my organisation] </string>
<key>PayloadType</key>
<string>com.apple.mdm</string>
<key>PayloadUUID</key>
<string> [my payload] </string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>ServerURL</key>
<string> [my url] </string>
<key>SignMessage</key>
<true/>
<key>Topic</key>
<string>com.novabase.mdm.pushcert</string>
<key>UseDevelopmentAPNS</key>
<true/>
</dict>
</array>
<key>PayloadDescription</key>
<string>Profile description.</string>
<key>PayloadDisplayName</key>
<string>MDM test</string>
<key>PayloadIdentifier</key>
<string>com.mytests.mdm</string>
<key>PayloadOrganization</key>
<string> [my organisation] </string>
<key>PayloadRemovalDisallowed</key>
<false/>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>11-22-33-44</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>Password</key>
<string>123456</string>
<key>PayloadCertificateFileName</key>
<string>mdmkey.p12</string>
<key>PayloadContent</key>
<data>MY SIGNING KEY HERE
</data>
<key>PayloadDescription</key>
<string>Adds a PKCS-12 certificate</string>
<key>PayloadDisplayName</key>
<string>mdmkey.p12</string>
</dict>
</plist>
在上面的文件中你可以看到我的密码和p12签名密钥。看到这个我很好奇这个文件是否是公开的?
如果这应该保密,
-
我应该采取哪些步骤来保护此文件的私密性和安全性?
如果恶意黑客可以访问上述文件,他会做什么?或者,如果他可以访问此文件,可以执行哪些操作?
如果我的 mdm 配置文件被黑客访问,我应该采取哪些措施来确保自己的安全?
【问题讨论】:
【参考方案1】:所以从技术上讲,如果 MDM 配置文件不是通过 SSL 交付,ios 会(应该?)拒绝安装。
因此,除非有任何中间人攻击、公司代理等,否则您至少拥有证书和密码的 SSL 保护。
但是,其他人也像您一样担心这一点,因此 iOS 几乎从 iOS 5 开始就支持 SCEP 密钥传递,其中设备生成私钥,服务器签署证书,因此服务器只有公钥。
所以回答你的问题:
-
不要发送证书和密码,而是使用 SCEP
如果攻击者获得私钥(整个证书包含私钥),他们就可以解密通过服务器的 MDM 命令安装的配置文件。有效负载可能包含敏感信息(***/电子邮件密码、其他证书等)
实际上,我想很难知道证书是否已被黑客访问。作为一般风险缓解策略,您应该监控异常行为(例如,来自地理分散 IP 地址的多个并发请求、命令重播、响应 CertificateList 命令时缺少证书)
【讨论】:
以上是关于iOS MDM 配置文件是公开的吗?的主要内容,如果未能解决你的问题,请参考以下文章