1. 问题说明
在 IOS 基础项的检测中,需要检查客户端是否在密钥链 (Keychain) 中存放明文密码,如果使用信息明文存储就可能造成敏感信息泄露。
2. 测试步骤
2.1 远连 IOS 设备
这里我使用 MobaXterm 远程 SSH 连接 IOS 设备。
2.2 导入 KeyChain_dump 文件
下载 KeyChain_dump 文件,之后将 Keychain_dump 文件拷贝的 /bin 目录下,下面给出 KeyChain_dump 文件下载地址。
链接: https://pan.baidu.com/s/1j1525deQQPtfrqi_qhQMfg 密码: 3hh9
cd /bin
2.3 赋予文件权限
查看 KeyChain_dump,是否有可执行权限。
ls -l
如果没有可执行权限,则需要赋予该文件权限。
chmod +x keychain_dumper
2.4 查看 Keychain 数据库权限
进入查看 Keychain 数据库权限,是否可读。
cd /private/var/Keychains
如果没有可读权限则赋予可读权限(chmod +r 文件)
chmod +r keychain-2.db
2.5 导出 KeyChain
把 KeyChain 导出到 txt 文件中。
/bin/keychain_dumper > keychain-export.txt
2.6 下载到本地查看
将刚才的文件下载到本地进行敏感信息查询。
3. 修复建议
在 Keychain 中存放数据时进行加密。