_DIM_
本帖最后由 _DIM_ 于 2022-9-12 17:43 编辑
全面、可靠、免费的压测防御软件
前言:
    此插件开发者为缇亚祢,并由楼主本人转载至BBS,同时遵守论坛的所有规定。发布的目的是为了让更多的腐竹了解到这款插件,尽可能的降低被压测攻击造成的损失。分享插件不再需要遮遮掩掩!
    AntiAttackRL 是一款免费、可靠、更新频繁、多平台的压测防御插件,可以有效地防御绝大多数的压测攻击,并且服务器被压测时玩家依然能够正常进服,同时也是唯一一款支持 Sponge 的反压测插件。

特性:

优势:
AntiAttack3 AntiAttackRL 其他同类防御插件
老牌,早在集群压测发迹之前便已发布更新,经验丰富。但正因如此,代码累赘AAT 重制版,过往的经验使得 AATRL 在抵抗压测的熟练度上更上一层楼 很多时候都是第一次写反压测插件,对压测不熟悉,效果不好
戒备模式有很大问题,刚开服的几秒内压测会大量进入,被 EMP (新型压测软件)针对,难以抵抗袭击 全新的戒备模式算法,全新的代码,全新的机制,针对集群压测和各种新型攻击手段,具有卓越的防御效果 部分插件是上古时期发布的,它们对集群压测没有太大的抵抗力。其余插件对压测攻击具有防御效果,但对很多新型压测攻击几乎没有免疫力。
成群的 Bug ,不人性化的配置文件,公告信息,误报率在配置不正确下惊人,默认配置经常导致各种问题 默认配置便可以使用,误报率极低,近无 Bug ,作者即刻在线反馈修复可能有几个月甚至几年没有进行过大更新

相对于老版 AntiAttack3 的改动:


使用效果图:


插件使用详细教程:
本教程将详细介绍插件 AntiAttack-RL 的使用方法,以及对配置文件、插件机理的详细讲解
1. 首次安装

2. 插件配置文件

3. 插件指令&权限

4. 踢出信息标识符

5. 常见问题解答


注意事项:


下载地址:


更新计划:



发布许可:
* 本插件已获得原作者允许转载至MCBBS许可




来自群组: Power of Spongie

2021.12 数据,可能有更多内容
全面、可靠、免费的压测防御软件前言:    此插件开发者为缇亚祢,并由楼主本人转载至BBS,同时遵守论坛的所有规定。发布的目的是为了让更多的腐竹了解到这款插件,尽可能的降低被压测攻击造成的损失。分享插件不再需要遮遮掩掩!    AntiAttackRL 是一款免费、可靠、更新频繁、多平台的压测防御插件,可以有效地防御绝大多数的压测攻击,并且服务器被压测时玩家依然能够正常进服,同时也是唯一一款支持 Sponge 的反压测插件。
特性:
  • MOTD 压测 / MOTD 集群压测
  • Ping 压测 / Ping 集群压测
  • 假人压测 / 集群假人压测
  • Tab 包高频攻击
  • Move 包高频攻击
  • 连点器发包崩溃漏洞
  • 踢人漏洞压测攻击
  • 频繁握手多连接攻击
  • 洪水 Book 包攻击
  • 死亡 Motd / Ping 发包攻击
  • 不会阻隔正常玩家进入服务器
  • 插件可自动更新 *
  • 可高度自定义的配置文件

优势:
AntiAttack3
AntiAttackRL
其他同类防御插件
老牌,早在集群压测发迹之前便已发布更新,经验丰富。但正因如此,代码累赘
AAT 重制版,过往的经验使得 AATRL 在抵抗压测的熟练度上更上一层楼
很多时候都是第一次写反压测插件,对压测不熟悉,效果不好
戒备模式有很大问题,刚开服的几秒内压测会大量进入,被 EMP (新型压测软件)针对,难以抵抗袭击
全新的戒备模式算法,全新的代码,全新的机制,针对集群压测和各种新型攻击手段,具有卓越的防御效果
部分插件是上古时期发布的,它们对集群压测没有太大的抵抗力。其余插件对压测攻击具有防御效果,但对很多新型压测攻击几乎没有免疫力。
成群的 Bug ,不人性化的配置文件,公告信息,误报率在配置不正确下惊人,默认配置经常导致各种问题
默认配置便可以使用,误报率极低,近无 Bug ,作者即刻在线反馈修复
可能有几个月甚至几年没有进行过大更新

相对于老版 AntiAttack3 的改动:
  • 完全重写,没有半点代码来自于 AntiAttack3 ,也就没有修改一说了,不过为了使得大家容易理解,仍然对此进行解释。
  • 戒备模式的全新算法!杜绝了刚开服成群玩家进不去或者成群压测进得去,解决了压测持续时间长便可以逐步透过戒备模式的墙的能力,支持开服便初始化戒备模式列表,不再需要提前记录和结算。
  • 去掉了大部分逗比的耍小聪明的检测,那些检测对上古有效,但对于新的压测几乎没有什么抵抗力,还会导致误报率奇高。
  • 比原来的算法更加高效,相较于 AAT3 来回补丁来回更新导致的代码一坨,全新写的代码易读,简洁,效果更好,优化更棒。
  • 修复了大部分的 Bug ,包括尽管假人进不来仍然在刷屏的问题,同时修复了几个上古时代就存在的 Bug 。
  • 更强的自定义,几乎所有玩家提示信息都可以自定义了,插件前缀也可以自定义了,所有数值都可以手动调整
  • 针对和高效的更新,几乎可以抵抗最新的压测,并配有一劳永逸的自动更新系统*



使用效果图:







插件使用详细教程:
本教程将详细介绍插件 AntiAttack-RL 的使用方法,以及对配置文件、插件机理的详细讲解
1. 首次安装Bukkit / Spigot 纯净服安装方法
1. 确保装有前置: ProtocolLib
2. 下载好插件: AntiAttack-RL
3. 将插件置入 plugins 文件夹中
4. 重启时,服务器可能会进行初始化,玩家数据越多,时间越长
5. 若效果不好,请查阅下方的配置文件讲解对配置文件进行修改


KCauldron/CatServer/Mohist 模组服安装方法
1. 确保装有前置: ProtocolLib
2.下载好插件: AntiAttack-RL
3. 将插件置入 plugins 文件夹中
4. 重启时,服务器可能会进行初始化,玩家数据越多,时间越长
5. 若开服后插件乱踢人并且后缀为 [PCAFPA] ,对 config.yml 中的 AntiFastPacketAttack 项进行调大
PacketCheck:
AntiFastPacketAttack:
    KickMessage: §c你是有可能是压测机器人!请重新登录!§b[PCAFPA]
    enable: true
    PerTypeSecondLimit: 75
    PerTypeSecondKick: 150

将这两项调大,比如 100/200,然后输入 /aat reload 看是否踢人。
如果还是踢人,则继续增大,例如 125/250 , 150/300


BungeeCord 蹦极服安装方法
若你的服务器未处于被攻击时:
1. 下载插件: AntiAttack-RL
2. 将其置入 BC 中的 plugins 文件夹中
3. 重启 BC 即可生效
4. 若效果不好,请查阅下方的配置文件讲解对配置文件进行修改
若你的服务器正处于被攻击时:
1. 下载插件: AntiAttack-RL
2. 先将其置入你的登录服中的 plugins 文件夹中
3. 重启你的登录服,并等待初始化结束
4. 将位于登录服 plugins 中的 AntiAttackRL.jar 和 AntiAttack 文件夹一起挪到 BC 的 plugins 里5. 重启 BC 即可生效
6. 若效果不好,请查阅下方的配置文件讲解对配置文件进行修改



Sponge 纯净/模组服安装方法
1. 下载插件: AntiAttack-RL
2. 将其置入服务端的 mods 或 mods\1.12.2 或 mods\plugins 文件夹中
3. 重启服务端,重启时插件可能会进行初始化,玩家数据越多,时间越长
4. 若效果不好,请查阅下方的配置文件讲解对配置文件进行修改

2. 插件配置文件本插件在任何服务端 (Bukkit/Spigot/Paper/KCauldron/CarServer/Mohist/Bungee/Sponge) 下运行时,
其配置文件格式均相同,格式为Yaml。在同版本插件下各个选项也完全相同,但文件位置可能不同。


配置文件位置:
Bukkit/Spigot: plugins/AntiAttack/config.yml
BungeeCord: plugins/AntiAttack/config.yml
Sponge: config/AntiAttack/config.yml

配置文件详解:
请勿直接将下面的内容复制到配置文件内,仅供参考
Versioning: 394 #版本号,不要乱碰
AntiAttack:
PluginPrefix: §a[AntiAttack] #插件提示信息前缀
AutoUpdate: true #是否自动更新
Boardcast: true #是否开启防御公告信息
RestrictMode:
enable: true #是否开启
Timer: #在CountPeriod秒内允许CountLimit个新玩家进入服务器,超出限制则会拦截
    CountPeriod: 5
    CountLimit: 1
    DenyMessage: §c服务器遭到集群压测,请稍等再登录!§b[RMTR]
AntiFastJoin: #防止单IP快速进人
enable: true #是否开启
Interval: 4000 #同一IP间隔多长时间允许进一个人,单位毫秒
DenyMessage: §c你加入过于频繁了!请稍等几秒!§b[AFJ]
AntiMOTDAttack: #MOTD攻击方昂与
enable: true
PerIP5sLimit: 10 #每5秒允许同一IP刷新多少次MOTD
Total5sLimit: 100 #每5秒允许全服刷新多少次MOTD
AntiPingAttack:
enable: true
PerIPInterval: 500 #同一IP间隔多少毫秒允许ping一次
TotalInterval: 50 #全服间隔多少毫秒允许ping一次
AntiTabCompleteAttack:
enable: true
PerIPInterval: 1000 #同一IP间隔多少毫秒允许发送一次TAB请求
TotalInterval: 100 #全服间隔多少毫秒允许发送一次TAB请求
HandShakeLimitor:
enable: true
PerIPSecondLimit: 3 #每秒允许同一IP进行几次握手请求
AntiPacketFloodAttack: #自定义包规则防御
enable: true #是否开启
PacketLimit:
    \S*: #包名,是正则表达式,如果多重匹配,则取最下面的那个
   period: 500 #间隔时间,单位毫秒
   cancel: 25 #在间隔时间内,允许发送此包多少个,超出限制会被拒绝
    PluginMessage:MC[|]BSign:1: #包名,由于是正则表达式,所以|这种特殊字符要用[]括起来
   period: 1000
   cancel: 1
    PluginMessage:MC[|]BEdit:1:
   period: 1000
   cancel: 1
    PluginMessage:dragoncore:\S*: CANCEL #如果直接写不写下面几行就写个英文单词就意味着是粗暴模式,CANCEL代表此包会永远拦截,ACCEPT代表此包永远不拦截,KICK代表只要接受到此包就直接踢出去
AntiCreativeSlotAttack: #非法发包防御,顺带着还可以防御书与笔BUG
enable: true
KickMessage: §c非法发包!怀疑你在攻击服务器,请重新登录§b[ACSA]
AntiKickAttack: #防御顶人攻击
enable: true
DenyMessage: §c有一个同名玩家已经在线了!§b[AKA]
LoggerFilter: #防御后台刷屏攻击
enable: true
exceptions: #在后台此类报错(默认报错体现在故意发错包使后台报错的情况下)会被直接忽略不显示
- io.netty.handler.codec.DecoderException
- io.netty.handler.codec.CorruptedFrameException

自定义包规则限制:
提示:这部分内容并不是你一定需要理解的,而且也有一定难度。但如果你能掌握这个技巧,你就能掌握这款插件的真正强大之处,随心所欲应对各种攻击。

输入 /aat packetTrack * 来启动包侦测模式此时,你便可以开着客户端/作弊端/攻击软件进入服务器后台会不断输出所接受的包类型,除了后台命令行,你还可以在 logs/lastest.log 里查阅到它们



而你所得到的识别包名,你便可以在配置里自行设定它了:



以上面这张图举例,首先你必须写好 包名的正则表达式 ,注意是正则表达式,你不能原封不动地复制包名过来,关于正则表达式的规则你可以在这里学习
比如说,你想要拦截这个包,我们以类似操作执行三次,输出了三次我们要找的包:
[AntiAttack] PacketTrack: PluginMessage:MC|BSign:[1,-126,1,0,0,...,116,116,0] from TiaraRinne
[AntiAttack] PacketTrack: PluginMessage:MC|BSign:[1,-126,1,0,0,...,53,121,0] from TiaraRinne
[AntiAttack] PacketTrack: PluginMessage:MC|BSign:[1,-126,1,0,0,...,-65,-112,0] from TiaraRinne

那么你需要自己多测试几次,去找其中的规律,比如观察它的前缀名字是 “PluginMessage:MC[|]BSign:[1,-126,1,0,0,10,0,0,9,0,5,112,97,103,101,115,8,0,0,” 但后面的就不一样了 ,那么你可以写成正则表达式 “PluginMessage:MC[|]BSign:[1,-126,1,0,0,10,0,0,9,0,5,112,97,103,101,115,8,0,0,0\S*” ,找到规律后就可以把它写到配置文件里,然后进行下一步的编写


A.如果你起新行,写period、kick、cancel、share然后在后面加上数字,那么就是数值模式,意思如下:

代码:

  1. PluginMessage:MC[|]BSign:[1,-126,1,0,0,10,0,0,9,0,5,112,97,103,101,115,8,0,0,0\S*: #包名的正则表达式,在正则中 | 这种特殊符号需要用[]括起来,\S* 代表这里可以接任何字符
  2. period: 2000 #计数间隔,2000ms也就是2秒内
  3. cancel: 1 #拦截数目,在2000ms内收到超过1个包就拦截
  4. kick: 2 #踢出数目,在2000ms内收到超过2个包就直接踢出去
  5. share: true #决定了符合条件的包是独立计数还是共享。比如你写的是share为false,那么PluginMessage:MC|BSign:[1,-126,1,0,0,10,0,0,9,0,5,112,97,103,101,115,8,0,0,0,1]和PluginMessage:MC|BSign:[1,-126,1,0,0,10,0,0,9,0,5,112,97,103,101,115,8,0,0,0,2]是独立计数的,如果share为true,那么任何包名符合同一规则的计数器会共享计数。在这里,我们要探测的包前面的数字一样,但明显后面的一堆数字不会一模一样,因此我们share=true来让他们共享计数。

B.如果你直接在后面写一个单词,写CANCEL就是永远拒绝此包,写ACCEPT就是永远接受此包,不对此包设限,写KICK就是只要接到此包就马上踢掉

代码:

  1. PluginMessage:dragoncore:\S*: ACCEPT #符合此包名的包会永远接受不受限制

规则匹配越往上优先度越高,也就是说如果匹配到多个规则,那么会以写在配置最下面的那条规则为准


一旦你掌握了如何自定义包规则限制,那么你就可以应付大部分攻击了


3. 插件指令&权限/antiattack 或 /aat 均为插件指令,具有同样效果
/aat help 查阅帮助信息
/aat rm 手动管理戒备模式白名单
/aat packetTrackMode 追踪服务器接受包
/aat reload 重载插件的配置文件


命令使用权限:AntiAttack.admin

4. 踢出信息标识符什么是踢出信息标识符?
在玩家被踢出时,会弹出提示信息,在提示信息最末尾的几位英文字母就是标识符。
这个标识符代表了玩家是因为什么原因而被踢出游戏的。



对各个标识符的详解:
[AFJ]
此选项位于 config 中的 AntiFastJoin 功能
意味着该 IP 的玩家登入频率过高
[AKA]
此选项位于 config 中的 AntiKickAttack 功能
意味着服务器内已经有一个同名的玩家在线了
[RMTR]
此选项位于config中的RestrictMode功能
意味该玩家为第一次进服,并且此时服务器遭到集群压测,并且已经触发了戒备模式.若为误报,则意味着你需要调高CountLimit的数字
[ACSA]
此选项位于config中的AntiCreativeSlotAttack功能
意味着此玩家尝试在非创造模式下发送创造模式的包,可能是作弊端

5. 常见问题解答Q: 为什么不能用R键整理?会被踢?
A: 因为 R 键整理本质是同时对箱子内各种物品进行操作,而在一瞬间进行如此多的发包就已经触发了 AATRL 的防御系统,因此 AATRL 将玩家判定为有压测攻击风险,将其踢出。
解决方法:
此选项位于 config 中的 AntiFastPacketAttack 功能,将其下的 enable 选项由 true 改为 false
(警告,关闭后可能会导致被熊孩子恶意炸服)


Q: 为什么我的插件完全没有效果?假人还是打进来了?
A: 第一你要确保你是按照我上面写的【首次安装】指引安装的,尤其是BC服,否则可能会有问题!
如果确保按照步骤了,那么遵循以下步骤,检查问题所在。
输入 /aat 指令,查看是否有反馈
若收到的提示信息为 "Unknown command. Type "/help" for help."
则意味着插件根本就没有被安装或者工作,确认你的确把插件放到了 plugins 里,然后确认你的 plugins 文件夹中只有一个 AntiAttack.jar 插件
是否安装了动态 MOTD 插件,尤其是 BC
若你是单端,请确保你的服务端没有使用 AnimalMOTD 这类的动态 MOTD 插件,如果是BC,请不要使用任何 MOTD 插件
输入 /aat 指令,查看版本号
在查看到版本号后,确保你的插件是最新版本没有Bug
若问题仍然没有解决
那么有可能是插件在编写时就出现了bug,需要联系作者,联系方式在下方有写。


Q: 为什么一直这样刷屏?

A: 因为你当前使用的服务端缺少所需要的前置插件 ProtocolLib,下载一个并安装即可


Q: 为什么我的插件安装后,明明没被打,还一直被提示?
服务器遭到集群压测,请稍等再登录![RM]

A: 请在配置文件中调高配置文件中的 CountLimit ,将后面的数字调高,直到停止误报为止。
RestrictMode:
DenyMessage: §c服务器遭到集群压测,请稍等再登录!§b[RM]
CountPeriod: 10
enable: true
CountLimit: 1

然后输入 /aat reload 重载即可


Q: 被压测时左下角一直刷消息,如何关闭消息显示?
A: 在配置文件里将 Boardcast 后面改为 false 即可
AntiAttack:
PluginPrefix: §a[AntiAttack]
Boardcast: true
AutoUpdate: true



注意事项:
  • 本插件目前可以同时支持 Bukkit / Bungee / Sponge 三种平台。
  • Bukkit 和 Bungee 端请将插件置入 plugins 文件夹内,Sponge则请将插件置入 mods 文件夹内,配置文件在 config 文件夹里。
  • 本插件 Bukkit 模式、Bungee 模式、Sponge 模式下配置文件完全相同因此,你可以直接将任何其他人的最优配置复用于自己的服务器而无需修改,但请注意,不要将其他服务器的 data.yml 等数据文件复用,这会导致出错或误报!
  • 本插件可以和其他反压测插件共存,但在被压测攻击时 AATRL 的白名单系统可能会不起作用,建议择二其一。
  • 不建议群组服用户在各个子服安装此插件,仅装在 BC 端即可。

下载地址:
请务必先看使用教程后再安装!
持续更新下载地址↓
https://www.spigotmc.org/resources/antiattackrl.67043/download?version=412470
如果出现404或405请尝试多刷新几次或更换浏览器
注意:该插件是需要安装并使用一段时间后才会逐渐生效。如果是正在被压测的情况下才安装该插件,效果会大打折扣。
2021-8-1 更新内容:
- 默认不再需要调数值防止MOD误踢了(已自动化)
- 包管理器的大改
- 配置文件格式的大改


有反馈或建议?AntiAttackRL交流群:580659670

如果该插件对您有帮助,不妨给本帖子评个分或回复一下表示支持?

更新计划:
优化算法,提升对辅助整理模组的兼容性
支持 Nukkit 服务端


发布许可:
* 本插件已获得原作者允许转载至MCBBS许可




kuangshijs
正需要一个反压测,感谢搬运

白色的奢华、
字词一下         

极光creeper
国内论坛互搬好评
(似乎没有先例
(BB弹系先河开创者
不管怎么样 搬运贴和插件都很不错

粘兽
真危险啊 搬运这个插件

_DIM_
粘兽sama 发表于 2019-6-26 20:55
真危险啊 搬运这个插件

插件好用就该用。发这个贴也是为了在今后发布服务端整合包里内置这款插件。不喜欢一些黑子的不理智行为。

粘兽
酷车手BB弹 发表于 2019-6-26 20:58
插件好用就该用。发这个贴也是为了在今后发布服务端整合包里内置这款插件。不喜欢一些黑子的不理智行为。 ...

之前在问答板块碰到寻求防压测插件时还不能很好地给出地址,得让他们自己去百度,现在有的给了

919509299
真敢搬啊都

BellTune
真的搬过来了

黑羽快斗´
仍然不可防御motd

黑羽快斗´
一个ip不停刷新服务器就炸了

_DIM_

实测没任何问题

黑羽快斗´
酷车手BB弹 发表于 2019-6-26 21:26
实测没任何问题

我一直刷新为什么不屏蔽我

黑羽快斗´
酷车手BB弹 发表于 2019-6-26 21:26
实测没任何问题

还是特别好用服务器添了防御

inuEbisu
wow,搬这个,厉害厉害,
祝你好运#雾

AntiAttackRL是真的挺好用的。

提供反压测插件终于不用再遮遮掩掩了+1

040516xcy
这都能搬,太强了!

xmdhs
支持 sponge 是真的很棒

StMan_
给大佬打call

本帖最后由 一只辉 于 2019-7-20 12:08 编辑

我的BC端装上 Protocollib 报错不加载

_DIM_
一只辉 发表于 2019-6-26 22:40
我的BC端装上 Protocollib 报错不加载



没说要前置


可以同这个插件AntiFakePlayer一起食用吗

_DIM_
一只辉 发表于 2019-6-26 23:36
可以同这个插件AntiFakePlayer一起食用吗

可以。不过过多的同类插件可能会增加误报率。

jun_ye
感谢搬运,很好的一个反压测鸭!!
晚上安排到服务器上了

堪堪堪
讲真这个插件我一直觉得非常不错

向文
三天之内删帖 把号都给你扬了

240599389
请问,外置登录需要这个么

_DIM_
240599389 发表于 2019-7-4 17:32
请问,外置登录需要这个么

可以装也可以不装,用了外置登录后只剩下少部分可被压测的漏洞。

黑羽快斗´
问一下大佬这个能不能与antifakeplayer一起用

黑羽快斗´
插件正常工作配置文件一点没动我频繁加入服务器没有阻拦 如果是白名单怎么删除

_DIM_
shenren3-f 发表于 2019-7-6 07:34
问一下大佬这个能不能与antifakeplayer一起用

贴内写的很清楚了,为何不看贴呢

_DIM_
shenren3-f 发表于 2019-7-6 07:53
插件正常工作配置文件一点没动我频繁加入服务器没有阻拦 如果是白名单怎么删除 ...

如果真的想测试的话,应该用专门的压测机器测试,你想单纯的封进退进退的玩家岂不是疯狂误报?白名单在文件夹里。

黑羽快斗´
酷车手BB弹 发表于 2019-7-6 20:18
如果真的想测试的话,应该用专门的压测机器测试,你想单纯的封进退进退的玩家岂不是疯狂误报?白名单在文 ...

给我一份压测的

下一页 最后一页