From a7ca259b8b7cddf165c394b13cf1d7da582b24d9 Mon Sep 17 00:00:00 2001 From: aron Date: Fri, 13 Dec 2024 09:04:14 +0100 Subject: [PATCH 01/17] Update update links to portal.sysreptor.com --- .gitlab-ci.yml | 2 +- README.md | 12 ++++++------ api/src/reportcreator_api/conf/settings.py | 2 +- docs/docs/features-and-pricing.md | 2 +- docs/overrides/partials/header.html | 2 +- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f98ed5503..ef7f1e870 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -270,7 +270,7 @@ release-prod: # Send notification for new release - > - curl https://cloud.sysreptor.com/api/v1/notifications/new/ \ + curl https://portal.sysreptor.com/api/v1/notifications/new/ \ -X POST \ -H "Authorization: Bearer ${SAASPANEL_API_TOKEN}" \ -H "Content-Type: application/json" \ diff --git a/README.md b/README.md index eb849822f..fa3d6f9d9 100644 --- a/README.md +++ b/README.md @@ -27,13 +27,13 @@

- Playground • + PlaygroundIdeasQuestionsDocumentationFeatures and PricingInstallation • - Buy SysReptor + Buy SysReptor

--- @@ -51,13 +51,13 @@ SysReptor is a fully customizable pentest reporting platform designed for penetr ## SysReptor Cloud -You just want to start pentest reporting and save yourself all the effort of setting up, configuring and maintaining a dedicated server? Then SysReptor Cloud is the right choice for you! Get to know SysReptor on our [Playground](https://cloud.sysreptor.com/demo) and if you like it, you can get your personal Cloud instance [here](https://cloud.sysreptor.com/order/). +You just want to start pentest reporting and save yourself all the effort of setting up, configuring and maintaining a dedicated server? Then SysReptor Cloud is the right choice for you! Get to know SysReptor on our [Playground](https://portal.sysreptor.com/demo) and if you like it, you can get your personal Cloud instance [here](https://portal.sysreptor.com/order/).

- Demo + Demo

-

🦖 Try demo here

-

🚀 Sign up for SysReptor Cloud here

+

🦖 Try demo here

+

🚀 Sign up for SysReptor Cloud here


diff --git a/api/src/reportcreator_api/conf/settings.py b/api/src/reportcreator_api/conf/settings.py index cef4ff474..9549787a7 100644 --- a/api/src/reportcreator_api/conf/settings.py +++ b/api/src/reportcreator_api/conf/settings.py @@ -674,7 +674,7 @@ def __bool__(self): # Notifications VERSION = config('VERSION', default='dev') INSTANCE_TAGS = config('INSTANCE_TAGS', cast=Csv(delimiter=';', post_process=remove_empty_items), default='on-premise') -NOTIFICATION_IMPORT_URL = config('NOTIFICATION_IMPORT_URL', default='https://cloud.sysreptor.com/api/v1/notifications/') +NOTIFICATION_IMPORT_URL = config('NOTIFICATION_IMPORT_URL', default='https://portal.sysreptor.com/api/v1/notifications/') # License LICENSE = config('LICENSE', default=None) diff --git a/docs/docs/features-and-pricing.md b/docs/docs/features-and-pricing.md index 34000aa68..2c8d87b2d 100755 --- a/docs/docs/features-and-pricing.md +++ b/docs/docs/features-and-pricing.md @@ -21,7 +21,7 @@ | [__Easy Backups__](setup/backups.md){ target=_blank } | X | | | [__SSO (oAuth/OIDC)__](users/oidc-setup.md){ target=_blank } | X | | | [__Project Archiving (encrypted)__](insights/archiving.md){ target=_blank } | X | | -| | [:fire: Get Started](setup/installation.md){ .md-button target="_blank" } | [:rocket: Buy](https://cloud.sysreptor.com/order/){ .md-button target="_blank"} | +| | [:fire: Get Started](setup/installation.md){ .md-button target="_blank" } | [:rocket: Buy](https://portal.sysreptor.com/order/){ .md-button target="_blank"} | | | [:material-phone: Contact Us](contact-us.md){ .md-button style="align:center;" } | [:sauropod: Book a Demo](https://outlook.office365.com/book/SysReptorDemo@syslifters.com/s/gUjy2xF2GEeSc_6mDLvvkA2){ .md-button style="align:center;" target=_blank } |

diff --git a/docs/overrides/partials/header.html b/docs/overrides/partials/header.html index 42e8c6298..a5e06e8b7 100644 --- a/docs/overrides/partials/header.html +++ b/docs/overrides/partials/header.html @@ -102,7 +102,7 @@ {% include "partials/search.html" %} {% endif %} - Playground + Playground {% if config.repo_url %}
{% include "partials/source.html" %} From 3818704abfc2bbee383c1badf523a1c67d047ca1 Mon Sep 17 00:00:00 2001 From: aron Date: Fri, 13 Dec 2024 09:06:58 +0100 Subject: [PATCH 02/17] Update minimum RAM --- docs/docs/setup/installation.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/docs/setup/installation.md b/docs/docs/setup/installation.md index 1053387ef..fd34f64b2 100755 --- a/docs/docs/setup/installation.md +++ b/docs/docs/setup/installation.md @@ -3,7 +3,7 @@ :octicons-server-24: Self-Hosted * Ubuntu -* 4GB RAM +* 8GB RAM * Latest [Docker](https://docs.docker.com/engine/install/ubuntu/){ target=_blank } (with docker-compose-plugin) ### Client From 4ae26d7e45fa75223057f9b8a0085e77513730a3 Mon Sep 17 00:00:00 2001 From: aron Date: Fri, 13 Dec 2024 09:09:40 +0100 Subject: [PATCH 03/17] Update S3 Storage config documentation --- docs/docs/setup/configuration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/docs/setup/configuration.md b/docs/docs/setup/configuration.md index 75cdbd2f0..f89d31329 100644 --- a/docs/docs/setup/configuration.md +++ b/docs/docs/setup/configuration.md @@ -197,7 +197,7 @@ GUEST_USERS_CAN_SEE_ALL_USERS=False ``` ### S3 Storage -Uploaded files and images can be stored in an S3 bucket. Files are stored on the filesystem in a docker volume by default. If data at rest encryption is configured files are encrypted (~~except images~~, images are also encrypted). +Uploaded files and images can be stored in an S3 bucket. Files are stored on the filesystem in a docker volume by default. If data at rest encryption is configured, all uploaded files (incl. images) are encrypted. `DEFAULT_S3_*` settings to apply to all file storages. It is possible to configure different settings per storage. From 9a6c822aa0c03acd82379d4a439182ced3ba319c Mon Sep 17 00:00:00 2001 From: aron Date: Fri, 13 Dec 2024 09:54:56 +0100 Subject: [PATCH 04/17] Add green heart to Community --- docs/.gitignore | 3 ++- docs/overrides/partials/post.html | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/.gitignore b/docs/.gitignore index 47c0dcbed..90a1e40ed 100755 --- a/docs/.gitignore +++ b/docs/.gitignore @@ -1,4 +1,5 @@ *.pyc site __pycache__ -.cache \ No newline at end of file +.cache +venv \ No newline at end of file diff --git a/docs/overrides/partials/post.html b/docs/overrides/partials/post.html index 7d7da5f7c..0a2faae12 100644 --- a/docs/overrides/partials/post.html +++ b/docs/overrides/partials/post.html @@ -48,7 +48,10 @@ {% if not post.meta.pro %}
  • - Community + + {% include ".icons/octicons/heart-fill-24.svg" %} + + Community {#- Collapse whitespace -#}
  • {% endif %} From 6419d2562ce15d17234967447329faa0512dcb77 Mon Sep 17 00:00:00 2001 From: aron Date: Fri, 13 Dec 2024 10:02:52 +0100 Subject: [PATCH 05/17] Update show&tell title --- docs/docs/show-and-tell/index.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/docs/show-and-tell/index.md b/docs/docs/show-and-tell/index.md index e69de29bb..ce98765d0 100644 --- a/docs/docs/show-and-tell/index.md +++ b/docs/docs/show-and-tell/index.md @@ -0,0 +1,3 @@ +--- +title: Show and Tell +--- From 28b605bd5649ae42f61a1ede9b9accbf4965f846 Mon Sep 17 00:00:00 2001 From: aron Date: Fri, 13 Dec 2024 10:09:56 +0100 Subject: [PATCH 06/17] Add note about unofficial platforms --- docs/docs/setup/installation.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/docs/setup/installation.md b/docs/docs/setup/installation.md index fd34f64b2..4ce5f301a 100755 --- a/docs/docs/setup/installation.md +++ b/docs/docs/setup/installation.md @@ -2,10 +2,12 @@ ### Server :octicons-server-24: Self-Hosted -* Ubuntu +* Ubuntu[^1] * 8GB RAM * Latest [Docker](https://docs.docker.com/engine/install/ubuntu/){ target=_blank } (with docker-compose-plugin) +[^1]: It may also run on [Kali](https://emvee-nl.github.io/posts/SysReptor/){ target=_blank }, [MacOS](https://alive-club-f8d.notion.site/Sysreptor-Install-M2-Studio-12e1fd44f31080a28acae6de346c6a30){ target=_blank }, RHEL, and more as long as you take care of all dependencies. Our install and update procedures, however, focus on Ubuntu. + ### Client :octicons-cloud-24: Cloud · :octicons-server-24: Self-Hosted From 3691d4e90c46b0bdbfc27ba8368fcb78b0e55ea2 Mon Sep 17 00:00:00 2001 From: aron Date: Fri, 13 Dec 2024 10:52:01 +0100 Subject: [PATCH 07/17] Update Project Number plugin docs --- docs/docs/setup/upgrade-to-professional.md | 2 +- plugins/projectnumber/README.md | 64 ++++++------------ .../docs/img/final_result_project_number.png | Bin 52263 -> 0 bytes plugins/projectnumber/docs/img/new_design.png | Bin 20419 -> 0 bytes .../img/project_number_as_report_field.png | Bin 0 -> 8606 bytes .../docs/img/project_number_as_tag.png | Bin 0 -> 10976 bytes 6 files changed, 23 insertions(+), 43 deletions(-) delete mode 100644 plugins/projectnumber/docs/img/final_result_project_number.png delete mode 100644 plugins/projectnumber/docs/img/new_design.png create mode 100644 plugins/projectnumber/docs/img/project_number_as_report_field.png create mode 100644 plugins/projectnumber/docs/img/project_number_as_tag.png diff --git a/docs/docs/setup/upgrade-to-professional.md b/docs/docs/setup/upgrade-to-professional.md index f473692d5..509d50804 100644 --- a/docs/docs/setup/upgrade-to-professional.md +++ b/docs/docs/setup/upgrade-to-professional.md @@ -11,5 +11,5 @@ - sysreptor/docker-compose.yml - languagetool/docker-compose.yml ``` -3. `cd` to `deploy/` and run `docker compose up -d` +3. `cd` to `deploy` and run `docker compose up -d` 4. Enjoy diff --git a/plugins/projectnumber/README.md b/plugins/projectnumber/README.md index 2412d12ba..1d6d3ff13 100644 --- a/plugins/projectnumber/README.md +++ b/plugins/projectnumber/README.md @@ -6,69 +6,49 @@ date: 28.11.2024 # Project Number Plugin -This pluigin adds functionality for a sequential project number for newly created projects. The String value of the project number can be customized using Django Templates. The project number will only be set if the project is newly created (not restored, imported or copied) and if the report field with "project_number" is configured in the Design. The report field id can be changed see [Field ID](#field-id) +This pluign adds sequential project numbers to newly created projects. The project number formatting can be [customized using Django Templates](#customizations). The project number will only be set if the project is newly created (not restored, imported or copied) and if the report field with "project_number" exists in the Design. You can use a [different field ID](#field-id) as your project number. ## Setup Instructions -1. Enable the Plugin in your app.env `ENABLED_PLUGINS=projectnumber` -2. Restart sysreptor. -3. Check if you see a new Model in you Admin Interface called Project Numbers. If its there the plugin should be installed successfully. +1. Enable the plugin in your app.env `ENABLED_PLUGINS=projectnumber` +2. Restart SysReptor (run `docker compose up -d` from the `deploy` directory). +3. Check if you see a new model in you admin interface named "Project numbers". If it is there, the plugin was installed successfully. ![Project Numbers Model](docs/img/project_number_admin_screen.png) ## Usage Instructions -1. Create/edit a Design -![Creating a new Design](docs/img/new_design.png) -2. Go to Report Fields and add a new Field with the ID "project_number" and Data Type of string or number to a section. +1. Add the report field "project_number" with data type "string" or "number". ![Screenshot of Project Number Field](docs/img/project_number_field_screen.png) -3. Using this Design, create a new Project. -4. Go to the newly created project and check in the section you added the Project Number field. It should contain the current Project Number. -![Project Number in Report](docs/img/final_result_project_number.png) +2. Use this Design to create a new project. +3. You should now see the project number in the report field and as a project tag. +![Project number as report field](docs/img/project_number_as_report_field.png) +![Project number as tag](docs/img/project_number_as_tag.png) ## Customizations ### Templates -Using the variable `PLUGIN_PROJECTNUMBER_TEMPLATE` you can use [Django Templates](https://docs.djangoproject.com/en/5.1/topics/templates/) to customize the value of the project number. In the template you can use `"{{project_number}}"` and `"{{datetime}}"`, these variables will be filled in by the plugin. +Using the variable `PLUGIN_PROJECTNUMBER_TEMPLATE` you can use [Django Templates](https://docs.djangoproject.com/en/5.1/topics/templates/) to customize the value of the project number. In the template, you can use the variables `{{project_number}}` and `{{datetime}}`, and built-in Django template tags (like `{% now %}`, `{%random_number%}`). Here are some examples: -- P24-0001: P- - - `"P{% now 'y' %}-{{project_number|stringformat:'04d'}}"` -- 2024-0001: - - - `"{% now 'Y' %}-{{project_number|stringformat:'04d'}}"` -- Prefix-24110001-Suffix: Prefix--Suffix - - `"Prefix-{% now 'y' %}{% now 'm' %}{{project_number|stringformat:'04d'}}-Suffix"` - -- P000117: P - - `"P{{ project_number|stringformat:'04d' }}{% random_number 5 23|stringformat:'02d' %}"` - -- 1001: 1000 + - `"{{ 1000|add:project_number }}"` +- Four-digit year, project number with trailing zeros, e.g., **2024-0001**: -### Field ID - -By default the field id is "project_number". This can be changed using the `PLUGIN_PROJECTNUMBER_FIELD_ID` environment variable. - -Here is an example: `PLUGIN_PROJECTNUMBER_FIELD_ID=project_id` - -## Troubleshooting + `{% now 'Y' %}-{{project_number|stringformat:'04d'}}` +- Static prefix "P" with two-digit year, project number with trailing zeros, e.g., **P24-0001**: + + `P{% now 'y' %}-{{project_number|stringformat:'04d'}}` -### Docker Compose Unexpected Characters +- Year-Month-Day, project number and static suffix "A", e.g., **2024-11-01-1-A**: -When using docker compose for development you might run into issues due to unexpected characters. This is likely due to a double quote to single quote mix up. + `{% now 'Y' %}-{% now 'm' %}-{% now 'd' %}-{{project_number}}-A` -Here is an example that would cause such issues: +- Project number and random number between 10 and 77, e.g., **1-17**: -`"P{% now "y" %}-{{project_number|stringformat:"04d"}}"` + `{{project_number}}{% random_number 10 77|stringformat:'02d' %}` -To fix this you would need to replace all double quotes within the outer ones with single quotes like: -`"P{% now 'y' %}-{{project_number|stringformat:'04d'}}"` +### Field ID -or +By default, the field id is "project_number". This can be changed using the `PLUGIN_PROJECTNUMBER_FIELD_ID` environment variable. -`'P{% now "y" %}-{{project_number|stringformat:"04d"}}'` \ No newline at end of file +Add this setting you your app.env and restart your Docker container (using `docker compose up -d` from the `deploy` directory), e.g., `PLUGIN_PROJECTNUMBER_FIELD_ID=project_id`. diff --git a/plugins/projectnumber/docs/img/final_result_project_number.png b/plugins/projectnumber/docs/img/final_result_project_number.png deleted file mode 100644 index 00418a38f0996a67ae8e308f572b33715d0cd5c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 52263 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 diff --git a/plugins/projectnumber/docs/img/new_design.png b/plugins/projectnumber/docs/img/new_design.png deleted file mode 100644 index 1268594ac78f056ecbb6fb2e82fc5f993bc47cd5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20419 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%0D;zAC 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 diff --git a/plugins/projectnumber/docs/img/project_number_as_report_field.png b/plugins/projectnumber/docs/img/project_number_as_report_field.png new file mode 100644 index 0000000000000000000000000000000000000000..e242be098a364d6bcdf4e33d63645205d08ccef1 GIT binary patch literal 8606 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
    v4ukw*DwaL#8Mo3u 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 literal 0 HcmV?d00001 diff --git a/plugins/projectnumber/docs/img/project_number_as_tag.png b/plugins/projectnumber/docs/img/project_number_as_tag.png new file mode 100644 index 0000000000000000000000000000000000000000..ac5cc36b4315c804b994dd3f4ad13b3fecde75c2 GIT binary patch literal 10976 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 Date: Fri, 13 Dec 2024 10:55:12 +0100 Subject: [PATCH 08/17] Update plugin overview docs page --- docs/docs/setup/plugins.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/docs/setup/plugins.md b/docs/docs/setup/plugins.md index 785c4e788..f66c8b2ed 100644 --- a/docs/docs/setup/plugins.md +++ b/docs/docs/setup/plugins.md @@ -4,12 +4,12 @@ The functionality of SysReptor can be extended by plugins. Plugins can hook into the SysReptor core and provide additional features both in the API and the web UI. -All plugins are disabled by default. To enable a plugin, add it to the [`ENABLED_PLUGINS`](./configuration.md#plugins) setting. +All plugins are disabled by default. To enable a plugin, add the [`ENABLED_PLUGINS`](./configuration.md#plugins) variable to your app.env (e.g., `ENABLED_PLUGINS=cyberchef,checkthehash`) and restart your container (`docker compose up -d` from the `deploy` directory). ## Official Plugins -Official plugins are maintained by the SysReptor team and are included in official docker images. +Official plugins are maintained by us and are shipped with our official docker images. | Plugin | Description | | | ------ | ----------- | --- | From 76d350796b527077d697ada5c3ecb09dd974ac30 Mon Sep 17 00:00:00 2001 From: aron Date: Fri, 13 Dec 2024 11:02:47 +0100 Subject: [PATCH 09/17] Update CyberChef plugin docs --- plugins/cyberchef/README.md | 6 +++++- plugins/cyberchef/docs/img/cyberchef.png | Bin 0 -> 43964 bytes plugins/projectnumber/README.md | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 plugins/cyberchef/docs/img/cyberchef.png diff --git a/plugins/cyberchef/README.md b/plugins/cyberchef/README.md index 73cb734db..250286179 100644 --- a/plugins/cyberchef/README.md +++ b/plugins/cyberchef/README.md @@ -1,6 +1,10 @@ # CyberChef Plugin -Integrate CyberChef into SysReptor. +Add CyberChef to SysReptor. + +Add cyberchef to the `ENABLED_PLUGINS` variable in your `app.env` and restart your containers using `docker compose up -d` from the `deploy` directory. ``` ENABLED_PLUGINS="cyberchef" ``` + +![CyberChef in SysReptor](docs/img/cyberchef.png) \ No newline at end of file diff --git a/plugins/cyberchef/docs/img/cyberchef.png b/plugins/cyberchef/docs/img/cyberchef.png new file mode 100644 index 0000000000000000000000000000000000000000..dc6594fdd0e7909e11d860ea6980779d2db8afd6 GIT binary patch literal 43964 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