口令不能明文散落
口令明文散落在脚本、邮件、文档与群聊里,是最常见的泄露源头。治理方向是统一进密码库(Vault、KeePass、1Password 这类),把共享账号改造成可追责的个人账号加授权映射。落地顺序很关键:发现明文口令后要先轮换口令,再改代码的引用方式——顺序反了等于没改。
基本信息
| 适用平台 | 组织级(跨平台) |
|---|---|
| 风险等级 | 中 |
| 基线要求 | 无明文口令资产 |
| 目标形态 | 统一密码库加个人账号与授权 |
| 自查手段 | grep 扫描代码与配置,排查散落的密钥文件 |
典型使用场景
- 上线前的明文口令自查
- 代码评审中的凭据泄露检查
- 共享账号改造成个人账号的过渡
- 引入密码库后的迁移与权限设计
- 应急响应时评估口令泄露范围
- 离职交接时的凭据回收
本机自查明文痕迹
本机自查明文痕迹
grep -rIn --include='*.sh' --include='*.conf' --include='*.yml' -E 'password\s*=\s*[^$\s]' /opt /etc 2>/dev/null | head -20 # 扫描明文口令
grep -rIn 'BEGIN RSA PRIVATE KEY' /opt /home 2>/dev/null | head # 扫描散落的私钥
grep -rIn -E '(api[_-]?key|token)\s*[:=]' /opt 2>/dev/null | head # 扫描其他凭据
ls -l /root/.my.cnf ~/.netrc 2>/dev/null # 检查常见凭据文件权限检查项与判读
| 检查项 | 含义 | 注意点 |
|---|---|---|
| 脚本中的明文口令 | 硬编码在配置或脚本里 | 优先轮换再改引用方式 |
| 私钥文件 | 散落在业务目录的密钥 | 应集中管理并加密 |
| 凭据文件权限 | .my.cnf、.netrc 等 | 应仅属主可读 |
| 环境变量 | 常用的折中方案 | 进程环境仍可被读取 |
| 密码库条目 | 统一保管的凭据 | 需配合访问审计与轮换 |
自查发现明文口令后:先轮换口令,再改代码的引用方式(环境变量或密钥管理服务),顺序反了等于没改。
把口令挪到环境变量并不等于安全:进程参数与 environ 仍然可以读到,生产环境应使用密钥管理服务或严格权限的凭据文件。
共享账号改成个人账号之后要补齐授权映射,否则会退化成每人全权,追责依然做不到。