前段时间,我的网站疑似被攻击了,今天带大家一起来事故现场看看,并且分享事故分析思路和事后防控手段。
孽起
先看看我是怎么发现网站被攻击的吧。
通常,为了保证线上网站和后台服务的稳定运行,我们需要给项目添加监控告警功能,出现意外情况时,系统会第一时间向管理员发送通知。
由于我的项目使用 腾讯云云开发
来部署,默认提供了额度监控和告警,可以防止资源消耗过多,非常方便。
但光有告警还不够,真出了问题,靠什么去分析呢?必须给故障排查提供一些线索。
腾讯云云开发默认为云函数、云托管等提供了监控和日志记录,一行代码都不用写,就能够看到资源的运行信息和详细日志,比如请求时间、IP 地址、请求头信息等,非常方便。
此外,我还在开发时,给服务添加了一些日志和数据上报,比如哪位用户在哪个时间执行了什么操作。记录的越详细,排查问题就越方便。当然,无意义的内容就不用记录了,否则看日志的时候密密麻麻的,伤眼又低效!
我一直把项目当成自己的孩子(虽然我还没有孩子),因此,我每天都会看一下监控和日志,来了解下 “孩子” 的身体状况。
我最常看的监控指标是服务的 调用次数