494308843
本帖最后由 494308843 于 2014-8-3 19:38 编辑

MC的通讯协议的安全实在是让人大跌眼界
(攻击程序和源码不会放出!以防小学生危害MC,各位大大自行看理论)效果图

随机生成的6位玩家号   (没多久服务器崩了)
身为一只腐竹  当然要以服务器的安全优先


很多腐竹几乎纯粹是为了收赞助而开服


很少在乎安全方面的问题  比如 OP满地是  创造满天飞  一堆不合理的配置


但是我不是讲如何配置服务器的


我说我这几天的一个发现


大家可知道MCCHAT这款手机软件

它能做什么?

连接到电脑服务器 进行聊天

但是呢  我进行流量监控的时候


发现会接收每秒100KB的数据大概

然后几秒后就稳定了

我估计的是服务器在确认玩家加入服务器后发送的区块数据

那么  如果知道MC的通讯协议意味着什么

MC专项攻击器非常容易完成

本人不推荐MC1.7.2服务器

因为 我测试发现  根本没什么加密

第一个无非就是含有本地连接服务器的连接地址(估计是跟服务器配置文件的IP对应  不对应就拒绝)

第二个就是含有玩家名的数据包  用一定的规则来生成的(我太笨了  看了几个小时才发现是根据长度)

于是  昨天我做了一个小程序(- -易语言  勿喷)

我测试的结果是什么

启动了几十个TCP客户  连接服务器  连接成功就发送预定的第一个封包(服务器IP设置为0应该通用)

第二个封包按成一定的规则生成

发生了什么?

服务器被刷屏了  N个随机玩家名的玩家上线 下线

然后呢

一分钟不到


一个可以带50人的服务器  挂了?

什么效果  完全是服务器崩了一样  标语插件都不能用了 只显示配置文件设置的内容

后台崩了

我是菜鸟

有什么方法可以防范?
可以通过设置防火墙规则屏蔽

比如  模拟N个玩家上线  需要频繁的连接

可以设置规则屏蔽IP

而且游戏服务端可设置连接间隔

(41楼指出可以限制单IP短时间内过快连接)
(我玩服务器的时候遇见过提示什么加入过快 不过我是刚启动游戏 之前没连接 也可能是所有玩家加入的间隔)
(不过不失为一种有效的方法  即使熊孩子可以模拟出  也能降低服务器内存和宽带的损耗)
但是!在屏蔽之前  攻击效果是实际已经发生了

因为服务器不可能知道这个IP的连接是有问题的

而且大部分辅助都对游戏端口设置了允许所有

屏蔽了其他端口

而且!及时设置了极为苛刻的规则

如!同时只允许一个连接

也是无法防御这种攻击

我刚才说的是单计算机进行攻击

如果有僵尸网络呢?

及时限制了同时连接数最多为1

几十台肉鸡  的流量吞噬还是很可观的

近十倍+

这意味着什么

如果你有一台百兆共享的服务器

模拟100个玩家+就可以吞掉服务器宽带

导致服务器网络卡顿  玩家掉线

而大部分防火墙都是在几十次频繁连接后进行屏蔽
但是这样我就想起来我之前试验的
当时我是想截取刷新多人游戏列表时发送的封包
可以返回1400多字节的数据包(好像是几个数据包 被分成了几块)
只需要发送20字节就可以达到效果(测试的1.7.2)
但是这种效果太低  而且会被防火墙屏蔽
针对主要说明的那个攻击方法 建议配合防火墙和服务器连接间隔设置

对于这种攻击方法  没有切实的防御方法   这不是漏洞  可以说是安全缺陷
我是菜鸟渣渣一个

欢迎吐槽

本帖中的方法是确实存在和可行的

MC服务器天大的缺陷  吞掉服务器大量的内存和宽带  不蹦服也网络耗尽

这种攻击会最大化流量(什么? 这是最大化利用客户端的宽带  完全跟下载文件一样的最大宽带利用)

{:10_512:}  求点人气   不会排版  各位如果有什么好的防御方法  请告诉大家

不会排版  凑合看吧

我是ESP{:10_564:}

(怎么添加可以展开的内容项啊  我不会排版。。。)



Saya_
好吧 楼主的话好长  看不懂耶

Saya_
好吧 楼主的话好长  看不懂耶

leavessoft
昨天我的服务器也悲哀了。。

yuchenyang
虽然看不懂,但总觉得lz好厉害= =

逍遥jin
求楼主别回车=。=顺便带图=。=

494308843
逍遥jin 发表于 2014-8-3 08:39
求楼主别回车=。=顺便带图=。=

补图了...

494308843
yuchenyang 发表于 2014-8-3 08:38
虽然看不懂,但总觉得lz好厉害= =

我菜鸟而已- -
2个封包。。。。

第二个封包太简单了。。。我居然花了几个小时

逍遥jin

我怎么木有看见QAQ

494308843
逍遥jin 发表于 2014-8-3 08:41
我怎么木有看见QAQ

刷新  。。。。。。。。。。

逍遥jin
494308843 发表于 2014-8-3 08:42
刷新  。。。。。。。。。。

= =好吧,我是不是没救了

渡邉みなみ
好长啊,言之有理

494308843
xcc 发表于 2014-8-3 08:45
好长啊,言之有理

语文差。。。凑合看

494308843
leavessoft 发表于 2014-8-3 08:36
昨天我的服务器也悲哀了。。

????????什么

eyz1993
你说的不就是普通的ddos攻击?防火墙规则,负载均衡这些都能有效防护ddos。

494308843
eyz1993 发表于 2014-8-3 08:49
你说的不就是普通的ddos攻击?防火墙规则,负载均衡这些都能有效防护ddos。

不是DDOS
ddos是洪水攻击
这种方法是利用通讯协议  让服务器对外发包

最大化攻击方流量  也就是说  你下行有多少  几乎就能达到多少

而且- -  模拟玩家  我试了  防火墙鸡肋了

服务器直接崩了

服务器内被刷屏
一直显示玩家上线下线  欢迎新玩家
几分钟就崩了

494308843
eyz1993 发表于 2014-8-3 08:49
你说的不就是普通的ddos攻击?防火墙规则,负载均衡这些都能有效防护ddos。

而且  DDOS是群集攻击

这个方法危害太大

是利用服务器通讯协议!!!!

不是纯粹的堵塞服务器网络那么简单

而且  一个玩家在服务器会消耗几十兆内存

小服承受不了多少连接就会挂掉

恐怖!

即使是大服

几台电脑就能模拟几百连接

也承受不了!

eyz1993
494308843 发表于 2014-8-3 08:50
不是DDOS
ddos是洪水攻击
这种方法是利用通讯协议  让服务器对外发包

普通的ddos是攻击tcpip协议本身,你这是从应用层攻击,确实有新意。但是,我读完你的文章发现其基本特征与ddos非常相似,都是短时间建立与取消大量连接迫使服务器忙于处理新连接。Windows防火墙我不清楚,linux防火墙通过设置连接速率和频率能有效防范这种攻击。

494308843
eyz1993 发表于 2014-8-3 08:56
普通的ddos是攻击tcpip协议本身,你这是从应用层攻击,确实有新意。但是,我读完你的文章发现其基本特征 ...

不是那种常见的纯粹是流量攻击
那种需要用比服务器更大的网络才能得到攻击效果

而这种  就是四两拨千斤了

eyz1993
494308843 发表于 2014-8-3 09:00
不是那种常见的纯粹是流量攻击
那种需要用比服务器更大的网络才能得到攻击效果


我笑了,ddos移动到应用层,你就分析不出其本质了?

fyxridd
可以试试连接->bungeecord->服务器,看看bungeecord有没做出什么限制

eyz1993
fyxridd 发表于 2014-8-3 09:09
可以试试连接->bungeecord->服务器,看看bungeecord有没做出什么限制

有的,bungeecord不允许同ip短时间反复连接。

494308843
eyz1993 发表于 2014-8-3 09:04
我笑了,ddos移动到应用层,你就分析不出其本质了?

{:10_514:}
好吧  没研究过

不过这种攻击太难防了

hh9130045
LZ大触。顶起!虽然不明觉厉啊,

494308843
fyxridd 发表于 2014-8-3 09:09
可以试试连接->bungeecord->服务器,看看bungeecord有没做出什么限制

没空测试

我测试1.6.2  因为是加密的

放弃了  如果我有生成的对应的数据包的源码
就可以测试了

可惜还不会java

799371437
那TM不是崩了 是我关服了小**- -
儿子

第一页 上一页 下一页 最后一页