超进化 v3.3: 6个新安全模块 + 31个模块独立开关 + 完整文档与测试
新增6个Minecraft安全模块: - GeoBlockService: 地理IP封锁(国家黑白名单/高风险MC攻击来源拦截) - PlayerSessionValidationService: 玩家会话验证(UUID/正版/离线检测/会话重放) - PluginVerificationService: 插件完整性校验(SHA-256/恶意插件名/25个已知恶意插件) - ConnectionThrottleService: 连接速率限制(多窗口追踪/递增延迟2s-30s) - BackupIntegrityService: 备份完整性验证(SHA-256/文件存在性/6h自动扫描) - AntiSkinSpoofService: 皮肤伪造检测(25个冒充目标/可疑URL/变更频率) 配置独立开关(31个模块全部可单独控制): - ServerGuardConfig新增SuperEvolutionConfig包含全部31个模块的enabled开关 - application.yml新增完整super-evolution配置段(含中文说明) - 每个Service注入ServerGuardConfig并在入口检查开关,关闭时跳过检测 DashboardController新增6个API端点 + 全部25个服务重构注入config 测试: V33SecurityTest 29项测试(含23项v3.3 + 6项更正),全部114测试通过 文档: README/README_EN 30+→85+模块,USER_MANUAL新增完整开关配置文档
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
package com.aluer.security;
|
||||
|
||||
import com.aluer.config.ServerGuardConfig;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.net.*;
|
||||
@@ -11,6 +13,7 @@ import java.util.concurrent.atomic.AtomicLong;
|
||||
@Service
|
||||
public class SSRFProtectionService {
|
||||
|
||||
private final ServerGuardConfig config;
|
||||
private final Map<String, List<SSRFEvent>> detections = new ConcurrentHashMap<>();
|
||||
private final AtomicLong totalBlocked = new AtomicLong(0);
|
||||
|
||||
@@ -39,7 +42,20 @@ public class SSRFProtectionService {
|
||||
"metadata.alibabacloud.com", "169.254.169.254"
|
||||
);
|
||||
|
||||
public SSRFProtectionService() {
|
||||
this(new ServerGuardConfig());
|
||||
}
|
||||
|
||||
@Autowired
|
||||
public SSRFProtectionService(ServerGuardConfig config) {
|
||||
this.config = config;
|
||||
}
|
||||
|
||||
public SSRFCheckResult checkURL(String url, String sourceIP) {
|
||||
if (!config.getSecurity().getSuperEvolution().isSsrf()) {
|
||||
return SSRFCheckResult.clean();
|
||||
}
|
||||
|
||||
if (url == null || url.trim().isEmpty()) return SSRFCheckResult.clean();
|
||||
|
||||
List<String> reasons = new ArrayList<>();
|
||||
|
||||
Reference in New Issue
Block a user