操!老子真是服了,昨天还在群里嘲笑隔壁站用免费SSL证书抠搜,今天就轮到我自己了!什么狗屁网站设计加密,你以为就是后台设个密码?天真!
凌晨三点手机跟疯了一样震,阿里云的安全告警邮件十几封,点开一看 SQL 注入攻击成功,用户表被 SELECT * 了大哥,连特么三年前测试的假账号都没放过,那条入侵日志我盯着看了足足五分钟,脑子是空白的,真的,感觉全身血都凉了。然后手开始抖,烟都点不着。
现在想想,从根儿上就错了。为了快点上线,图省事儿,觉得新站没权重没人看,HTTP 就 HTTP 呗,甚至觉得弄个免费证书糊弄一下就行。前端密码传输是明文的啊兄弟!后台管理入口我居然用了个弱口令 admin/123456,被字典一秒爆破。服务器防火墙规则都没配置全,端口大开,人家爬虫进来就跟回自己家一样。
你以为加密就是防用户看到?错了!是防那些无处不在的扫描机器人,是防你在咖啡厅连公共 WiFi 时数据被截获,更是防搜索引擎把你标记为“不安全网站”直接降权甚至不收录!没 HTTPS,谷歌浏览器那个“不安全”的红标能直接劝退 80% 的访客,还谈什么转化率?
血淋淋的教训:
1. SSL证书必须上,而且尽量用付费的(DV 够用,EV 更好),别用那些自签名或者过期的,浏览器不认,等于白给。这里不是广告,但你可以去腾讯云或者阿里云蹲活动,经常有白菜价。
2. 后台路径、数据库端口一定一定一定要改掉默认的!别用 admin,别用 3306/3389,改成亲妈都猜不到的复杂组合。
3. 密码加密存储!别用 MD5 了,求你了,至少也得是加盐的 SHA-256,现在主流是 bcrypt 或者 Argon2。
4. 前端提交敏感数据(登录、支付)必须走 HTTPS POST,GET 请求参数在地址栏裸奔是怕死得不够快吗?
5. 定期备份!备份!备份!(异机备份最好)我这次要不是上周顺手备份了一次,现在就不是在这发帖,而是在天台吹风了。
搞网站,安全是1,内容是后面的0。1没了,再多0也他妈是零。我现在就去改密码、配防火墙、上 WAF,这学费交得我肉疼。你们也赶紧自查吧,别等出事了再后悔,真的。
