被攻击了!云开发监控告警实战

为您报道【网站被攻击现场】,伤害不大,侮辱性极强!

大家好,我是鱼皮。

前段时间,我的网站疑似被攻击了,今天带大家一起来事故现场看看,并且分享事故分析思路和事后防控手段。

孽起

先看看我是怎么发现网站被攻击的吧。

通常,为了保证线上网站和后台服务的稳定运行,我们需要给项目添加监控告警功能,出现意外情况时,系统会第一时间向管理员发送通知。

由于我的项目使用 腾讯云云开发 来部署,默认提供了额度监控和告警,可以防止资源消耗过多,非常方便。

我最常看的监控指标是服务的 调用次数,它很大程度上反映了用户流量的访问情况。

正常情况下,调用次数随时间的曲线图应该是下面这样的,夜里没人看,白天流量还算平稳,偶尔会有一些小高峰:

没错,地中海上偏偏长了一根长毛!在 25 分附近,调用次数突然飙升,我们一般把这种现象称为 “流量突刺”,把监控图上这一枝独秀称为 “毛刺”。

大多数情况下,有毛刺可不是什么好事。看到这个曲线,我的第一反应不是 “卧槽,项目火了?”,而是 “卧槽,被攻击了!”

到底是不是被攻击了?是谁攻击我了呢?不会我真的火了吧(还带有一丝幻想)?

带着这些疑问,赶紧来分析一下。

分析

光看上面的曲线图,是分析不出来的,必须要从事故现场找找线索。

还好云开发帮我们记录了访问日志,选择事故发生的时间段(以 25 分钟为基准,前后各空 5 分钟),然后就筛选出了对应日志。

然后,我们来分析下日志,先看 日志生产时间 这列,即案发时间:

这下我松了口气,应该只是一个人在小打小闹吧。

然后我看了几条连续日志的请求地址,大概是这样:

http://www.code-nav.cn/111.gz
http://www.code-nav.cn/111.tar.bz2
http://www.code-nav.cn/111.dat
http://www.code-nav.cn/111.bz2
http://www.code-nav.cn/222.tgz
http://www.code-nav.cn/222.gz
http://www.code-nav.cn/333.zip
...

看到 "111"、"222"、"333" 我大致明白了,这位攻击者应该是在用字典枚举的方式扫描我的网站,企图找出网站的后台地址。

攻击的原理很简单,就根小时候我们尝试破解别人密码一样,一个一个疯狂乱试。只不过攻击者通常会使用一些网站扫描工具,将可能的密码作为一本字典,交给机器,代替人工来试而已。试的次数和频率高了,就被称为 “爆破”。

又回想起了大学时被网络安全课支配的恐惧。。。

基于以上的分析,这位 “攻击者” 应该只是拿我的网站来练练手,毕竟扫描频率不高、持续时间不长,当然,我希望如此。

防控

这件事虽然伤害不大,侮辱性极强!让我充分意识到自己的网站在安全性上是缺斤少两的。最起码应该在异常流量出现的是否给我告警,发个短信啥的吧!

如果是自己搭建服务器来部署网站项目,需要自行接入或开发一个业务监控告警系统,虽然网上的这类第三方系统很多,比如 Zabbix、Prometheus(AlertManager)、Grafana 等,但都需要自己来部署和维护,需要一定的人力物力成本。

但使用腾讯云云开发,除了上面提到的基础资源额度告警外,还可以灵活自定义各种高级的告警策略。

比如给点赞功能添加调用次数限制告警,先选择告警对象为 “云函数”:

这样就大功告成了,如法炮制,可以给每个最小粒度的函数都添加上告警,出了事儿在第一时间就能感知到了。


最后,对于一个成熟的网站,其实以上的防护措施还是远远不够的。

还好,我的网站现在并不成熟,所以求求各位网络安全爱好者,放过孩子吧!

本站文章资源均来源自网络,除非特别声明,否则均不代表站方观点,并仅供查阅,不作为任何参考依据!
如有侵权请及时跟我们联系,本站将及时删除!
如遇版权问题,请查看 本站版权声明
THE END
分享
二维码
海报
被攻击了!云开发监控告警实战
前段时间,我的网站疑似被攻击了,今天带大家一起来事故现场看看,并且分享事故分析思路和事后防控手段。
<<上一篇
下一篇>>