惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

AI
AI
G
Google Developers Blog
T
Tailwind CSS Blog
大猫的无限游戏
大猫的无限游戏
量子位
月光博客
月光博客
美团技术团队
阮一峰的网络日志
阮一峰的网络日志
罗磊的独立博客
T
The Exploit Database - CXSecurity.com
C
CXSECURITY Database RSS Feed - CXSecurity.com
Latest news
Latest news
P
Privacy International News Feed
www.infosecurity-magazine.com
www.infosecurity-magazine.com
WordPress大学
WordPress大学
博客园 - 三生石上(FineUI控件)
TaoSecurity Blog
TaoSecurity Blog
Hacker News: Ask HN
Hacker News: Ask HN
Hugging Face - Blog
Hugging Face - Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
C
Cisco Blogs
Project Zero
Project Zero
Security Latest
Security Latest
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
人人都是产品经理
人人都是产品经理
Scott Helme
Scott Helme
S
Securelist
有赞技术团队
有赞技术团队
T
Threat Research - Cisco Blogs
N
News | PayPal Newsroom
博客园 - 聂微东
小众软件
小众软件
S
SegmentFault 最新的问题
D
Darknet – Hacking Tools, Hacker News & Cyber Security
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
P
Privacy & Cybersecurity Law Blog
博客园 - Franky
Cyberwarzone
Cyberwarzone
Cisco Talos Blog
Cisco Talos Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Spread Privacy
Spread Privacy
A
Arctic Wolf
S
Security @ Cisco Blogs
The Hacker News
The Hacker News
腾讯CDC
博客园 - 【当耐特】
T
Troy Hunt's Blog
NISL@THU
NISL@THU
爱范儿
爱范儿

阿猪的博客

如何使用CNB构建Hexo项目并部署到腾讯云COS 好坑爹!派息后买入的股票怎么也扣股息税? 游哈尔滨 跨年往事 安装Ta-Lib时报错"Could not build wheels" 网站被恶意镜像了该怎么办 延迟退休正式到来!来看看有什么规定 我的基金怎么就被强制卖出了? Hexo-AlgoliaSearch插件报错“Error has occurred during indexing posts” 找工作避坑不完全指南 办理信用卡应该注意什么 华为Pad开启了“共享至电脑”,但是Windows下无法正常访问 webdriver-manager报错一例 Windows无法从环境变量中找到Python的正确位置 习大大2024年新年贺词 号外!号外!Twikoo可以直接屏蔽垃圾评论啦! 如何将Coding的代码仓同步到Github 华为Pad开启了“共享至电脑”,但是Ubuntu下无法正常访问 如何恢复Etcher刻录过的U盘 如何在Ubuntu下快速切换网络代理状态 在腾讯云函数中使用Pandas报错`No module named 'numpy.core._multiarray_umath'` 对空的DataFrame使用apply方法未得到预期结果 SQLite中使用关键字作为列名称导致报错 Logging模块重复输出内容的原因及解决方法 如何在Selenium中保持网站的登录状态 如何下载与Chrome浏览器的版本相匹配的ChromeDriver 如何下载旧版本Python的安装包 如何为不同的Python项目自动选择不同的解释器 使用腾讯云函数搭建Web站点 WordPress CORS问题一例 踩坑阿里云函数计算搭建WordPress 在AWS Amplify中部署Jekyll站点 让Chirpy主题支持折叠展示代码块 实现ChatGPT的文字输出效果 python中使用'''注释代码后引起报错 使用python自带的email模块解析邮件 使用pandas_bokeh在地图上显示数据 如何通过复权因子计算复权价格 国内量化平台不完全汇总
博客被攻击了
阿猪 · 2023-12-26 · via 阿猪的博客

博客被攻击了

发表于|更新于|misc

  本文记录博客遭受的一次攻击。

一、经过

  阿猪习惯睡前在被窝里玩会儿手机。但是昨晚在手机上访问自己的博客的时候,竟然发现网站报404无法访问。什么情况?!阿猪使用的可是腾讯云的COS+CDN,赫赫大厂不应该这么容易服务器出故障吧。一个不好的念头闪现,不会是网站被攻击了吧?

  阿猪赶忙关闭手机的飞行模式,果然收到了腾讯云发来的好几条提示短信。阿猪接着打开腾讯云小程序查看费用变动,还好没有产生扣费,暂时安下了一半的心(因为不确定费用结算是否有延迟)。因为阿猪事先在CDN中配置了IP访问频率限制和用量封顶规则,这说明网站无法访问是因为触发了规则自动下线了,而不是因为产生了大额的欠费被停止服务。

  从被窝里爬起来看了一下数据分析和日志,发现攻击主要来自172.233.66.140和172.233.131.234这两个美国IP,时间主要集中在23:27:36至23:29:23,一共请求了7.8万次,消耗了1.23GB流量。

二、应对措施

1、当晚临时修改了DNS解析记录,暂停了对境外访问请求的解析服务。

2、第二天在Vercel创建了镜像站点,并修改DNS解析记录,将境外的访问请求解析到Vercel的镜像站。镜像站会在国内站点的代码仓有更新时自动触发同步代码仓和部署,保持与国内站点的同步。

  这个方法暂时可以应对偶然的境外攻击。后续如果发现被针对的话(比如通过本地修改hosts表来绕过DNS解析规则),会考虑将域名完全托管到CloudFlare。

三、总结

1、要防患于未然

  国内的CDN服务商普遍采用后付费的结算模式,并且故意拉长流量使用量的统计和结算周期,导致没有防护措施的用户在欠费被停服时,普遍会有高额的欠费。虽然个人网站不常遭受攻击,但是当攻击降落的时候,几千甚至上万的欠费账单真的会让人欲哭无泪。

  例如这位叫做白雾茫茫的博友正好是阿里云的用户,分享了自己网站上周被攻击导致欠费四千余元的经历。(参考链接

2、防护规则的效果并没有用户认为的那么理想。

  阿猪设置的两条用量封顶限额(每小时100MB和每天500MB)虽然成功触发并执行了网站自动下线,但是3分钟内实际消耗了1.23GB流量,远大于预设值。而阿猪设置了另一条用量封顶限额(5分钟内100MB)并没有触发。

  阿猪设置的单链接下行速率限速为512KB/s,理论上3分钟内单个链接最多消耗90MB流量。然而虽然日志显示攻击者访问的URL主要集中在两三个资源文件,但是仍然消耗了1.23GB的流量,远大于理论数值。

  只有QPS限额看起来相对靠谱一些。阿猪设置了单IP每秒50次的QPS限额,两个攻击IP在约3分钟的时间内发起了7.8万次请求,实际只有1.13万条是200状态,其余的大部分是514状态。

  这说明防护规则的实际效果并没有用户认为的那样好,只能说聊胜于无吧。

后记:
  根据腾讯云技术支持人员的反馈,单链接下行限速仅针对单个客户端访问单个CDN节点。假如攻击者使用单个IP同时提交了多个请求,这些请求很有可能会被分配到不同的CDN节点,每个节点是单独限速的,而不是多个节点合并计算速率。这也是为什么阿猪虽然设置了限速,但是实际消耗的流量仍然远大于阿猪认为的理论数值的主要原因。

版权声明: 未经书面授权许可,任何个人和组织不得以任何形式转载、引用本站的任何内容。本站保留追究侵权者法律责任的权利。