Security Checks Overview
GAPE includes 10 comprehensive security checks that protect against packet-based exploits, crashes, and malicious behavior. Each check operates at the packet level using the PacketEvents API.
All Security Checks
Rate Limit
Per-type packet rate limiting with configurable thresholds
Tab Complete Crash
Blocks malicious tab-completion packets
Sign Exploit
NBT validation for sign packets
Book Exploit
Written book protection and validation
Oversized Packet
Size limit enforcement for all packets
Custom Payload
Plugin message validation and flood protection
Packet Flood
General flood protection across all packet types
Command Spam
Command rate limiting and spam detection
NoCom Exploit
Position validation and coordinate checking
Crasher Detection
Multi-vector crash prevention system
How Checks Work
When a packet is received, GAPE processes it through the following pipeline:
- Interception: Packet intercepted before reaching server
- Validation: Check validates against known exploit patterns
- Decision: Packet allowed, cancelled, or player flagged
- Action: Alert staff, cancel packet, or kick player based on violation level
Performance Impact
All checks are highly optimized for minimal performance impact:
- Per-packet overhead: 300-500 nanoseconds
- Memory usage: ~560 bytes per tracked player
- Async processing: Violations handled off main thread
- Smart caching: Reduces redundant validation