Commit Graph

  • 6fcbda6ece Core Rule Set reads request bodies up to SWWAF_WAF_BODY_LIMIT (closes #116) next clawbot 2026-10-08 12:59:13 +02:00
  • 80f4c2cc61 The Core Rule Set, run by Coraza, on each request's method, URL and headers (closes #25) clawbot 2026-10-08 09:37:13 +02:00
  • e81a7f0ca2 Tests that need a lookup answer give it an hour (closes #119) clawbot 2026-10-08 08:14:45 +02:00
  • 54779f08de Trap paths, and the error burst banning a client refused too often (closes #115) clawbot 2026-10-08 06:44:55 +02:00
  • 5f3fb48809 CrowdSec decision list fetched, kept, and its clients banned until the decision ends (closes #106) clawbot 2026-10-08 05:15:06 +02:00
  • 04e66d2069 Ban notes name the reputation sources that listed the client (closes #109) clawbot 2026-10-08 03:08:01 +02:00
  • a6634454cd Read SWWAF_IPV6_GROUP_PREFIX, SWWAF_MAX_TRACKED_CLIENTS and SWWAF_LOG_LEVEL (closes #112) clawbot 2026-10-08 02:14:12 +02:00
  • ca787985f8 AbuseIPDB scores for clients that committed an offence, within a daily budget (closes #105) clawbot 2026-10-07 22:47:06 +02:00
  • 0b0f207423 DNS blocklists asked in the background, verdicts kept (closes #104) clawbot 2026-10-07 21:09:51 +02:00
  • 2b8c98ba1f Blocklists and an AS percentage file fetched by URL (closes #29) clawbot 2026-10-07 19:09:41 +02:00
  • 82e20e0cb5 Anomaly thresholds: alerts for unusual traffic, nothing refused (closes #101) clawbot 2026-10-07 16:12:19 +02:00
  • 2421cdc273 Lower limits for listed AS numbers and countries (closes #21) clawbot 2026-10-07 14:22:01 +02:00
  • f35e3ddfe8 Byte limits per client over a minute, an hour and a day (closes #20) clawbot 2026-10-07 13:13:06 +02:00
  • 0dc26041dc make tidy, and make check failing on an untidy go.mod or go.sum (closes #99) clawbot 2026-10-07 10:30:46 +02:00
  • c80753c56e Look clients up in the IPinfo Lite file with SWWAF_LOOKUP_SOURCE=file (closes #22) clawbot 2026-10-07 10:04:10 +02:00
  • 26f4abef7f AS number and country looked up for every client (closes #95) clawbot 2026-10-07 08:46:01 +02:00
  • f35cbd01cf Instance name on process log lines and every metric (closes #91) clawbot 2026-10-07 06:48:09 +02:00
  • 70a8ea1b92 Alerts to Slack and ntfy, each destination with its own queue (closes #90) clawbot 2026-10-07 05:54:34 +02:00
  • 432097ee3f Alerts to a JSON webhook, with a cooldown and an hourly summary (closes #26) clawbot 2026-10-07 04:21:24 +02:00
  • 5d6f6ffaf9 Admin endpoints for bans and clients on the single listener (closes #27) clawbot 2026-10-07 01:13:16 +02:00
  • bff65f4e2f Settings given as files: the _FILE form of every setting (closes #87) clawbot 2026-10-07 00:01:19 +02:00
  • ee9ba08a8a Bans an admin makes or lifts: the admin cause, a reason, lifted bans kept (closes #86) clawbot 2026-10-06 23:09:52 +02:00
  • 0797e5def2 Send every log line to a syslog server as well (closes #28) clawbot 2026-10-06 22:02:36 +02:00
  • e77dfb6891 Rule files, and bans for a clear sign of attack (closes #24) clawbot 2026-10-06 20:38:35 +02:00
  • 74bdc6a449 Leave SWWAF_RATE_LIMIT_EXEMPT_PATHS out of the request rate limits (closes #77) clawbot 2026-10-06 18:47:13 +02:00
  • 808e69f442 Log the rest of the request log's fields (closes #79) clawbot 2026-10-06 17:26:21 +02:00
  • 6ec52e5b87 Take in an admin's edits of the state files while running (closes #68) clawbot 2026-10-06 14:18:13 +02:00
  • cff385af41 Observe mode: log what would be refused, refuse nothing (closes #78) clawbot 2026-10-06 13:04:43 +02:00
  • 234c5eac60 Serve Prometheus metrics behind SWWAF_METRICS_TOKEN (closes #23) clawbot 2026-10-06 11:40:27 +02:00
  • 68f687cb0c Run the GeoJS lookup tests on a clock the test controls (closes #73) clawbot 2026-10-06 09:12:50 +02:00
  • df2c5042d2 Keep the bans, the clients and GeoJS's answers in state files (closes #17) clawbot 2026-10-06 08:31:52 +02:00
  • 73ca94f850 Ban the netblock of a client that breaks a rate limit, in memory (closes #18) clawbot 2026-10-06 05:29:03 +02:00
  • 0f85c9ae07 The header size and the idle time as settings (closes #70) clawbot 2026-10-06 05:05:31 +02:00
  • 50df9ee36e Re-vendor the canonical files from sneak/prompts at dd4027b (closes #65) clawbot 2026-10-06 04:13:35 +02:00
  • 7f6f89cd83 Network lists: always allowed, exempt from rate limits, always refused (closes #19) clawbot 2026-10-06 02:36:27 +02:00
  • df4cf769e0 Derive the proxy tests' short timeout setting from the timeout (closes #61) clawbot 2026-10-04 11:50:08 +02:00
  • 8410cf05e6 Quiet the useradd and Perl warnings in the image build (closes #58) clawbot 2026-10-04 11:38:14 +02:00
  • e7fb88af9e Spend less of make test writing the image and waiting (closes #56) clawbot 2026-10-04 11:13:32 +02:00
  • d4f90dba37 The image apps build FROM, with its health check (closes #45) clawbot 2026-10-04 10:05:30 +02:00
  • 0750879e58 Country allow and deny lists, looked up through GeoJS (closes #44) clawbot 2026-10-04 08:29:41 +02:00
  • 6977ff73df Proxy timing tests outlast a hold-up of the test process (closes #53) clawbot 2026-10-04 07:53:18 +02:00
  • d730fcb57d Point the unreachable-app test at port 1 (closes #51) clawbot 2026-10-04 06:39:07 +02:00
  • 6bd5f620f6 TestRequestTimeouts expects 504 when none of the body reached the app (closes #49) clawbot 2026-10-04 06:09:22 +02:00
  • f51459fbfe Per-client request rate limits over a minute, an hour and a day (closes #43) clawbot 2026-10-04 04:24:34 +02:00
  • bedd324f3c Add the MIT licence (closes #15) clawbot 2026-10-04 03:07:52 +02:00
  • a399601c77 Settle the spec's open points after milestones 1 and 2 (closes #36) clawbot 2026-10-04 02:57:24 +02:00
  • 2e35528c62 Settle the open points of the Ubuntu and nixpkgs image (closes #38) clawbot 2026-10-04 02:42:56 +02:00
  • 983192ace3 Deploy model: listen port, token files, state directory owner (closes #33) clawbot 2026-10-04 01:42:43 +02:00
  • d76715b0df Pass-through proxy with timeouts, size limits and a request log (closes #13) clawbot 2026-10-03 17:24:34 +02:00
  • fd77e76177 Merge pull request 'Spec: SPEC.md and README.md to sneak's rulings, deploy model, milestones and Ubuntu base' (#31) from next into main main sneak 2026-09-29 02:57:57 +02:00
  • b821897db8 Build the smallwebwaf image on the latest Ubuntu LTS with nixpkgs (closes #34) clawbot 2026-09-29 02:43:55 +02:00
  • 7be4314f55 SPEC follows milestones 1 and 2: build order, two size limits, GeoJS answers in memory (closes #16) clawbot 2026-09-29 02:10:34 +02:00
  • ba54ecb009 Deploy model: apps build FROM the smallwebwaf image, settings prefixed SWWAF_ (closes #12) clawbot 2026-09-29 01:48:47 +02:00
  • 789895782e Rewrite SPEC and README to sneak's rulings and internet-ready defaults (closes #6) clawbot 2026-09-29 00:53:01 +02:00
  • a0d2c21346 Add README, SPEC and tool evaluation, closes #1 sneak 2026-09-21 07:42:45 +00:00