Commit Graph

26 Commits (41933cc367ad3c09ff7d3d0d6c224365c790125f)

Author SHA1 Message Date
Kevin Chung 36c83b59bc
1.2.0 (#627)
* Changing to a new plugin oriented challenge type plugin and fixing extra width on admin chal description

* Add window.challenge.submit, renderSubmissionResponse, and csrf_nonce

* Update admin side renderer calls

* Updating to Flask 1.0 and adding files for flask run

* Adding a preliminary case-insensitive key

* Adding case insensitive keys

* Adding CTF Logo

* Reducing the amount of team information shown on the main page

* Add better base64 helpers

* Switch from button to badge

* Rudimentary solve checking from admin panel

* Refine admin chals solves view & fix PEP8

* Compare base64 encoded data with bytestring

* Removing need to urlencode/urldecode in base64 wrappers

* Adding decorator documentation

* Randomly order tests & add test for case_insensitive flags

* Add regex flag case_insensitive test

* Add tests for /admin/chal/1/solves and ctf_logo
2018-05-03 18:04:39 -04:00
Victor "Nate" Graf 54d12460d5 Improve the flexibility and ease-of-use for docker-compose deployment (#560)
* docker-compose improvements
    * Use gevent gunicorn workers
    * Makes logs easier to access
* Customization of the logs location
* Improve secret key generation & only generate secret keys if one isn't defined (Closes #123)
* Install requirements required by plugins
2018-02-11 03:52:21 -05:00
Kevin Chung 0aefdcc162
Update requirements.txt and fix docker-compose mariadb issue (#566)
* Update dependencies in requirements.txt 
* Fix issue where mariadb would remove gunicorn database connections in docker-compose
2018-02-09 01:56:35 -05:00
Kevin Chung 3af98b17d5
Version 1.1 CTFd (#514)
* Bootstrap v4 (#490)
* Upgrading original theme to use Bootstrap v4 and overall improve use of utility classes
* Fixing graph issues. Colors per team & cleaner hover
* The solves tab now shows relative time instead of absolute time
* Redesign admin theme
* Updating modals and changing form name from desc to description
* Moving CSS config from Pages to Config page
* Adding IP address count to statistics
* Move control of certain modals (files, flags, tags, hints) to challenges page
* Expanding size of config page
* Combining statistics and graphs pages
* Moving percentage solved to the statistics page instead of the admin challenges page

* Rename Keys.key_type to Keys.type (#459) (#478)

* Rename keys.key_type to keys.type (#459)
* Fixing previous migration to not be worried about key_type v type

* Fixing loading of challenge type plugins

* Switching from Handlebars to Nunjucks (#491)

* Switching from Handlebars to Nunjucks
* Allow admins to unlock hints before CTF begins and test that this is not allowed for regular users

* Authed only (#492)

* Adding authed_only decorator and adding next to url_for

* Adding a basic preview to hints (#494)

* Hints have a preview now for creating and updating hints. HTML and markdown are still allowed.

* Ezq (#495)

* Adding ezq as a simple wrapper around bootstrap modals

* Use tabs not spaces and remove gray background on inputs

* Adding title & draft to Pages. Making page preview open a new tab (#497)

* Adding title & draft to Pages.
* Making page preview open a new tab instead of render in the existing tab
* Draft pages cannot be seen without a preview

* Update check (#499)

* Add update_check function
* Notify user that a CTFd update is available in the admin panel
* Adding update_check tests

* Ratelimit (#500)

* Implementing a ratelimit function 
* Fix error page formatting
* Add rate limiting tests
* Rate limit authentication functions and rate limit admin send email function

* Load user solves before we load challenges to avoid unstyled buttons (#502)

* Add a challenge preview (#503)

* Adding a challenge preview to the admin panel
* Change /admin/chals/<int:chalid> to /admin/chal/<int:chalid>

* Adding codecov (#504)

* Test coverage at https://codecov.io/gh/CTFd/CTFd

* Sendmail improvements (#505)

* Add get_smtp timeout, add sendmail error messages
* Adding more error handling to sendmail

* Adding Flask-Script (#507)

* Pause ctf (#508)

* Implement CTF pausing
* Test CTF pausing

* Fix loading challenges for users (#510)

* Fix loading challenges for users
* Temporarily switch themes in test

* Pause help text (#509)

* Adding pause help text

* Pages authed (#511)

* Adding authentication options to pages
* Adding tests for accessing pages while draft & auth_required

* Merging master into 1.1 (#513)

* Name the core theme and remove the original theme
2017-12-11 06:42:07 -05:00
Kevin Chung b4bdef966c Update requirements (#406)
* Updating to use dataset and datafreeze
     * Use a new datafreeze serializer to get around Python 3 issues. 
* Update requirements.txt
* Add simple test for export_ctf()
2017-10-07 21:29:03 -04:00
Kevin Chung 35e2125678 Adding redis to requirements just in case it isn't installed before (#366) 2017-08-25 20:30:47 -04:00
Kevin Chung 92f130d5de Fixing large ip solves (#307)
* Switching to using strings to store IP addresses because of the issues with storing them properly, Fixes #302, Fixes $306
* Only runs migrations when using a real database because SQlite is too inflexible to support migrations properly
* Removes calls to the ip helper functions but they can remain in case someone needs them in a plugin.
2017-07-08 17:53:14 -04:00
Kevin Chung 285b320ea5 Switching to netaddr because ip address parsing is hard (#275)
This also re-adds Windows support
2017-06-09 22:23:24 -04:00
Kevin Chung 6d9d03e35e Pages functionality improved (#267)
* Pages now support Markdown
* Pages now have a preview tab
* Adding a media library to Pages
2017-06-03 14:25:31 -04:00
Kevin Chung f4d766473d Import export (#244)
* Adding dataset and export function

* Removing unnecessary print

* First try at import_ctf

* Adding UI components

* First successful export and import

* Importing configs

* Alerting response for now
2017-04-14 02:53:36 -04:00
mschwager e9df6bf803 Pin third-party Python packages (#223) 2017-03-07 13:34:50 -05:00
Kevin Chung 935027c55d Marking 1.0.0 (#196)
* Use <int:xxx> in routes to prevent some errors 500 (#192)

* Use first_or_404() to prevent some errors 500 (#193)

* Add a populating script for awards. (#191)

* Creating upload_file util

* Marking 1.0.0 in __init__ and starting database migrations

* Upgrading some more HTML

* Adding CHANGELOG.md
2017-01-24 23:06:16 -05:00
Kevin Chung 50043b42c5 Merging changes from various forks
Until v1 is released all changes are fair game.

Caching support
Fixes for decoding confirmation and reset_password email tokens
Starting work on #154 specifying why challenges are not open
Adding a required parameter to HTML to sort of fix #153
Adding a column to specify when a team registered
Check static key by default in new key
Decreasing capability of pages functionality to address security
concerns
Fixing confirmations restrictions by modifying can__view_challenges()
2016-09-24 17:56:07 -04:00
Kevin Chung 9ef27ae54b Adding sqlalchemy-utils as a dependency in order to create databases automatically 2016-03-12 15:41:06 -05:00
CodeKevin 4ae11cf7fe Adding email verification
This commit has some model changes. It could be difficult to upgrade to
this commit.
2016-02-18 02:30:05 -05:00
Kevin Chung b89a8f17e1 Adding gunicorn 2015-11-17 21:24:10 -05:00
Kevin Chung df21544f13 Supports PY3, refinements to chal editor and viewer, model changes to resolve issues 2015-10-10 21:09:25 -04:00
CodeKevin 7d766372df Bugfixes and architectural changes
Moved some folders around, starting to remove subdomain handling,
blueprints, custom css, removed digital ocean interface, fixed some bugs
2015-09-13 23:55:22 -04:00
Blake Burkhart 0125be9403 Update installation scripts
Install libffi-dev in prepare.sh. Bcrypt seems to depend on this.

Add exact versions for all packages in requrements.txt
2015-03-21 20:40:57 -05:00
CodeKevin d09d0a9678 Closes #21 2015-03-15 04:18:39 -04:00
CodeKevin f2484c519a Closes #15 (Thanks mwinstead3790), various fixes 2015-03-14 23:01:21 -04:00
CodeKevin b1c09e832e Listing DO hosts
Swapped out API wrappers
2015-01-24 03:50:45 -05:00
CodeKevin 7642aeb1e5 Starting DO integration 2015-01-24 00:48:41 -05:00
takeshix 88c79ec1a6 Missing dependencies added 2015-01-02 20:19:00 +01:00
Mark Ignacio b5e98a414e add py-bcrypt 2015-01-01 18:08:50 -05:00
Mark Ignacio bd7c059ff9 freeze requirements and change pip install command 2015-01-01 18:01:01 -05:00