一个笨拙的抵挡 DDoS 的方法

2018-08-19 14:06:37 +08:00
 kongque2016
我的 vps 上架设的是论坛,我想到一个方法来抵挡 DDoS 攻击,下面是步骤:

1,事先给 TCP 连接数设一个上限,发现被突破了,就认定为有人在 DDoS。
2,检查当前所有 http 连接,如果是注册会员,则把相应 IP 送入紧急白名单。否则,断开连接。
3, 接收到新的 http 访问时,核对其 IP 是否在白名单里。如果不是,转向一个登录(或注册)页面,要求他 3 分钟必须登录进来,否则禁掉这个 IP。

这个方法的 bug,我现在想到有两个:
1,DDoS 的攻击者是不是能轻易伪造自己的 IP 呢,如果这样的话,这个方法就没意义了。
2,我 VPS 的防火墙禁了这些 DDoS 的 IP,是不是照样的产生流量。就是说,禁 IP 虽然能保全 VPS 自己,但网络端口照样有大量 IP 包涌过来(虽然我不收),网络照样被堵住?

我对 DDoS 不熟悉,这个方法是凭空想出来的。请大家轻拍~
14555 次点击
所在节点    Linux
105 条回复
msg7086
2018-08-19 17:54:51 +08:00
@webjin1 反射放大攻击呢?
而且为什么只用一台控制机打?为什么能伪造 IP 就不能用肉鸡?
webjin1
2018-08-19 18:01:12 +08:00
@Srar 嗯,可能理解意思不一样,你反射的 ip。比如你向那些有漏洞可以利用的肉鸡发出一个查询包,你自身通信的的源 ip 没法伪造吧,包里面构造的查询包里面的源伪造目标 ip 然后发送到漏洞的肉鸡进行反射,漏洞肉鸡看数据包的查询的源 ip 那是伪造出来的是受害者的。那回包按照这个了。
lslqtz
2018-08-19 18:02:05 +08:00
你带宽够配置大,iptables 都能拦下 ddos
Srar
2018-08-19 18:06:16 +08:00
@webjin1 伪造的就是我自身通讯的源 IP, 查询包内不包含源 IP 一个是 TCP/IP 层的 一个是应用层的

https://github.com/Srar/MemcacheDos/blob/master/RawUdp.ts#L22
webjin1
2018-08-19 18:08:55 +08:00
@msg7086 我说的是那种抓的肉鸡里面种植了直接发动 ddos 程序木马,去攻击。反射攻击的那些肉鸡服务器管理员就真的活该了,那些本来可以利用反射的程序可以打补丁。
webjin1
2018-08-19 18:12:06 +08:00
@Srar 哦,上次听电信的人说,电信的 idc 部署的安全设备 那些所有发出去的包都会检测源,只要是伪造的源都会丢弃。
Srar
2018-08-19 18:14:34 +08:00
@webjin1 某些国家的某些机房没检测源 IP 就可以随便搞事。。。
webjin1
2018-08-19 18:18:20 +08:00
@Srar 我也是上次听我朋友说,他租用的一个双线机房,电信,联通的线路,很麻烦要做策略路由.
机房是在电信机房,但是有联通线路进来,默认路由是电信网关出去,他的联通 ip 不做配置出不去,说电信会检测源,收到联通的源 ip 发出去的包会直接丢弃.
webjin1
2018-08-19 18:21:02 +08:00
@lslqtz 如果按照单个 xxx.xxx.xxx.xxx/32 精细的匹配条目,iptables 规则条数有没有上限,这个倒不知道.
webjin1
2018-08-19 18:32:10 +08:00
@Srar 我在想这些反射攻击,如果别人反射攻击我的服务器,我服务器开启抓包,然后完事,我分析数据包,把那些攻击源 IP 收集起来,那日后我也可以利用这些有反射漏洞肉鸡,免费得来肉鸡不费功夫. 平常这些反射攻击工具网上应该一大把吧,我看你刚刚发我的 github 代码,好像都是你自己写的.
Srar
2018-08-19 18:40:20 +08:00
@webjin1 可以那么干也不可以...因为反射出来的流量很大 当时我搞的时候 2m/s 反射出了 250G+流量 如果你直接抓流量的话恐怕已经在硬防那边过滤掉了或者你的机器直接被空路由了 如果流量很小的话可以抓到
liuyanjun0826
2018-08-19 18:57:35 +08:00
@webjin1 不行的,反射攻击和反射漏洞是两回事
CRVV
2018-08-19 19:12:51 +08:00
既然说自己对 DDoS 不熟悉,那至少先读一下 https://zh.wikipedia.org/wiki/%E9%98%BB%E6%96%B7%E6%9C%8D%E5%8B%99%E6%94%BB%E6%93%8A

DDoS 是一个非常宽泛的概念,方法非常多,根本不可能存在一种能防所有 DDoS 的方法
而楼主说的方法显然可以防某一种方式的 DDoS

我之前就没听说过 CC 攻击,据上面的链接所说,这也是 DDoS 的一种
进一步考证了一下,这应该是一个中文圈子里的词,用 Google 搜索 Challenge Collapsar 的前 9 条结果全是中国人写的
exhades
2018-08-19 19:14:48 +08:00
流量一大。。。你都没开始判断就 GG 了 - -
wwwxxxfr
2018-08-19 19:15:43 +08:00
很简单一句话,除了花钱买流量,DDOS 无其他解
qiukong
2018-08-19 19:21:08 +08:00
@kongque2016 会帮你把你的 IP 从路由拉黑。这样所有流量到达机房路由器就直接被丢包了。
liuyanjun0826
2018-08-19 19:27:19 +08:00
@wwwxxxfr 你不说 ddos 是 tg 还是私人,私人那肯定封 ip 能解决,tg 你封 ip 先不说你有钱没钱,他要是破门你怎么办?
yexm0
2018-08-19 19:29:28 +08:00
@webjin1 是整个电信的骨干网络都配置了过滤,当年出过新闻的。可惜就是看过这条新闻的人都联想去封杀 vpn 那里了。
然而这招其实也没啥用,你挡着别人赚钱了人家照样有很多方法修理你,例如下面这家,被 d 得那叫一个惨
qiukong
2018-08-19 19:37:37 +08:00
DDOS 就是一大堆人同时访问你服务器,在流量没到服务器前已经把你服务器的网口堵死了。比如 DDOS 攻击的规模是 5Gbps,给你的网口只有 1Gbps,那就 GG。
比如你机房总带宽有 100Gbps,那流量到达机房路由器是没问题的,但机房为了不影响其他客户会从机房总路由把你 IP 直接 Null 掉,这样刚到机房就没法访问了。
更严重些比如 DDOS 流量有 200Gbps,那连你机房总宽带都会被打瘫。这时候机房只能接入类似 Voxility 的第三方防御线路,那种带宽一般有 1000Gbps,他们专搞 DDOS 清洗会把攻击流量分流到几千台服务器上,判断并回流到机房。当然这样搞会导致绕路,就是所有流量先走到清洗机房比如罗马尼亚,然后再回到你机房。
个人防御 DDOS 类似 Cloudflare,就是在你网站外面套个 CDN,把所有对你网站的访问分流到全球几千台服务器去清洗回流,这样攻击流量被冲散。OVH 原理类似,只不过在他们机房内分散清洗。但是你源 IP 暴露以后再套 CDN 一点用都没有,他们还会继续打你源 IP。而且 Cloudflare 可能会漏尽一些流量,导致你服务器依然承受不了。
如果攻击规模到达 500Gbps 以上很可能连国家出网宽带都打瘫痪了,那种结果就是全中国的用户都没法访问你所在机房,或者走同样线路机房的所有网站。
说到底还是拼宽带大小,宽带小的就自求多福吧,本机搞什么措施都没用。
Nobitasean
2018-08-19 19:41:26 +08:00
Distributed Denial of Service 分布式拒绝攻击,除非你关机

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/481157

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX