| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| 3.8.2 source code.tar.gz | 2026-02-05 | 13.6 MB | |
| 3.8.2 source code.zip | 2026-02-05 | 14.1 MB | |
| README.md | 2026-02-05 | 1.4 kB | |
| Totals: 3 Items | 27.7 MB | 0 | |
3.8.2 / 2025-02-05
Security
- Fixes a vulnerability where a malicious admin user could import a crafted zip file to write files arbitrarily depending on the deployment
General
- When a user is submission ratelimited, those submissions will now be the
ratelimitsubmission type instead ofincorrect - Fix issues with ratelimiting on max attempt challenges
- Switch max attempt timeout messaging to seconds instead of minutes
- Fix issue where users would get an error when solving an already solved challenge
Plugins
- Add
Ratelimitedssubmission class - Add
BaseChallenge.ratelimited()method which createsRatelimitedssubmissions - Add
force_allparameter toCTFd.plugins.migrations.upgrade()to allow plugins to decide if they want to force run all migrations - Add
app.overridden_functionsglobal which allows plugin developers to override functions that support the behavior - Raise
ChallengeSolveExceptioninBaseChallenge.solve()when encountering a duplicate solve situation
Themes
- Mark required fields in registration, login, and custom fields with a red asterisk
Deployment
- The provided Docker Compose file will no longer use the
rootuser and instead use the providedctfduser - Add
PUTmethod to IP address tracking
Translations
- Add Norwegian, Turkish, Croatian translation