SentrySentry
Architecture

Risk Levels and Verdicts

Score, levels and default verdicts

Risk Levels and Verdicts

The scorer combines signals from heuristics, AI and the route validator into a risk_score (0–100) and a risk_level. The decider then maps the level to a default verdict, applicable per policy.

ScoreLevelColorDefault verdict
0–9InfograyAllow
10–29LowblueAllow + observation
30–49MediumyellowIncreasing rate-limit
50–74HighorangeChallenge (Cloudflare)
75–100CriticalredBlock IP + alert

Policy is configurable per route/IP-range/ASN. E.g. /admin/* has a lower threshold.

Initial signal weights

SignalWeightAccumulates?
SQLi (regex)60no
XSS (regex)45no
Path traversal (../, %2e)40yes
Log4Shell (${jndi:)80no
RCE/cmd injection70no
Non-existent route8yes
>10 404/IP in 60s35
Empty/suspicious user-agent10yes
Tor exit node15
IP in reputation feed50
ONNX anomaly > 0.850no
Access to sensitive path30yes

Weights combine (sum capped at 100), with a bonus for repetition within a window. Everything is configurable.

On this page