SafeLine
SafeLine copied to clipboard
[建议] 希望增加一个“为空”和“不为空”的判断条件
trafficstars
背景与遇到的问题
希望在黑名单的Header匹配条件中加入一个为空和不为空的选项,即判断Header头里面是否有某个参数。
建议的解决方案
如图
臣附议
想拦截UA为空的访问,现在的配置项好些没办法实现
为啥需要判断Header头里面是否有某个参数呢
比如说如果UA为空,那很有可能就是机器人
比如说如果UA为空,那很有可能就是机器人
你想说的是不是 【没有 UA】?机器人一般也不会特地发个 UA 但是为空。
可以看看大家反馈。但是 “拦截没有 UA 的请求” 这种规则非常好绕过呀,机器人加个 UA 就行了,似乎效果很有限?想防机器人的话还是建议直接开 “语义分析” - “机器人检测” 或者 “人机验证”。
我的意思就是请求头里不含UA这个字段。有这个判断条件可以判断出来当然是更好,用“机器人检测”有些识别不到。 又比如我的业务系统只有带特定某个Header(比如X-ACF)才能访问,具体校验可以等到后端,但前面可以通过防火墙先拦掉没有这个Header的请求,减轻后端压力。