社工库不直接攻击服务器,但为暴力破解提供真实账号密码组合,防范核心是切断“社工库数据→成功登录”链条:禁用弱口令与默认凭据、改用密钥认证、叠加fail2ban等防护层、定期清理废弃账户。

社工库本身不直接攻击服务器,但它为暴力破解提供了“精准弹药”——大量真实泄露的账号密码组合。一旦攻击者手握某用户在其他网站(如论坛、小电商)泄露的账号+密码,就会用这组凭证去撞你服务器的 SSH、Web 后台或数据库登录接口。所以防范核心不是“堵住所有密码尝试”,而是切断“社工库数据→成功登录”的链条。
禁用弱口令和通用凭据
社工库里的密码大多来自低安全网站,特点是短、规律、重复。如果你的服务器仍允许 root 登录、使用默认用户名(如 admin、lighthouse)、或密码是 “123456”“password”“abc123” 这类高频词,等于主动把门钥匙放进社工库。
- 禁用 root 远程登录,改用普通用户 + sudo 权限管理
- 删除或禁用所有默认账户(如腾讯云的 lighthouse、阿里云的 aliyunuser)
- 强制密码策略:长度 ≥10 位,必须含大小写字母 + 数字 + 符号,禁止常见组合(如 qwerty、111111、姓名+生日)
- 对已有用户执行弱口令扫描(可用工具如 john 或 hydra -f -t 4 模拟简单爆破测试)
关闭密码认证,改用密钥登录
只要 SSH 只接受公钥认证,社工库里的明文密码就完全失效——无论它多“真实”,都进不了门。
- 生成强 RSA 或 ED25519 密钥对(ssh-keygen -t ed25519 -a 100)
- 将公钥写入 ~/.ssh/authorized_keys,并设好权限(chmod 700 ~/.ssh; chmod 600 ~/.ssh/authorized_keys)
- 在 /etc/ssh/sshd_config 中设置:PasswordAuthentication no、PermitRootLogin no、PubkeyAuthentication yes
- 重启 sshd 前务必先验证新密钥能正常登录,避免锁死
叠加登录防护层,让撞库“试不动”
即使密码没被社工库覆盖,攻击者也会拿字典批量试。你需要让每次尝试成本变高、成功率变低。
- 启用 fail2ban:监控 /var/log/secure,对 10 分钟内失败 5 次的 IP 封禁 1 小时(可调)
- 修改 SSH 默认端口(如改成 2222),虽不能防高级攻击,但能过滤掉 90% 的自动化扫段脚本
- 配合防火墙(如 ufw 或 firewalld)限制 SSH 访问来源 IP 段,只放运维固定出口公网 IP
- 对 Web 管理后台(如宝塔、phpMyAdmin)加一层 Nginx Basic Auth 或前置 Cloudflare Access
定期清理暴露面,减少“可撞目标”
社工库撞库依赖“用户名存在+密码匹配”。如果服务器上早已没人用的测试账户、临时账户、废弃服务账号还在,就等于留着备用入口。
- 每月运行 awk -F: '$3 >= 1000 && $3 查看普通用户列表,删掉不用的
- 检查 ss -tlnp | grep :22 是否有非预期进程监听 SSH 端口(比如被植入的后门)
- 审查 crontab、systemd 服务、.bash_history,确认无异常远程调用或反向 shell 脚本
- 禁用所有非必要服务(如 ftp、telnet、rpcbind),最小化攻击面


















