D课堂 | DDoS、CC,网站被攻击怎么办?

在前面两期《D课堂》中,D妹和大家分享了网站搭建好之后无法访问,应该如何排查,不知道大家学会了吗?

然而,想要维持网站长久健康的运行,我们还需要关注网站的安全问题

f31c656021a479e6656dcc8335a9d57e.jpeg

不少站长们苦心经营自己的网站,眼看着流量上涨,正准备能赚点奶茶钱,网站就被攻击了。

更别说企业的站点,尤其是涉及交易、用户敏感信息的电商、金融、游戏等网站,容易因为高额利润、商业竞争等原因被黑客盯上。

一旦被攻击,可能会导致网站无法访问,辛苦积攒的用户飞了,严重的还会影响重要的交易、被盗取数据、被引流至非法网站,甚至受到黑客的删库勒索。不仅觉睡不好,还要承受钱财、形象等的损失。

6690485968ecb94c63fba5c35f08bd21.png

今天,D妹带大家一起来了解下,网站一般会受到哪些攻击?我们又应该如何对网站进行保护?

DDoS攻击

■ DDoS攻击是什么?

DDoS攻击(Distributed Denial of Service Attack,分布式拒绝服务攻击)是一种历史悠久、让各位站长吃尽苦头的网络攻击方式。

黑客通过控制大量的僵尸网络同时向目标服务器发送大量的请求,以消耗服务器的资源,导致服务器无法正常响应合法用户的访问请求

这个攻击就好比一群捣蛋鬼来了餐厅,光占座不点餐,搞到其他真正要吃饭的顾客没办法点餐,餐厅就此错失了客户与收入。

黑客会先通过木马、蠕虫等恶意程序去感染大量设备,这些设备可能是服务器、个人电脑、手机、甚至物联网设备等等,当然有钱的黑客还能直接采购大量设备7859f821d796ca350fbc643be3f2a9a9.png,把它们变成“肉鸡”,指挥它们对目标服务器发起进攻。

01c1fe3bef0838ba5378306aa1a7e34c.png

当目标服务器的带宽、CPU被大量占用,甚至宕机,那么运行在服务器的应用程序/网站就无法访问了。

一般“肉鸡”们会集中攻击网络通信系统七层的其中一层,因此就衍生出DDoS攻击的多种方式,包括大家比较熟悉的SYN洪水攻击、UDP洪水攻击等。

4b305a0a294518a31bce004abc9116b2.png

由于篇幅有限,D妹就来讲下与DNS比较相关的DDoS攻击 —— DNS洪水攻击、DNS放大攻击。

DNS洪水攻击(DNS Flood Attack),有点特别,它不是攻击目标服务器,而是攻击DNS服务器。

黑客控制“肉鸡”对DNS服务器发起大量的解析请求,将DNS服务器的资源耗尽,用户输入域名时就无法解析出IP地址,最终导致应用程序/网站无法访问。

f5e9a1e058feb780e119bad516354661.png

DNS放大攻击(DNS Amplification Attack),就是利用DNS的放大效果攻击目标服务器。

黑客将自己的IP伪造为目标服务器IP,不断向DNS服务器发起解析请求,DNS服务器响应请求并返回解析结果给目标服务器。

由于DNS的运作原理,黑客用某些手段让DNS尽可能大响应,因此DNS服务器的应答数据包是请求包的数十倍或数百倍,导致目标服务器容易被大量的响应淹没,从而资源耗尽,正常用户无法访问。这招可谓“借刀杀人”,四两拨千斤。

这些被利用的DNS服务器一般是开放的DNS服务器,站长们还不好做点啥,要根治还是需要提供DNS服务器的互联网服务提供商(ISP)过滤伪造IP的流量,避免被利用。

如何应对DDoS攻击?

1、针对DNS洪水攻击,可以使用DNS安全防护服务,例如我们DNSPod的DNS安全防护套餐,最高可以承受1亿QPS,也就是每秒1亿次查询请求,DNS服务器即使遭到攻击也很难耗尽资源。(详情也可以查看公众号第二篇推文)

针对其他类型的DDoS攻击,目前比较主流的应对方法是在自己的终端加强防护:

2、在自己的服务器使用DDoS防护服务,例如腾讯云轻量应用服务器Lighthouse就提供了DDoS高防保险,当然你也可以选购更高规格的DDoS防护套餐。

3、通过内容分发网络(CDN)、负载均衡等将流量分发到各个地方,缓解被攻击时的高峰流量,减轻资源被耗尽的风险。

4、部署智能全局流量管理(IGTM),自动监控IP的健康状况,IP被攻击不幸故障时,可以自动切换到备用IP,保障网站运行的连续性。

5、部署Web应用防火墙(WAF),主要用来防御应用层的DDoS攻击,能够有效识别并阻止恶意请求。

CC攻击

■ CC攻击是什么?

CC攻击(Challenge Collapsar Attack)是DDoS攻击的一员,专门针对应用层。也就是其他DDoS攻击会攻击更底层的服务器,而CC攻击是攻击能直接看得到的应用程序/网站。

371250d44e891d6658cf3aa8b810592a.png

黑客通过控制“肉鸡”或代理服务器模拟正常用户行为,大量请求服务器上的资源,尤其是需要较长时间计算或数据库交互的资源,例如登录页面、需要提交表单页(搜索页、注册页、评论页等)、带有大量图片或音视频的页面、API接口等,从而导致服务器的CPU被大量占用,正常用户访问慢或无法访问。

CC攻击对比其他DDoS攻击,模仿的是正常用户行为,因此很难区分IP是正常用户还是黑客,更具隐蔽性。

■ 如何应对CC攻击?

1、部署Web应用防火墙(WAF),主要用来防御应用层的DDoS攻击,能够有效识别并阻止恶意请求。

2、定期检查系统日志,关注短时间内发送大量请求的IP地址,并将这些攻击源IP加入黑名单,后续可进一步设置IP地址白名单和黑名单策略。

3、为每个用户或IP地址设置请求速率限制,例如每秒最多允许访问的次数,从而降低单个用户或IP地址对服务器的压力。

463df72ac55a68fd1c61aed328e73f12.jpeg

SQL注入攻击

■ SQL注入攻击是什么?

SQL注入(SQL Injection)是利用程序员编写应用程序/网站时忽略的网络安全漏洞进行攻击。

如果一个应用程序/网站需要接受客户端用户输入的内容或传递的参数,且前端数据传到后端时没有做严格校验,这个内容或参数被当作SQL语句的一部分执行,从而导致数据库数据泄露、数据篡改、数据丢失等。

举个简单的例子,你的网站是需要用户登录的,用户输入账号与密码后,服务器就会向后端的数据库查询用户数据,这时就会用到SQL语言

34ee06e4053354151eae299560455281.jpeg

SQL语言(图源:google)

如果黑客在登录的时候不好好输入账号与密码,而是输入恶意SQL代码(如下图例子所示),那么后端就不会正常查询数据库,执行出来的SQL语句的意思就变味了。

当正常用户输入账号密码:

d9cb29e837183830fd2e2ca9ee78a919.png

后端SQL语句为:从用户表单里选取用户名为dmei、密码为dns666的用户

SELECT * FROM users WHERE username = 'dmei' AND password = 'dns666'

当黑客输入带有恶意SQL代码的账号名:

63e0c7419988b9d6fceadf75af5c82ff.png

后端SQL语句为:从用户表里选取用户名为dmei的用户即可。

(在MySQL里,-- 后面的内容被认为是注释,不会作为代码执行,黑客就能绕过密码检查。)

SELECT * FROM users WHERE username = 'dmei' --' AND password = '123456'

这样,黑客即使不知道密码也可以直接登录。有的黑客会导出数据库里的所有用户数据,用于牟利或者其他非法用途,有的会篡改数据库,甚至有的会删库跑路。

3c3cb6286ee791286ca4e340779669b6.png

如何应对SQL注入攻击

1、后端程序员在编写应用程序/网站的时候设置检测过滤,对用户的输入进行校验,过滤不正常的输入;同时也可以通过参数化查询的方法,将查询与数据分离,确保用户输入的数据不会被解释为SQL代码。

2、此外,还可以使用Web应用防火墙(WAF)、定期更新和限制数据库用户权限等措施来加强对数据库的防护。

结语

网站被攻击的形式还有很多,例如DNS劫持、DNS缓存投毒等等,D妹下期继续和大家讲解讲解~ 

还是要提醒一句,实施网络攻击是违法的,大家不要效仿哦。面对这些困扰已久又无法彻底根治的网络攻击,各位站长们平时在运营网站时要记得保持警惕,做好备份与防护!

4a1eab01f0b7871c280fabf401a5f721.png

D课堂介绍

《D课堂》是腾讯云轻量云产品中心推出的一档内容丰富、实用性强的科普栏目。本栏目以域名、解析、证书、备案等产品为核心,为您呈现形式多样、寓教于乐的科普内容,同时还将分享实用的产品使用技巧,助您轻松驾驭各类云产品。

《D课堂》旨在通过每期的精彩分享,我们将由浅入深地剖析各类产品原理,带领您一起学习和探索更多令人着迷的科普知识,同时解答您在使用产品过程中遇到的各种疑问。欢迎您随时关注《D课堂》,与我们共同探讨和学习!

本期互动

9bfe0fe7cbce76da6770b9179309b9dd.png

你是否也曾遇到过网站被攻击的情况?你是如何应对的?

欢迎在评论区留言,D妹将在6月5日(周三)下午15:00随机抽取1位粉丝,送出DNSPod定制咖啡杯~

7becaeee79fddf81cbb687c4c5b3ffb0.png

往期推荐:

域名是什么?注册域名时需要注意什么?

什么是DNS?DNS是怎么运作的?

如何设置域名解析?解析记录类型选哪个?

什么是SSL证书?为什么要买SSL证书?

服务器是什么?怎么选择适合自己的服务器?

网站备案是什么?为什么要网站备案?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/672065.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

操作系统真象还原:保护模式入门

第4章-保护模式入门 这是一个网站有所有小节的代码实现,同时也包含了Bochs等文件 Intel8086CPU由于自身设计存在诸多缺点,最致命的有两条:1、仅能寻址1MB内存空间;2、用户程序可以通过自由修改段基址来访问所有内存空间而引出的…

leetCode.89. 格雷编码

leetCode.89. 格雷编码 题目思路 代码 class Solution { public:vector<int> grayCode(int n) {vector<int> res(1,0); // n 0时&#xff0c;之后一位0while (n--) {// 想要实现对象超下来&#xff0c;就从末尾开始&#xff0c;让vector里面 加 元素for (int i …

js切割数组的两种方法slice(),splice()

slice() 返回一个索引和另一个索引之间的数据(不改变原数组),slice(start,end)有两个参数(start必需,end选填),都是索引,返回值不包括end 用法和截取字符串一样 splice() 用来添加或者删除数组的数据,只返回被删除的数据,类型为数组(改变原数组) var heroes["李白&q…

乡村振兴与文化传承:挖掘乡村历史文化资源,传承乡村优秀传统,打造具有地方特色的美丽乡村文化品牌

目录 一、引言 二、乡村历史文化资源的挖掘与保护 &#xff08;一&#xff09;乡村历史文化资源的内涵 &#xff08;二&#xff09;乡村历史文化资源的挖掘 &#xff08;三&#xff09;乡村历史文化资源的保护 三、乡村优秀传统的传承与创新 &#xff08;一&#xff09;…

十_信号14 - system()

意思是 应在在调用 system() 函数前 阻塞 SIGCHLD 信号&#xff0c;否则&#xff0c;子进程结束的时候&#xff0c;系统会向该进程(父)发送 SIGCHLD信号&#xff0c;则该进程认为是自己的一个子进程结束了&#xff0c;于是调用 wait函数获取子进程的终止状态。这本来是正常的操…

驱动开发之platform总线

1.前言 在前面的实验以及提出的各种问题中&#xff0c;为了提高移植性&#xff0c;降低模块耦合度&#xff0c;提让模块高内聚&#xff0c;分离device与driver是一个必然的趋势了。为了解决这个问题&#xff0c;心心念念的platform总线出来。 linux从2.6起就加入了一套新的驱…

区块链--Ubuntu上搭建以太坊私有链

1、搭建私链所需环境 操作系统&#xff1a;ubuntu16.04&#xff0c;开虚拟机的话要至少4G&#xff0c;否则会影响测试挖矿时的速度 软件&#xff1a; geth客户端 Mist和Ethereum Wallet&#xff1a;Releases ethereum/mist GitHub 2、安装geth客户端 sudo apt-get update …

ssm音乐网站-计算机毕业设计源码87184

摘 要 随着社会的发展&#xff0c;社会的方方面面都在利用信息化时代的优势。互联网的优势和普及使得各种系统的开发成为必需。 本文以实际运用为开发背景&#xff0c;运用软件工程原理和开发方法&#xff0c;它主要是采SSM技术和mysql数据库来完成对系统的设计。整个开发过程首…

linux系统下,mysql增加用户

首先&#xff0c;在linux进入mysql mysql -u root -p 然后查看当前用户&#xff1a; select user,host from user; 增加用户语句&#xff1a; CREATE USER 用户名host范围 IDENTIFIED BY 密码;

渗透测试报告生成工具

目录 1.前言 1.1 渗透测试报告是什么? 1.2 渗透测试报告的编写需要考虑以下几点&#xff1a; 1.3 一份优秀的渗透测试报告应该具备以下特点&#xff1a; 1.4 在编写渗透测试报告之前&#xff0c;需要进行一些准备工作&#xff1a; 1.5 渗透测试报告一般包括以下部分&…

【避坑全攻略】如何让私人的LLM学GPT4o一样说话——ChatTTS

OpenAI 发布 GPT4o 之后&#xff0c;使得越来越多的人都开始幻想属于自己的AI“伴侣”&#xff0c;这最让人惊艳的就是他们出色的TTS技术。而在此之前&#xff0c;主流的开源TTS有 XTTS 2 和 Bark。而近日&#xff0c;一个名为 ChatTTS 文本转语音项目爆火出圈&#xff0c;引来…

Vue3集成Phaser-飞机大战游戏(设计与源码)

文章目录 引言项目初始化游戏设计和结构游戏程序实现Vue页面嵌入PhaserPreloader 场景加载游戏场景功能实现功能类定义Boom爆炸类Bullet子弹类Enemy敌军类Player玩家类End游戏结束类 总结 更多相关内容可查看 引言 飞机大战&#xff08;也被称为射击游戏或空战游戏&#xff09…

PID算法入门

文章目录 122.12.22.3 344.14.24.3 1 e(t) 是偏差 实 和 目u(t) 是运算结果 2 层层叠加 得出完整的离散公式 2.1 kp 越大 系统偏差 减小的越快kp大的时候 会出现过冲现象&#xff1f; 0.5 那个会快他解释过冲 &#xff1a; 0.2的 5分钟正好到了 那0.5的五分钟 升的就比20多 就…

springboot 自带的定时任务

启用springboot 定时任务 在springboot 启动类上增加EnableScheduling 注解 如下 SpringBootApplication EnableScheduling public class SpringApplication {public static void main(String[] args) {SpringApplication.run(SpringApplication.class, args);} }编写定时逻辑…

WHAT - 容器化系列(三)- Kubernetes - k8s

目录 一、前言二、Kubernetes 架构图三、KubernetesKubernetes和Docker的关系最小调度单元Pod 四、基本概念容器生态和标准化资源Workload资源&#xff1a;控制器对象服务担保Service&Ingress1. 两者的介绍以及与 OSI 七层模型关系2. 常见的 Service 类型3. Ingress 和 Ing…

自然资源-农村土地流转知识全解

自然资源-农村土地流转知识全解 随着农村经济的发展和城市化进程的加快&#xff0c;农村土地面临着多方面的压力&#xff0c;如人口增长、城市扩张、环境恶化等。这些压力导致了农村土地利用率低、经济效益差、农民收入水平低、农村社会经济不发达等问题。因此&#xff0c;改变…

Rust 第三方库创建和导入(cargo --lib)

前言 日常开发过程中&#xff0c;难免会有一些工具方法&#xff0c;多个项目之间可能会重复使用。 所以将这些方法集成到一个第三方包中方便后期维护和管理&#xff0c; 比如工具函数如果需要修改&#xff0c;多个项目可能每个都需要改代码&#xff0c; 抽离到单独的包中只需要…

AI办公自动化:用kimi批量提取音频中的标题并重命名

很多音频文件&#xff0c;文件名很乱&#xff0c;需要根据音频信息中的标题聪明吗 在kimi中输入提示词&#xff1a; 你是一个Python编程专家&#xff0c;一步步的思考&#xff0c;完成以下脚本的撰写&#xff1a; 打开文件夹&#xff1a;E:\有声\a16z播客 读取里面所有的mp3格…

关于vlookup的第一个参数的个人理解

VLOOKUP&#xff08;查阅值&#xff0c;包含查阅值和返回值的查找区域&#xff0c;查找区域中返回值的列号&#xff0c;精确查找或近似查找&#xff09; 我个人理解&#xff0c;第一个参数应该叫线索值&#xff0c;因为我们要通过它去找与其对应的&#xff08;也就是与其同行的…

Soulmask灵魂面甲服务器一键开服联机教程

1、购买后登录服务器&#xff08;百度莱卡云&#xff09; 进入控制面板后会出现正在安装的界面&#xff0c;安装大约5分钟&#xff08;如长时间处于安装中请联系我们的客服人员&#xff09; 2、创建端口 点击网络➡创建新的网络设置 需要创建两个端口&#xff0c;一个 查询端口…