diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index a5f513404a..165148a8bf 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -47,7 +47,7 @@ body: label: BunkerWeb version description: What version of BunkerWeb are you running? placeholder: Version - value: 1.5.10 + value: 1.5.11 validations: required: true - type: dropdown diff --git a/.github/workflows/1.5.yml b/.github/workflows/1.5.yml index 47d3bfece9..fc888e7de7 100644 --- a/.github/workflows/1.5.yml +++ b/.github/workflows/1.5.yml @@ -80,7 +80,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - id: set-matrix run: | tests=$(find ./tests/ui/ -name "*_page.py" -type f -printf "%f\n" | jq -c --raw-input --slurp 'split("\n")| .[0:-1]') @@ -113,7 +113,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - id: set-matrix run: | tests=$(find ./tests/core/ -maxdepth 1 -mindepth 1 -type d -printf "%f\n" | jq -c --raw-input --slurp 'split("\n")| .[0:-1]') @@ -151,12 +151,12 @@ jobs: packages: write steps: - name: Login to Docker Hub - uses: docker/login-action@0d4c9c5ea7693da7b068278f7b52bda2a190a446 # v3.2.0 + uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_TOKEN }} - name: Login to ghcr - uses: docker/login-action@0d4c9c5ea7693da7b068278f7b52bda2a190a446 # v3.2.0 + uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 with: registry: ghcr.io username: ${{ github.actor }} diff --git a/.github/workflows/beta.yml b/.github/workflows/beta.yml index 14f01f0db9..a957f1f360 100644 --- a/.github/workflows/beta.yml +++ b/.github/workflows/beta.yml @@ -133,7 +133,7 @@ jobs: versionrpm: ${{ steps.getversionrpm.outputs.versionrpm }} steps: - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Get VERSION id: getversion run: echo "version=$(cat src/VERSION | tr -d '\n')" >> "$GITHUB_OUTPUT" diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index cbbca4c092..d85ddd3126 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -19,9 +19,9 @@ jobs: language: ["python", "javascript"] steps: - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Set up Python 3.9 - uses: actions/setup-python@39cd14951b08e74b54015e9e001cdefcf80e669f # v5.1.1 + uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 if: matrix.language == 'python' with: python-version: "3.9" @@ -35,12 +35,12 @@ jobs: python -m pip install --no-cache-dir --require-hashes -r src/common/db/requirements.txt echo "CODEQL_PYTHON=$(which python)" >> $GITHUB_ENV - name: Initialize CodeQL - uses: github/codeql-action/init@8214744c546c1e5c8f03dde8fab3a7353211988d # v3.26.7 + uses: github/codeql-action/init@662472033e021d55d94146f66f6058822b0b39fd # v3.27.0 with: languages: ${{ matrix.language }} config-file: ./.github/codeql.yml setup-python-dependencies: false - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@8214744c546c1e5c8f03dde8fab3a7353211988d # v3.26.7 + uses: github/codeql-action/analyze@662472033e021d55d94146f66f6058822b0b39fd # v3.27.0 with: category: "/language:${{matrix.language}}" diff --git a/.github/workflows/container-build.yml b/.github/workflows/container-build.yml index 28fa3c0439..dc72636997 100644 --- a/.github/workflows/container-build.yml +++ b/.github/workflows/container-build.yml @@ -45,7 +45,7 @@ jobs: steps: # Prepare - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Replace VERSION if: inputs.RELEASE == 'testing' || inputs.RELEASE == 'dev' run: chmod +x ./misc/update-version.sh && ./misc/update-version.sh ${{ inputs.RELEASE }} @@ -66,10 +66,10 @@ jobs: SSH_IP: ${{ secrets.ARM_SSH_IP }} SSH_CONFIG: ${{ secrets.ARM_SSH_CONFIG }} - name: Setup Buildx - uses: docker/setup-buildx-action@988b5a0280414f521da01fcc63a27aeeb4b104db # v3.6.1 + uses: docker/setup-buildx-action@c47758b77c9736f4b2ef4073d4d51994fabfe349 # v3.7.1 if: inputs.CACHE_SUFFIX != 'arm' - name: Setup Buildx (ARM) - uses: docker/setup-buildx-action@988b5a0280414f521da01fcc63a27aeeb4b104db # v3.6.1 + uses: docker/setup-buildx-action@c47758b77c9736f4b2ef4073d4d51994fabfe349 # v3.7.1 if: inputs.CACHE_SUFFIX == 'arm' with: endpoint: ssh://root@arm @@ -95,7 +95,7 @@ jobs: # Build cached image - name: Build image if: inputs.CACHE == true - uses: docker/build-push-action@5176d81f87c23d6fc96624dfdbcd9f3830bbe445 # v6.5.0 + uses: docker/build-push-action@4f58ea79222b3b9dc2c8bbdd6debcef730109a75 # v6.9.0 with: context: . file: ${{ inputs.DOCKERFILE }} @@ -108,7 +108,7 @@ jobs: # Build non-cached image - name: Build image if: inputs.CACHE != true - uses: docker/build-push-action@5176d81f87c23d6fc96624dfdbcd9f3830bbe445 # v6.5.0 + uses: docker/build-push-action@4f58ea79222b3b9dc2c8bbdd6debcef730109a75 # v6.9.0 with: context: . file: ${{ inputs.DOCKERFILE }} @@ -120,7 +120,7 @@ jobs: # Check OS vulnerabilities - name: Check OS vulnerabilities if: ${{ inputs.CACHE_SUFFIX != 'arm' }} - uses: aquasecurity/trivy-action@6e7b7d1fd3e4fef0c5fa8cce1229c54b2c9bd0d8 # v0.24.0 + uses: aquasecurity/trivy-action@915b19bbe73b92a6cf82a1bc12b087c9a19a5fe2 # v0.28.0 with: vuln-type: os skip-dirs: /root/.cargo @@ -130,6 +130,8 @@ jobs: ignore-unfixed: false severity: UNKNOWN,LOW,MEDIUM,HIGH,CRITICAL trivyignores: .trivyignore + env: + TRIVY_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-db # Push image - name: Push image if: inputs.PUSH == true diff --git a/.github/workflows/create-arm.yml b/.github/workflows/create-arm.yml index 8b7291dd45..d2bd9f665c 100644 --- a/.github/workflows/create-arm.yml +++ b/.github/workflows/create-arm.yml @@ -33,7 +33,7 @@ jobs: steps: # Prepare - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Get ARM availabilities id: availabilities uses: scaleway/action-scw@be2696f261325a78354eda14988c80405f33e082 diff --git a/.github/workflows/dev-update-mmdb.yml b/.github/workflows/dev-update-mmdb.yml index 9d1c7b8c08..ec82336dc6 100644 --- a/.github/workflows/dev-update-mmdb.yml +++ b/.github/workflows/dev-update-mmdb.yml @@ -12,7 +12,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: fetch-depth: 0 token: ${{ secrets.BUNKERBOT_TOKEN }} diff --git a/.github/workflows/dev.yml b/.github/workflows/dev.yml index cfb4fc9985..98c300440c 100644 --- a/.github/workflows/dev.yml +++ b/.github/workflows/dev.yml @@ -80,7 +80,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - id: set-matrix run: | tests=$(find ./tests/ui/ -name "*_page.py" -type f -printf "%f\n" | jq -c --raw-input --slurp 'split("\n")| .[0:-1]') @@ -113,7 +113,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - id: set-matrix run: | tests=$(find ./tests/core/ -maxdepth 1 -mindepth 1 -type d -printf "%f\n" | jq -c --raw-input --slurp 'split("\n")| .[0:-1]') diff --git a/.github/workflows/doc-to-pdf.yml b/.github/workflows/doc-to-pdf.yml index 0a3fc18ec0..b54a208b6e 100644 --- a/.github/workflows/doc-to-pdf.yml +++ b/.github/workflows/doc-to-pdf.yml @@ -13,9 +13,9 @@ jobs: steps: # Prepare - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Install Python - uses: actions/setup-python@39cd14951b08e74b54015e9e001cdefcf80e669f # v5.1.1 + uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 with: python-version: "3.10" - name: Install doc dependencies @@ -23,7 +23,7 @@ jobs: - name: Install chromium run: sudo apt install chromium-browser - name: Install node - uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v4.0.3 + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: node-version: 18 - name: Install puppeteer @@ -32,7 +32,7 @@ jobs: run: mkdocs serve & sleep 10 - name: Run pdf script run: node docs/misc/pdf.js http://localhost:8000/print_page/ BunkerWeb_documentation_v${{ inputs.VERSION }}.pdf 'BunkerWeb documentation v${{ inputs.VERSION }}' - - uses: actions/upload-artifact@0b2256b8c012f0828dc542b3febcab082c67f72b # v4.3.4 + - uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3 with: name: BunkerWeb_documentation_v${{ inputs.VERSION }}.pdf path: BunkerWeb_documentation_v${{ inputs.VERSION }}.pdf diff --git a/.github/workflows/linux-build.yml b/.github/workflows/linux-build.yml index 4123b3a911..8417e2d60e 100644 --- a/.github/workflows/linux-build.yml +++ b/.github/workflows/linux-build.yml @@ -37,7 +37,7 @@ jobs: steps: # Prepare - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Replace VERSION if: inputs.RELEASE == 'testing' || inputs.RELEASE == 'dev' || inputs.RELEASE == 'ui' run: chmod +x ./misc/update-version.sh && ./misc/update-version.sh ${{ inputs.RELEASE }} @@ -75,10 +75,10 @@ jobs: SSH_IP: ${{ secrets.ARM_SSH_IP }} SSH_CONFIG: ${{ secrets.ARM_SSH_CONFIG }} - name: Setup Buildx - uses: docker/setup-buildx-action@988b5a0280414f521da01fcc63a27aeeb4b104db # v3.6.1 + uses: docker/setup-buildx-action@c47758b77c9736f4b2ef4073d4d51994fabfe349 # v3.7.1 if: startsWith(env.ARCH, 'arm') == false - name: Setup Buildx (ARM) - uses: docker/setup-buildx-action@988b5a0280414f521da01fcc63a27aeeb4b104db # v3.6.1 + uses: docker/setup-buildx-action@c47758b77c9736f4b2ef4073d4d51994fabfe349 # v3.7.1 if: startsWith(env.ARCH, 'arm') == true with: endpoint: ssh://root@arm @@ -97,7 +97,7 @@ jobs: # Build testing package image - name: Build package image if: inputs.RELEASE == 'testing' || inputs.RELEASE == 'dev' || inputs.RELEASE == 'ui' || inputs.RELEASE == '1.5' - uses: docker/build-push-action@5176d81f87c23d6fc96624dfdbcd9f3830bbe445 # v6.5.0 + uses: docker/build-push-action@4f58ea79222b3b9dc2c8bbdd6debcef730109a75 # v6.9.0 with: context: . load: true @@ -109,7 +109,7 @@ jobs: # Build non-testing package image - name: Build package image if: inputs.RELEASE != 'testing' && inputs.RELEASE != 'dev' && inputs.RELEASE != 'ui' && inputs.RELEASE != '1.5' - uses: docker/build-push-action@5176d81f87c23d6fc96624dfdbcd9f3830bbe445 # v6.5.0 + uses: docker/build-push-action@4f58ea79222b3b9dc2c8bbdd6debcef730109a75 # v6.9.0 with: context: . load: true @@ -132,7 +132,7 @@ jobs: scp -r root@arm:/root/package-${{ inputs.LINUX }} ./package-${{ inputs.LINUX }} env: LARCH: ${{ env.LARCH }} - - uses: actions/upload-artifact@0b2256b8c012f0828dc542b3febcab082c67f72b # v4.3.4 + - uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3 with: name: package-${{ inputs.LINUX }}-${{ env.LARCH }} path: package-${{ inputs.LINUX }}/*.${{ inputs.PACKAGE }} @@ -145,7 +145,7 @@ jobs: images: ghcr.io/bunkerity/${{ inputs.LINUX }}-tests:${{ inputs.RELEASE }} - name: Build test image if: inputs.TEST == true - uses: docker/build-push-action@5176d81f87c23d6fc96624dfdbcd9f3830bbe445 # v6.5.0 + uses: docker/build-push-action@4f58ea79222b3b9dc2c8bbdd6debcef730109a75 # v6.9.0 with: context: . file: tests/linux/Dockerfile-${{ inputs.LINUX }} diff --git a/.github/workflows/push-doc.yml b/.github/workflows/push-doc.yml index 325f75cf01..652f78c3da 100644 --- a/.github/workflows/push-doc.yml +++ b/.github/workflows/push-doc.yml @@ -18,7 +18,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: fetch-depth: 0 token: ${{ secrets.BUNKERBOT_TOKEN }} @@ -29,7 +29,7 @@ jobs: run: | git config --global user.name "BunkerBot" git config --global user.email "bunkerbot@bunkerity.com" - - uses: actions/setup-python@39cd14951b08e74b54015e9e001cdefcf80e669f # v5.1.1 + - uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 with: python-version: "3.10" - name: Install doc dependencies diff --git a/.github/workflows/push-docker.yml b/.github/workflows/push-docker.yml index 5fe860d1cf..7b49580aae 100644 --- a/.github/workflows/push-docker.yml +++ b/.github/workflows/push-docker.yml @@ -33,7 +33,7 @@ jobs: steps: # Prepare - name: Check out repository code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Login to Docker Hub uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 with: @@ -58,7 +58,7 @@ jobs: SSH_IP: ${{ secrets.ARM_SSH_IP }} SSH_CONFIG: ${{ secrets.ARM_SSH_CONFIG }} - name: Setup Buildx (ARM) - uses: docker/setup-buildx-action@988b5a0280414f521da01fcc63a27aeeb4b104db # v3.6.1 + uses: docker/setup-buildx-action@c47758b77c9736f4b2ef4073d4d51994fabfe349 # v3.7.1 with: endpoint: ssh://root@arm platforms: linux/arm64,linux/arm/v7,linux/arm/v6 @@ -70,7 +70,7 @@ jobs: images: bunkerity/${{ inputs.IMAGE }} # Build and push - name: Build and push - uses: docker/build-push-action@5176d81f87c23d6fc96624dfdbcd9f3830bbe445 # v6.5.0 + uses: docker/build-push-action@4f58ea79222b3b9dc2c8bbdd6debcef730109a75 # v6.9.0 with: context: . file: ${{ inputs.DOCKERFILE }} diff --git a/.github/workflows/push-github.yml b/.github/workflows/push-github.yml index 39fb49cc80..a9108cc384 100644 --- a/.github/workflows/push-github.yml +++ b/.github/workflows/push-github.yml @@ -15,7 +15,7 @@ jobs: runs-on: ubuntu-latest steps: # Checkout - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 # Get PDF doc - name: Get documentation if: inputs.VERSION != 'testing' @@ -51,7 +51,7 @@ jobs: # Create release - name: Create release if: inputs.VERSION != 'testing' - uses: softprops/action-gh-release@c062e08bd532815e2082a85e87e3ef29c3e6d191 # v2.0.8 + uses: softprops/action-gh-release@e7a8f85e1c67a31e6ed99a94b41bd0b71bbee6b8 # v2.0.9 with: body: | Documentation : https://docs.bunkerweb.io/${{ inputs.VERSION }}/ @@ -75,7 +75,7 @@ jobs: # Create release - name: Create release if: inputs.VERSION == 'testing' - uses: softprops/action-gh-release@c062e08bd532815e2082a85e87e3ef29c3e6d191 # v2.0.8 + uses: softprops/action-gh-release@e7a8f85e1c67a31e6ed99a94b41bd0b71bbee6b8 # v2.0.9 with: body: | **The testing version of BunkerWeb should not be used in production, please use the latest stable version instead.** diff --git a/.github/workflows/push-packagecloud.yml b/.github/workflows/push-packagecloud.yml index 58d4f43627..4f4d30eb88 100644 --- a/.github/workflows/push-packagecloud.yml +++ b/.github/workflows/push-packagecloud.yml @@ -40,9 +40,9 @@ jobs: steps: # Prepare - name: Check out repository code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Install ruby - uses: ruby/setup-ruby@a6b46b8a08edb18935835849f2a17072d5cc8c73 # v1.192.0 + uses: ruby/setup-ruby@46ca53beb334a2329bcd0e46a694816a6ae6d173 # v1.201.0 with: ruby-version: "3.0" - name: Install packagecloud diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d8919db84a..8103707bee 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -143,7 +143,7 @@ jobs: versionrpm: ${{ steps.getversionrpm.outputs.versionrpm }} steps: - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Get VERSION id: getversion run: echo "version=$(cat src/VERSION | tr -d '\n')" >> "$GITHUB_OUTPUT" diff --git a/.github/workflows/rm-arm.yml b/.github/workflows/rm-arm.yml index 6f040437ae..b376876591 100644 --- a/.github/workflows/rm-arm.yml +++ b/.github/workflows/rm-arm.yml @@ -21,7 +21,7 @@ jobs: steps: # Prepare - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Delete ARM VM uses: scaleway/action-scw@be2696f261325a78354eda14988c80405f33e082 with: diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml index 290fdcfd4a..d10dbf95a0 100644 --- a/.github/workflows/scorecards-analysis.yml +++ b/.github/workflows/scorecards-analysis.yml @@ -15,7 +15,7 @@ jobs: runs-on: ubuntu-latest steps: - name: "Checkout code" - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: persist-credentials: false - name: "Run analysis" @@ -25,6 +25,6 @@ jobs: results_format: sarif publish_results: true - name: "Upload SARIF results to code scanning" - uses: github/codeql-action/upload-sarif@8214744c546c1e5c8f03dde8fab3a7353211988d # v3.26.7 + uses: github/codeql-action/upload-sarif@662472033e021d55d94146f66f6058822b0b39fd # v3.27.0 with: sarif_file: results.sarif diff --git a/.github/workflows/staging-create-infra.yml b/.github/workflows/staging-create-infra.yml index 875f390d72..7fe5022302 100644 --- a/.github/workflows/staging-create-infra.yml +++ b/.github/workflows/staging-create-infra.yml @@ -21,16 +21,16 @@ jobs: run: ssh-keygen -b 2048 -t rsa -f ~/.ssh/id_rsa -q -N "" && ssh-keygen -f ~/.ssh/id_rsa -y > ~/.ssh/id_rsa.pub && echo -e "Host *\n StrictHostKeyChecking no" > ~/.ssh/ssh_config if: inputs.TYPE != 'k8s' - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Install terraform - uses: hashicorp/setup-terraform@651471c36a6092792c552e8b1bef71e592b462d8 # v3.1.1 + uses: hashicorp/setup-terraform@b9cd54a3c349d3f38e8881555d616ced269862dd # v3.1.2 - name: Install kubectl uses: azure/setup-kubectl@3e0aec4d80787158d308d7b364cb1b702e7feb7f # v4.0.0 if: inputs.TYPE == 'k8s' with: version: "v1.29.1" - name: Set up Python 3.12 - uses: actions/setup-python@39cd14951b08e74b54015e9e001cdefcf80e669f # v5.1.1 + uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 if: inputs.TYPE != 'k8s' with: python-version: "3.12" @@ -52,7 +52,7 @@ jobs: if: always() env: SECRET_KEY: ${{ secrets.SECRET_KEY }} - - uses: actions/upload-artifact@0b2256b8c012f0828dc542b3febcab082c67f72b # v4.3.4 + - uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3 if: always() with: name: tf-${{ inputs.TYPE }} diff --git a/.github/workflows/staging-delete-infra.yml b/.github/workflows/staging-delete-infra.yml index aa69d586de..111edb6a94 100644 --- a/.github/workflows/staging-delete-infra.yml +++ b/.github/workflows/staging-delete-infra.yml @@ -20,9 +20,9 @@ jobs: steps: # Prepare - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Install terraform - uses: hashicorp/setup-terraform@651471c36a6092792c552e8b1bef71e592b462d8 # v3.1.1 + uses: hashicorp/setup-terraform@b9cd54a3c349d3f38e8881555d616ced269862dd # v3.1.2 - uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 with: name: tf-${{ inputs.TYPE }} diff --git a/.github/workflows/staging-tests.yml b/.github/workflows/staging-tests.yml index 8e4bc160dc..5b64bef543 100644 --- a/.github/workflows/staging-tests.yml +++ b/.github/workflows/staging-tests.yml @@ -25,7 +25,7 @@ jobs: steps: # Prepare - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Login to ghcr uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 with: diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 447015a0a5..b6147c1ea2 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -91,7 +91,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - id: set-matrix run: | tests=$(find ./tests/core/ -maxdepth 1 -mindepth 1 -type d -printf "%f\n" | jq -c --raw-input --slurp 'split("\n")| .[0:-1]') @@ -102,7 +102,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - id: set-matrix run: | tests=$(find ./tests/ui/ -name "*_page.py" -type f -printf "%f\n" | jq -c --raw-input --slurp 'split("\n")| .[0:-1]') diff --git a/.github/workflows/test-core-linux.yml b/.github/workflows/test-core-linux.yml index 9a33cea100..a7b0f0d2a1 100644 --- a/.github/workflows/test-core-linux.yml +++ b/.github/workflows/test-core-linux.yml @@ -16,9 +16,9 @@ jobs: steps: # Prepare - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Set up Python 3.12 - uses: actions/setup-python@39cd14951b08e74b54015e9e001cdefcf80e669f # v5.1.1 + uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 with: python-version: "3.12" - name: Install Firefox manually and dependencies diff --git a/.github/workflows/test-core.yml b/.github/workflows/test-core.yml index 7efed25ae2..dfdc172ac7 100644 --- a/.github/workflows/test-core.yml +++ b/.github/workflows/test-core.yml @@ -16,7 +16,7 @@ jobs: steps: # Prepare - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Login to ghcr uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 with: diff --git a/.github/workflows/tests-ui-linux.yml b/.github/workflows/tests-ui-linux.yml index d202120ad2..56a6401525 100644 --- a/.github/workflows/tests-ui-linux.yml +++ b/.github/workflows/tests-ui-linux.yml @@ -16,9 +16,9 @@ jobs: steps: # Prepare - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Set up Python 3.12 - uses: actions/setup-python@39cd14951b08e74b54015e9e001cdefcf80e669f # v5.1.1 + uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 with: python-version: "3.12" - name: Install Firefox manually and dependencies diff --git a/.github/workflows/tests-ui.yml b/.github/workflows/tests-ui.yml index c01c118504..81f05424c5 100644 --- a/.github/workflows/tests-ui.yml +++ b/.github/workflows/tests-ui.yml @@ -15,7 +15,7 @@ jobs: steps: # Prepare - name: Checkout source code - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Login to ghcr uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 with: diff --git a/.github/workflows/ui.yml b/.github/workflows/ui.yml index 230c327ff0..9fdadbc1aa 100644 --- a/.github/workflows/ui.yml +++ b/.github/workflows/ui.yml @@ -67,7 +67,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - id: set-matrix run: | tests=$(find ./tests/ui/ -name "*_page.py" -type f -printf "%f\n" | jq -c --raw-input --slurp 'split("\n")| .[0:-1]') diff --git a/CHANGELOG.md b/CHANGELOG.md index b8ed9ee4c8..1d107c0119 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,19 @@ # Changelog -## v1.5.10 - ????/??/?? +## v1.5.11 - ????/??/?? + +- [BUGFIX] Fix INTERCEPTED_ERROR_CODES to allow empty value +- [UI] Fix missing settings when a service is published online +- [UI] Fix instances always down in instances page +- [AUTOCONF] Fix BW env vars not retrieved +- [AUTOCONF] Fix deadlock on k8s events when there is no ingress +- [LINUX] Increase default worker dict size to avoid crash on RPI +- [MISC] Add WORKERLOCK_MEMORY_SIZE setting for worker dict size +- [MISC] Add API_TIMEOUT and API_READ_TIMEOUT settings to control API timeouts +- [DEPS] Updated coreruleset-v4 version to v4.8.0 +- [DEPS] Updated coreruleset-v3 version to v3.3.7 + +## v1.5.10 - 2024/09/17 - [UI] Fix setup wizard bug related to certificate - [UI] Fix bug when adding more than 3 reverse proxies URLs diff --git a/README.md b/README.md index 82fc46f592..b5c85d6b55 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@

- BunkerWeb logo + BunkerWeb logo

@@ -26,7 +26,7 @@ | 👨‍💻 Demo | - 🛡️ Examples + 🛡️ Examples | 💬 Chat | @@ -44,14 +44,14 @@ # BunkerWeb

- Overview banner + Overview banner

BunkerWeb is a next-generation and open-source Web Application Firewall (WAF). -Being a full-featured web server (based on [NGINX](https://nginx.org/) under the hood), it will protect your web services to make them "secure by default". BunkerWeb integrates seamlessly into your existing environments ([Linux](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#linux), [Docker](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#docker), [Swarm](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#swarm), [Kubernetes](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#kubernetes), …) and is fully configurable (don't panic, there is an [awesome web UI](https://docs.bunkerweb.io/1.5.10/web-ui/?utm_campaign=self&utm_source=github) if you don't like the CLI) to meet your own use-cases . In other words, cybersecurity is no more a hassle. +Being a full-featured web server (based on [NGINX](https://nginx.org/) under the hood), it will protect your web services to make them "secure by default". BunkerWeb integrates seamlessly into your existing environments ([Linux](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#linux), [Docker](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#docker), [Swarm](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#swarm), [Kubernetes](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#kubernetes), …) and is fully configurable (don't panic, there is an [awesome web UI](https://docs.bunkerweb.io/1.5.11/web-ui/?utm_campaign=self&utm_source=github) if you don't like the CLI) to meet your own use-cases . In other words, cybersecurity is no more a hassle. -BunkerWeb contains primary [security features](https://docs.bunkerweb.io/1.5.10/security-tuning/?utm_campaign=self&utm_source=github) as part of the core but can be easily extended with additional ones thanks to a [plugin system](https://docs.bunkerweb.io/1.5.10/plugins/?utm_campaign=self&utm_source=github). +BunkerWeb contains primary [security features](https://docs.bunkerweb.io/1.5.11/security-tuning/?utm_campaign=self&utm_source=github) as part of the core but can be easily extended with additional ones thanks to a [plugin system](https://docs.bunkerweb.io/1.5.11/plugins/?utm_campaign=self&utm_source=github). ## Why BunkerWeb ? @@ -76,7 +76,7 @@ A non-exhaustive list of security features : - **Block known bad IPs** with external blacklists and DNSBL - And much more ... -Learn more about the core security features in the [security tuning](https://docs.bunkerweb.io/1.5.10/security-tuning/?utm_campaign=self&utm_source=github) section of the documentation. +Learn more about the core security features in the [security tuning](https://docs.bunkerweb.io/1.5.11/security-tuning/?utm_campaign=self&utm_source=github) section of the documentation. ## Demo @@ -105,13 +105,13 @@ When using BunkerWeb you have the choice of the version you want to use : open-s Whether it's enhanced security, an enriched user experience, or technical supervision, the BunkerWeb PRO version will allow you to fully benefit from BunkerWeb and respond to your professional needs. -Be it in the documentation or the user interface, the PRO features are annotated with a crown crow pro icon to distinguish them from those integrated into the open-source version. +Be it in the documentation or the user interface, the PRO features are annotated with a crown crow pro icon to distinguish them from those integrated into the open-source version. You can upgrade from the open-source version to the PRO one easily and at any time you want. The process is pretty straightforward : - Claim your [free trial on the BunkerWeb panel](https://panel.bunkerweb.io/?utm_campaign=self&utm_source=doc) - Once connected to the client area, copy your PRO license key -- Paste your private key into BunkerWeb using the [web UI](https://docs.bunkerweb.io/1.5.10/web-ui/#upgrade-to-pro) or [specific setting](https://docs.bunkerweb.io/1.5.10/settings/#pro) +- Paste your private key into BunkerWeb using the [web UI](https://docs.bunkerweb.io/1.5.11/web-ui/#upgrade-to-pro) or [specific setting](https://docs.bunkerweb.io/1.5.11/settings/#pro) Do not hesitate to visit the [BunkerWeb panel](https://panel.bunkerweb.io/knowledgebase?utm_campaign=self&utm_source=doc) or [contact us](https://panel.bunkerweb.io/contact.php?utm_campaign=self&utm_source=doc) if you have any question regarding the PRO version. @@ -144,10 +144,10 @@ Community and social networks : # Concepts

- Concepts banner + Concepts banner

-You will find more information about the key concepts of BunkerWeb in the [documentation](https://docs.bunkerweb.io/1.5.10/concepts/?utm_campaign=self&utm_source=github). +You will find more information about the key concepts of BunkerWeb in the [documentation](https://docs.bunkerweb.io/1.5.11/concepts/?utm_campaign=self&utm_source=github). ## Integrations @@ -155,12 +155,12 @@ The first concept is the integration of BunkerWeb into the target environment. W The following integrations are officially supported : -- [Docker](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#docker) -- [Linux](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#linux) -- [Docker autoconf](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#docker-autoconf) -- [Kubernetes](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#kubernetes) -- [Swarm](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#swarm) -- [Microsoft Azure](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#microsoft-azure) +- [Docker](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#docker) +- [Linux](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#linux) +- [Docker autoconf](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#docker-autoconf) +- [Kubernetes](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#kubernetes) +- [Swarm](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#swarm) +- [Microsoft Azure](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#microsoft-azure) ## Settings @@ -192,7 +192,7 @@ When multisite mode is enabled, BunkerWeb will serve and protect multiple web ap ## Custom configurations -Because meeting all the use cases only using the settings is not an option (even with [external plugins](https://docs.bunkerweb.io/1.5.10/plugins/?utm_campaign=self&utm_source=github)), you can use custom configurations to solve your specific challenges. +Because meeting all the use cases only using the settings is not an option (even with [external plugins](https://docs.bunkerweb.io/1.5.11/plugins/?utm_campaign=self&utm_source=github)), you can use custom configurations to solve your specific challenges. Under the hood, BunkerWeb uses the notorious NGINX web server, that's why you can leverage its configuration system for your specific needs. Custom NGINX configurations can be included in different [contexts](https://docs.nginx.com/nginx/admin-guide/basic-functionality/managing-configuration-files/#contexts) like HTTP or server (all servers and/or specific server block). @@ -201,7 +201,7 @@ Another core component of BunkerWeb is the ModSecurity Web Application Firewall ## Database

- Database model + Database model

State of the current configuration of BunkerWeb is stored in a backend database which contains the following data : @@ -230,7 +230,7 @@ In other words, the scheduler is the brain of BunkerWeb. ## BunkerWeb Cloud

- Docker banner + Docker banner

BunkerWeb Cloud is the easiest way to get started with BunkerWeb. It offers you a fully managed BunkerWeb service with no hassle. Think of a like a BunkerWeb-as-a-Service ! @@ -240,7 +240,7 @@ You will find more information about BunkerWeb Cloud beta [here](https://www.bun ## Docker

- Docker banner + Docker banner

We provide ready to use prebuilt images for x64, x86, armv7 and arm64 platforms on [Docker Hub](https://hub.docker.com/u/bunkerity). @@ -251,46 +251,46 @@ Docker integration key concepts are : - **Scheduler** container to store configuration and execute jobs - **Networks** to expose ports for clients and connect to upstream web services -You will find more information in the [Docker integration section](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#docker) of the documentation. +You will find more information in the [Docker integration section](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#docker) of the documentation. ## Docker autoconf

- Docker autoconf banner + Docker autoconf banner

The downside of using environment variables is that the container needs to be recreated each time there is an update which is not very convenient. To counter that issue, you can use another image called **autoconf** which will listen for Docker events and automatically reconfigure BunkerWeb in real-time without recreating the container. Instead of defining environment variables for the BunkerWeb container, you simply add **labels** to your web applications containers and the **autoconf** will "automagically" take care of the rest. -You will find more information in the [Docker autoconf section](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#docker-autoconf) of the documentation. +You will find more information in the [Docker autoconf section](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#docker-autoconf) of the documentation. ## Swarm

- Swarm banner + Swarm banner

To automatically configure BunkerWeb instances, a special service, called **autoconf** will listen for Docker Swarm events like service creation or deletion and automatically configure the **BunkerWeb instances** in real-time without downtime. -Like the [Docker autoconf integration](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#docker-autoconf), configuration for web services is defined using labels starting with the special **bunkerweb.** prefix. +Like the [Docker autoconf integration](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#docker-autoconf), configuration for web services is defined using labels starting with the special **bunkerweb.** prefix. -You will find more information in the [Swarm section](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#swarm) of the documentation. +You will find more information in the [Swarm section](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#swarm) of the documentation. ## Kubernetes

- Kubernetes banner + Kubernetes banner

The autoconf acts as an [Ingress controller](https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/) and will configure the BunkerWeb instances according to the [Ingress resources](https://kubernetes.io/docs/concepts/services-networking/ingress/). It also monitors other Kubernetes objects like [ConfigMap](https://kubernetes.io/docs/concepts/configuration/configmap/) for custom configurations. -You will find more information in the [Kubernetes section](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#kubernetes) of the documentation. +You will find more information in the [Kubernetes section](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#kubernetes) of the documentation. ## Linux

- Linux banner + Linux banner

List of supported Linux distros : @@ -302,21 +302,21 @@ List of supported Linux distros : - RHEL 8.9 - RHEL 9.4 -You will find more information in the [Linux section](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#linux) of the documentation. +You will find more information in the [Linux section](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#linux) of the documentation. ## Microsoft Azure

- Azure banner + Azure banner

BunkerWeb is referenced in the [Azure Marketplace](https://azuremarketplace.microsoft.com/fr-fr/marketplace/apps/bunkerity.bunkerweb?tab=Overview) and an ARM template is available in the [misc folder](https://github.com/bunkerity/bunkerweb/raw/v1.5.9/misc/integrations/azure-arm-template.json). -You will find more information in the [Microsoft Azure section](https://docs.bunkerweb.io/1.5.10/integrations/?utm_campaign=self&utm_source=github#microsoft-azure) of the documentation. +You will find more information in the [Microsoft Azure section](https://docs.bunkerweb.io/1.5.11/integrations/?utm_campaign=self&utm_source=github#microsoft-azure) of the documentation. # Quickstart guide -Once you have setup BunkerWeb with the integration of your choice, you can follow the [quickstart guide](https://docs.bunkerweb.io/1.5.10/quickstart-guide/?utm_campaign=self&utm_source=github) that will cover the following common use cases : +Once you have setup BunkerWeb with the integration of your choice, you can follow the [quickstart guide](https://docs.bunkerweb.io/1.5.11/quickstart-guide/?utm_campaign=self&utm_source=github) that will cover the following common use cases : - Protecting a single HTTP application - Protecting multiple HTTP application @@ -327,9 +327,9 @@ Once you have setup BunkerWeb with the integration of your choice, you can follo # Security tuning -BunkerWeb offers many security features that you can configure with [settings](https://docs.bunkerweb.io/1.5.10/settings/?utm_campaign=self&utm_source=github). Even if the default values of settings ensure a minimal "security by default", we strongly recommend you to tune them. By doing so you will be able to ensure a security level of your choice but also manage false positives. +BunkerWeb offers many security features that you can configure with [settings](https://docs.bunkerweb.io/1.5.11/settings/?utm_campaign=self&utm_source=github). Even if the default values of settings ensure a minimal "security by default", we strongly recommend you to tune them. By doing so you will be able to ensure a security level of your choice but also manage false positives. -You will find more information in the [security tuning section](https://docs.bunkerweb.io/1.5.10/security-tuning/?utm_campaign=self&utm_source=github) of the documentation. +You will find more information in the [security tuning section](https://docs.bunkerweb.io/1.5.11/security-tuning/?utm_campaign=self&utm_source=github) of the documentation. # Settings @@ -339,13 +339,13 @@ As a general rule when multisite mode is enabled, if you want to apply settings When settings are considered as "multiple", it means that you can have multiple groups of settings for the same feature by adding numbers as suffix like `REVERSE_PROXY_URL_1=/subdir`, `REVERSE_PROXY_HOST_1=http://myhost1`, `REVERSE_PROXY_URL_2=/anotherdir`, `REVERSE_PROXY_HOST_2=http://myhost2`, ... for example. -Check the [settings section](https://docs.bunkerweb.io/1.5.10/settings/?utm_campaign=self&utm_source=github) of the documentation to get the full list. +Check the [settings section](https://docs.bunkerweb.io/1.5.11/settings/?utm_campaign=self&utm_source=github) of the documentation to get the full list. # Web UI

- +

@@ -359,7 +359,7 @@ The "Web UI" is a web application that helps you manage your BunkerWeb instance - Monitor jobs execution - View the logs and search pattern -You will find more information in the [Web UI section](https://docs.bunkerweb.io/1.5.10/web-ui/?utm_campaign=self&utm_source=github) of the documentation. +You will find more information in the [Web UI section](https://docs.bunkerweb.io/1.5.11/web-ui/?utm_campaign=self&utm_source=github) of the documentation. # Plugins @@ -377,7 +377,7 @@ Here is the list of "official" plugins that we maintain (see the [bunkerweb-plug | **VirusTotal** | 1.6 | Automatically scans uploaded files with the VirusTotal API and denies the request when a file is detected as malicious. | [bunkerweb-plugins/virustotal](https://github.com/bunkerity/bunkerweb-plugins/tree/main/virustotal) | | **WebHook** | 1.6 | Send security notifications to a custom HTTP endpoint using a Webhook. | [bunkerweb-plugins/slack](https://github.com/bunkerity/bunkerweb-plugins/tree/main/webhook) | -You will find more information in the [plugins section](https://docs.bunkerweb.io/1.5.10/plugins/?utm_campaign=self&utm_source=github) of the documentation. +You will find more information in the [plugins section](https://docs.bunkerweb.io/1.5.11/plugins/?utm_campaign=self&utm_source=github) of the documentation. # Support @@ -400,15 +400,15 @@ Please don't use [GitHub issues](https://github.com/bunkerity/bunkerweb/issues) # License -This project is licensed under the terms of the [GNU Affero General Public License (AGPL) version 3](https://github.com/bunkerity/bunkerweb/raw/v1.5.10/LICENSE.md). +This project is licensed under the terms of the [GNU Affero General Public License (AGPL) version 3](https://github.com/bunkerity/bunkerweb/raw/v1.5.11/LICENSE.md). # Contribute -If you would like to contribute to the plugins you can read the [contributing guidelines](https://github.com/bunkerity/bunkerweb/raw/v1.5.10/CONTRIBUTING.md) to get started. +If you would like to contribute to the plugins you can read the [contributing guidelines](https://github.com/bunkerity/bunkerweb/raw/v1.5.11/CONTRIBUTING.md) to get started. # Security policy -We take security bugs as serious issues and encourage responsible disclosure, see our [security policy](https://github.com/bunkerity/bunkerweb/raw/v1.5.10/SECURITY.md) for more information. +We take security bugs as serious issues and encourage responsible disclosure, see our [security policy](https://github.com/bunkerity/bunkerweb/raw/v1.5.11/SECURITY.md) for more information. # Star History diff --git a/docs/concepts.md b/docs/concepts.md index b3cc24b8ba..fdd78ce48b 100644 --- a/docs/concepts.md +++ b/docs/concepts.md @@ -83,7 +83,7 @@ app3.example.com_USE_BAD_BEHAVIOR=no !!! info "Going further" - You will find concrete examples of multisite mode in the [quickstart guide](quickstart-guide.md) of the documentation and the [examples](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/examples) directory of the repository. + You will find concrete examples of multisite mode in the [quickstart guide](quickstart-guide.md) of the documentation and the [examples](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/examples) directory of the repository. ## Custom configurations @@ -97,7 +97,7 @@ By leveraging custom configurations, you unlock a world of possibilities to tail !!! info "Going further" - You will find concrete examples of custom configurations in the [quickstart guide](quickstart-guide.md) of the documentation and the [examples](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/examples) directory of the repository. + You will find concrete examples of custom configurations in the [quickstart guide](quickstart-guide.md) of the documentation and the [examples](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/examples) directory of the repository. ## Database diff --git a/docs/integrations.md b/docs/integrations.md index 9eb95efef8..4c2f482a55 100644 --- a/docs/integrations.md +++ b/docs/integrations.md @@ -35,13 +35,13 @@ By accessing these prebuilt images from Docker Hub, you can quickly pull and run Whether you're conducting tests, developing applications, or deploying BunkerWeb in production, the Docker containerization option provides flexibility and ease of use. Embracing this method empowers you to take full advantage of BunkerWeb's features while leveraging the benefits of Docker technology. ```shell -docker pull bunkerity/bunkerweb:1.5.10 +docker pull bunkerity/bunkerweb:1.5.11 ``` Docker images are also available on [GitHub packages](https://github.com/orgs/bunkerity/packages?repo_name=bunkerweb) and can be downloaded using the `ghcr.io` repository address : ```shell -docker pull ghcr.io/bunkerity/bunkerweb:1.5.10 +docker pull ghcr.io/bunkerity/bunkerweb:1.5.11 ``` Alternatively, if you prefer a more hands-on approach, you have the option to build the Docker image directly from the [source](https://github.com/bunkerity/bunkerweb). Building the image from source gives you greater control and customization over the deployment process. However, please note that this method may take some time to complete, depending on your hardware configuration. @@ -71,7 +71,7 @@ When integrating BunkerWeb with Docker, there are key concepts to keep in mind, - **Networks**: Docker networks play a vital role in the integration of BunkerWeb. These networks serve two main purposes: exposing ports to clients and connecting to upstream web services. By exposing ports, BunkerWeb can accept incoming requests from clients, allowing them to access the protected web services. Additionally, by connecting to upstream web services, BunkerWeb can efficiently route and manage the traffic, providing enhanced security and performance. !!! info "Database backend" - Please be aware that our instructions assume you are using SQLite as the default database backend, as configured by the `DATABASE_URI` setting. However, we understand that you may prefer to utilize alternative backends for your Docker integration. If that is the case, rest assured that other database backends are still possible. See docker-compose files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/misc/integrations) folder of the repository for more information. + Please be aware that our instructions assume you are using SQLite as the default database backend, as configured by the `DATABASE_URI` setting. However, we understand that you may prefer to utilize alternative backends for your Docker integration. If that is the case, rest assured that other database backends are still possible. See docker-compose files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/misc/integrations) folder of the repository for more information. ### Environment variables @@ -81,7 +81,7 @@ Settings are passed to BunkerWeb using Docker environment variables : ... services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 labels: - "bunkerweb.INSTANCE=yes" environment: @@ -100,7 +100,7 @@ Please note that the `bunkerweb.INSTANCE` is mandatory to make sure the schedule The [scheduler](concepts.md#scheduler) is executed in its own container which is also available on Docker Hub : ```shell -docker pull bunkerity/bunkerweb-scheduler:1.5.10 +docker pull bunkerity/bunkerweb-scheduler:1.5.11 ``` Alternatively, you can build the Docker image directly from the [source](https://github.com/bunkerity/bunkerweb) (less coffee ☕ needed than BunkerWeb image) : @@ -117,7 +117,7 @@ A volume is needed to store the SQLite database that will be used by the schedul ... services: bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 volumes: - bw-data:/data ... @@ -179,7 +179,7 @@ You will need to create the Docker API proxy container, mount the socket and set ... services: bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 env: - DOCKER_HOST=tcp://bw-docker:2375 ... @@ -227,7 +227,7 @@ To secure the communication between the scheduler and BunkerWeb API, it is impor ... services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -236,7 +236,7 @@ services: - bw-universe ... bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 networks: - bw-universe - bw-docker @@ -266,7 +266,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -280,7 +280,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -369,12 +369,12 @@ Please ensure that you have **NGINX 1.26.2 installed before installing BunkerWeb export UI_WIZARD=1 ``` - And finally install BunkerWeb 1.5.10 : + And finally install BunkerWeb 1.5.11 : ```shell curl -s https://repo.bunkerweb.io/install/script.deb.sh | sudo bash && \ sudo apt update && \ - sudo -E apt install -y bunkerweb=1.5.10 + sudo -E apt install -y bunkerweb=1.5.11 ``` To prevent upgrading NGINX and/or BunkerWeb packages when executing `apt upgrade`, you can use the following command : @@ -416,12 +416,12 @@ Please ensure that you have **NGINX 1.26.2 installed before installing BunkerWeb export UI_WIZARD=1 ``` - And finally install BunkerWeb 1.5.10 : + And finally install BunkerWeb 1.5.11 : ```shell curl -s https://repo.bunkerweb.io/install/script.deb.sh | sudo bash && \ sudo apt update && \ - sudo -E apt install -y bunkerweb=1.5.10 + sudo -E apt install -y bunkerweb=1.5.11 ``` To prevent upgrading NGINX and/or BunkerWeb packages when executing `apt upgrade`, you can use the following command : @@ -451,14 +451,14 @@ Please ensure that you have **NGINX 1.26.2 installed before installing BunkerWeb export UI_WIZARD=1 ``` - And finally install BunkerWeb 1.5.10 : + And finally install BunkerWeb 1.5.11 : ```shell curl -s https://repo.bunkerweb.io/install/script.rpm.sh | \ sed 's/yum install -y pygpgme --disablerepo='\''bunkerity_bunkerweb'\''/yum install -y python-gnupg/g' | \ sed 's/pypgpme_check=`rpm -qa | grep -qw pygpgme`/python-gnupg_check=`rpm -qa | grep -qw python-gnupg`/g' | sudo bash && \ sudo dnf makecache && \ - sudo -E dnf install -y bunkerweb-1.5.10 + sudo -E dnf install -y bunkerweb-1.5.11 ``` To prevent upgrading NGINX and/or BunkerWeb packages when executing `dnf upgrade`, you can use the following command : @@ -502,13 +502,13 @@ Please ensure that you have **NGINX 1.26.2 installed before installing BunkerWeb export UI_WIZARD=1 ``` - And finally install BunkerWeb 1.5.10 : + And finally install BunkerWeb 1.5.11 : ```shell sudo dnf install -y epel-release && \ curl -s https://repo.bunkerweb.io/install/script.rpm.sh | sudo bash && \ sudo dnf check-update && \ - sudo -E dnf install -y bunkerweb-1.5.10 + sudo -E dnf install -y bunkerweb-1.5.11 ``` To prevent upgrading NGINX and/or BunkerWeb packages when executing `dnf upgrade`, you can use the following command : @@ -556,7 +556,7 @@ By adopting this approach, you can enjoy real-time reconfiguration of BunkerWeb The Docker autoconf integration implies the use of **multisite mode**. Please refer to the [multisite section](concepts.md#multisite-mode) of the documentation for more information. !!! info "Database backend" - Please be aware that our instructions assume you are using MariaDB as the default database backend, as configured by the `DATABASE_URI` setting. However, we understand that you may prefer to utilize alternative backends for your Docker integration. If that is the case, rest assured that other database backends are still possible. See docker-compose files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/misc/integrations) folder of the repository for more information. + Please be aware that our instructions assume you are using MariaDB as the default database backend, as configured by the `DATABASE_URI` setting. However, we understand that you may prefer to utilize alternative backends for your Docker integration. If that is the case, rest assured that other database backends are still possible. See docker-compose files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/misc/integrations) folder of the repository for more information. To enable automated configuration updates, include an additional container called `bw-autoconf` in the stack. This container hosts the autoconf service, which manages dynamic configuration changes for BunkerWeb. To support this functionality, use a dedicated "real" database backend (e.g., MariaDB, MySQL, or PostgreSQL) for synchronized configuration storage. By integrating `bw-autoconf` and a suitable database backend, you establish the infrastructure for seamless automated configuration management in BunkerWeb. @@ -565,7 +565,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -582,7 +582,7 @@ services: - bw-services bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 depends_on: - bunkerweb - bw-docker @@ -595,7 +595,7 @@ services: - bw-docker bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -687,7 +687,7 @@ For an optimal setup, it is recommended to define BunkerWeb as a **[DaemonSet](h Given the presence of multiple BunkerWeb instances, it is necessary to establish a shared data store implemented as a [Redis](https://redis.io/) service. This Redis service will be utilized by the instances to cache and share data among themselves. Further information about the Redis settings can be found [here](settings.md#redis). !!! info "Database backend" - Please be aware that our instructions assume you are using MariaDB as the default database backend, as configured by the `DATABASE_URI` setting. However, we understand that you may prefer to utilize alternative backends for your Docker integration. If that is the case, rest assured that other database backends are still possible. See docker-compose files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/misc/integrations) folder of the repository for more information. + Please be aware that our instructions assume you are using MariaDB as the default database backend, as configured by the `DATABASE_URI` setting. However, we understand that you may prefer to utilize alternative backends for your Docker integration. If that is the case, rest assured that other database backends are still possible. See docker-compose files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/misc/integrations) folder of the repository for more information. Clustered database backends setup are out-of-the-scope of this documentation. @@ -750,7 +750,7 @@ spec: containers: # using bunkerweb as name is mandatory - name: bunkerweb - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 imagePullPolicy: Always securityContext: runAsUser: 101 @@ -820,7 +820,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-controller - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -847,7 +847,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-scheduler - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -1010,7 +1010,7 @@ Since multiple instances of BunkerWeb are running, a shared data store implement As for the database volume, the documentation does not specify a specific approach. Choosing either a shared folder or a specific driver for the database volume is dependent on your unique use-case and is left as an exercise for the reader. !!! info "Database backend" - Please be aware that our instructions assume you are using MariaDB as the default database backend, as configured by the `DATABASE_URI` setting. However, we understand that you may prefer to utilize alternative backends for your Docker integration. If that is the case, rest assured that other database backends are still possible. See docker-compose files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/misc/integrations) folder of the repository for more information. + Please be aware that our instructions assume you are using MariaDB as the default database backend, as configured by the `DATABASE_URI` setting. However, we understand that you may prefer to utilize alternative backends for your Docker integration. If that is the case, rest assured that other database backends are still possible. See docker-compose files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/misc/integrations) folder of the repository for more information. Clustered database backends setup are out-of-the-scope of this documentation. @@ -1021,7 +1021,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - published: 80 target: 8080 @@ -1051,7 +1051,7 @@ services: - "bunkerweb.INSTANCE=yes" bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -1083,7 +1083,7 @@ services: - "node.role == manager" bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 diff --git a/docs/plugins.md b/docs/plugins.md index d83895c03c..aa27e96028 100644 --- a/docs/plugins.md +++ b/docs/plugins.md @@ -91,7 +91,7 @@ The first step is to install the plugin by putting the plugin files inside the c services: ... bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 volumes: - ./bw-data:/data ... @@ -128,7 +128,7 @@ The first step is to install the plugin by putting the plugin files inside the c services: ... bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 volumes: - ./bw-data:/data ... @@ -167,7 +167,7 @@ The first step is to install the plugin by putting the plugin files inside the c services: ... bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 volumes: - /shared/bw-plugins:/data/plugins ... @@ -214,7 +214,7 @@ The first step is to install the plugin by putting the plugin files inside the c serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-scheduler - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -254,7 +254,7 @@ The first step is to install the plugin by putting the plugin files inside the c !!! tip "Existing plugins" - If the documentation is not enough, you can have a look at the existing source code of [official plugins](https://github.com/bunkerity/bunkerweb-plugins) and the [core plugins](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/src/common/core) (already included in BunkerWeb but they are plugins, technically speaking). + If the documentation is not enough, you can have a look at the existing source code of [official plugins](https://github.com/bunkerity/bunkerweb-plugins) and the [core plugins](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/src/common/core) (already included in BunkerWeb but they are plugins, technically speaking). What a plugin structure looks like : ``` @@ -524,7 +524,7 @@ end !!! tip "More examples" - If you want to see the full list of available functions, you can have a look at the files present in the [lua directory](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/src/bw/lua/bunkerweb) of the repository. + If you want to see the full list of available functions, you can have a look at the files present in the [lua directory](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/src/bw/lua/bunkerweb) of the repository. ### Jobs diff --git a/docs/quickstart-guide.md b/docs/quickstart-guide.md index d4390b879f..e54d4f0b20 100644 --- a/docs/quickstart-guide.md +++ b/docs/quickstart-guide.md @@ -6,7 +6,7 @@ !!! tip "Going further" - To demonstrate the use of BunkerWeb, we will deploy a dummy "Hello World" web application as an example. See the [examples folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/examples) of the repository to get real-world examples. + To demonstrate the use of BunkerWeb, we will deploy a dummy "Hello World" web application as an example. See the [examples folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/examples) of the repository to get real-world examples. ## Protect HTTP applications @@ -37,7 +37,7 @@ You will find more settings about reverse proxy in the [settings section](settin - bw-services bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -54,7 +54,7 @@ You will find more settings about reverse proxy in the [settings section](settin - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -295,7 +295,7 @@ You will find more settings about reverse proxy in the [settings section](settin - bw-services bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -315,7 +315,7 @@ You will find more settings about reverse proxy in the [settings section](settin - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -634,7 +634,7 @@ REAL_IP_HEADER=X-Forwarded-For ```yaml mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ... environment: - USE_REAL_IP=yes @@ -649,7 +649,7 @@ REAL_IP_HEADER=X-Forwarded-For ```yaml mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ... environment: - USE_REAL_IP=yes @@ -664,7 +664,7 @@ REAL_IP_HEADER=X-Forwarded-For ```yaml mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ... environment: - USE_REAL_IP=yes @@ -738,7 +738,7 @@ REAL_IP_HEADER=proxy_protocol ```yaml mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ... environment: - USE_REAL_IP=yes @@ -754,7 +754,7 @@ REAL_IP_HEADER=proxy_protocol ```yaml mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ... environment: - USE_REAL_IP=yes @@ -770,7 +770,7 @@ REAL_IP_HEADER=proxy_protocol ```yaml mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ... environment: - USE_REAL_IP=yes @@ -869,7 +869,7 @@ For complete list of settings regarding `stream` mode, please refer to the [sett - bw-services bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 # Keep it if you want to use Let's Encrypt automation - 10000:10000 # app1 @@ -891,7 +891,7 @@ For complete list of settings regarding `stream` mode, please refer to the [sett - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -940,7 +940,7 @@ For complete list of settings regarding `stream` mode, please refer to the [sett services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 # Keep it if you want to use Let's Encrypt automation - 10000:10000 # app1 @@ -998,7 +998,7 @@ For complete list of settings regarding `stream` mode, please refer to the [sett services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: # Keep it if you want to use Let's Encrypt automation - published: 80 @@ -1142,7 +1142,7 @@ Some integrations provide more convenient ways to apply configurations, such as ```yaml ... mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 environment: - | CUSTOM_CONF_SERVER_HTTP_hello-world= @@ -1185,7 +1185,7 @@ Some integrations provide more convenient ways to apply configurations, such as ```yaml bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 volumes: - ./bw-data:/data ... @@ -1255,7 +1255,7 @@ Some integrations provide more convenient ways to apply configurations, such as ```yaml bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 volumes: - ./bw-data:/data ... @@ -1439,7 +1439,7 @@ BunkerWeb supports PHP using external or remote [PHP-FPM](https://www.php.net/ma - bw-services bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 volumes: - ./www:/var/www/html ports: @@ -1462,7 +1462,7 @@ BunkerWeb supports PHP using external or remote [PHP-FPM](https://www.php.net/ma - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -1540,7 +1540,7 @@ BunkerWeb supports PHP using external or remote [PHP-FPM](https://www.php.net/ma services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 volumes: - ./www:/var/www/html labels: @@ -1554,7 +1554,7 @@ BunkerWeb supports PHP using external or remote [PHP-FPM](https://www.php.net/ma - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -1698,7 +1698,7 @@ BunkerWeb supports PHP using external or remote [PHP-FPM](https://www.php.net/ma services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 volumes: - /shared/www:/var/www/html ... @@ -1889,7 +1889,7 @@ By default, BunkerWeb will only listen on IPv4 addresses and won't use IPv6 for services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 environment: - USE_IPv6=yes @@ -1934,7 +1934,7 @@ By default, BunkerWeb will only listen on IPv4 addresses and won't use IPv6 for services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 environment: - USE_IPv6=yes diff --git a/docs/requirements.in b/docs/requirements.in index ea003580bd..f10cb787e4 100644 --- a/docs/requirements.in +++ b/docs/requirements.in @@ -1,5 +1,5 @@ mike==2.1.3 -mkdocs-material[imaging]==9.5.34 -mkdocs-print-site-plugin==2.5.0 +mkdocs-material[imaging]==9.5.44 +mkdocs-print-site-plugin==2.6.0 pytablewriter==1.2.0 zipp>=3.19.1 diff --git a/docs/requirements.txt b/docs/requirements.txt index 2dcc70d81c..75ffd1a750 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -93,97 +93,112 @@ chardet==5.2.0 \ --hash=sha256:1b3b6ff479a8c414bc3fa2c0852995695c4a026dcd6d0633b2dd092ca39c1cf7 \ --hash=sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970 # via mbstrdecoder -charset-normalizer==3.3.2 \ - --hash=sha256:06435b539f889b1f6f4ac1758871aae42dc3a8c0e24ac9e60c2384973ad73027 \ - --hash=sha256:06a81e93cd441c56a9b65d8e1d043daeb97a3d0856d177d5c90ba85acb3db087 \ - --hash=sha256:0a55554a2fa0d408816b3b5cedf0045f4b8e1a6065aec45849de2d6f3f8e9786 \ - --hash=sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8 \ - --hash=sha256:10955842570876604d404661fbccbc9c7e684caf432c09c715ec38fbae45ae09 \ - --hash=sha256:122c7fa62b130ed55f8f285bfd56d5f4b4a5b503609d181f9ad85e55c89f4185 \ - --hash=sha256:1ceae2f17a9c33cb48e3263960dc5fc8005351ee19db217e9b1bb15d28c02574 \ - --hash=sha256:1d3193f4a680c64b4b6a9115943538edb896edc190f0b222e73761716519268e \ - --hash=sha256:1f79682fbe303db92bc2b1136016a38a42e835d932bab5b3b1bfcfbf0640e519 \ - --hash=sha256:2127566c664442652f024c837091890cb1942c30937add288223dc895793f898 \ - --hash=sha256:22afcb9f253dac0696b5a4be4a1c0f8762f8239e21b99680099abd9b2b1b2269 \ - --hash=sha256:25baf083bf6f6b341f4121c2f3c548875ee6f5339300e08be3f2b2ba1721cdd3 \ - --hash=sha256:2e81c7b9c8979ce92ed306c249d46894776a909505d8f5a4ba55b14206e3222f \ - --hash=sha256:3287761bc4ee9e33561a7e058c72ac0938c4f57fe49a09eae428fd88aafe7bb6 \ - --hash=sha256:34d1c8da1e78d2e001f363791c98a272bb734000fcef47a491c1e3b0505657a8 \ - --hash=sha256:37e55c8e51c236f95b033f6fb391d7d7970ba5fe7ff453dad675e88cf303377a \ - --hash=sha256:3d47fa203a7bd9c5b6cee4736ee84ca03b8ef23193c0d1ca99b5089f72645c73 \ - --hash=sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc \ - --hash=sha256:42cb296636fcc8b0644486d15c12376cb9fa75443e00fb25de0b8602e64c1714 \ - --hash=sha256:45485e01ff4d3630ec0d9617310448a8702f70e9c01906b0d0118bdf9d124cf2 \ - --hash=sha256:4a78b2b446bd7c934f5dcedc588903fb2f5eec172f3d29e52a9096a43722adfc \ - --hash=sha256:4ab2fe47fae9e0f9dee8c04187ce5d09f48eabe611be8259444906793ab7cbce \ - --hash=sha256:4d0d1650369165a14e14e1e47b372cfcb31d6ab44e6e33cb2d4e57265290044d \ - --hash=sha256:549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e \ - --hash=sha256:55086ee1064215781fff39a1af09518bc9255b50d6333f2e4c74ca09fac6a8f6 \ - --hash=sha256:572c3763a264ba47b3cf708a44ce965d98555f618ca42c926a9c1616d8f34269 \ - --hash=sha256:573f6eac48f4769d667c4442081b1794f52919e7edada77495aaed9236d13a96 \ - --hash=sha256:5b4c145409bef602a690e7cfad0a15a55c13320ff7a3ad7ca59c13bb8ba4d45d \ - --hash=sha256:6463effa3186ea09411d50efc7d85360b38d5f09b870c48e4600f63af490e56a \ - --hash=sha256:65f6f63034100ead094b8744b3b97965785388f308a64cf8d7c34f2f2e5be0c4 \ - --hash=sha256:663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77 \ - --hash=sha256:6897af51655e3691ff853668779c7bad41579facacf5fd7253b0133308cf000d \ - --hash=sha256:68d1f8a9e9e37c1223b656399be5d6b448dea850bed7d0f87a8311f1ff3dabb0 \ - --hash=sha256:6ac7ffc7ad6d040517be39eb591cac5ff87416c2537df6ba3cba3bae290c0fed \ - --hash=sha256:6b3251890fff30ee142c44144871185dbe13b11bab478a88887a639655be1068 \ - --hash=sha256:6c4caeef8fa63d06bd437cd4bdcf3ffefe6738fb1b25951440d80dc7df8c03ac \ - --hash=sha256:6ef1d82a3af9d3eecdba2321dc1b3c238245d890843e040e41e470ffa64c3e25 \ - --hash=sha256:753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8 \ - --hash=sha256:7cd13a2e3ddeed6913a65e66e94b51d80a041145a026c27e6bb76c31a853c6ab \ - --hash=sha256:7ed9e526742851e8d5cc9e6cf41427dfc6068d4f5a3bb03659444b4cabf6bc26 \ - --hash=sha256:7f04c839ed0b6b98b1a7501a002144b76c18fb1c1850c8b98d458ac269e26ed2 \ - --hash=sha256:802fe99cca7457642125a8a88a084cef28ff0cf9407060f7b93dca5aa25480db \ - --hash=sha256:80402cd6ee291dcb72644d6eac93785fe2c8b9cb30893c1af5b8fdd753b9d40f \ - --hash=sha256:8465322196c8b4d7ab6d1e049e4c5cb460d0394da4a27d23cc242fbf0034b6b5 \ - --hash=sha256:86216b5cee4b06df986d214f664305142d9c76df9b6512be2738aa72a2048f99 \ - --hash=sha256:87d1351268731db79e0f8e745d92493ee2841c974128ef629dc518b937d9194c \ - --hash=sha256:8bdb58ff7ba23002a4c5808d608e4e6c687175724f54a5dade5fa8c67b604e4d \ - --hash=sha256:8c622a5fe39a48f78944a87d4fb8a53ee07344641b0562c540d840748571b811 \ - --hash=sha256:8d756e44e94489e49571086ef83b2bb8ce311e730092d2c34ca8f7d925cb20aa \ - --hash=sha256:8f4a014bc36d3c57402e2977dada34f9c12300af536839dc38c0beab8878f38a \ - --hash=sha256:9063e24fdb1e498ab71cb7419e24622516c4a04476b17a2dab57e8baa30d6e03 \ - --hash=sha256:90d558489962fd4918143277a773316e56c72da56ec7aa3dc3dbbe20fdfed15b \ - --hash=sha256:923c0c831b7cfcb071580d3f46c4baf50f174be571576556269530f4bbd79d04 \ - --hash=sha256:95f2a5796329323b8f0512e09dbb7a1860c46a39da62ecb2324f116fa8fdc85c \ - --hash=sha256:96b02a3dc4381e5494fad39be677abcb5e6634bf7b4fa83a6dd3112607547001 \ - --hash=sha256:9f96df6923e21816da7e0ad3fd47dd8f94b2a5ce594e00677c0013018b813458 \ - --hash=sha256:a10af20b82360ab00827f916a6058451b723b4e65030c5a18577c8b2de5b3389 \ - --hash=sha256:a50aebfa173e157099939b17f18600f72f84eed3049e743b68ad15bd69b6bf99 \ - --hash=sha256:a981a536974bbc7a512cf44ed14938cf01030a99e9b3a06dd59578882f06f985 \ - --hash=sha256:a9a8e9031d613fd2009c182b69c7b2c1ef8239a0efb1df3f7c8da66d5dd3d537 \ - --hash=sha256:ae5f4161f18c61806f411a13b0310bea87f987c7d2ecdbdaad0e94eb2e404238 \ - --hash=sha256:aed38f6e4fb3f5d6bf81bfa990a07806be9d83cf7bacef998ab1a9bd660a581f \ - --hash=sha256:b01b88d45a6fcb69667cd6d2f7a9aeb4bf53760d7fc536bf679ec94fe9f3ff3d \ - --hash=sha256:b261ccdec7821281dade748d088bb6e9b69e6d15b30652b74cbbac25e280b796 \ - --hash=sha256:b2b0a0c0517616b6869869f8c581d4eb2dd83a4d79e0ebcb7d373ef9956aeb0a \ - --hash=sha256:b4a23f61ce87adf89be746c8a8974fe1c823c891d8f86eb218bb957c924bb143 \ - --hash=sha256:bd8f7df7d12c2db9fab40bdd87a7c09b1530128315d047a086fa3ae3435cb3a8 \ - --hash=sha256:beb58fe5cdb101e3a055192ac291b7a21e3b7ef4f67fa1d74e331a7f2124341c \ - --hash=sha256:c002b4ffc0be611f0d9da932eb0f704fe2602a9a949d1f738e4c34c75b0863d5 \ - --hash=sha256:c083af607d2515612056a31f0a8d9e0fcb5876b7bfc0abad3ecd275bc4ebc2d5 \ - --hash=sha256:c180f51afb394e165eafe4ac2936a14bee3eb10debc9d9e4db8958fe36afe711 \ - --hash=sha256:c235ebd9baae02f1b77bcea61bce332cb4331dc3617d254df3323aa01ab47bd4 \ - --hash=sha256:cd70574b12bb8a4d2aaa0094515df2463cb429d8536cfb6c7ce983246983e5a6 \ - --hash=sha256:d0eccceffcb53201b5bfebb52600a5fb483a20b61da9dbc885f8b103cbe7598c \ - --hash=sha256:d965bba47ddeec8cd560687584e88cf699fd28f192ceb452d1d7ee807c5597b7 \ - --hash=sha256:db364eca23f876da6f9e16c9da0df51aa4f104a972735574842618b8c6d999d4 \ - --hash=sha256:ddbb2551d7e0102e7252db79ba445cdab71b26640817ab1e3e3648dad515003b \ - --hash=sha256:deb6be0ac38ece9ba87dea880e438f25ca3eddfac8b002a2ec3d9183a454e8ae \ - --hash=sha256:e06ed3eb3218bc64786f7db41917d4e686cc4856944f53d5bdf83a6884432e12 \ - --hash=sha256:e27ad930a842b4c5eb8ac0016b0a54f5aebbe679340c26101df33424142c143c \ - --hash=sha256:e537484df0d8f426ce2afb2d0f8e1c3d0b114b83f8850e5f2fbea0e797bd82ae \ - --hash=sha256:eb00ed941194665c332bf8e078baf037d6c35d7c4f3102ea2d4f16ca94a26dc8 \ - --hash=sha256:eb6904c354526e758fda7167b33005998fb68c46fbc10e013ca97f21ca5c8887 \ - --hash=sha256:eb8821e09e916165e160797a6c17edda0679379a4be5c716c260e836e122f54b \ - --hash=sha256:efcb3f6676480691518c177e3b465bcddf57cea040302f9f4e6e191af91174d4 \ - --hash=sha256:f27273b60488abe721a075bcca6d7f3964f9f6f067c8c4c605743023d7d3944f \ - --hash=sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5 \ - --hash=sha256:fb69256e180cb6c8a894fee62b3afebae785babc1ee98b81cdf68bbca1987f33 \ - --hash=sha256:fd1abc0d89e30cc4e02e4064dc67fcc51bd941eb395c502aac3ec19fab46b519 \ - --hash=sha256:ff8fa367d09b717b2a17a052544193ad76cd49979c805768879cb63d9ca50561 +charset-normalizer==3.4.0 \ + --hash=sha256:0099d79bdfcf5c1f0c2c72f91516702ebf8b0b8ddd8905f97a8aecf49712c621 \ + --hash=sha256:0713f3adb9d03d49d365b70b84775d0a0d18e4ab08d12bc46baa6132ba78aaf6 \ + --hash=sha256:07afec21bbbbf8a5cc3651aa96b980afe2526e7f048fdfb7f1014d84acc8b6d8 \ + --hash=sha256:0b309d1747110feb25d7ed6b01afdec269c647d382c857ef4663bbe6ad95a912 \ + --hash=sha256:0d99dd8ff461990f12d6e42c7347fd9ab2532fb70e9621ba520f9e8637161d7c \ + --hash=sha256:0de7b687289d3c1b3e8660d0741874abe7888100efe14bd0f9fd7141bcbda92b \ + --hash=sha256:1110e22af8ca26b90bd6364fe4c763329b0ebf1ee213ba32b68c73de5752323d \ + --hash=sha256:130272c698667a982a5d0e626851ceff662565379baf0ff2cc58067b81d4f11d \ + --hash=sha256:136815f06a3ae311fae551c3df1f998a1ebd01ddd424aa5603a4336997629e95 \ + --hash=sha256:14215b71a762336254351b00ec720a8e85cada43b987da5a042e4ce3e82bd68e \ + --hash=sha256:1db4e7fefefd0f548d73e2e2e041f9df5c59e178b4c72fbac4cc6f535cfb1565 \ + --hash=sha256:1ffd9493de4c922f2a38c2bf62b831dcec90ac673ed1ca182fe11b4d8e9f2a64 \ + --hash=sha256:2006769bd1640bdf4d5641c69a3d63b71b81445473cac5ded39740a226fa88ab \ + --hash=sha256:20587d20f557fe189b7947d8e7ec5afa110ccf72a3128d61a2a387c3313f46be \ + --hash=sha256:223217c3d4f82c3ac5e29032b3f1c2eb0fb591b72161f86d93f5719079dae93e \ + --hash=sha256:27623ba66c183eca01bf9ff833875b459cad267aeeb044477fedac35e19ba907 \ + --hash=sha256:285e96d9d53422efc0d7a17c60e59f37fbf3dfa942073f666db4ac71e8d726d0 \ + --hash=sha256:2de62e8801ddfff069cd5c504ce3bc9672b23266597d4e4f50eda28846c322f2 \ + --hash=sha256:2f6c34da58ea9c1a9515621f4d9ac379871a8f21168ba1b5e09d74250de5ad62 \ + --hash=sha256:309a7de0a0ff3040acaebb35ec45d18db4b28232f21998851cfa709eeff49d62 \ + --hash=sha256:35c404d74c2926d0287fbd63ed5d27eb911eb9e4a3bb2c6d294f3cfd4a9e0c23 \ + --hash=sha256:3710a9751938947e6327ea9f3ea6332a09bf0ba0c09cae9cb1f250bd1f1549bc \ + --hash=sha256:3d59d125ffbd6d552765510e3f31ed75ebac2c7470c7274195b9161a32350284 \ + --hash=sha256:40d3ff7fc90b98c637bda91c89d51264a3dcf210cade3a2c6f838c7268d7a4ca \ + --hash=sha256:425c5f215d0eecee9a56cdb703203dda90423247421bf0d67125add85d0c4455 \ + --hash=sha256:43193c5cda5d612f247172016c4bb71251c784d7a4d9314677186a838ad34858 \ + --hash=sha256:44aeb140295a2f0659e113b31cfe92c9061622cadbc9e2a2f7b8ef6b1e29ef4b \ + --hash=sha256:47334db71978b23ebcf3c0f9f5ee98b8d65992b65c9c4f2d34c2eaf5bcaf0594 \ + --hash=sha256:4796efc4faf6b53a18e3d46343535caed491776a22af773f366534056c4e1fbc \ + --hash=sha256:4a51b48f42d9358460b78725283f04bddaf44a9358197b889657deba38f329db \ + --hash=sha256:4b67fdab07fdd3c10bb21edab3cbfe8cf5696f453afce75d815d9d7223fbe88b \ + --hash=sha256:4ec9dd88a5b71abfc74e9df5ebe7921c35cbb3b641181a531ca65cdb5e8e4dea \ + --hash=sha256:4f9fc98dad6c2eaa32fc3af1417d95b5e3d08aff968df0cd320066def971f9a6 \ + --hash=sha256:54b6a92d009cbe2fb11054ba694bc9e284dad30a26757b1e372a1fdddaf21920 \ + --hash=sha256:55f56e2ebd4e3bc50442fbc0888c9d8c94e4e06a933804e2af3e89e2f9c1c749 \ + --hash=sha256:5726cf76c982532c1863fb64d8c6dd0e4c90b6ece9feb06c9f202417a31f7dd7 \ + --hash=sha256:5d447056e2ca60382d460a604b6302d8db69476fd2015c81e7c35417cfabe4cd \ + --hash=sha256:5ed2e36c3e9b4f21dd9422f6893dec0abf2cca553af509b10cd630f878d3eb99 \ + --hash=sha256:5ff2ed8194587faf56555927b3aa10e6fb69d931e33953943bc4f837dfee2242 \ + --hash=sha256:62f60aebecfc7f4b82e3f639a7d1433a20ec32824db2199a11ad4f5e146ef5ee \ + --hash=sha256:63bc5c4ae26e4bc6be6469943b8253c0fd4e4186c43ad46e713ea61a0ba49129 \ + --hash=sha256:6b40e8d38afe634559e398cc32b1472f376a4099c75fe6299ae607e404c033b2 \ + --hash=sha256:6b493a043635eb376e50eedf7818f2f322eabbaa974e948bd8bdd29eb7ef2a51 \ + --hash=sha256:6dba5d19c4dfab08e58d5b36304b3f92f3bd5d42c1a3fa37b5ba5cdf6dfcbcee \ + --hash=sha256:6fd30dc99682dc2c603c2b315bded2799019cea829f8bf57dc6b61efde6611c8 \ + --hash=sha256:707b82d19e65c9bd28b81dde95249b07bf9f5b90ebe1ef17d9b57473f8a64b7b \ + --hash=sha256:7706f5850360ac01d80c89bcef1640683cc12ed87f42579dab6c5d3ed6888613 \ + --hash=sha256:7782afc9b6b42200f7362858f9e73b1f8316afb276d316336c0ec3bd73312742 \ + --hash=sha256:79983512b108e4a164b9c8d34de3992f76d48cadc9554c9e60b43f308988aabe \ + --hash=sha256:7f683ddc7eedd742e2889d2bfb96d69573fde1d92fcb811979cdb7165bb9c7d3 \ + --hash=sha256:82357d85de703176b5587dbe6ade8ff67f9f69a41c0733cf2425378b49954de5 \ + --hash=sha256:84450ba661fb96e9fd67629b93d2941c871ca86fc38d835d19d4225ff946a631 \ + --hash=sha256:86f4e8cca779080f66ff4f191a685ced73d2f72d50216f7112185dc02b90b9b7 \ + --hash=sha256:8cda06946eac330cbe6598f77bb54e690b4ca93f593dee1568ad22b04f347c15 \ + --hash=sha256:8ce7fd6767a1cc5a92a639b391891bf1c268b03ec7e021c7d6d902285259685c \ + --hash=sha256:8ff4e7cdfdb1ab5698e675ca622e72d58a6fa2a8aa58195de0c0061288e6e3ea \ + --hash=sha256:9289fd5dddcf57bab41d044f1756550f9e7cf0c8e373b8cdf0ce8773dc4bd417 \ + --hash=sha256:92a7e36b000bf022ef3dbb9c46bfe2d52c047d5e3f3343f43204263c5addc250 \ + --hash=sha256:92db3c28b5b2a273346bebb24857fda45601aef6ae1c011c0a997106581e8a88 \ + --hash=sha256:95c3c157765b031331dd4db3c775e58deaee050a3042fcad72cbc4189d7c8dca \ + --hash=sha256:980b4f289d1d90ca5efcf07958d3eb38ed9c0b7676bf2831a54d4f66f9c27dfa \ + --hash=sha256:9ae4ef0b3f6b41bad6366fb0ea4fc1d7ed051528e113a60fa2a65a9abb5b1d99 \ + --hash=sha256:9c98230f5042f4945f957d006edccc2af1e03ed5e37ce7c373f00a5a4daa6149 \ + --hash=sha256:9fa2566ca27d67c86569e8c85297aaf413ffab85a8960500f12ea34ff98e4c41 \ + --hash=sha256:a14969b8691f7998e74663b77b4c36c0337cb1df552da83d5c9004a93afdb574 \ + --hash=sha256:a8aacce6e2e1edcb6ac625fb0f8c3a9570ccc7bfba1f63419b3769ccf6a00ed0 \ + --hash=sha256:a8e538f46104c815be19c975572d74afb53f29650ea2025bbfaef359d2de2f7f \ + --hash=sha256:aa41e526a5d4a9dfcfbab0716c7e8a1b215abd3f3df5a45cf18a12721d31cb5d \ + --hash=sha256:aa693779a8b50cd97570e5a0f343538a8dbd3e496fa5dcb87e29406ad0299654 \ + --hash=sha256:ab22fbd9765e6954bc0bcff24c25ff71dcbfdb185fcdaca49e81bac68fe724d3 \ + --hash=sha256:ab2e5bef076f5a235c3774b4f4028a680432cded7cad37bba0fd90d64b187d19 \ + --hash=sha256:ab973df98fc99ab39080bfb0eb3a925181454d7c3ac8a1e695fddfae696d9e90 \ + --hash=sha256:af73657b7a68211996527dbfeffbb0864e043d270580c5aef06dc4b659a4b578 \ + --hash=sha256:b197e7094f232959f8f20541ead1d9862ac5ebea1d58e9849c1bf979255dfac9 \ + --hash=sha256:b295729485b06c1a0683af02a9e42d2caa9db04a373dc38a6a58cdd1e8abddf1 \ + --hash=sha256:b8831399554b92b72af5932cdbbd4ddc55c55f631bb13ff8fe4e6536a06c5c51 \ + --hash=sha256:b8dcd239c743aa2f9c22ce674a145e0a25cb1566c495928440a181ca1ccf6719 \ + --hash=sha256:bcb4f8ea87d03bc51ad04add8ceaf9b0f085ac045ab4d74e73bbc2dc033f0236 \ + --hash=sha256:bd7af3717683bea4c87acd8c0d3d5b44d56120b26fd3f8a692bdd2d5260c620a \ + --hash=sha256:bf4475b82be41b07cc5e5ff94810e6a01f276e37c2d55571e3fe175e467a1a1c \ + --hash=sha256:c3e446d253bd88f6377260d07c895816ebf33ffffd56c1c792b13bff9c3e1ade \ + --hash=sha256:c57516e58fd17d03ebe67e181a4e4e2ccab1168f8c2976c6a334d4f819fe5944 \ + --hash=sha256:c94057af19bc953643a33581844649a7fdab902624d2eb739738a30e2b3e60fc \ + --hash=sha256:cab5d0b79d987c67f3b9e9c53f54a61360422a5a0bc075f43cab5621d530c3b6 \ + --hash=sha256:ce031db0408e487fd2775d745ce30a7cd2923667cf3b69d48d219f1d8f5ddeb6 \ + --hash=sha256:cee4373f4d3ad28f1ab6290684d8e2ebdb9e7a1b74fdc39e4c211995f77bec27 \ + --hash=sha256:d5b054862739d276e09928de37c79ddeec42a6e1bfc55863be96a36ba22926f6 \ + --hash=sha256:dbe03226baf438ac4fda9e2d0715022fd579cb641c4cf639fa40d53b2fe6f3e2 \ + --hash=sha256:dc15e99b2d8a656f8e666854404f1ba54765871104e50c8e9813af8a7db07f12 \ + --hash=sha256:dcaf7c1524c0542ee2fc82cc8ec337f7a9f7edee2532421ab200d2b920fc97cf \ + --hash=sha256:dd4eda173a9fcccb5f2e2bd2a9f423d180194b1bf17cf59e3269899235b2a114 \ + --hash=sha256:dd9a8bd8900e65504a305bf8ae6fa9fbc66de94178c420791d0293702fce2df7 \ + --hash=sha256:de7376c29d95d6719048c194a9cf1a1b0393fbe8488a22008610b0361d834ecf \ + --hash=sha256:e7fdd52961feb4c96507aa649550ec2a0d527c086d284749b2f582f2d40a2e0d \ + --hash=sha256:e91f541a85298cf35433bf66f3fab2a4a2cff05c127eeca4af174f6d497f0d4b \ + --hash=sha256:e9e3c4c9e1ed40ea53acf11e2a386383c3304212c965773704e4603d589343ed \ + --hash=sha256:ee803480535c44e7f5ad00788526da7d85525cfefaf8acf8ab9a310000be4b03 \ + --hash=sha256:f09cb5a7bbe1ecae6e87901a2eb23e0256bb524a79ccc53eb0b7629fbe7677c4 \ + --hash=sha256:f19c1585933c82098c2a520f8ec1227f20e339e33aca8fa6f956f6691b784e67 \ + --hash=sha256:f1a2f519ae173b5b6a2c9d5fa3116ce16e48b3462c8b96dfdded11055e3d6365 \ + --hash=sha256:f28f891ccd15c514a0981f3b9db9aa23d62fe1a99997512b0491d2ed323d229a \ + --hash=sha256:f3e73a4255342d4eb26ef6df01e3962e73aa29baa3124a8e824c5d3364a65748 \ + --hash=sha256:f606a1881d2663630ea5b8ce2efe2111740df4b687bd78b34a8131baa007f79b \ + --hash=sha256:fe9f97feb71aa9896b81973a7bbada8c49501dc73e58a10fcef6663af95e5079 \ + --hash=sha256:ffc519621dce0c767e96b9c53f09c5d215578e10b02c285809f76509a3931482 # via requests click==8.1.7 \ --hash=sha256:ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28 \ @@ -211,13 +226,13 @@ ghp-import==2.1.0 \ --hash=sha256:8337dd7b50877f163d4c0289bc1f1c7f127550241988d568c1db512c4324a619 \ --hash=sha256:9c535c4c61193c2df8871222567d7fd7e5014d835f97dc7b7439069e2413d343 # via mkdocs -idna==3.8 \ - --hash=sha256:050b4e5baadcd44d760cedbd2b8e639f2ff89bbc7a5730fcc662954303377aac \ - --hash=sha256:d838c2c0ed6fced7693d5e8ab8e734d5f8fda53a039c0164afb0b82e771e3603 +idna==3.10 \ + --hash=sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9 \ + --hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 # via requests -importlib-metadata==8.4.0 \ - --hash=sha256:66f342cc6ac9818fc6ff340576acd24d65ba0b3efabb2b4ac08b598965a4a2f1 \ - --hash=sha256:9a547d3bc3608b025f93d403fdd1aae741c24fbb8314df4b155675742ce303c5 +importlib-metadata==8.5.0 \ + --hash=sha256:45e54197d28b7a7f1559e60b95e7c567032b602131fbd588f1497f47880aa68b \ + --hash=sha256:71522656f0abace1d072b9e5481a48f07c138e00f079c38c8f883823f9c26bd7 # via # markdown # mike @@ -241,67 +256,68 @@ markdown==3.7 \ # mkdocs # mkdocs-material # pymdown-extensions -markupsafe==2.1.5 \ - --hash=sha256:00e046b6dd71aa03a41079792f8473dc494d564611a8f89bbbd7cb93295ebdcf \ - --hash=sha256:075202fa5b72c86ad32dc7d0b56024ebdbcf2048c0ba09f1cde31bfdd57bcfff \ - --hash=sha256:0e397ac966fdf721b2c528cf028494e86172b4feba51d65f81ffd65c63798f3f \ - --hash=sha256:17b950fccb810b3293638215058e432159d2b71005c74371d784862b7e4683f3 \ - --hash=sha256:1f3fbcb7ef1f16e48246f704ab79d79da8a46891e2da03f8783a5b6fa41a9532 \ - --hash=sha256:2174c595a0d73a3080ca3257b40096db99799265e1c27cc5a610743acd86d62f \ - --hash=sha256:2b7c57a4dfc4f16f7142221afe5ba4e093e09e728ca65c51f5620c9aaeb9a617 \ - --hash=sha256:2d2d793e36e230fd32babe143b04cec8a8b3eb8a3122d2aceb4a371e6b09b8df \ - --hash=sha256:30b600cf0a7ac9234b2638fbc0fb6158ba5bdcdf46aeb631ead21248b9affbc4 \ - --hash=sha256:397081c1a0bfb5124355710fe79478cdbeb39626492b15d399526ae53422b906 \ - --hash=sha256:3a57fdd7ce31c7ff06cdfbf31dafa96cc533c21e443d57f5b1ecc6cdc668ec7f \ - --hash=sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4 \ - --hash=sha256:3e53af139f8579a6d5f7b76549125f0d94d7e630761a2111bc431fd820e163b8 \ - --hash=sha256:4096e9de5c6fdf43fb4f04c26fb114f61ef0bf2e5604b6ee3019d51b69e8c371 \ - --hash=sha256:4275d846e41ecefa46e2015117a9f491e57a71ddd59bbead77e904dc02b1bed2 \ - --hash=sha256:4c31f53cdae6ecfa91a77820e8b151dba54ab528ba65dfd235c80b086d68a465 \ - --hash=sha256:4f11aa001c540f62c6166c7726f71f7573b52c68c31f014c25cc7901deea0b52 \ - --hash=sha256:5049256f536511ee3f7e1b3f87d1d1209d327e818e6ae1365e8653d7e3abb6a6 \ - --hash=sha256:58c98fee265677f63a4385256a6d7683ab1832f3ddd1e66fe948d5880c21a169 \ - --hash=sha256:598e3276b64aff0e7b3451b72e94fa3c238d452e7ddcd893c3ab324717456bad \ - --hash=sha256:5b7b716f97b52c5a14bffdf688f971b2d5ef4029127f1ad7a513973cfd818df2 \ - --hash=sha256:5dedb4db619ba5a2787a94d877bc8ffc0566f92a01c0ef214865e54ecc9ee5e0 \ - --hash=sha256:619bc166c4f2de5caa5a633b8b7326fbe98e0ccbfacabd87268a2b15ff73a029 \ - --hash=sha256:629ddd2ca402ae6dbedfceeba9c46d5f7b2a61d9749597d4307f943ef198fc1f \ - --hash=sha256:656f7526c69fac7f600bd1f400991cc282b417d17539a1b228617081106feb4a \ - --hash=sha256:6ec585f69cec0aa07d945b20805be741395e28ac1627333b1c5b0105962ffced \ - --hash=sha256:72b6be590cc35924b02c78ef34b467da4ba07e4e0f0454a2c5907f473fc50ce5 \ - --hash=sha256:7502934a33b54030eaf1194c21c692a534196063db72176b0c4028e140f8f32c \ - --hash=sha256:7a68b554d356a91cce1236aa7682dc01df0edba8d043fd1ce607c49dd3c1edcf \ - --hash=sha256:7b2e5a267c855eea6b4283940daa6e88a285f5f2a67f2220203786dfa59b37e9 \ - --hash=sha256:823b65d8706e32ad2df51ed89496147a42a2a6e01c13cfb6ffb8b1e92bc910bb \ - --hash=sha256:8590b4ae07a35970728874632fed7bd57b26b0102df2d2b233b6d9d82f6c62ad \ - --hash=sha256:8dd717634f5a044f860435c1d8c16a270ddf0ef8588d4887037c5028b859b0c3 \ - --hash=sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1 \ - --hash=sha256:97cafb1f3cbcd3fd2b6fbfb99ae11cdb14deea0736fc2b0952ee177f2b813a46 \ - --hash=sha256:a17a92de5231666cfbe003f0e4b9b3a7ae3afb1ec2845aadc2bacc93ff85febc \ - --hash=sha256:a549b9c31bec33820e885335b451286e2969a2d9e24879f83fe904a5ce59d70a \ - --hash=sha256:ac07bad82163452a6884fe8fa0963fb98c2346ba78d779ec06bd7a6262132aee \ - --hash=sha256:ae2ad8ae6ebee9d2d94b17fb62763125f3f374c25618198f40cbb8b525411900 \ - --hash=sha256:b91c037585eba9095565a3556f611e3cbfaa42ca1e865f7b8015fe5c7336d5a5 \ - --hash=sha256:bc1667f8b83f48511b94671e0e441401371dfd0f0a795c7daa4a3cd1dde55bea \ - --hash=sha256:bec0a414d016ac1a18862a519e54b2fd0fc8bbfd6890376898a6c0891dd82e9f \ - --hash=sha256:bf50cd79a75d181c9181df03572cdce0fbb75cc353bc350712073108cba98de5 \ - --hash=sha256:bff1b4290a66b490a2f4719358c0cdcd9bafb6b8f061e45c7a2460866bf50c2e \ - --hash=sha256:c061bb86a71b42465156a3ee7bd58c8c2ceacdbeb95d05a99893e08b8467359a \ - --hash=sha256:c8b29db45f8fe46ad280a7294f5c3ec36dbac9491f2d1c17345be8e69cc5928f \ - --hash=sha256:ce409136744f6521e39fd8e2a24c53fa18ad67aa5bc7c2cf83645cce5b5c4e50 \ - --hash=sha256:d050b3361367a06d752db6ead6e7edeb0009be66bc3bae0ee9d97fb326badc2a \ - --hash=sha256:d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b \ - --hash=sha256:d9fad5155d72433c921b782e58892377c44bd6252b5af2f67f16b194987338a4 \ - --hash=sha256:daa4ee5a243f0f20d528d939d06670a298dd39b1ad5f8a72a4275124a7819eff \ - --hash=sha256:db0b55e0f3cc0be60c1f19efdde9a637c32740486004f20d1cff53c3c0ece4d2 \ - --hash=sha256:e61659ba32cf2cf1481e575d0462554625196a1f2fc06a1c777d3f48e8865d46 \ - --hash=sha256:ea3d8a3d18833cf4304cd2fc9cbb1efe188ca9b5efef2bdac7adc20594a0e46b \ - --hash=sha256:ec6a563cff360b50eed26f13adc43e61bc0c04d94b8be985e6fb24b81f6dcfdf \ - --hash=sha256:f5dfb42c4604dddc8e4305050aa6deb084540643ed5804d7455b5df8fe16f5e5 \ - --hash=sha256:fa173ec60341d6bb97a89f5ea19c85c5643c1e7dedebc22f5181eb73573142c5 \ - --hash=sha256:fa9db3f79de01457b03d4f01b34cf91bc0048eb2c3846ff26f66687c2f6d16ab \ - --hash=sha256:fce659a462a1be54d2ffcacea5e3ba2d74daa74f30f5f143fe0c58636e355fdd \ - --hash=sha256:ffee1f21e5ef0d712f9033568f8344d5da8cc2869dbd08d87c84656e6a2d2f68 +markupsafe==3.0.2 \ + --hash=sha256:0bff5e0ae4ef2e1ae4fdf2dfd5b76c75e5c2fa4132d05fc1b0dabcd20c7e28c4 \ + --hash=sha256:0f4ca02bea9a23221c0182836703cbf8930c5e9454bacce27e767509fa286a30 \ + --hash=sha256:1225beacc926f536dc82e45f8a4d68502949dc67eea90eab715dea3a21c1b5f0 \ + --hash=sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9 \ + --hash=sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396 \ + --hash=sha256:1a9d3f5f0901fdec14d8d2f66ef7d035f2157240a433441719ac9a3fba440b13 \ + --hash=sha256:1c99d261bd2d5f6b59325c92c73df481e05e57f19837bdca8413b9eac4bd8028 \ + --hash=sha256:1e084f686b92e5b83186b07e8a17fc09e38fff551f3602b249881fec658d3eca \ + --hash=sha256:2181e67807fc2fa785d0592dc2d6206c019b9502410671cc905d132a92866557 \ + --hash=sha256:2cb8438c3cbb25e220c2ab33bb226559e7afb3baec11c4f218ffa7308603c832 \ + --hash=sha256:3169b1eefae027567d1ce6ee7cae382c57fe26e82775f460f0b2778beaad66c0 \ + --hash=sha256:3809ede931876f5b2ec92eef964286840ed3540dadf803dd570c3b7e13141a3b \ + --hash=sha256:38a9ef736c01fccdd6600705b09dc574584b89bea478200c5fbf112a6b0d5579 \ + --hash=sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a \ + --hash=sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c \ + --hash=sha256:48032821bbdf20f5799ff537c7ac3d1fba0ba032cfc06194faffa8cda8b560ff \ + --hash=sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c \ + --hash=sha256:52305740fe773d09cffb16f8ed0427942901f00adedac82ec8b67752f58a1b22 \ + --hash=sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094 \ + --hash=sha256:57cb5a3cf367aeb1d316576250f65edec5bb3be939e9247ae594b4bcbc317dfb \ + --hash=sha256:5b02fb34468b6aaa40dfc198d813a641e3a63b98c2b05a16b9f80b7ec314185e \ + --hash=sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5 \ + --hash=sha256:6af100e168aa82a50e186c82875a5893c5597a0c1ccdb0d8b40240b1f28b969a \ + --hash=sha256:6c89876f41da747c8d3677a2b540fb32ef5715f97b66eeb0c6b66f5e3ef6f59d \ + --hash=sha256:6e296a513ca3d94054c2c881cc913116e90fd030ad1c656b3869762b754f5f8a \ + --hash=sha256:70a87b411535ccad5ef2f1df5136506a10775d267e197e4cf531ced10537bd6b \ + --hash=sha256:7e94c425039cde14257288fd61dcfb01963e658efbc0ff54f5306b06054700f8 \ + --hash=sha256:846ade7b71e3536c4e56b386c2a47adf5741d2d8b94ec9dc3e92e5e1ee1e2225 \ + --hash=sha256:88416bd1e65dcea10bc7569faacb2c20ce071dd1f87539ca2ab364bf6231393c \ + --hash=sha256:88b49a3b9ff31e19998750c38e030fc7bb937398b1f78cfa599aaef92d693144 \ + --hash=sha256:8c4e8c3ce11e1f92f6536ff07154f9d49677ebaaafc32db9db4620bc11ed480f \ + --hash=sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87 \ + --hash=sha256:9025b4018f3a1314059769c7bf15441064b2207cb3f065e6ea1e7359cb46db9d \ + --hash=sha256:93335ca3812df2f366e80509ae119189886b0f3c2b81325d39efdb84a1e2ae93 \ + --hash=sha256:9778bd8ab0a994ebf6f84c2b949e65736d5575320a17ae8984a77fab08db94cf \ + --hash=sha256:9e2d922824181480953426608b81967de705c3cef4d1af983af849d7bd619158 \ + --hash=sha256:a123e330ef0853c6e822384873bef7507557d8e4a082961e1defa947aa59ba84 \ + --hash=sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb \ + --hash=sha256:ad10d3ded218f1039f11a75f8091880239651b52e9bb592ca27de44eed242a48 \ + --hash=sha256:b424c77b206d63d500bcb69fa55ed8d0e6a3774056bdc4839fc9298a7edca171 \ + --hash=sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c \ + --hash=sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6 \ + --hash=sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd \ + --hash=sha256:bbcb445fa71794da8f178f0f6d66789a28d7319071af7a496d4d507ed566270d \ + --hash=sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1 \ + --hash=sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d \ + --hash=sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca \ + --hash=sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a \ + --hash=sha256:cfad01eed2c2e0c01fd0ecd2ef42c492f7f93902e39a42fc9ee1692961443a29 \ + --hash=sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe \ + --hash=sha256:d8213e09c917a951de9d09ecee036d5c7d36cb6cb7dbaece4c71a60d79fb9798 \ + --hash=sha256:e07c3764494e3776c602c1e78e298937c3315ccc9043ead7e685b7f2b8d47b3c \ + --hash=sha256:e17c96c14e19278594aa4841ec148115f9c7615a47382ecb6b82bd8fea3ab0c8 \ + --hash=sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f \ + --hash=sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f \ + --hash=sha256:eaa0a10b7f72326f1372a713e73c3f739b524b3af41feb43e4921cb529f5929a \ + --hash=sha256:eb7972a85c54febfb25b5c4b4f3af4dcc731994c7da0d8a0b4a6eb0640e1d178 \ + --hash=sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0 \ + --hash=sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79 \ + --hash=sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430 \ + --hash=sha256:fcabf5ff6eea076f859677f5f0b6b5c1a51e70a376b0579e0eadef8db48c6b50 # via # jinja2 # mkdocs @@ -332,9 +348,9 @@ mkdocs-get-deps==0.2.0 \ --hash=sha256:162b3d129c7fad9b19abfdcb9c1458a651628e4b1dea628ac68790fb3061c60c \ --hash=sha256:2bf11d0b133e77a0dd036abeeb06dec8775e46efa526dc70667d8863eefc6134 # via mkdocs -mkdocs-material==9.5.34 \ - --hash=sha256:1e60ddf716cfb5679dfd65900b8a25d277064ed82d9a53cd5190e3f894df7840 \ - --hash=sha256:54caa8be708de2b75167fd4d3b9f3d949579294f49cb242515d4653dbee9227e +mkdocs-material==9.5.44 \ + --hash=sha256:47015f9c167d58a5ff5e682da37441fc4d66a1c79334bfc08d774763cacf69ca \ + --hash=sha256:f3a6c968e524166b3f3ed1fb97d3ed3e0091183b0545cedf7156a2a6804c56c0 # via # -r requirements.in # mkdocs-print-site-plugin @@ -342,13 +358,13 @@ mkdocs-material-extensions==1.3.1 \ --hash=sha256:10c9511cea88f568257f960358a467d12b970e1f7b2c0e5fb2bb48cab1928443 \ --hash=sha256:adff8b62700b25cb77b53358dad940f3ef973dd6db797907c49e3c2ef3ab4e31 # via mkdocs-material -mkdocs-print-site-plugin==2.5.0 \ - --hash=sha256:48b3d41ae80384de72062b2712fce677f2e46d8364d9fe603ba837b0cf7156a4 \ - --hash=sha256:95dccc8d5cc8a59da67815a2d3304ef0101b065e363f2b9ac919c23d6196dd24 +mkdocs-print-site-plugin==2.6.0 \ + --hash=sha256:621e3eed4907b87c93f930a065c5c423ef11e0a2a058e78c6bd9a149df0ab918 \ + --hash=sha256:f226686cafb549a6b6fa20b1f7acd50e8da98b16978a7df5df5457168cf2adda # via -r requirements.in -packaging==24.1 \ - --hash=sha256:026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002 \ - --hash=sha256:5b8f2217dbdbd2f7f384c41c628544e6d52f2d0f53c6d0c3ea61aa5d1d7ff124 +packaging==24.2 \ + --hash=sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759 \ + --hash=sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f # via # mkdocs # typepy @@ -448,9 +464,9 @@ pillow==10.4.0 \ # via # cairosvg # mkdocs-material -platformdirs==4.3.2 \ - --hash=sha256:9e5e27a08aa095dd127b9f2e764d74254f482fef22b0970773bfba79d091ab8c \ - --hash=sha256:eb1c8582560b34ed4ba105009a4badf7f6f85768b30126f351328507b2beb617 +platformdirs==4.3.6 \ + --hash=sha256:357fb2acbc885b0419afd3ce3ed34564c13c9b95c89360cd9563f73aa5e2b907 \ + --hash=sha256:73e575e1408ab8103900836b97580d5307456908a03e92031bab39e4554cc3fb # via mkdocs-get-deps pycparser==2.22 \ --hash=sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6 \ @@ -460,13 +476,13 @@ pygments==2.18.0 \ --hash=sha256:786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199 \ --hash=sha256:b8e6aca0523f3ab76fee51799c488e38782ac06eafcf95e7ba832985c8e7b13a # via mkdocs-material -pymdown-extensions==10.9 \ - --hash=sha256:6ff740bcd99ec4172a938970d42b96128bdc9d4b9bcad72494f29921dc69b753 \ - --hash=sha256:d323f7e90d83c86113ee78f3fe62fc9dee5f56b54d912660703ea1816fed5626 +pymdown-extensions==10.12 \ + --hash=sha256:49f81412242d3527b8b4967b990df395c89563043bc51a3d2d7d500e52123b77 \ + --hash=sha256:b0ee1e0b2bef1071a47891ab17003bfe5bf824a398e13f49f8ed653b699369a7 # via mkdocs-material -pyparsing==3.1.4 \ - --hash=sha256:a6a7ee4235a3f944aa1fa2249307708f893fe5717dc603503c6c7969c070fb7c \ - --hash=sha256:f86ec8d1a83f11977c9a6ea7598e8c27fc5cddfa5b07ea2241edbbde1d7bc032 +pyparsing==3.2.0 \ + --hash=sha256:93d9577b88da0bbea8cc8334ee8b918ed014968fd2ec383e868fb8afb1ccef84 \ + --hash=sha256:cbf74e27246d595d9a74b186b810f6fbb86726dbf3b9532efb343f6d7294fe9c # via mike pytablewriter==1.2.0 \ --hash=sha256:0204a4bb684a22140d640f2599f09e137bcdc18b3dd49426f4a555016e246b46 \ @@ -548,86 +564,101 @@ pyyaml-env-tag==0.1 \ # via # mike # mkdocs -regex==2024.7.24 \ - --hash=sha256:01b689e887f612610c869421241e075c02f2e3d1ae93a037cb14f88ab6a8934c \ - --hash=sha256:04ce29e2c5fedf296b1a1b0acc1724ba93a36fb14031f3abfb7abda2806c1535 \ - --hash=sha256:0ffe3f9d430cd37d8fa5632ff6fb36d5b24818c5c986893063b4e5bdb84cdf24 \ - --hash=sha256:18300a1d78cf1290fa583cd8b7cde26ecb73e9f5916690cf9d42de569c89b1ce \ - --hash=sha256:185e029368d6f89f36e526764cf12bf8d6f0e3a2a7737da625a76f594bdfcbfc \ - --hash=sha256:19c65b00d42804e3fbea9708f0937d157e53429a39b7c61253ff15670ff62cb5 \ - --hash=sha256:228b0d3f567fafa0633aee87f08b9276c7062da9616931382993c03808bb68ce \ - --hash=sha256:23acc72f0f4e1a9e6e9843d6328177ae3074b4182167e34119ec7233dfeccf53 \ - --hash=sha256:25419b70ba00a16abc90ee5fce061228206173231f004437730b67ac77323f0d \ - --hash=sha256:2dfbb8baf8ba2c2b9aa2807f44ed272f0913eeeba002478c4577b8d29cde215c \ - --hash=sha256:2f1baff13cc2521bea83ab2528e7a80cbe0ebb2c6f0bfad15be7da3aed443908 \ - --hash=sha256:33e2614a7ce627f0cdf2ad104797d1f68342d967de3695678c0cb84f530709f8 \ - --hash=sha256:3426de3b91d1bc73249042742f45c2148803c111d1175b283270177fdf669024 \ - --hash=sha256:382281306e3adaaa7b8b9ebbb3ffb43358a7bbf585fa93821300a418bb975281 \ - --hash=sha256:3d974d24edb231446f708c455fd08f94c41c1ff4f04bcf06e5f36df5ef50b95a \ - --hash=sha256:3f3b6ca8eae6d6c75a6cff525c8530c60e909a71a15e1b731723233331de4169 \ - --hash=sha256:3fac296f99283ac232d8125be932c5cd7644084a30748fda013028c815ba3364 \ - --hash=sha256:416c0e4f56308f34cdb18c3f59849479dde5b19febdcd6e6fa4d04b6c31c9faa \ - --hash=sha256:438d9f0f4bc64e8dea78274caa5af971ceff0f8771e1a2333620969936ba10be \ - --hash=sha256:43affe33137fcd679bdae93fb25924979517e011f9dea99163f80b82eadc7e53 \ - --hash=sha256:44fc61b99035fd9b3b9453f1713234e5a7c92a04f3577252b45feefe1b327759 \ - --hash=sha256:45104baae8b9f67569f0f1dca5e1f1ed77a54ae1cd8b0b07aba89272710db61e \ - --hash=sha256:4fdd1384619f406ad9037fe6b6eaa3de2749e2e12084abc80169e8e075377d3b \ - --hash=sha256:538d30cd96ed7d1416d3956f94d54e426a8daf7c14527f6e0d6d425fcb4cca52 \ - --hash=sha256:558a57cfc32adcf19d3f791f62b5ff564922942e389e3cfdb538a23d65a6b610 \ - --hash=sha256:5eefee9bfe23f6df09ffb6dfb23809f4d74a78acef004aa904dc7c88b9944b05 \ - --hash=sha256:64bd50cf16bcc54b274e20235bf8edbb64184a30e1e53873ff8d444e7ac656b2 \ - --hash=sha256:65fd3d2e228cae024c411c5ccdffae4c315271eee4a8b839291f84f796b34eca \ - --hash=sha256:66b4c0731a5c81921e938dcf1a88e978264e26e6ac4ec96a4d21ae0354581ae0 \ - --hash=sha256:68a8f8c046c6466ac61a36b65bb2395c74451df2ffb8458492ef49900efed293 \ - --hash=sha256:6a1141a1dcc32904c47f6846b040275c6e5de0bf73f17d7a409035d55b76f289 \ - --hash=sha256:6b9fc7e9cc983e75e2518496ba1afc524227c163e43d706688a6bb9eca41617e \ - --hash=sha256:6f51f9556785e5a203713f5efd9c085b4a45aecd2a42573e2b5041881b588d1f \ - --hash=sha256:7214477bf9bd195894cf24005b1e7b496f46833337b5dedb7b2a6e33f66d962c \ - --hash=sha256:731fcd76bbdbf225e2eb85b7c38da9633ad3073822f5ab32379381e8c3c12e94 \ - --hash=sha256:74007a5b25b7a678459f06559504f1eec2f0f17bca218c9d56f6a0a12bfffdad \ - --hash=sha256:7a5486ca56c8869070a966321d5ab416ff0f83f30e0e2da1ab48815c8d165d46 \ - --hash=sha256:7c479f5ae937ec9985ecaf42e2e10631551d909f203e31308c12d703922742f9 \ - --hash=sha256:7df9ea48641da022c2a3c9c641650cd09f0cd15e8908bf931ad538f5ca7919c9 \ - --hash=sha256:7e37e809b9303ec3a179085415cb5f418ecf65ec98cdfe34f6a078b46ef823ee \ - --hash=sha256:80c811cfcb5c331237d9bad3bea2c391114588cf4131707e84d9493064d267f9 \ - --hash=sha256:836d3cc225b3e8a943d0b02633fb2f28a66e281290302a79df0e1eaa984ff7c1 \ - --hash=sha256:84c312cdf839e8b579f504afcd7b65f35d60b6285d892b19adea16355e8343c9 \ - --hash=sha256:86b17ba823ea76256b1885652e3a141a99a5c4422f4a869189db328321b73799 \ - --hash=sha256:871e3ab2838fbcb4e0865a6e01233975df3a15e6fce93b6f99d75cacbd9862d1 \ - --hash=sha256:88ecc3afd7e776967fa16c80f974cb79399ee8dc6c96423321d6f7d4b881c92b \ - --hash=sha256:8bc593dcce679206b60a538c302d03c29b18e3d862609317cb560e18b66d10cf \ - --hash=sha256:8fd5afd101dcf86a270d254364e0e8dddedebe6bd1ab9d5f732f274fa00499a5 \ - --hash=sha256:945352286a541406f99b2655c973852da7911b3f4264e010218bbc1cc73168f2 \ - --hash=sha256:973335b1624859cb0e52f96062a28aa18f3a5fc77a96e4a3d6d76e29811a0e6e \ - --hash=sha256:994448ee01864501912abf2bad9203bffc34158e80fe8bfb5b031f4f8e16da51 \ - --hash=sha256:9cfd009eed1a46b27c14039ad5bbc5e71b6367c5b2e6d5f5da0ea91600817506 \ - --hash=sha256:a2ec4419a3fe6cf8a4795752596dfe0adb4aea40d3683a132bae9c30b81e8d73 \ - --hash=sha256:a4997716674d36a82eab3e86f8fa77080a5d8d96a389a61ea1d0e3a94a582cf7 \ - --hash=sha256:a512eed9dfd4117110b1881ba9a59b31433caed0c4101b361f768e7bcbaf93c5 \ - --hash=sha256:a82465ebbc9b1c5c50738536fdfa7cab639a261a99b469c9d4c7dcbb2b3f1e57 \ - --hash=sha256:ae2757ace61bc4061b69af19e4689fa4416e1a04840f33b441034202b5cd02d4 \ - --hash=sha256:b16582783f44fbca6fcf46f61347340c787d7530d88b4d590a397a47583f31dd \ - --hash=sha256:ba2537ef2163db9e6ccdbeb6f6424282ae4dea43177402152c67ef869cf3978b \ - --hash=sha256:bf7a89eef64b5455835f5ed30254ec19bf41f7541cd94f266ab7cbd463f00c41 \ - --hash=sha256:c0abb5e4e8ce71a61d9446040c1e86d4e6d23f9097275c5bd49ed978755ff0fe \ - --hash=sha256:c414cbda77dbf13c3bc88b073a1a9f375c7b0cb5e115e15d4b73ec3a2fbc6f59 \ - --hash=sha256:c51edc3541e11fbe83f0c4d9412ef6c79f664a3745fab261457e84465ec9d5a8 \ - --hash=sha256:c5e69fd3eb0b409432b537fe3c6f44ac089c458ab6b78dcec14478422879ec5f \ - --hash=sha256:c918b7a1e26b4ab40409820ddccc5d49871a82329640f5005f73572d5eaa9b5e \ - --hash=sha256:c9bb87fdf2ab2370f21e4d5636e5317775e5d51ff32ebff2cf389f71b9b13750 \ - --hash=sha256:ca5b2028c2f7af4e13fb9fc29b28d0ce767c38c7facdf64f6c2cd040413055f1 \ - --hash=sha256:d0a07763776188b4db4c9c7fb1b8c494049f84659bb387b71c73bbc07f189e96 \ - --hash=sha256:d33a0021893ede5969876052796165bab6006559ab845fd7b515a30abdd990dc \ - --hash=sha256:d55588cba7553f0b6ec33130bc3e114b355570b45785cebdc9daed8c637dd440 \ - --hash=sha256:dac8e84fff5d27420f3c1e879ce9929108e873667ec87e0c8eeb413a5311adfe \ - --hash=sha256:eaef80eac3b4cfbdd6de53c6e108b4c534c21ae055d1dbea2de6b3b8ff3def38 \ - --hash=sha256:eb462f0e346fcf41a901a126b50f8781e9a474d3927930f3490f38a6e73b6950 \ - --hash=sha256:eb563dd3aea54c797adf513eeec819c4213d7dbfc311874eb4fd28d10f2ff0f2 \ - --hash=sha256:f273674b445bcb6e4409bf8d1be67bc4b58e8b46fd0d560055d515b8830063cd \ - --hash=sha256:f6442f0f0ff81775eaa5b05af8a0ffa1dda36e9cf6ec1e0d3d245e8564b684ce \ - --hash=sha256:fb168b5924bef397b5ba13aabd8cf5df7d3d93f10218d7b925e360d436863f66 \ - --hash=sha256:fbf8c2f00904eaf63ff37718eb13acf8e178cb940520e47b2f05027f5bb34ce3 \ - --hash=sha256:fe4ebef608553aff8deb845c7f4f1d0740ff76fa672c011cc0bacb2a00fbde86 +regex==2024.11.6 \ + --hash=sha256:02a02d2bb04fec86ad61f3ea7f49c015a0681bf76abb9857f945d26159d2968c \ + --hash=sha256:02e28184be537f0e75c1f9b2f8847dc51e08e6e171c6bde130b2687e0c33cf60 \ + --hash=sha256:040df6fe1a5504eb0f04f048e6d09cd7c7110fef851d7c567a6b6e09942feb7d \ + --hash=sha256:068376da5a7e4da51968ce4c122a7cd31afaaec4fccc7856c92f63876e57b51d \ + --hash=sha256:06eb1be98df10e81ebaded73fcd51989dcf534e3c753466e4b60c4697a003b67 \ + --hash=sha256:072623554418a9911446278f16ecb398fb3b540147a7828c06e2011fa531e773 \ + --hash=sha256:086a27a0b4ca227941700e0b31425e7a28ef1ae8e5e05a33826e17e47fbfdba0 \ + --hash=sha256:08986dce1339bc932923e7d1232ce9881499a0e02925f7402fb7c982515419ef \ + --hash=sha256:0a86e7eeca091c09e021db8eb72d54751e527fa47b8d5787caf96d9831bd02ad \ + --hash=sha256:0c32f75920cf99fe6b6c539c399a4a128452eaf1af27f39bce8909c9a3fd8cbe \ + --hash=sha256:0d7f453dca13f40a02b79636a339c5b62b670141e63efd511d3f8f73fba162b3 \ + --hash=sha256:1062b39a0a2b75a9c694f7a08e7183a80c63c0d62b301418ffd9c35f55aaa114 \ + --hash=sha256:13291b39131e2d002a7940fb176e120bec5145f3aeb7621be6534e46251912c4 \ + --hash=sha256:149f5008d286636e48cd0b1dd65018548944e495b0265b45e1bffecce1ef7f39 \ + --hash=sha256:164d8b7b3b4bcb2068b97428060b2a53be050085ef94eca7f240e7947f1b080e \ + --hash=sha256:167ed4852351d8a750da48712c3930b031f6efdaa0f22fa1933716bfcd6bf4a3 \ + --hash=sha256:1c4de13f06a0d54fa0d5ab1b7138bfa0d883220965a29616e3ea61b35d5f5fc7 \ + --hash=sha256:202eb32e89f60fc147a41e55cb086db2a3f8cb82f9a9a88440dcfc5d37faae8d \ + --hash=sha256:220902c3c5cc6af55d4fe19ead504de80eb91f786dc102fbd74894b1551f095e \ + --hash=sha256:2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a \ + --hash=sha256:2c89a8cc122b25ce6945f0423dc1352cb9593c68abd19223eebbd4e56612c5b7 \ + --hash=sha256:2d548dafee61f06ebdb584080621f3e0c23fff312f0de1afc776e2a2ba99a74f \ + --hash=sha256:2e34b51b650b23ed3354b5a07aab37034d9f923db2a40519139af34f485f77d0 \ + --hash=sha256:32f9a4c643baad4efa81d549c2aadefaeba12249b2adc5af541759237eee1c54 \ + --hash=sha256:3a51ccc315653ba012774efca4f23d1d2a8a8f278a6072e29c7147eee7da446b \ + --hash=sha256:3cde6e9f2580eb1665965ce9bf17ff4952f34f5b126beb509fee8f4e994f143c \ + --hash=sha256:40291b1b89ca6ad8d3f2b82782cc33807f1406cf68c8d440861da6304d8ffbbd \ + --hash=sha256:41758407fc32d5c3c5de163888068cfee69cb4c2be844e7ac517a52770f9af57 \ + --hash=sha256:4181b814e56078e9b00427ca358ec44333765f5ca1b45597ec7446d3a1ef6e34 \ + --hash=sha256:4f51f88c126370dcec4908576c5a627220da6c09d0bff31cfa89f2523843316d \ + --hash=sha256:50153825ee016b91549962f970d6a4442fa106832e14c918acd1c8e479916c4f \ + --hash=sha256:5056b185ca113c88e18223183aa1a50e66507769c9640a6ff75859619d73957b \ + --hash=sha256:5071b2093e793357c9d8b2929dfc13ac5f0a6c650559503bb81189d0a3814519 \ + --hash=sha256:525eab0b789891ac3be914d36893bdf972d483fe66551f79d3e27146191a37d4 \ + --hash=sha256:52fb28f528778f184f870b7cf8f225f5eef0a8f6e3778529bdd40c7b3920796a \ + --hash=sha256:5478c6962ad548b54a591778e93cd7c456a7a29f8eca9c49e4f9a806dcc5d638 \ + --hash=sha256:5670bce7b200273eee1840ef307bfa07cda90b38ae56e9a6ebcc9f50da9c469b \ + --hash=sha256:5704e174f8ccab2026bd2f1ab6c510345ae8eac818b613d7d73e785f1310f839 \ + --hash=sha256:59dfe1ed21aea057a65c6b586afd2a945de04fc7db3de0a6e3ed5397ad491b07 \ + --hash=sha256:5e7e351589da0850c125f1600a4c4ba3c722efefe16b297de54300f08d734fbf \ + --hash=sha256:63b13cfd72e9601125027202cad74995ab26921d8cd935c25f09c630436348ff \ + --hash=sha256:658f90550f38270639e83ce492f27d2c8d2cd63805c65a13a14d36ca126753f0 \ + --hash=sha256:684d7a212682996d21ca12ef3c17353c021fe9de6049e19ac8481ec35574a70f \ + --hash=sha256:69ab78f848845569401469da20df3e081e6b5a11cb086de3eed1d48f5ed57c95 \ + --hash=sha256:6f44ec28b1f858c98d3036ad5d7d0bfc568bdd7a74f9c24e25f41ef1ebfd81a4 \ + --hash=sha256:70b7fa6606c2881c1db9479b0eaa11ed5dfa11c8d60a474ff0e095099f39d98e \ + --hash=sha256:764e71f22ab3b305e7f4c21f1a97e1526a25ebdd22513e251cf376760213da13 \ + --hash=sha256:7ab159b063c52a0333c884e4679f8d7a85112ee3078fe3d9004b2dd875585519 \ + --hash=sha256:805e6b60c54bf766b251e94526ebad60b7de0c70f70a4e6210ee2891acb70bf2 \ + --hash=sha256:8447d2d39b5abe381419319f942de20b7ecd60ce86f16a23b0698f22e1b70008 \ + --hash=sha256:86fddba590aad9208e2fa8b43b4c098bb0ec74f15718bb6a704e3c63e2cef3e9 \ + --hash=sha256:89d75e7293d2b3e674db7d4d9b1bee7f8f3d1609428e293771d1a962617150cc \ + --hash=sha256:93c0b12d3d3bc25af4ebbf38f9ee780a487e8bf6954c115b9f015822d3bb8e48 \ + --hash=sha256:94d87b689cdd831934fa3ce16cc15cd65748e6d689f5d2b8f4f4df2065c9fa20 \ + --hash=sha256:9714398225f299aa85267fd222f7142fcb5c769e73d7733344efc46f2ef5cf89 \ + --hash=sha256:982e6d21414e78e1f51cf595d7f321dcd14de1f2881c5dc6a6e23bbbbd68435e \ + --hash=sha256:997d6a487ff00807ba810e0f8332c18b4eb8d29463cfb7c820dc4b6e7562d0cf \ + --hash=sha256:a03e02f48cd1abbd9f3b7e3586d97c8f7a9721c436f51a5245b3b9483044480b \ + --hash=sha256:a36fdf2af13c2b14738f6e973aba563623cb77d753bbbd8d414d18bfaa3105dd \ + --hash=sha256:a6ba92c0bcdf96cbf43a12c717eae4bc98325ca3730f6b130ffa2e3c3c723d84 \ + --hash=sha256:a7c2155f790e2fb448faed6dd241386719802296ec588a8b9051c1f5c481bc29 \ + --hash=sha256:a93c194e2df18f7d264092dc8539b8ffb86b45b899ab976aa15d48214138e81b \ + --hash=sha256:abfa5080c374a76a251ba60683242bc17eeb2c9818d0d30117b4486be10c59d3 \ + --hash=sha256:ac10f2c4184420d881a3475fb2c6f4d95d53a8d50209a2500723d831036f7c45 \ + --hash=sha256:ad182d02e40de7459b73155deb8996bbd8e96852267879396fb274e8700190e3 \ + --hash=sha256:b2837718570f95dd41675328e111345f9b7095d821bac435aac173ac80b19983 \ + --hash=sha256:b489578720afb782f6ccf2840920f3a32e31ba28a4b162e13900c3e6bd3f930e \ + --hash=sha256:b583904576650166b3d920d2bcce13971f6f9e9a396c673187f49811b2769dc7 \ + --hash=sha256:b85c2530be953a890eaffde05485238f07029600e8f098cdf1848d414a8b45e4 \ + --hash=sha256:b97c1e0bd37c5cd7902e65f410779d39eeda155800b65fc4d04cc432efa9bc6e \ + --hash=sha256:ba9b72e5643641b7d41fa1f6d5abda2c9a263ae835b917348fc3c928182ad467 \ + --hash=sha256:bb26437975da7dc36b7efad18aa9dd4ea569d2357ae6b783bf1118dabd9ea577 \ + --hash=sha256:bb8f74f2f10dbf13a0be8de623ba4f9491faf58c24064f32b65679b021ed0001 \ + --hash=sha256:bde01f35767c4a7899b7eb6e823b125a64de314a8ee9791367c9a34d56af18d0 \ + --hash=sha256:bec9931dfb61ddd8ef2ebc05646293812cb6b16b60cf7c9511a832b6f1854b55 \ + --hash=sha256:c36f9b6f5f8649bb251a5f3f66564438977b7ef8386a52460ae77e6070d309d9 \ + --hash=sha256:cdf58d0e516ee426a48f7b2c03a332a4114420716d55769ff7108c37a09951bf \ + --hash=sha256:d1cee317bfc014c2419a76bcc87f071405e3966da434e03e13beb45f8aced1a6 \ + --hash=sha256:d22326fcdef5e08c154280b71163ced384b428343ae16a5ab2b3354aed12436e \ + --hash=sha256:d3660c82f209655a06b587d55e723f0b813d3a7db2e32e5e7dc64ac2a9e86fde \ + --hash=sha256:da8f5fc57d1933de22a9e23eec290a0d8a5927a5370d24bda9a6abe50683fe62 \ + --hash=sha256:df951c5f4a1b1910f1a99ff42c473ff60f8225baa1cdd3539fe2819d9543e9df \ + --hash=sha256:e5364a4502efca094731680e80009632ad6624084aff9a23ce8c8c6820de3e51 \ + --hash=sha256:ea1bfda2f7162605f6e8178223576856b3d791109f15ea99a9f95c16a7636fb5 \ + --hash=sha256:f02f93b92358ee3f78660e43b4b0091229260c5d5c408d17d60bf26b6c900e86 \ + --hash=sha256:f056bf21105c2515c32372bbc057f43eb02aae2fda61052e2f7622c801f0b4e2 \ + --hash=sha256:f1ac758ef6aebfc8943560194e9fd0fa18bcb34d89fd8bd2af18183afd8da3a2 \ + --hash=sha256:f2a19f302cd1ce5dd01a9099aaa19cae6173306d1302a43b627f62e21cf18ac0 \ + --hash=sha256:f654882311409afb1d780b940234208a252322c24a93b442ca714d119e68086c \ + --hash=sha256:f65557897fc977a44ab205ea871b690adaef6b9da6afda4790a2484b04293a5f \ + --hash=sha256:f9d1e379028e0fc2ae3654bac3cbbef81bf3fd571272a42d56c24007979bafb6 \ + --hash=sha256:fdabbfc59f2c6edba2a6622c647b716e34e8e3867e0ab975412c5c2f79b82da2 \ + --hash=sha256:fdd6028445d2460f33136c55eeb1f601ab06d74cb3347132e1c24250187500d9 \ + --hash=sha256:ff590880083d60acc0433f9c3f713c51f7ac6ebb9adf889c79a261ecf541aa91 # via mkdocs-material requests==2.32.3 \ --hash=sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760 \ @@ -638,9 +669,9 @@ requests==2.32.3 \ # importlib-resources # The following packages are considered to be unsafe in a requirements file: -setuptools==74.1.2 \ - --hash=sha256:5f4c08aa4d3ebcb57a50c33b1b07e94315d7fc7230f7115e47fc99776c8ce308 \ - --hash=sha256:95b40ed940a1c67eb70fc099094bd6e99c6ee7c23aa2306f4d2697ba7916f9c6 +setuptools==75.3.0 \ + --hash=sha256:f2504966861356aa38616760c0f66568e535562374995367b4e69c7143cf6bcd \ + --hash=sha256:fba5dd4d766e97be1b1681d98712680ae8f2f26d7881245f2ce9e40714f1a686 # via mkdocs-material six==1.16.0 \ --hash=sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926 \ @@ -654,9 +685,9 @@ tcolorpy==0.1.6 \ --hash=sha256:8c15cb3167f30b0a433d72297e9d68667c825bd9e2af41c8dd7dfbd3d7f7e207 \ --hash=sha256:8cea0bf5f8cf03f77528a9acfbf312df935573892ba5ea3b2516e61fa54de9a5 # via pytablewriter -tinycss2==1.3.0 \ - --hash=sha256:152f9acabd296a8375fbca5b84c961ff95971fcfc32e79550c8df8e29118c54d \ - --hash=sha256:54a8dbdffb334d536851be0226030e9505965bb2f30f21a4a82c55fb2a80fae7 +tinycss2==1.4.0 \ + --hash=sha256:10c0972f6fc0fbee87c3edb76549357415e94548c1ae10ebccdea16fb404a9b7 \ + --hash=sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289 # via # cairosvg # cssselect2 @@ -667,45 +698,45 @@ typepy==1.3.2 \ # dataproperty # pytablewriter # tabledata -urllib3==2.2.2 \ - --hash=sha256:a448b2f64d686155468037e1ace9f2d2199776e17f0a46610480d311f73e3472 \ - --hash=sha256:dd505485549a7a552833da5e6063639d0d177c04f23bc3864e41e5dc5f612168 +urllib3==2.2.3 \ + --hash=sha256:ca899ca043dcb1bafa3e262d73aa25c465bfb49e0bd9dd5d59f1d0acba2f8fac \ + --hash=sha256:e7d814a81dad81e6caf2ec9fdedb284ecc9c73076b62654547cc64ccdcae26e9 # via requests verspec==0.1.0 \ --hash=sha256:741877d5633cc9464c45a469ae2a31e801e6dbbaa85b9675d481cda100f11c31 \ --hash=sha256:c4504ca697b2056cdb4bfa7121461f5a0e81809255b41c03dda4ba823637c01e # via mike -watchdog==5.0.2 \ - --hash=sha256:14dd4ed023d79d1f670aa659f449bcd2733c33a35c8ffd88689d9d243885198b \ - --hash=sha256:29e4a2607bd407d9552c502d38b45a05ec26a8e40cc7e94db9bb48f861fa5abc \ - --hash=sha256:3960136b2b619510569b90f0cd96408591d6c251a75c97690f4553ca88889769 \ - --hash=sha256:3e8d5ff39f0a9968952cce548e8e08f849141a4fcc1290b1c17c032ba697b9d7 \ - --hash=sha256:53ed1bf71fcb8475dd0ef4912ab139c294c87b903724b6f4a8bd98e026862e6d \ - --hash=sha256:5597c051587f8757798216f2485e85eac583c3b343e9aa09127a3a6f82c65ee8 \ - --hash=sha256:638bcca3d5b1885c6ec47be67bf712b00a9ab3d4b22ec0881f4889ad870bc7e8 \ - --hash=sha256:6bec703ad90b35a848e05e1b40bf0050da7ca28ead7ac4be724ae5ac2653a1a0 \ - --hash=sha256:726eef8f8c634ac6584f86c9c53353a010d9f311f6c15a034f3800a7a891d941 \ - --hash=sha256:72990192cb63872c47d5e5fefe230a401b87fd59d257ee577d61c9e5564c62e5 \ - --hash=sha256:7d1aa7e4bb0f0c65a1a91ba37c10e19dabf7eaaa282c5787e51371f090748f4b \ - --hash=sha256:8c47150aa12f775e22efff1eee9f0f6beee542a7aa1a985c271b1997d340184f \ - --hash=sha256:901ee48c23f70193d1a7bc2d9ee297df66081dd5f46f0ca011be4f70dec80dab \ - --hash=sha256:963f7c4c91e3f51c998eeff1b3fb24a52a8a34da4f956e470f4b068bb47b78ee \ - --hash=sha256:9814adb768c23727a27792c77812cf4e2fd9853cd280eafa2bcfa62a99e8bd6e \ - --hash=sha256:aa9cd6e24126d4afb3752a3e70fce39f92d0e1a58a236ddf6ee823ff7dba28ee \ - --hash=sha256:b6dc8f1d770a8280997e4beae7b9a75a33b268c59e033e72c8a10990097e5fde \ - --hash=sha256:b84bff0391ad4abe25c2740c7aec0e3de316fdf7764007f41e248422a7760a7f \ - --hash=sha256:ba32efcccfe2c58f4d01115440d1672b4eb26cdd6fc5b5818f1fb41f7c3e1889 \ - --hash=sha256:bda40c57115684d0216556671875e008279dea2dc00fcd3dde126ac8e0d7a2fb \ - --hash=sha256:c4a440f725f3b99133de610bfec93d570b13826f89616377715b9cd60424db6e \ - --hash=sha256:d010be060c996db725fbce7e3ef14687cdcc76f4ca0e4339a68cc4532c382a73 \ - --hash=sha256:d2ab34adc9bf1489452965cdb16a924e97d4452fcf88a50b21859068b50b5c3b \ - --hash=sha256:d7594a6d32cda2b49df3fd9abf9b37c8d2f3eab5df45c24056b4a671ac661619 \ - --hash=sha256:d961f4123bb3c447d9fcdcb67e1530c366f10ab3a0c7d1c0c9943050936d4877 \ - --hash=sha256:dae7a1879918f6544201d33666909b040a46421054a50e0f773e0d870ed7438d \ - --hash=sha256:dcebf7e475001d2cdeb020be630dc5b687e9acdd60d16fea6bb4508e7b94cf76 \ - --hash=sha256:f627c5bf5759fdd90195b0c0431f99cff4867d212a67b384442c51136a098ed7 \ - --hash=sha256:f8b2918c19e0d48f5f20df458c84692e2a054f02d9df25e6c3c930063eca64c1 \ - --hash=sha256:fb223456db6e5f7bd9bbd5cd969f05aae82ae21acc00643b60d81c770abd402b +watchdog==6.0.0 \ + --hash=sha256:07df1fdd701c5d4c8e55ef6cf55b8f0120fe1aef7ef39a1c6fc6bc2e606d517a \ + --hash=sha256:20ffe5b202af80ab4266dcd3e91aae72bf2da48c0d33bdb15c66658e685e94e2 \ + --hash=sha256:212ac9b8bf1161dc91bd09c048048a95ca3a4c4f5e5d4a7d1b1a7d5752a7f96f \ + --hash=sha256:2cce7cfc2008eb51feb6aab51251fd79b85d9894e98ba847408f662b3395ca3c \ + --hash=sha256:490ab2ef84f11129844c23fb14ecf30ef3d8a6abafd3754a6f75ca1e6654136c \ + --hash=sha256:6eb11feb5a0d452ee41f824e271ca311a09e250441c262ca2fd7ebcf2461a06c \ + --hash=sha256:6f10cb2d5902447c7d0da897e2c6768bca89174d0c6e1e30abec5421af97a5b0 \ + --hash=sha256:7607498efa04a3542ae3e05e64da8202e58159aa1fa4acddf7678d34a35d4f13 \ + --hash=sha256:76aae96b00ae814b181bb25b1b98076d5fc84e8a53cd8885a318b42b6d3a5134 \ + --hash=sha256:7a0e56874cfbc4b9b05c60c8a1926fedf56324bb08cfbc188969777940aef3aa \ + --hash=sha256:82dc3e3143c7e38ec49d61af98d6558288c415eac98486a5c581726e0737c00e \ + --hash=sha256:9041567ee8953024c83343288ccc458fd0a2d811d6a0fd68c4c22609e3490379 \ + --hash=sha256:90c8e78f3b94014f7aaae121e6b909674df5b46ec24d6bebc45c44c56729af2a \ + --hash=sha256:9513f27a1a582d9808cf21a07dae516f0fab1cf2d7683a742c498b93eedabb11 \ + --hash=sha256:9ddf7c82fda3ae8e24decda1338ede66e1c99883db93711d8fb941eaa2d8c282 \ + --hash=sha256:a175f755fc2279e0b7312c0035d52e27211a5bc39719dd529625b1930917345b \ + --hash=sha256:a1914259fa9e1454315171103c6a30961236f508b9b623eae470268bbcc6a22f \ + --hash=sha256:afd0fe1b2270917c5e23c2a65ce50c2a4abb63daafb0d419fde368e272a76b7c \ + --hash=sha256:bc64ab3bdb6a04d69d4023b29422170b74681784ffb9463ed4870cf2f3e66112 \ + --hash=sha256:bdd4e6f14b8b18c334febb9c4425a878a2ac20efd1e0b231978e7b150f92a948 \ + --hash=sha256:c7ac31a19f4545dd92fc25d200694098f42c9a8e391bc00bdd362c5736dbf881 \ + --hash=sha256:c7c15dda13c4eb00d6fb6fc508b3c0ed88b9d5d374056b239c4ad1611125c860 \ + --hash=sha256:c897ac1b55c5a1461e16dae288d22bb2e412ba9807df8397a635d88f671d36c3 \ + --hash=sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680 \ + --hash=sha256:d1cdb490583ebd691c012b3d6dae011000fe42edb7a82ece80965b42abd61f26 \ + --hash=sha256:e3df4cbb9a450c6d49318f6d14f4bbc80d763fa587ba46ec86f99f9e6876bb26 \ + --hash=sha256:e6439e374fc012255b4ec786ae3c4bc838cd7309a540e5fe0952d03687d8804e \ + --hash=sha256:e6f0e77c9417e7cd62af82529b10563db3423625c5fce018430b249bf977f9e8 \ + --hash=sha256:e7631a77ffb1f7d2eefa4445ebbee491c720a5661ddf6df3498ebecae5ed375c \ + --hash=sha256:ef810fbf7b781a5a593894e4f439773830bdecb885e6880d957d5b9382a960d2 # via mkdocs webencodings==0.5.1 \ --hash=sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78 \ @@ -713,7 +744,7 @@ webencodings==0.5.1 \ # via # cssselect2 # tinycss2 -zipp==3.20.1 \ - --hash=sha256:9960cd8967c8f85a56f920d5d507274e74f9ff813a0ab8889a5b5be2daf44064 \ - --hash=sha256:c22b14cc4763c5a5b04134207736c107db42e9d3ef2d9779d465f5f1bcba572b +zipp==3.20.2 \ + --hash=sha256:a817ac80d6cf4b23bf7f2828b7cabf326f15a001bea8b1f9b49631780ba28350 \ + --hash=sha256:bc9eb26f4506fda01b81bcde0ca78103b6e62f991b381fec825435c836edbc29 # via pytablewriter diff --git a/docs/security-tuning.md b/docs/security-tuning.md index 356a46aa61..45835a1c47 100644 --- a/docs/security-tuning.md +++ b/docs/security-tuning.md @@ -259,8 +259,8 @@ ModSecurity is integrated and enabled by default alongside the OWASP Core Rule S You can choose between the following versions of the OWASP Core Rule Set : -- **3** : The version [v3.3.6](https://github.com/coreruleset/coreruleset/releases/tag/v3.3.6) of the OWASP Core Rule Set (***default***) -- **4** : The version [v4.6.0](https://github.com/coreruleset/coreruleset/releases/tag/v4.6.0) of the OWASP Core Rule Set +- **3** : The version [v3.3.7](https://github.com/coreruleset/coreruleset/releases/tag/v3.3.7) of the OWASP Core Rule Set (***default***) +- **4** : The version [v4.8.0](https://github.com/coreruleset/coreruleset/releases/tag/v4.8.0) of the OWASP Core Rule Set - **nightly** : The latest [nightly](https://github.com/coreruleset/coreruleset/releases/tag/nightly) build of the OWASP Core Rule Set which is updated every day !!! example "OWASP Core Rule Set's nightly build" @@ -609,7 +609,7 @@ You can quickly protect sensitive resources like the admin area for example, by ### Auth request -You can deploy complex authentication (e.g. SSO), by using the auth request settings (see [here](https://docs.nginx.com/nginx/admin-guide/security-controls/configuring-subrequest-authentication/) for more information on the feature). Please note that you will find [Authelia](https://www.authelia.com/) and [Authentik](https://goauthentik.io/) examples in the [repository](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/examples). +You can deploy complex authentication (e.g. SSO), by using the auth request settings (see [here](https://docs.nginx.com/nginx/admin-guide/security-controls/configuring-subrequest-authentication/) for more information on the feature). Please note that you will find [Authelia](https://www.authelia.com/) and [Authentik](https://goauthentik.io/) examples in the [repository](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/examples). **Auth request settings are related to reverse proxy rules.** diff --git a/docs/settings.md b/docs/settings.md index b4eeb7aee2..e15c2bed16 100644 --- a/docs/settings.md +++ b/docs/settings.md @@ -29,6 +29,7 @@ STREAM support :warning: |`LOG_FORMAT` |`$host $remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"`|global |no |The format to use for access logs. | |`LOG_LEVEL` |`notice` |global |no |The level to use for error logs. | |`DNS_RESOLVERS` |`127.0.0.11` |global |no |DNS addresses of resolvers to use. | +|`WORKERLOCK_MEMORY_SIZE` |`48k` |global |no |Size of lua_shared_dict for initialization workers | |`DATASTORE_MEMORY_SIZE` |`64m` |global |no |Size of the internal datastore. | |`CACHESTORE_MEMORY_SIZE` |`64m` |global |no |Size of the internal cachestore. | |`CACHESTORE_IPC_MEMORY_SIZE` |`16m` |global |no |Size of the internal cachestore (ipc). | @@ -42,6 +43,10 @@ STREAM support :warning: |`AUTOCONF_MODE` |`no` |global |no |Enable Autoconf Docker integration. | |`SWARM_MODE` |`no` |global |no |Enable Docker Swarm integration. | |`KUBERNETES_MODE` |`no` |global |no |Enable Kubernetes integration. | + +|`API_TIMEOUT` |`10` |global |no |Manually set the timeout for BunkerWeb API requests. | | +|`API_READ_TIMEOUT` |`30` |global |no |Manually set the read timeout for BunkerWeb API requests. | + |`SERVER_TYPE` |`http` |multisite|no |Server type : http or stream. | |`LISTEN_STREAM` |`yes` |multisite|no |Enable listening for non-ssl (passthrough). | |`LISTEN_STREAM_PORT` |`1337` |multisite|no |Listening port for non-ssl (passthrough). | @@ -51,7 +56,7 @@ STREAM support :warning: |`IS_DRAFT` |`no` |multisite|no |Internal use : set to yes when the service is in draft mode. | |`TIMERS_LOG_LEVEL` |`debug` |global |no |Log level for timers. | |`OVERRIDE_INSTANCES` | |global |no |List of BunkerWeb instances separated with spaces (format : fqdn-or-ip:5000 fqdn-or-ip:5000)| - +|`DISABLE_CONFIGURATION_TESTING` |`no` |global |no |Disable sanity checks for all other environment variables. | ## Antibot @@ -693,4 +698,3 @@ Allow access based on internal and external IP/network/rDNS/ASN whitelists. |`WHITELIST_ASN_URLS` | |global |no |List of URLs, separated with spaces, containing ASN to whitelist. Also supports file:// URLs and and auth basic using http://user:pass@url scheme. | |`WHITELIST_USER_AGENT_URLS`| |global |no |List of URLs, separated with spaces, containing good User-Agent to whitelist. Also supports file:// URLs and and auth basic using http://user:pass@url scheme. | |`WHITELIST_URI_URLS` | |global |no |List of URLs, separated with spaces, containing bad URI to whitelist. Also supports file:// URLs and and auth basic using http://user:pass@url scheme. | - diff --git a/docs/upgrading.md b/docs/upgrading.md index a46a3c93d9..3f6afd5a49 100644 --- a/docs/upgrading.md +++ b/docs/upgrading.md @@ -128,16 +128,16 @@ ```yaml services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ... bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 ... bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 ... bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 ... ``` @@ -170,7 +170,7 @@ Them, you can update BunkerWeb package : ```shell - sudo apt install -y bunkerweb=1.5.10 + sudo apt install -y bunkerweb=1.5.11 ``` To prevent upgrading BunkerWeb package when executing `apt upgrade`, you can use the following command : @@ -194,7 +194,7 @@ Them, you can update BunkerWeb package : ```shell - sudo dnf install -y bunkerweb-1.5.10 + sudo dnf install -y bunkerweb-1.5.11 ``` To prevent upgrading BunkerWeb package when executing `dnf upgrade`, you can use the following command : @@ -380,7 +380,7 @@ !!! warning "Read this if you were a 1.4.X user" - A lot of things changed since the 1.4.X releases. Container-based integrations stacks contain more services but, trust us, fundamental principles of BunkerWeb are still there. You will find ready to use boilerplates for various integrations in the [misc/integrations](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/misc/integrations) folder of the repository. + A lot of things changed since the 1.4.X releases. Container-based integrations stacks contain more services but, trust us, fundamental principles of BunkerWeb are still there. You will find ready to use boilerplates for various integrations in the [misc/integrations](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/misc/integrations) folder of the repository. ### Scheduler diff --git a/docs/web-ui.md b/docs/web-ui.md index 9532b4fbf5..3ce243b6d4 100644 --- a/docs/web-ui.md +++ b/docs/web-ui.md @@ -82,7 +82,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -98,7 +98,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -120,7 +120,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 depends_on: - bw-docker environment: @@ -173,7 +173,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -190,7 +190,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th - bw-services bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 depends_on: - bunkerweb - bw-docker @@ -203,7 +203,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th - bw-docker bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -238,7 +238,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 networks: bw-docker: bw-universe: @@ -280,7 +280,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - published: 80 target: 8080 @@ -310,7 +310,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th - "bunkerweb.INSTANCE=yes" bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -338,7 +338,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th - "node.role == manager" bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -365,7 +365,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th - bw-universe bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -482,7 +482,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th containers: # using bunkerweb as name is mandatory - name: bunkerweb - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 imagePullPolicy: Always securityContext: runAsUser: 101 @@ -555,7 +555,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-controller - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -582,7 +582,7 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-scheduler - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -667,13 +667,13 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-ui - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE value: "YES" - name: DATABASE_URI - value: "mariadb+pymysql://bunkerweb:testor@svc-bunkerweb-db:3306/db" + value: "mariadb+pymysql://bunkerweb:changeme@svc-bunkerweb-db:3306/db" --- apiVersion: v1 kind: Service @@ -736,7 +736,6 @@ Review your final BunkerWeb UI URL and then click on the `Setup` button. Once th resources: requests: storage: 5Gi - volumeName: pv-bunkerweb ``` === "Linux" @@ -866,7 +865,7 @@ After a successful login/password combination, you will be prompted to enter you !!! info "Database backend" - If you want another Database backend than MariaDB please refer to the docker-compose files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/misc/integrations) of the repository. + If you want another Database backend than MariaDB please refer to the docker-compose files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/misc/integrations) of the repository. Here is the docker-compose boilerplate that you can use (don't forget to edit the `changeme` data) : @@ -875,7 +874,7 @@ After a successful login/password combination, you will be prompted to enter you services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -900,7 +899,7 @@ After a successful login/password combination, you will be prompted to enter you - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -922,7 +921,7 @@ After a successful login/password combination, you will be prompted to enter you - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 depends_on: - bw-docker environment: @@ -988,7 +987,7 @@ After a successful login/password combination, you will be prompted to enter you !!! info "Database backend" - If you want another Database backend than MariaDB please refer to the docker-compose files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/misc/integrations) of the repository. + If you want another Database backend than MariaDB please refer to the docker-compose files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/misc/integrations) of the repository. Here is the docker-compose boilerplate that you can use (don't forget to edit the `changeme` data) : @@ -997,7 +996,7 @@ After a successful login/password combination, you will be prompted to enter you services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -1014,7 +1013,7 @@ After a successful login/password combination, you will be prompted to enter you - bw-services bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 depends_on: - bunkerweb - bw-docker @@ -1027,7 +1026,7 @@ After a successful login/password combination, you will be prompted to enter you - bw-docker bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -1062,7 +1061,7 @@ After a successful login/password combination, you will be prompted to enter you - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 networks: bw-docker: bw-universe: @@ -1124,7 +1123,7 @@ After a successful login/password combination, you will be prompted to enter you !!! info "Database backend" - If you want another Database backend than MariaDB please refer to the stack files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/misc/integrations) of the repository. + If you want another Database backend than MariaDB please refer to the stack files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/misc/integrations) of the repository. Here is the stack boilerplate that you can use (don't forget to edit the `changeme` data) : @@ -1133,7 +1132,7 @@ After a successful login/password combination, you will be prompted to enter you services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - published: 80 target: 8080 @@ -1163,7 +1162,7 @@ After a successful login/password combination, you will be prompted to enter you - "bunkerweb.INSTANCE=yes" bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -1191,7 +1190,7 @@ After a successful login/password combination, you will be prompted to enter you - "node.role == manager" bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -1218,7 +1217,7 @@ After a successful login/password combination, you will be prompted to enter you - bw-universe bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 environment: - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db # Remember to set a stronger password for the database - DOCKER_HOST=tcp://bw-docker:2375 @@ -1273,7 +1272,7 @@ After a successful login/password combination, you will be prompted to enter you !!! info "Database backend" - If you want another Database backend than MariaDB please refer to the yaml files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.10/misc/integrations) of the repository. + If you want another Database backend than MariaDB please refer to the yaml files in the [misc/integrations folder](https://github.com/bunkerity/bunkerweb/tree/v1.5.11/misc/integrations) of the repository. Here is the yaml boilerplate that you can use (don't forget to edit the `changeme` data) : @@ -1354,7 +1353,7 @@ After a successful login/password combination, you will be prompted to enter you containers: # using bunkerweb as name is mandatory - name: bunkerweb - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 imagePullPolicy: Always securityContext: runAsUser: 101 @@ -1424,7 +1423,7 @@ After a successful login/password combination, you will be prompted to enter you serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-controller - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -1451,7 +1450,7 @@ After a successful login/password combination, you will be prompted to enter you serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-scheduler - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -1536,7 +1535,7 @@ After a successful login/password combination, you will be prompted to enter you serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-ui - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 imagePullPolicy: Always env: - name: ADMIN_USERNAME @@ -1546,7 +1545,7 @@ After a successful login/password combination, you will be prompted to enter you - name: KUBERNETES_MODE value: "YES" - name: DATABASE_URI - value: "mariadb+pymysql://bunkerweb:testor@svc-bunkerweb-db:3306/db" + value: "mariadb+pymysql://bunkerweb:changeme@svc-bunkerweb-db:3306/db" --- apiVersion: v1 kind: Service @@ -1609,7 +1608,6 @@ After a successful login/password combination, you will be prompted to enter you resources: requests: storage: 5Gi - volumeName: pv-bunkerweb --- apiVersion: networking.k8s.io/v1 kind: Ingress diff --git a/examples/authelia/docker-compose.yml b/examples/authelia/docker-compose.yml index 426f15ca9a..8882960100 100644 --- a/examples/authelia/docker-compose.yml +++ b/examples/authelia/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.4" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -44,7 +44,7 @@ services: - app2.example.com_REVERSE_PROXY_HEADERS=Remote-User $$user;Remote-Groups $$groups;Remote-Name $$name;Remote-Email $$email bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/authentik/docker-compose.yml b/examples/authentik/docker-compose.yml index 2ec34804a6..a8eae7ab3e 100644 --- a/examples/authentik/docker-compose.yml +++ b/examples/authentik/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.4" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -53,7 +53,7 @@ services: - app2.example.com_REVERSE_PROXY_HEADERS=X-authentik-username $$authentik_username;X-authentik-groups $$authentik_groups;X-authentik-email $$authentik_email;X-authentik-name $$authentik_name;X-authentik-uid $$authentik_uid bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/behind-reverse-proxy/docker-compose.yml b/examples/behind-reverse-proxy/docker-compose.yml index 36ab27a3fb..836e59fa4d 100644 --- a/examples/behind-reverse-proxy/docker-compose.yml +++ b/examples/behind-reverse-proxy/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 environment: - SERVER_NAME=www.example.com # replace with your domains - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 @@ -24,7 +24,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/bigbluebutton/docker-compose.yml b/examples/bigbluebutton/docker-compose.yml index 4f760974d4..611088a49b 100644 --- a/examples/bigbluebutton/docker-compose.yml +++ b/examples/bigbluebutton/docker-compose.yml @@ -27,7 +27,7 @@ services: ... mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -50,7 +50,7 @@ services: bw-universe: bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/certbot-dns-cloudflare/docker-compose.yml b/examples/certbot-dns-cloudflare/docker-compose.yml index 7855020091..bafdda8c5c 100644 --- a/examples/certbot-dns-cloudflare/docker-compose.yml +++ b/examples/certbot-dns-cloudflare/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -33,7 +33,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/certbot-dns-digitalocean/docker-compose.yml b/examples/certbot-dns-digitalocean/docker-compose.yml index c8869a78c4..659460c1d8 100644 --- a/examples/certbot-dns-digitalocean/docker-compose.yml +++ b/examples/certbot-dns-digitalocean/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -33,7 +33,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/certbot-dns-google/docker-compose.yml b/examples/certbot-dns-google/docker-compose.yml index ecd7b6dc29..0b3213644b 100644 --- a/examples/certbot-dns-google/docker-compose.yml +++ b/examples/certbot-dns-google/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -33,7 +33,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/certbot-dns-ovh/docker-compose.yml b/examples/certbot-dns-ovh/docker-compose.yml index a245365d2a..a2fbc910b2 100644 --- a/examples/certbot-dns-ovh/docker-compose.yml +++ b/examples/certbot-dns-ovh/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -33,7 +33,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/certbot-dns-route53/docker-compose.yml b/examples/certbot-dns-route53/docker-compose.yml index 85a7fe287d..2834483019 100644 --- a/examples/certbot-dns-route53/docker-compose.yml +++ b/examples/certbot-dns-route53/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -33,7 +33,7 @@ services: - bw-services bbw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/cors/docker-compose.yml b/examples/cors/docker-compose.yml index ef180b2e2d..d6a4c340cc 100644 --- a/examples/cors/docker-compose.yml +++ b/examples/cors/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -38,7 +38,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/docker-configs/docker-compose.yml b/examples/docker-configs/docker-compose.yml index 86f5affe2a..e397ac2b41 100644 --- a/examples/docker-configs/docker-compose.yml +++ b/examples/docker-configs/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -53,7 +53,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/drupal/docker-compose.yml b/examples/drupal/docker-compose.yml index a630bdc909..73b0f40ab0 100644 --- a/examples/drupal/docker-compose.yml +++ b/examples/drupal/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -28,7 +28,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/ghost/docker-compose.yml b/examples/ghost/docker-compose.yml index f939353a9b..6b9919d5fe 100644 --- a/examples/ghost/docker-compose.yml +++ b/examples/ghost/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -24,7 +24,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/gogs/docker-compose.yml b/examples/gogs/docker-compose.yml index 46e9839b74..d24e53f923 100644 --- a/examples/gogs/docker-compose.yml +++ b/examples/gogs/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -28,7 +28,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/hardened/docker-compose.yml b/examples/hardened/docker-compose.yml index 05f41ae786..9f458a7943 100644 --- a/examples/hardened/docker-compose.yml +++ b/examples/hardened/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 # dropping all capabilities cap_drop: - ALL @@ -39,7 +39,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/joomla/docker-compose.yml b/examples/joomla/docker-compose.yml index ad09d19079..402d45efc6 100644 --- a/examples/joomla/docker-compose.yml +++ b/examples/joomla/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -28,7 +28,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/load-balancer/docker-compose.yml b/examples/load-balancer/docker-compose.yml index c01cab9933..b92adeca75 100644 --- a/examples/load-balancer/docker-compose.yml +++ b/examples/load-balancer/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -31,7 +31,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/magento/docker-compose.yml b/examples/magento/docker-compose.yml index f5758126e6..03f9905db1 100644 --- a/examples/magento/docker-compose.yml +++ b/examples/magento/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -29,7 +29,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/mattermost/docker-compose.yml b/examples/mattermost/docker-compose.yml index 496f2f6c0b..446ed92698 100644 --- a/examples/mattermost/docker-compose.yml +++ b/examples/mattermost/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -44,7 +44,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/mongo-express/docker-compose.yml b/examples/mongo-express/docker-compose.yml index af7d64d933..cc5ae6bc51 100644 --- a/examples/mongo-express/docker-compose.yml +++ b/examples/mongo-express/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -27,7 +27,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/moodle/docker-compose.yml b/examples/moodle/docker-compose.yml index c9718ffb7a..99a1736510 100644 --- a/examples/moodle/docker-compose.yml +++ b/examples/moodle/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -25,7 +25,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/nextcloud/docker-compose.yml b/examples/nextcloud/docker-compose.yml index 8148501ed9..a14b3d2632 100644 --- a/examples/nextcloud/docker-compose.yml +++ b/examples/nextcloud/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -54,7 +54,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/passbolt/docker-compose.yml b/examples/passbolt/docker-compose.yml index de3e756ce5..97853239a8 100644 --- a/examples/passbolt/docker-compose.yml +++ b/examples/passbolt/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -26,7 +26,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/php-cookie-flags/docker-compose.yml b/examples/php-cookie-flags/docker-compose.yml index 9837999817..4ec4321530 100644 --- a/examples/php-cookie-flags/docker-compose.yml +++ b/examples/php-cookie-flags/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -31,7 +31,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/php-multisite/docker-compose.yml b/examples/php-multisite/docker-compose.yml index eb4e92123d..f37c8e56f2 100644 --- a/examples/php-multisite/docker-compose.yml +++ b/examples/php-multisite/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -34,7 +34,7 @@ services: - net-app2 bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/php-singlesite/docker-compose.yml b/examples/php-singlesite/docker-compose.yml index 982c88ef55..b11e23658d 100644 --- a/examples/php-singlesite/docker-compose.yml +++ b/examples/php-singlesite/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -30,7 +30,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/prestashop/docker-compose.yml b/examples/prestashop/docker-compose.yml index 44b1be9393..a3d49c4e9e 100644 --- a/examples/prestashop/docker-compose.yml +++ b/examples/prestashop/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -28,7 +28,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/proxy-protocol/docker-compose.yml b/examples/proxy-protocol/docker-compose.yml index b3affdf0fe..ab7fdbac8f 100644 --- a/examples/proxy-protocol/docker-compose.yml +++ b/examples/proxy-protocol/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 environment: - SERVER_NAME=www.example.com # replace with your domains - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 @@ -27,7 +27,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/radarr/docker-compose.yml b/examples/radarr/docker-compose.yml index 463b6a83e4..fc80e8797c 100644 --- a/examples/radarr/docker-compose.yml +++ b/examples/radarr/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.5" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -34,7 +34,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/redmine/docker-compose.yml b/examples/redmine/docker-compose.yml index d9ecaf5df9..456f464312 100644 --- a/examples/redmine/docker-compose.yml +++ b/examples/redmine/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -24,7 +24,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/reverse-proxy-multisite/docker-compose.yml b/examples/reverse-proxy-multisite/docker-compose.yml index 6d75b5ebf9..ba6211027a 100644 --- a/examples/reverse-proxy-multisite/docker-compose.yml +++ b/examples/reverse-proxy-multisite/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -27,7 +27,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/reverse-proxy-singlesite/docker-compose.yml b/examples/reverse-proxy-singlesite/docker-compose.yml index ddea05bd4a..982a27a31d 100644 --- a/examples/reverse-proxy-singlesite/docker-compose.yml +++ b/examples/reverse-proxy-singlesite/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -32,7 +32,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/reverse-proxy-websocket/docker-compose.yml b/examples/reverse-proxy-websocket/docker-compose.yml index e5cc5b7541..3e25a9d8db 100644 --- a/examples/reverse-proxy-websocket/docker-compose.yml +++ b/examples/reverse-proxy-websocket/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -25,7 +25,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/stream-multisite/docker-compose.yml b/examples/stream-multisite/docker-compose.yml index 52f500b096..831e92f119 100644 --- a/examples/stream-multisite/docker-compose.yml +++ b/examples/stream-multisite/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 # required to resolve let's encrypt challenges - 10000:10000 # app1 without SSL/TLS @@ -33,7 +33,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/syslog/docker-compose.yml b/examples/syslog/docker-compose.yml index 8e2166a401..ff8c164025 100644 --- a/examples/syslog/docker-compose.yml +++ b/examples/syslog/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 logging: driver: syslog options: @@ -28,7 +28,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 logging: driver: syslog options: diff --git a/examples/tomcat/docker-compose.yml b/examples/tomcat/docker-compose.yml index 9644b27de5..ad71b98e2a 100644 --- a/examples/tomcat/docker-compose.yml +++ b/examples/tomcat/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -23,7 +23,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/tor-hidden-service/docker-compose.yml b/examples/tor-hidden-service/docker-compose.yml index 3f5a6c149a..14ef5f44fc 100644 --- a/examples/tor-hidden-service/docker-compose.yml +++ b/examples/tor-hidden-service/docker-compose.yml @@ -12,7 +12,7 @@ services: - bw-universe mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 environment: - API_WHITELIST_IP=127.0.0.0/8 10.20.30.0/24 # disable common security measures based on IP @@ -34,7 +34,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/examples/web-ui/docker-compose.wizard.yml b/examples/web-ui/docker-compose.wizard.yml index 79781bd59b..0608e89258 100644 --- a/examples/web-ui/docker-compose.wizard.yml +++ b/examples/web-ui/docker-compose.wizard.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -23,7 +23,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -45,7 +45,7 @@ services: - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 depends_on: - bw-docker environment: diff --git a/examples/web-ui/docker-compose.yml b/examples/web-ui/docker-compose.yml index 9e55475fec..ae7806c5b1 100644 --- a/examples/web-ui/docker-compose.yml +++ b/examples/web-ui/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -28,7 +28,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -50,7 +50,7 @@ services: - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 depends_on: - bw-docker environment: diff --git a/examples/wordpress/docker-compose.yml b/examples/wordpress/docker-compose.yml index ac52070c7b..db1c2525e6 100644 --- a/examples/wordpress/docker-compose.yml +++ b/examples/wordpress/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: mybunker: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -25,7 +25,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - mybunker environment: diff --git a/misc/integrations/autoconf.mariadb.ui.yml b/misc/integrations/autoconf.mariadb.ui.yml index a2ffff181c..31fba85669 100644 --- a/misc/integrations/autoconf.mariadb.ui.yml +++ b/misc/integrations/autoconf.mariadb.ui.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -19,7 +19,7 @@ services: - bw-services bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 depends_on: - bunkerweb - bw-docker @@ -32,7 +32,7 @@ services: - bw-docker bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -67,7 +67,7 @@ services: - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 networks: bw-docker: bw-universe: diff --git a/misc/integrations/autoconf.mariadb.yml b/misc/integrations/autoconf.mariadb.yml index 12dce60514..f304c1a15c 100644 --- a/misc/integrations/autoconf.mariadb.yml +++ b/misc/integrations/autoconf.mariadb.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -19,7 +19,7 @@ services: - bw-services bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 depends_on: - bunkerweb - bw-docker @@ -32,7 +32,7 @@ services: - bw-docker bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker diff --git a/misc/integrations/autoconf.mysql.ui.yml b/misc/integrations/autoconf.mysql.ui.yml index 8e9c038ed0..7f8e40c2f7 100644 --- a/misc/integrations/autoconf.mysql.ui.yml +++ b/misc/integrations/autoconf.mysql.ui.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -19,7 +19,7 @@ services: - bw-services bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 depends_on: - bunkerweb - bw-docker @@ -32,7 +32,7 @@ services: - bw-docker bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -67,7 +67,7 @@ services: - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 networks: bw-docker: bw-universe: diff --git a/misc/integrations/autoconf.mysql.yml b/misc/integrations/autoconf.mysql.yml index 024f5f3ba8..5a9079acb5 100644 --- a/misc/integrations/autoconf.mysql.yml +++ b/misc/integrations/autoconf.mysql.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -19,7 +19,7 @@ services: - bw-services bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 depends_on: - bunkerweb - bw-docker @@ -32,7 +32,7 @@ services: - bw-docker bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker diff --git a/misc/integrations/autoconf.postgres.ui.yml b/misc/integrations/autoconf.postgres.ui.yml index 94a3d88b58..e94abb2bdc 100644 --- a/misc/integrations/autoconf.postgres.ui.yml +++ b/misc/integrations/autoconf.postgres.ui.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -19,7 +19,7 @@ services: - bw-services bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 depends_on: - bunkerweb - bw-docker @@ -32,7 +32,7 @@ services: - bw-docker bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -66,7 +66,7 @@ services: - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 networks: bw-docker: bw-universe: diff --git a/misc/integrations/autoconf.postgres.yml b/misc/integrations/autoconf.postgres.yml index 55c11635ec..11927e7ed3 100644 --- a/misc/integrations/autoconf.postgres.yml +++ b/misc/integrations/autoconf.postgres.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -19,7 +19,7 @@ services: - bw-services bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 depends_on: - bunkerweb - bw-docker @@ -32,7 +32,7 @@ services: - bw-docker bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker diff --git a/misc/integrations/autoconf.ui.yml b/misc/integrations/autoconf.ui.yml index 765208a4a1..31d3ea863d 100644 --- a/misc/integrations/autoconf.ui.yml +++ b/misc/integrations/autoconf.ui.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -18,7 +18,7 @@ services: - bw-services bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 depends_on: - bunkerweb - bw-docker @@ -32,7 +32,7 @@ services: - bw-docker bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -56,7 +56,7 @@ services: - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 networks: bw-docker: bw-universe: diff --git a/misc/integrations/autoconf.yml b/misc/integrations/autoconf.yml index 67e9a9733d..8d05418dde 100644 --- a/misc/integrations/autoconf.yml +++ b/misc/integrations/autoconf.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -18,7 +18,7 @@ services: - bw-services bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 depends_on: - bunkerweb - bw-docker @@ -32,7 +32,7 @@ services: - bw-docker bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker diff --git a/misc/integrations/docker.mariadb.ui.yml b/misc/integrations/docker.mariadb.ui.yml index 38004882e1..71b49b1f35 100644 --- a/misc/integrations/docker.mariadb.ui.yml +++ b/misc/integrations/docker.mariadb.ui.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -27,7 +27,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -49,7 +49,7 @@ services: - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 depends_on: - bw-docker environment: diff --git a/misc/integrations/docker.mariadb.yml b/misc/integrations/docker.mariadb.yml index e78e81f163..12142c5bed 100644 --- a/misc/integrations/docker.mariadb.yml +++ b/misc/integrations/docker.mariadb.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -17,7 +17,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker diff --git a/misc/integrations/docker.mysql.ui.yml b/misc/integrations/docker.mysql.ui.yml index cf87ab6540..fcf49a2503 100644 --- a/misc/integrations/docker.mysql.ui.yml +++ b/misc/integrations/docker.mysql.ui.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -27,7 +27,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -49,7 +49,7 @@ services: - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 depends_on: - bw-docker environment: diff --git a/misc/integrations/docker.mysql.yml b/misc/integrations/docker.mysql.yml index 2d968375d7..3052b91a31 100644 --- a/misc/integrations/docker.mysql.yml +++ b/misc/integrations/docker.mysql.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -17,7 +17,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker diff --git a/misc/integrations/docker.postgres.ui.yml b/misc/integrations/docker.postgres.ui.yml index a086b93b65..3a92184dfc 100644 --- a/misc/integrations/docker.postgres.ui.yml +++ b/misc/integrations/docker.postgres.ui.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -28,7 +28,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -50,7 +50,7 @@ services: - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 depends_on: - bw-docker environment: diff --git a/misc/integrations/docker.postgres.yml b/misc/integrations/docker.postgres.yml index 2e4bf77acf..85e20cbbfe 100644 --- a/misc/integrations/docker.postgres.yml +++ b/misc/integrations/docker.postgres.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -17,7 +17,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker diff --git a/misc/integrations/docker.ui.yml b/misc/integrations/docker.ui.yml index f75feef65e..7b8d6bc4b7 100644 --- a/misc/integrations/docker.ui.yml +++ b/misc/integrations/docker.ui.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -23,7 +23,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker @@ -46,7 +46,7 @@ services: - bw-docker bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 depends_on: - bw-docker volumes: diff --git a/misc/integrations/docker.yml b/misc/integrations/docker.yml index 41a4927867..02237e4310 100644 --- a/misc/integrations/docker.yml +++ b/misc/integrations/docker.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - 80:8080 - 443:8443 @@ -16,7 +16,7 @@ services: - bw-services bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 depends_on: - bunkerweb - bw-docker diff --git a/misc/integrations/k8s.mariadb.ui.yml b/misc/integrations/k8s.mariadb.ui.yml index f85b9d3751..5ac5706829 100644 --- a/misc/integrations/k8s.mariadb.ui.yml +++ b/misc/integrations/k8s.mariadb.ui.yml @@ -48,7 +48,7 @@ spec: containers: # using bunkerweb as name is mandatory - name: bunkerweb - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 imagePullPolicy: Always securityContext: runAsUser: 101 @@ -118,7 +118,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-controller - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -145,7 +145,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-scheduler - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -230,7 +230,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-ui - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 imagePullPolicy: Always env: - name: ADMIN_USERNAME @@ -240,7 +240,7 @@ spec: - name: KUBERNETES_MODE value: "YES" - name: "DATABASE_URI" - value: "mariadb+pymysql://bunkerweb:testor@svc-bunkerweb-db:3306/db" + value: "mariadb+pymysql://bunkerweb:changeme@svc-bunkerweb-db:3306/db" --- apiVersion: v1 kind: Service @@ -303,7 +303,6 @@ spec: resources: requests: storage: 5Gi - volumeName: pv-bunkerweb --- apiVersion: networking.k8s.io/v1 kind: Ingress diff --git a/misc/integrations/k8s.mariadb.yml b/misc/integrations/k8s.mariadb.yml index 5c996233b8..8ce81c45a4 100644 --- a/misc/integrations/k8s.mariadb.yml +++ b/misc/integrations/k8s.mariadb.yml @@ -59,7 +59,7 @@ spec: containers: # using bunkerweb as name is mandatory - name: bunkerweb - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 imagePullPolicy: Always securityContext: runAsUser: 101 @@ -129,7 +129,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-controller - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -156,7 +156,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-scheduler - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE diff --git a/misc/integrations/k8s.mysql.ui.yml b/misc/integrations/k8s.mysql.ui.yml index 5ae6706385..ef6e9e63c9 100644 --- a/misc/integrations/k8s.mysql.ui.yml +++ b/misc/integrations/k8s.mysql.ui.yml @@ -48,7 +48,7 @@ spec: containers: # using bunkerweb as name is mandatory - name: bunkerweb - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 imagePullPolicy: Always securityContext: runAsUser: 101 @@ -118,7 +118,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-controller - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -145,7 +145,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-scheduler - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -230,7 +230,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-ui - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 imagePullPolicy: Always env: - name: ADMIN_USERNAME diff --git a/misc/integrations/k8s.mysql.yml b/misc/integrations/k8s.mysql.yml index f75414e92c..2c24639593 100644 --- a/misc/integrations/k8s.mysql.yml +++ b/misc/integrations/k8s.mysql.yml @@ -48,7 +48,7 @@ spec: containers: # using bunkerweb as name is mandatory - name: bunkerweb - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 imagePullPolicy: Always securityContext: runAsUser: 101 @@ -118,7 +118,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-controller - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -144,7 +144,7 @@ spec: spec: containers: - name: bunkerweb-controller - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE diff --git a/misc/integrations/k8s.postgres.ui.yml b/misc/integrations/k8s.postgres.ui.yml index 8175783785..22975261ba 100644 --- a/misc/integrations/k8s.postgres.ui.yml +++ b/misc/integrations/k8s.postgres.ui.yml @@ -48,7 +48,7 @@ spec: containers: # using bunkerweb as name is mandatory - name: bunkerweb - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 imagePullPolicy: Always securityContext: runAsUser: 101 @@ -118,7 +118,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-controller - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -145,7 +145,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-scheduler - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -230,7 +230,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-ui - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 imagePullPolicy: Always env: - name: ADMIN_USERNAME diff --git a/misc/integrations/k8s.postgres.yml b/misc/integrations/k8s.postgres.yml index 1cb020aa35..c4160646cf 100644 --- a/misc/integrations/k8s.postgres.yml +++ b/misc/integrations/k8s.postgres.yml @@ -48,7 +48,7 @@ spec: containers: # using bunkerweb as name is mandatory - name: bunkerweb - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 imagePullPolicy: Always securityContext: runAsUser: 101 @@ -118,7 +118,7 @@ spec: serviceAccountName: sa-bunkerweb containers: - name: bunkerweb-controller - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE @@ -144,7 +144,7 @@ spec: spec: containers: - name: bunkerweb-controller - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 imagePullPolicy: Always env: - name: KUBERNETES_MODE diff --git a/misc/integrations/swarm.mariadb.ui.yml b/misc/integrations/swarm.mariadb.ui.yml index d55180a3eb..099788cb28 100644 --- a/misc/integrations/swarm.mariadb.ui.yml +++ b/misc/integrations/swarm.mariadb.ui.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - published: 80 target: 8080 @@ -32,7 +32,7 @@ services: - "bunkerweb.INSTANCE=yes" bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -60,7 +60,7 @@ services: - "node.role == manager" bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -87,7 +87,7 @@ services: - bw-universe bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 environment: - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db # Remember to set a stronger password for the database - DOCKER_HOST=tcp://bw-docker:2375 diff --git a/misc/integrations/swarm.mariadb.yml b/misc/integrations/swarm.mariadb.yml index 9408096762..0552089960 100644 --- a/misc/integrations/swarm.mariadb.yml +++ b/misc/integrations/swarm.mariadb.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - published: 80 target: 8080 @@ -32,7 +32,7 @@ services: - "bunkerweb.INSTANCE=yes" bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -64,7 +64,7 @@ services: - "node.role == manager" bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 diff --git a/misc/integrations/swarm.mysql.ui.yml b/misc/integrations/swarm.mysql.ui.yml index 5f1a34bf3c..824ca0495f 100644 --- a/misc/integrations/swarm.mysql.ui.yml +++ b/misc/integrations/swarm.mysql.ui.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - published: 80 target: 8080 @@ -32,7 +32,7 @@ services: - "bunkerweb.INSTANCE=yes" bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -60,7 +60,7 @@ services: - "node.role == manager" bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -87,7 +87,7 @@ services: - bw-universe bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 environment: - DATABASE_URI=mariadb+pymysql://bunkerweb:changeme@bw-db:3306/db # Remember to set a stronger password for the database - DOCKER_HOST=tcp://bw-docker:2375 diff --git a/misc/integrations/swarm.mysql.yml b/misc/integrations/swarm.mysql.yml index cb70a2a3bc..22d90ebfcb 100644 --- a/misc/integrations/swarm.mysql.yml +++ b/misc/integrations/swarm.mysql.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - published: 80 target: 8080 @@ -32,7 +32,7 @@ services: - "bunkerweb.INSTANCE=yes" bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -60,7 +60,7 @@ services: - "node.role == manager" bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 diff --git a/misc/integrations/swarm.postgres.ui.yml b/misc/integrations/swarm.postgres.ui.yml index 86306d1aff..28e139db42 100644 --- a/misc/integrations/swarm.postgres.ui.yml +++ b/misc/integrations/swarm.postgres.ui.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - published: 80 target: 8080 @@ -32,7 +32,7 @@ services: - "bunkerweb.INSTANCE=yes" bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -60,7 +60,7 @@ services: - "node.role == manager" bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -86,7 +86,7 @@ services: - bw-universe bw-ui: - image: bunkerity/bunkerweb-ui:1.5.10 + image: bunkerity/bunkerweb-ui:1.5.11 environment: - DATABASE_URI=postgresql://bunkerweb:changeme@bw-db:5432/db - DOCKER_HOST=tcp://bw-docker:2375 diff --git a/misc/integrations/swarm.postgres.yml b/misc/integrations/swarm.postgres.yml index c442563c68..b6f452805a 100644 --- a/misc/integrations/swarm.postgres.yml +++ b/misc/integrations/swarm.postgres.yml @@ -2,7 +2,7 @@ version: "3.5" services: bunkerweb: - image: bunkerity/bunkerweb:1.5.10 + image: bunkerity/bunkerweb:1.5.11 ports: - published: 80 target: 8080 @@ -32,7 +32,7 @@ services: - "bunkerweb.INSTANCE=yes" bw-autoconf: - image: bunkerity/bunkerweb-autoconf:1.5.10 + image: bunkerity/bunkerweb-autoconf:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 @@ -60,7 +60,7 @@ services: - "node.role == manager" bw-scheduler: - image: bunkerity/bunkerweb-scheduler:1.5.10 + image: bunkerity/bunkerweb-scheduler:1.5.11 environment: - SWARM_MODE=yes - DOCKER_HOST=tcp://bw-docker:2375 diff --git a/pyproject.toml b/pyproject.toml index a5dba94995..1f6abbe28f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "BunkerWeb" description = "Make your web services secure by default !" -version = "1.5.10" +version = "1.5.11" authors = [ { name = "Bunkerity", email = "contact@bunkerity.com" } ] diff --git a/src/VERSION b/src/VERSION index 0edd95ce64..757d1b6b58 100644 --- a/src/VERSION +++ b/src/VERSION @@ -1 +1 @@ -1.5.10 \ No newline at end of file +1.5.11 \ No newline at end of file diff --git a/src/autoconf/Config.py b/src/autoconf/Config.py index cf862837f3..3ce254d9c3 100644 --- a/src/autoconf/Config.py +++ b/src/autoconf/Config.py @@ -41,22 +41,24 @@ def _update_settings(self): self._settings.update(plugin["settings"]) def __get_full_env(self) -> dict: - env_instances = {"SERVER_NAME": ""} + config = {"SERVER_NAME": "", "MULTISITE": "yes"} + for instance in self.__instances: for variable, value in instance["env"].items(): - env_instances[variable] = value + if not self._db.is_setting(variable): + self.__logger.warning(f"Variable {variable}: {value} is not a valid setting, ignoring it") + continue + config[variable] = value - config = {"SERVER_NAME": "", "MULTISITE": "yes"} for service in self.__services: server_name = service["SERVER_NAME"].split(" ")[0] if not server_name: continue - for variable, value in chain(env_instances.items(), service.items()): + for variable, value in service.items(): if variable.startswith("CUSTOM_CONF") or not variable.isupper(): continue if not self._db.is_setting(variable, multisite=True): - if variable in service: - self.__logger.warning(f"Variable {variable}: {value} is not a valid multisite setting, ignoring it") + self.__logger.warning(f"Variable {variable}: {value} is not a valid multisite setting, ignoring it") continue config[f"{server_name}_{variable}"] = value config["SERVER_NAME"] += f" {server_name}" diff --git a/src/autoconf/Controller.py b/src/autoconf/Controller.py index 07540ddc7a..2a61ca1301 100644 --- a/src/autoconf/Controller.py +++ b/src/autoconf/Controller.py @@ -75,9 +75,6 @@ def _set_autoconf_load_db(self): self._loaded = True def get_services(self): - while not self._get_controller_services(): - sleep(1) - services = [] for controller_service in self._get_controller_services(): services.extend(self._to_services(controller_service)) diff --git a/src/autoconf/Dockerfile b/src/autoconf/Dockerfile index 6a3375dae7..11695e9df1 100644 --- a/src/autoconf/Dockerfile +++ b/src/autoconf/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.12.6-alpine@sha256:e0e4d3db19333a970e7acfdcb8863efe065be6c3038ef5018694f98162bffec0 AS builder +FROM python:3.12.7-alpine@sha256:f498302457ec11162f872199b92239c34e1fbcdbc391ff37a4959e820224aa98 AS builder # Export var for specific actions on linux/arm/v7 ARG TARGETPLATFORM @@ -31,7 +31,7 @@ COPY src/common/helpers helpers COPY src/common/settings.json settings.json COPY src/common/utils utils -FROM python:3.12.6-alpine@sha256:e0e4d3db19333a970e7acfdcb8863efe065be6c3038ef5018694f98162bffec0 +FROM python:3.12.7-alpine@sha256:f498302457ec11162f872199b92239c34e1fbcdbc391ff37a4959e820224aa98 # Set default umask to prevent huge recursive chmod increasing the final image size RUN umask 027 @@ -61,10 +61,10 @@ RUN apk add --no-cache bash && \ chmod 660 INTEGRATION # Fix CVEs -RUN apk add --no-cache "libcrypto3>=3.3.2-r0" "libssl3>=3.3.2-r0" "openssl>=3.3.2-r0" # CVE-2024-6119 +RUN apk add --no-cache "libcrypto3>=3.3.2-r1" "libssl3>=3.3.2-r1" # CVE-2024-9143 LABEL maintainer="Bunkerity " -LABEL version="1.5.10" +LABEL version="1.5.11" LABEL url="https://www.bunkerweb.io" LABEL bunkerweb.type="autoconf" diff --git a/src/bw/Dockerfile b/src/bw/Dockerfile index 72a2167d13..ac7a1d46ef 100644 --- a/src/bw/Dockerfile +++ b/src/bw/Dockerfile @@ -68,11 +68,9 @@ RUN apk add --no-cache openssl pcre bash python3 yajl geoip libxml2 libgd curl & ln -s /proc/1/fd/1 /var/log/bunkerweb/access.log # Fix CVEs -RUN apk add --no-cache "curl>=8.9.1-r0" "libcurl>=8.9.1-r0" "pyc>=3.12.3-r2" "python3>=3.12.3-r2" "python3-pyc>=3.12.3-r2" "python3-pycache-pyc0>=3.12.3-r2" # CVE-2024-7264 CVE-2024-8088 -RUN apk add --no-cache "libcrypto3>=3.3.2-r0" "libssl3>=3.3.2-r0" "openssl>=3.3.2-r0" # CVE-2024-6119 LABEL maintainer="Bunkerity " -LABEL version="1.5.10" +LABEL version="1.5.11" LABEL url="https://www.bunkerweb.io" LABEL bunkerweb.type="bunkerweb" LABEL bunkerweb.INSTANCE="bunkerweb" diff --git a/src/common/api/API.py b/src/common/api/API.py index b5aa3218b7..dfd9dede42 100644 --- a/src/common/api/API.py +++ b/src/common/api/API.py @@ -1,5 +1,6 @@ #!/usr/bin/env python3 +from os import environ from typing import Literal, Optional, Union from requests import request @@ -25,7 +26,8 @@ def request( url: str, data: Optional[Union[dict, bytes]] = None, files=None, - timeout=(10, 30), + timeout=(int(environ.get('API_TIMEOUT', 10)), + int(environ.get('API_READ_TIMEOUT', 30))), ) -> tuple[bool, str, Optional[int], Optional[dict]]: try: kwargs = {} diff --git a/src/common/confs/init-worker-lua.conf b/src/common/confs/init-worker-lua.conf index b8d17b2a81..7717dfe427 100644 --- a/src/common/confs/init-worker-lua.conf +++ b/src/common/confs/init-worker-lua.conf @@ -1,4 +1,4 @@ -lua_shared_dict worker_lock 16k; +lua_shared_dict worker_lock {{ WORKERLOCK_MEMORY_SIZE }}; init_worker_by_lua_block { -- Libs diff --git a/src/common/core/authbasic/confs/server-http/htpasswd b/src/common/core/authbasic/confs/server-http/htpasswd index 1affc6c856..95de04094c 100644 --- a/src/common/core/authbasic/confs/server-http/htpasswd +++ b/src/common/core/authbasic/confs/server-http/htpasswd @@ -1,4 +1,4 @@ -{% set crypt = import('crypt') %} {% if USE_AUTH_BASIC == "yes" %} -{{ AUTH_BASIC_USER }}:{{ crypt.crypt(AUTH_BASIC_PASSWORD, crypt.mksalt(crypt.METHOD_SHA512)) }} +{% set passlib_hash = import('passlib.hash') %} +{{ AUTH_BASIC_USER }}:{{ passlib_hash.sha512_crypt.hash(AUTH_BASIC_PASSWORD) }} {% endif %} diff --git a/src/common/core/errors/plugin.json b/src/common/core/errors/plugin.json index bd70ad5ebc..7f9a7f308c 100644 --- a/src/common/core/errors/plugin.json +++ b/src/common/core/errors/plugin.json @@ -20,7 +20,7 @@ "help": "List of HTTP error code intercepted by BunkerWeb", "id": "intercepted-error-codes", "label": "Intercepted error codes", - "regex": "^( *([1-5]\\d{2})(?!.*\\2) *)+$", + "regex": "^( *([1-5]\\d{2})(?!.*\\2) *)*$", "type": "text" } } diff --git a/src/common/core/modsecurity/files/coreruleset-v3/.github/workflows/test.yml b/src/common/core/modsecurity/files/coreruleset-v3/.github/workflows/test.yml index de86f49892..0e8f3e7a9f 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/.github/workflows/test.yml +++ b/src/common/core/modsecurity/files/coreruleset-v3/.github/workflows/test.yml @@ -21,7 +21,7 @@ jobs: modsec_version: [modsec2-apache] steps: - name: "Checkout repo" - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: "Install dependencies" env: @@ -31,23 +31,23 @@ jobs: gh release download -R coreruleset/go-ftw v${GO_FTW_VERSION} -p "ftw_${GO_FTW_VERSION}_linux_amd64.tar.gz" -O - | tar -xzvf - ftw - name: "Run tests for ${{ matrix.modsec_version }}" + env: + FTW_LOGFILE: './tests/logs/${{ matrix.modsec_version }}/error.log' run: | - mkdir -p tests/logs/${{ matrix.modsec_version }}/{nginx,apache2} - docker-compose -f ./tests/docker-compose.yml up -d "${{ matrix.modsec_version }}" - docker-compose -f ./tests/docker-compose.yml logs + mkdir -p "tests/logs/${{ matrix.modsec_version }}" + docker compose -f ./tests/docker-compose.yml up -d "${{ matrix.modsec_version }}" + docker compose -f ./tests/docker-compose.yml logs [ $(docker inspect ${{ matrix.modsec_version }} --format='{{.State.Running}}') = 'true' ] ./ftw check -d tests/regression/tests ./ftw run -d tests/regression/tests --show-failures-only - env: - FTW_LOGFILE: './tests/logs/modsec2-apache/error.log' - name: "Change permissions if failed" if: failure() run: | - # we want to get the audit log, so change permissions (file is only for root on docker) - sudo chmod 644 tests/logs/${{ matrix.modsec_version }}/modsec_audit.log + # we want to get the audit log, so change permissions (file is only for root on docker) + sudo chmod 644 tests/logs/${{ matrix.modsec_version }}/modsec_audit.log - - uses: actions/upload-artifact@v2 + - uses: actions/upload-artifact@v4 if: failure() with: name: waf-logs @@ -55,5 +55,4 @@ jobs: - name: Clean docker-compose run: | - docker-compose -f ./tests/docker-compose.yml stop "${{ matrix.modsec_version }}" - docker-compose -f ./tests/docker-compose.yml down + docker compose -f ./tests/docker-compose.yml down -t 0 diff --git a/src/common/core/modsecurity/files/coreruleset-v3/CHANGES.md b/src/common/core/modsecurity/files/coreruleset-v3/CHANGES.md index 444e4f71fc..a2026f3e5d 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/CHANGES.md +++ b/src/common/core/modsecurity/files/coreruleset-v3/CHANGES.md @@ -6,6 +6,19 @@ or the CRS Google Group at * +## Version 3.3.7 - 2024-10-28 + +### ⭐ Important changes + +* fix: 9EA-241022 v3 by @RedXanadu in https://github.com/coreruleset/coreruleset/pull/3906 + +## Version 3.3.6 - 2024-08-27 + +Important changes: + +* Backport fix for 3MU-240701-1 - catch invalid character in multipart headers via new rule 922130 (Ervin Hegedus, Felipe Zipitría) +* Backport fix for 3MU-240701-2 - prevent using backslash in file names from v4 - updated rule 920120 - pl1, 920121 - pl2 (Felipe Zipitria) + ## Version 3.3.5 - 2023-07-18 Important changes: diff --git a/src/common/core/modsecurity/files/coreruleset-v3/CONTRIBUTORS.md b/src/common/core/modsecurity/files/coreruleset-v3/CONTRIBUTORS.md index 9fdfdcabeb..a6768d405b 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/CONTRIBUTORS.md +++ b/src/common/core/modsecurity/files/coreruleset-v3/CONTRIBUTORS.md @@ -1,28 +1,32 @@ # Contributors -## Project Co-Leads: +## Project Co-Leads - [Christian Folini](https://github.com/dune73) -- [Walter Hop](https://github.com/lifeforms) - [Felipe Zipitría](https://github.com/fzipi) -## Developers: +## Developers -- [Paul Beckett](https://github.com/53cur3M3) - [Franziska Bühler](https://github.com/franbuehler) -- [Christoph Hansen](https://github.com/emphazer) - [Ervin Hegedus](https://github.com/airween) - [Andrew Howe](https://github.com/RedXanadu) - [Max Leske](https://github.com/theseion) +- [Jozef Sudolský](https://github.com/azurit) + +## Past Developers + +- [Walter Hop](https://github.com/lifeforms) +- [Paul Beckett](https://github.com/53cur3M3) +- [Christoph Hansen](https://github.com/emphazer) - [Andrea Menin](https://github.com/theMiddleBlue) - [Chaim Sanders](https://github.com/csanders-git) - [Federico G. Schwindt](https://github.com/fgsch) - [Manuel Leos Rivas](https://github.com/spartantri) - [Simon Studer](https://github.com/studersi) -- [Jozef Sudolský](https://github.com/azurit) -## Contributors: +## Contributors +- [luelueking](https://github.com/luelueking) - [agusmu](https://github.com/agusmu) - [Amir Hosein Aliakbarian](https://github.com/AmirHoseinAliakbarian) - [Zack Allen](https://github.com/zmallen) diff --git a/src/common/core/modsecurity/files/coreruleset-v3/README.md b/src/common/core/modsecurity/files/coreruleset-v3/README.md index aa640560cb..c2d7d46d57 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/README.md +++ b/src/common/core/modsecurity/files/coreruleset-v3/README.md @@ -1,23 +1,22 @@ ![GHA build v3.3/dev](https://github.com/coreruleset/coreruleset/workflows/Regression%20Tests/badge.svg?branch=v3.3%2Fdev) ![GHA build v3.2/dev](https://github.com/coreruleset/coreruleset/workflows/Regression%20Tests/badge.svg?branch=v3.2%2Fdev) -![GHA build v3.1/dev](https://github.com/coreruleset/coreruleset/workflows/Regression%20Tests/badge.svg?branch=v3.1%2Fdev) [![OWASP Flagship](https://img.shields.io/badge/owasp-flagship%20project-38a047.svg)](https://owasp.org/projects/) [![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/1390/badge)](https://bestpractices.coreinfrastructure.org/projects/1390) [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) -# OWASP ModSecurity Core Rule Set (CRS) +# OWASP CRS -The OWASP ModSecurity Core Rule Set (CRS) is a set of generic attack detection rules for use with ModSecurity or compatible web application firewalls. The CRS aims to protect web applications from a wide range of attacks, including the OWASP Top Ten, with a minimum of false alerts. +The OWASP CRS is a set of generic attack detection rules for use with ModSecurity or compatible web application firewalls. The CRS aims to protect web applications from a wide range of attacks, including the OWASP Top Ten, with a minimum of false alerts. -## CRS Resources +## Resources -Please see the [OWASP ModSecurity Core Rule Set page](https://coreruleset.org/) to get introduced to the CRS and view resources on installation, configuration, and working with the CRS. +Please see our [website](https://coreruleset.org/) to get introduced to the CRS and view resources on installation, configuration, and working with the CRS. -## Contributing to the CRS +## Contributing -We strive to make the OWASP ModSecurity CRS accessible to a wide audience of beginner and experienced users. We are interested in hearing any bug reports, false positive alert reports, evasions, usability issues, and suggestions for new detections. +We strive to make CRS accessible to a wide audience of beginner and experienced users. We are interested in hearing any bug reports, false positive alert reports, evasions, usability issues, and suggestions for new detections. [Create an issue on GitHub](https://github.com/coreruleset/coreruleset/issues) to report a false positive or false negative (evasion). Please include your installed version and the relevant portions of your ModSecurity audit log. @@ -29,6 +28,6 @@ We strive to make the OWASP ModSecurity CRS accessible to a wide audience of beg Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -Copyright (c) 2021-2022 Core Rule Set project. All rights reserved. +Copyright (c) 2021-2024 CRS project. All rights reserved. -The OWASP ModSecurity Core Rule Set is distributed under Apache Software License (ASL) version 2. Please see the enclosed LICENSE file for full details. +The OWASP CRS is distributed under Apache Software License (ASL) version 2. Please see the enclosed LICENSE file for full details. diff --git a/src/common/core/modsecurity/files/coreruleset-v3/SPONSORS.md b/src/common/core/modsecurity/files/coreruleset-v3/SPONSORS.md index 5cf8ab3b86..ef27593596 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/SPONSORS.md +++ b/src/common/core/modsecurity/files/coreruleset-v3/SPONSORS.md @@ -1,13 +1,9 @@ ## GOLD SPONSORS -* Edgio * Google -* Microsoft -* Nginx (Part of F5) * United Security Providers -* VMWare ## SILVER SPONSORS -* Bug Bounty Switzerland +* Swiss Post diff --git a/src/common/core/modsecurity/files/coreruleset-v3/crs-setup.conf.example b/src/common/core/modsecurity/files/coreruleset-v3/crs-setup.conf.example index e0b1d9cdef..8a54e4a395 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/crs-setup.conf.example +++ b/src/common/core/modsecurity/files/coreruleset-v3/crs-setup.conf.example @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -389,9 +389,8 @@ SecDefaultAction "phase:2,log,auditlog,pass" # setvar:'tx.allowed_methods=GET HEAD POST OPTIONS'" # Content-Types that a client is allowed to send in a request. -# Default: |application/x-www-form-urlencoded| |multipart/form-data| |multipart/related| -# |text/xml| |application/xml| |application/soap+xml| |application/json| -# |application/cloudevents+json| |application/cloudevents-batch+json| +# Default: |application/x-www-form-urlencoded| |multipart/form-data| |text/xml| +# |application/xml| |application/soap+xml| |application/json| # # Please note, that the rule where CRS uses this variable (920420) evaluates it with operator # `@within`, which is case sensitive, but uses t:lowercase. You must add your whole custom @@ -405,6 +404,15 @@ SecDefaultAction "phase:2,log,auditlog,pass" # content type may still be interpreted as JSON by a backend application but would not trigger the # JSON body parser at the WAF, leading to a bypass. # +# When additional JSON content types are legitimately used in a deployment, +# e.g. application/cloudevents+json, it is extremely important to ensure that a +# rule exists to enable the engine's JSON body processor for these additional +# JSON content types. Failure to do so can lead to a request body bypass. The +# default JSON rule in modsecurity.conf-recommended (200001) will only activate +# the JSON body processor for the specific content type application/json. The +# optional modsecurity.conf-recommended rule 200006 can be used to enable the +# JSON body processor for a wide variety of JSON content types. +# # To prevent blocking request with not allowed content-type by default, you can create an exclusion # rule that removes rule 920420. For example: # SecRule REQUEST_HEADERS:Content-Type "@rx ^text/plain" \ @@ -425,7 +433,7 @@ SecDefaultAction "phase:2,log,auditlog,pass" # nolog,\ # pass,\ # t:none,\ -# setvar:'tx.allowed_request_content_type=|application/x-www-form-urlencoded| |multipart/form-data| |multipart/related| |text/xml| |application/xml| |application/soap+xml| |application/json| |application/cloudevents+json| |application/cloudevents-batch+json|'" +# setvar:'tx.allowed_request_content_type=|application/x-www-form-urlencoded| |multipart/form-data| |text/xml| |application/xml| |application/soap+xml| |application/json|'" # Allowed HTTP versions. # Default: HTTP/1.0 HTTP/1.1 HTTP/2 HTTP/2.0 @@ -866,4 +874,4 @@ SecAction \ pass,\ t:none,\ nolog,\ - setvar:tx.crs_setup_version=335" + setvar:tx.crs_setup_version=337" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf.example b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf.example index ad857bfb0e..371700fc00 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf.example +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf.example @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-901-INITIALIZATION.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-901-INITIALIZATION.conf index 27fd54ad1f..539ebe3d56 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-901-INITIALIZATION.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-901-INITIALIZATION.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -26,7 +26,7 @@ # # Ref: https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual#wiki-SecComponentSignature # -SecComponentSignature "OWASP_CRS/3.3.5" +SecComponentSignature "OWASP_CRS/3.3.7" # # -=[ Default setup values ]=- @@ -59,7 +59,7 @@ SecRule &TX:crs_setup_version "@eq 0" \ log,\ auditlog,\ msg:'ModSecurity Core Rule Set is deployed without configuration! Please copy the crs-setup.conf.example template to crs-setup.conf, and include the crs-setup.conf file in your webserver configuration before including the CRS rules. See the INSTALL file in the CRS directory for detailed instructions',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL'" @@ -77,7 +77,7 @@ SecRule &TX:inbound_anomaly_score_threshold "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.inbound_anomaly_score_threshold=5'" # Default Outbound Anomaly Threshold Level (rule 900110 in setup.conf) @@ -86,7 +86,7 @@ SecRule &TX:outbound_anomaly_score_threshold "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.outbound_anomaly_score_threshold=4'" # Default Paranoia Level (rule 900000 in setup.conf) @@ -95,7 +95,7 @@ SecRule &TX:paranoia_level "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.paranoia_level=1'" # Default Executing Paranoia Level (rule 900000 in setup.conf) @@ -104,7 +104,7 @@ SecRule &TX:executing_paranoia_level "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.executing_paranoia_level=%{TX.PARANOIA_LEVEL}'" # Default Sampling Percentage (rule 900400 in setup.conf) @@ -113,7 +113,7 @@ SecRule &TX:sampling_percentage "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.sampling_percentage=100'" # Default Anomaly Scores (rule 900100 in setup.conf) @@ -122,7 +122,7 @@ SecRule &TX:critical_anomaly_score "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.critical_anomaly_score=5'" SecRule &TX:error_anomaly_score "@eq 0" \ @@ -130,7 +130,7 @@ SecRule &TX:error_anomaly_score "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.error_anomaly_score=4'" SecRule &TX:warning_anomaly_score "@eq 0" \ @@ -138,7 +138,7 @@ SecRule &TX:warning_anomaly_score "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.warning_anomaly_score=3'" SecRule &TX:notice_anomaly_score "@eq 0" \ @@ -146,7 +146,7 @@ SecRule &TX:notice_anomaly_score "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.notice_anomaly_score=2'" # Default do_reput_block @@ -155,7 +155,7 @@ SecRule &TX:do_reput_block "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.do_reput_block=0'" # Default block duration @@ -164,7 +164,7 @@ SecRule &TX:reput_block_duration "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.reput_block_duration=300'" # Default HTTP policy: allowed_methods (rule 900200) @@ -173,7 +173,7 @@ SecRule &TX:allowed_methods "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.allowed_methods=GET HEAD POST OPTIONS'" # Default HTTP policy: allowed_request_content_type (rule 900220) @@ -182,8 +182,8 @@ SecRule &TX:allowed_request_content_type "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ - setvar:'tx.allowed_request_content_type=|application/x-www-form-urlencoded| |multipart/form-data| |multipart/related| |text/xml| |application/xml| |application/soap+xml| |application/json| |application/cloudevents+json| |application/cloudevents-batch+json|'" + ver:'OWASP_CRS/3.3.7',\ + setvar:'tx.allowed_request_content_type=|application/x-www-form-urlencoded| |multipart/form-data| |text/xml| |application/xml| |application/soap+xml| |application/json|'" # Default HTTP policy: allowed_request_content_type_charset (rule 900270) SecRule &TX:allowed_request_content_type_charset "@eq 0" \ @@ -191,7 +191,7 @@ SecRule &TX:allowed_request_content_type_charset "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.allowed_request_content_type_charset=utf-8|iso-8859-1|iso-8859-15|windows-1252'" # Default HTTP policy: allowed_http_versions (rule 900230) @@ -200,7 +200,7 @@ SecRule &TX:allowed_http_versions "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.allowed_http_versions=HTTP/1.0 HTTP/1.1 HTTP/2 HTTP/2.0'" # Default HTTP policy: restricted_extensions (rule 900240) @@ -209,7 +209,7 @@ SecRule &TX:restricted_extensions "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.restricted_extensions=.asa/ .asax/ .ascx/ .axd/ .backup/ .bak/ .bat/ .cdx/ .cer/ .cfg/ .cmd/ .com/ .config/ .conf/ .cs/ .csproj/ .csr/ .dat/ .db/ .dbf/ .dll/ .dos/ .htr/ .htw/ .ida/ .idc/ .idq/ .inc/ .ini/ .key/ .licx/ .lnk/ .log/ .mdb/ .old/ .pass/ .pdb/ .pol/ .printer/ .pwd/ .rdb/ .resources/ .resx/ .sql/ .swp/ .sys/ .vb/ .vbs/ .vbproj/ .vsdisco/ .webinfo/ .xsd/ .xsx/'" # Default HTTP policy: restricted_headers (rule 900250) @@ -218,7 +218,7 @@ SecRule &TX:restricted_headers "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.restricted_headers=/accept-charset/ /content-encoding/ /proxy/ /lock-token/ /content-range/ /if/'" # Default HTTP policy: static_extensions (rule 900260) @@ -227,7 +227,7 @@ SecRule &TX:static_extensions "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.static_extensions=/.jpg/ /.jpeg/ /.png/ /.gif/ /.js/ /.css/ /.ico/ /.svg/ /.webp/'" # Default enforcing of body processor URLENCODED @@ -236,7 +236,7 @@ SecRule &TX:enforce_bodyproc_urlencoded "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.enforce_bodyproc_urlencoded=0'" # Default check for UTF8 encoding validation @@ -245,7 +245,7 @@ SecRule &TX:crs_validate_utf8_encoding "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.crs_validate_utf8_encoding=0'" # Default monitor_anomaly_score value @@ -254,7 +254,7 @@ SecRule &TX:monitor_anomaly_score "@eq 0" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.monitor_anomaly_score=0'" # @@ -272,7 +272,7 @@ SecAction \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.anomaly_score=0',\ setvar:'tx.anomaly_score_pl1=0',\ setvar:'tx.anomaly_score_pl2=0',\ @@ -309,7 +309,7 @@ SecRule REQUEST_HEADERS:User-Agent "@rx ^.*$" \ pass,\ t:none,t:sha1,t:hexEncode,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.ua_hash=%{MATCHED_VAR}'" SecAction \ @@ -318,7 +318,7 @@ SecAction \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ initcol:global=global,\ initcol:ip=%{remote_addr}_%{tx.ua_hash},\ setvar:'tx.real_ip=%{remote_addr}'" @@ -338,7 +338,7 @@ SecRule REQBODY_PROCESSOR "!@rx (?:URLENCODED|MULTIPART|XML|JSON)" \ noauditlog,\ msg:'Enabling body inspection',\ ctl:forceRequestBodyVariable=On,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Force body processor URLENCODED SecRule TX:enforce_bodyproc_urlencoded "@eq 1" \ @@ -349,7 +349,7 @@ SecRule TX:enforce_bodyproc_urlencoded "@eq 1" \ nolog,\ noauditlog,\ msg:'Enabling forced body inspection for ASCII content',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule REQBODY_PROCESSOR "!@rx (?:URLENCODED|MULTIPART|XML|JSON)" \ "ctl:requestBodyProcessor=URLENCODED" @@ -388,7 +388,7 @@ SecRule TX:sampling_percentage "@eq 100" \ phase:1,\ pass,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-SAMPLING" SecRule UNIQUE_ID "@rx ^." \ @@ -397,7 +397,7 @@ SecRule UNIQUE_ID "@rx ^." \ pass,\ t:sha1,t:hexEncode,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'TX.sampling_rnd100=%{MATCHED_VAR}'" SecRule DURATION "@rx (..)$" \ @@ -406,7 +406,7 @@ SecRule DURATION "@rx (..)$" \ pass,\ capture,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'TX.sampling_rnd100=%{TX.sampling_rnd100}%{TX.1}'" SecRule TX:sampling_rnd100 "@rx ^[a-f]*([0-9])[a-f]*([0-9])" \ @@ -415,7 +415,7 @@ SecRule TX:sampling_rnd100 "@rx ^[a-f]*([0-9])[a-f]*([0-9])" \ pass,\ capture,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'TX.sampling_rnd100=%{TX.1}%{TX.2}'" SecRule TX:sampling_rnd100 "@rx ^0([0-9])" \ @@ -424,7 +424,7 @@ SecRule TX:sampling_rnd100 "@rx ^0([0-9])" \ pass,\ capture,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'TX.sampling_rnd100=%{TX.1}'" @@ -449,7 +449,7 @@ SecRule TX:sampling_rnd100 "!@lt %{tx.sampling_percentage}" \ noauditlog,\ msg:'Sampling: Disable the rule engine based on sampling_percentage %{TX.sampling_percentage} and random number %{TX.sampling_rnd100}',\ ctl:ruleEngine=Off,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecMarker "END-SAMPLING" @@ -467,4 +467,4 @@ SecRule TX:executing_paranoia_level "@lt %{tx.paranoia_level}" \ t:none,\ log,\ msg:'Executing paranoia level configured is lower than the paranoia level itself. This is illegal. Blocking request. Aborting',\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9001-DRUPAL-EXCLUSION-RULES.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9001-DRUPAL-EXCLUSION-RULES.conf index 518300aa6b..be5faa046c 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9001-DRUPAL-EXCLUSION-RULES.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9001-DRUPAL-EXCLUSION-RULES.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -69,7 +69,7 @@ SecRule &TX:crs_exclusions_drupal|TX:crs_exclusions_drupal "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-DRUPAL-RULE-EXCLUSIONS" SecRule &TX:crs_exclusions_drupal|TX:crs_exclusions_drupal "@eq 0" \ @@ -78,7 +78,7 @@ SecRule &TX:crs_exclusions_drupal|TX:crs_exclusions_drupal "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-DRUPAL-RULE-EXCLUSIONS" @@ -116,7 +116,7 @@ SecAction "id:9001100,\ nolog,\ ctl:ruleRemoveTargetById=942450;REQUEST_COOKIES_NAMES,\ ctl:ruleRemoveTargetById=942450;REQUEST_COOKIES,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # @@ -131,7 +131,7 @@ SecRule REQUEST_FILENAME "@endsWith /core/install.php" \ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:account[pass][pass1],\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:account[pass][pass2],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@endsWith /user/login" \ "id:9001112,\ @@ -140,7 +140,7 @@ SecRule REQUEST_FILENAME "@endsWith /user/login" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:pass,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@endsWith /admin/people/create" \ "id:9001114,\ @@ -149,7 +149,7 @@ SecRule REQUEST_FILENAME "@endsWith /admin/people/create" \ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:pass[pass1],\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:pass[pass2],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@rx /user/[0-9]+/edit$" \ "id:9001116,\ @@ -159,7 +159,7 @@ SecRule REQUEST_FILENAME "@rx /user/[0-9]+/edit$" \ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:current_pass,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:pass[pass1],\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:pass[pass2],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # @@ -179,7 +179,7 @@ SecRule REQUEST_FILENAME "@contains /admin/config/" \ pass,\ nolog,\ ctl:ruleRemoveById=942430,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@endsWith /admin/config/people/accounts" \ "id:9001124,\ @@ -196,7 +196,7 @@ SecRule REQUEST_FILENAME "@endsWith /admin/config/people/accounts" \ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:user_mail_status_activated_body,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:user_mail_status_blocked_body,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:user_mail_status_canceled_body,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@endsWith /admin/config/development/configuration/single/import" \ "id:9001126,\ @@ -205,7 +205,7 @@ SecRule REQUEST_FILENAME "@endsWith /admin/config/development/configuration/sing nolog,\ ctl:ruleRemoveById=920271,\ ctl:ruleRemoveById=942440,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@endsWith /admin/config/development/maintenance" \ "id:9001128,\ @@ -213,7 +213,7 @@ SecRule REQUEST_FILENAME "@endsWith /admin/config/development/maintenance" \ pass,\ nolog,\ ctl:ruleRemoveById=942440,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # @@ -230,7 +230,7 @@ SecRule REQUEST_FILENAME "@endsWith /contextual/render" \ pass,\ nolog,\ ctl:ruleRemoveTargetById=942130;ARGS:ids[],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # @@ -249,7 +249,7 @@ SecAction "id:9001160,\ ctl:ruleRemoveTargetById=942440;ARGS:form_build_id,\ ctl:ruleRemoveTargetById=942450;ARGS:form_token,\ ctl:ruleRemoveTargetById=942450;ARGS:form_build_id,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # @@ -266,7 +266,7 @@ SecRule REQUEST_FILENAME "@endsWith /admin/config/content/formats/manage/full_ht nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:editor[settings][toolbar][button_groups],\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:filters[filter_html][settings][allowed_html],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # @@ -286,7 +286,7 @@ SecRule REQUEST_FILENAME "@endsWith /admin/config/content/formats/manage/full_ht # t:none,\ # nolog,\ # noauditlog,\ -# ver:'OWASP_CRS/3.3.0',\ +# ver:'OWASP_CRS/3.3.7',\ # chain" # SecRule REQUEST_FILENAME "@rx /admin/content/assets/add/[a-z]+$" \ # "chain" @@ -302,7 +302,7 @@ SecRule REQUEST_FILENAME "@endsWith /admin/config/content/formats/manage/full_ht # t:none,\ # nolog,\ # noauditlog,\ -# ver:'OWASP_CRS/3.3.0',\ +# ver:'OWASP_CRS/3.3.7',\ # chain" # SecRule REQUEST_FILENAME "@rx /admin/content/assets/manage/[0-9]+$" \ # "chain" @@ -322,7 +322,7 @@ SecRule REQUEST_FILENAME "@endsWith /admin/config/content/formats/manage/full_ht # t:none,\ # nolog,\ # noauditlog,\ -# ver:'OWASP_CRS/3.3.0',\ +# ver:'OWASP_CRS/3.3.7',\ # chain" # SecRule REQUEST_FILENAME "@rx /file/ajax/field_asset_[a-z0-9_]+/[ua]nd/0/form-[a-z0-9A-Z_-]+$" \ # "chain" @@ -350,7 +350,7 @@ SecRule REQUEST_FILENAME "@endsWith /node/add/article" \ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:body[0][value],\ ctl:ruleRemoveTargetById=942410;ARGS:uid[0][target_id],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@endsWith /node/add/page" \ "id:9001202,\ @@ -359,7 +359,7 @@ SecRule REQUEST_FILENAME "@endsWith /node/add/page" \ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:body[0][value],\ ctl:ruleRemoveTargetById=942410;ARGS:uid[0][target_id],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@rx /node/[0-9]+/edit$" \ "id:9001204,\ @@ -369,7 +369,7 @@ SecRule REQUEST_FILENAME "@rx /node/[0-9]+/edit$" \ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:body[0][value],\ ctl:ruleRemoveTargetById=942410;ARGS:uid[0][target_id],\ ctl:ruleRemoveTargetById=932110;ARGS:destination,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@endsWith /block/add" \ "id:9001206,\ @@ -377,7 +377,7 @@ SecRule REQUEST_FILENAME "@endsWith /block/add" \ pass,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:body[0][value],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@endsWith /admin/structure/block/block-content/manage/basic" \ "id:9001208,\ @@ -385,7 +385,7 @@ SecRule REQUEST_FILENAME "@endsWith /admin/structure/block/block-content/manage/ pass,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:description,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@rx /editor/filter_xss/(?:full|basic)_html$" \ "id:9001210,\ @@ -393,7 +393,7 @@ SecRule REQUEST_FILENAME "@rx /editor/filter_xss/(?:full|basic)_html$" \ pass,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:value,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@rx /user/[0-9]+/contact$" \ "id:9001212,\ @@ -401,7 +401,7 @@ SecRule REQUEST_FILENAME "@rx /user/[0-9]+/contact$" \ pass,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:message[0][value],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@endsWith /admin/config/development/maintenance" \ "id:9001214,\ @@ -409,7 +409,7 @@ SecRule REQUEST_FILENAME "@endsWith /admin/config/development/maintenance" \ pass,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:maintenance_mode_message,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@endsWith /admin/config/services/rss-publishing" \ "id:9001216,\ @@ -417,7 +417,7 @@ SecRule REQUEST_FILENAME "@endsWith /admin/config/services/rss-publishing" \ pass,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:feed_description,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecMarker "END-DRUPAL-RULE-EXCLUSIONS" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9002-WORDPRESS-EXCLUSION-RULES.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9002-WORDPRESS-EXCLUSION-RULES.conf index b4e75fa223..b72283af3d 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9002-WORDPRESS-EXCLUSION-RULES.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9002-WORDPRESS-EXCLUSION-RULES.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -23,7 +23,7 @@ SecRule &TX:crs_exclusions_wordpress|TX:crs_exclusions_wordpress "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-WORDPRESS" SecRule &TX:crs_exclusions_wordpress|TX:crs_exclusions_wordpress "@eq 0" \ @@ -32,7 +32,7 @@ SecRule &TX:crs_exclusions_wordpress|TX:crs_exclusions_wordpress "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-WORDPRESS" @@ -53,7 +53,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-login.php" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:pwd,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Reset password SecRule REQUEST_FILENAME "@endsWith /wp-login.php" \ @@ -62,7 +62,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-login.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@streq resetpass" \ "t:none,\ @@ -86,7 +86,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-comments-post.php" \ t:none,\ nolog,\ ctl:ruleRemoveTargetById=931130;ARGS:url,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # @@ -103,7 +103,7 @@ SecRule REQUEST_FILENAME "@rx /wp-json/wp/v[0-9]+/(?:posts|pages)" \ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:content,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:json.content,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Gutenberg via rest_route for sites without pretty permalinks SecRule REQUEST_FILENAME "@endsWith /index.php" \ @@ -112,7 +112,7 @@ SecRule REQUEST_FILENAME "@endsWith /index.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule &ARGS:rest_route "@eq 1" \ "t:none,\ @@ -132,7 +132,7 @@ SecRule REQUEST_FILENAME "@rx /wp-json/wp/v[0-9]+/media" \ nolog,\ ctl:ruleRemoveById=200002,\ ctl:ruleRemoveById=200003,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Gutenberg upload image/media via rest_route for sites without pretty permalinks SecRule REQUEST_FILENAME "@endsWith /index.php" \ @@ -141,7 +141,7 @@ SecRule REQUEST_FILENAME "@endsWith /index.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule &ARGS:rest_route "@eq 1" \ "t:none,\ @@ -170,7 +170,7 @@ SecRule ARGS:wp_customize "@streq on" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule &ARGS:action "@eq 0" \ "t:none,\ @@ -191,7 +191,7 @@ SecRule ARGS:wp_customize "@streq on" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@rx ^(?:|customize_save|update-widget)$" \ "t:none,\ @@ -232,7 +232,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-cron.php" \ nolog,\ ctl:ruleRemoveById=920180,\ ctl:ruleRemoveById=920300,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # @@ -247,7 +247,7 @@ SecRule REQUEST_COOKIES:_wp_session "@rx ^[0-9a-f]+\|\|\d+\|\|\d+$" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule &REQUEST_COOKIES:_wp_session "@eq 1" \ "t:none,\ @@ -266,7 +266,7 @@ SecRule REQUEST_FILENAME "!@contains /wp-admin/" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-WORDPRESS-ADMIN" SecRule REQUEST_FILENAME "!@contains /wp-admin/" \ @@ -275,7 +275,7 @@ SecRule REQUEST_FILENAME "!@contains /wp-admin/" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-WORDPRESS-ADMIN" @@ -290,7 +290,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/setup-config.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:step "@streq 2" \ "t:none,\ @@ -306,7 +306,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/install.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:step "@streq 2" \ "t:none,\ @@ -329,7 +329,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/profile.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@streq update" \ "t:none,\ @@ -357,7 +357,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/user-edit.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@streq update" \ "t:none,\ @@ -386,7 +386,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/user-new.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@streq createuser" \ "t:none,\ @@ -427,7 +427,7 @@ SecAction \ ctl:ruleRemoveTargetById=942200;ARGS:wp_http_referer,\ ctl:ruleRemoveTargetById=942260;ARGS:wp_http_referer,\ ctl:ruleRemoveTargetById=942431;ARGS:wp_http_referer,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # # [ Content editing ] @@ -444,7 +444,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/post.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@rx ^(?:edit|editpost)$" \ "t:none,\ @@ -464,7 +464,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/admin-ajax.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@streq heartbeat" \ "t:none,\ @@ -486,7 +486,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/nav-menus.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@streq update" \ "t:none,\ @@ -511,7 +511,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/admin-ajax.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@rx ^(?:save-widget|update-widget)$" \ "t:none,\ @@ -566,7 +566,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/admin-ajax.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@streq widgets-order" \ "t:none,\ @@ -595,7 +595,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/admin-ajax.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@streq sample-permalink" \ "t:none,\ @@ -611,7 +611,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/admin-ajax.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@streq add-menu-item" \ "t:none,\ @@ -627,7 +627,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/admin-ajax.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@streq send-attachment-to-editor" \ "t:none,\ @@ -648,7 +648,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/options.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:option_page "@streq general" \ "t:none,\ @@ -679,7 +679,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/options-permalink.php" \ ctl:ruleRemoveTargetById=920272;ARGS:permalink_structure,\ ctl:ruleRemoveTargetById=942431;ARGS:permalink_structure,\ ctl:ruleRemoveTargetById=920272;REQUEST_BODY,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Comments blacklist and moderation list SecRule REQUEST_FILENAME "@endsWith /wp-admin/options.php" \ @@ -688,7 +688,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/options.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:option_page "@streq discussion" \ "t:none,\ @@ -712,7 +712,7 @@ SecRule REQUEST_FILENAME "@endsWith /wp-admin/edit.php" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:s,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # @@ -751,7 +751,7 @@ SecRule REQUEST_FILENAME "@rx /wp-admin/load-(?:scripts|styles)\.php$" \ ctl:ruleRemoveTargetById=942430;ARGS:load[],\ ctl:ruleRemoveTargetById=942431;ARGS:load[],\ ctl:ruleRemoveTargetById=942432;ARGS:load[],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecMarker "END-WORDPRESS-ADMIN" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9003-NEXTCLOUD-EXCLUSION-RULES.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9003-NEXTCLOUD-EXCLUSION-RULES.conf index 3b63b47e21..a071a27560 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9003-NEXTCLOUD-EXCLUSION-RULES.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9003-NEXTCLOUD-EXCLUSION-RULES.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -44,7 +44,7 @@ SecRule &TX:crs_exclusions_nextcloud|TX:crs_exclusions_nextcloud "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-NEXTCLOUD" SecRule &TX:crs_exclusions_nextcloud|TX:crs_exclusions_nextcloud "@eq 0" \ @@ -53,7 +53,7 @@ SecRule &TX:crs_exclusions_nextcloud|TX:crs_exclusions_nextcloud "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-NEXTCLOUD" @@ -75,7 +75,7 @@ SecRule REQUEST_FILENAME "@contains /remote.php/webdav" \ ctl:ruleRemoveById=953100-953130,\ ctl:ruleRemoveById=920420,\ ctl:ruleRemoveById=920440,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Skip PUT parsing for invalid encoding / protocol violations in binary files. @@ -85,7 +85,7 @@ SecRule REQUEST_METHOD "@streq PUT" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule REQUEST_FILENAME "@contains /remote.php/webdav" \ "t:none,\ @@ -103,7 +103,7 @@ SecRule REQUEST_FILENAME "@contains /remote.php/dav/files/" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.allowed_request_content_type=%{tx.allowed_request_content_type} |text/vcard|'" # Allow the data type 'application/octet-stream' @@ -114,7 +114,7 @@ SecRule REQUEST_METHOD "@rx ^(?:PUT|MOVE)$" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule REQUEST_FILENAME "@rx /remote\.php/dav/(?:files|uploads)/" \ "setvar:'tx.allowed_request_content_type=%{tx.allowed_request_content_type} |application/octet-stream|'" @@ -127,7 +127,7 @@ SecRule REQUEST_METHOD "@streq PUT" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule REQUEST_FILENAME "@rx (?:/public\.php/webdav/|/remote\.php/dav/uploads/)" \ "ctl:ruleRemoveById=920340,\ @@ -148,7 +148,7 @@ SecRule REQUEST_FILENAME "@contains /remote.php/dav/files/" \ ctl:ruleRemoveById=951000-951999,\ ctl:ruleRemoveById=953100-953130,\ ctl:ruleRemoveById=920440,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Allow REPORT requests without Content-Type header (at least the iOS app does this) @@ -177,7 +177,7 @@ SecRule REQUEST_FILENAME "@contains /index.php/core/search" \ ctl:ruleRemoveTargetByTag=attack-injection-php;ARGS:query,\ ctl:ruleRemoveTargetById=941000-942999;ARGS:query,\ ctl:ruleRemoveTargetById=932000-932999;ARGS:query,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # [ DAV ] @@ -199,7 +199,7 @@ SecRule REQUEST_FILENAME "@rx /(?:remote|index|public)\.php/" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.allowed_methods=%{tx.allowed_methods} PUT PATCH CHECKOUT COPY DELETE LOCK MERGE MKACTIVITY MKCOL MOVE PROPFIND PROPPATCH UNLOCK REPORT TRACE jsonp'" @@ -213,7 +213,7 @@ SecRule REQUEST_FILENAME "@rx /ocs/v[0-9]+\.php/apps/files_sharing/" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.allowed_methods=%{tx.allowed_methods} PUT DELETE'" @@ -226,7 +226,7 @@ SecRule REQUEST_FILENAME "@contains /index.php/core/preview.png" \ t:none,\ nolog,\ ctl:ruleRemoveTargetById=932150;ARGS:file,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Filepreview for trashbin @@ -238,7 +238,7 @@ SecRule REQUEST_FILENAME "@contains /index.php/apps/files_trashbin/ajax/preview. nolog,\ ctl:ruleRemoveTargetById=932150;ARGS:file,\ ctl:ruleRemoveTargetById=942190;ARGS:file,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule REQUEST_FILENAME "@rx /index\.php/(?:apps/gallery/thumbnails|logout$)" \ "id:9003160,\ @@ -247,7 +247,7 @@ SecRule REQUEST_FILENAME "@rx /index\.php/(?:apps/gallery/thumbnails|logout$)" \ t:none,\ nolog,\ ctl:ruleRemoveTargetById=941120;ARGS:requesttoken,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # [ Ownnote ] @@ -259,7 +259,7 @@ SecRule REQUEST_FILENAME "@contains /index.php/apps/ownnote/" \ t:none,\ nolog,\ ctl:ruleRemoveById=941150,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # [ Text Editor ] @@ -277,7 +277,7 @@ SecRule REQUEST_FILENAME "@contains /index.php/apps/files_texteditor/" \ ctl:ruleRemoveTargetById=932150;ARGS:filename,\ ctl:ruleRemoveTargetById=920370-920390;ARGS:filecontents,\ ctl:ruleRemoveTargetById=920370-920390;ARGS_COMBINED_SIZE,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # [ Address Book ] @@ -290,7 +290,7 @@ SecRule REQUEST_FILENAME "@contains /remote.php/dav/addressbooks/" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.allowed_request_content_type=%{tx.allowed_request_content_type} |text/vcard|'" # Allow modifying contacts via the web interface @@ -316,7 +316,7 @@ SecRule REQUEST_FILENAME "@contains /remote.php/dav/calendars/" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.allowed_request_content_type=%{tx.allowed_request_content_type} |text/calendar|'" # Allow modifying calendar events via the web interface @@ -344,7 +344,7 @@ SecRule REQUEST_FILENAME "@contains /index.php/apps/notes/" \ t:none,\ nolog,\ ctl:ruleRemoveByTag=attack-injection-php,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # [ Bookmarks ] @@ -358,7 +358,7 @@ SecRule REQUEST_FILENAME "@contains /index.php/apps/bookmarks/" \ t:none,\ nolog,\ ctl:ruleRemoveById=931130,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # @@ -377,7 +377,7 @@ SecRule REQUEST_FILENAME "@contains /index.php/login" \ nolog,\ ctl:ruleRemoveTargetById=941100;ARGS:requesttoken,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:password,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Reset password. @@ -387,7 +387,7 @@ SecRule REQUEST_FILENAME "@endsWith /index.php/login" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:action "@streq resetpass" \ "t:none,\ @@ -408,7 +408,7 @@ SecRule REQUEST_FILENAME "@endsWith /index.php/settings/users" \ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:newuserpassword,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:password,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecMarker "END-NEXTCLOUD-ADMIN" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9004-DOKUWIKI-EXCLUSION-RULES.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9004-DOKUWIKI-EXCLUSION-RULES.conf index 048d421f3a..e9da034de6 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9004-DOKUWIKI-EXCLUSION-RULES.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9004-DOKUWIKI-EXCLUSION-RULES.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -27,7 +27,7 @@ SecRule &TX:crs_exclusions_dokuwiki|TX:crs_exclusions_dokuwiki "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-DOKUWIKI" SecRule &TX:crs_exclusions_dokuwiki|TX:crs_exclusions_dokuwiki "@eq 0" \ @@ -36,7 +36,7 @@ SecRule &TX:crs_exclusions_dokuwiki|TX:crs_exclusions_dokuwiki "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-DOKUWIKI" @@ -81,7 +81,7 @@ SecRule REQUEST_FILENAME "@rx (?:/doku.php|/lib/exe/ajax.php)$" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule REQUEST_METHOD "@streq POST" \ "t:none,\ @@ -106,7 +106,7 @@ SecRule REQUEST_FILENAME "@endsWith /lib/exe/ajax.php" \ t:none,\ nolog,\ noauditlog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule REQUEST_METHOD "@streq POST" \ "t:none,\ @@ -125,7 +125,7 @@ SecRule REQUEST_FILENAME "@endsWith /doku.php" \ t:none,\ nolog,\ noauditlog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:do "@streq index" \ "t:none,\ @@ -149,7 +149,7 @@ SecRule REQUEST_FILENAME "@endsWith /doku.php" \ t:none,\ nolog,\ noauditlog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:do "@streq login" \ "t:none,\ @@ -170,7 +170,7 @@ SecRule ARGS:do "!@streq admin" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-DOKUWIKI-ADMIN" SecRule ARGS:do "!@streq admin" \ @@ -179,7 +179,7 @@ SecRule ARGS:do "!@streq admin" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-DOKUWIKI-ADMIN" @@ -194,7 +194,7 @@ SecRule REQUEST_FILENAME "@endsWith /doku.php" \ t:none,\ nolog,\ noauditlog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:do "@streq login" \ "t:none,\ @@ -220,7 +220,7 @@ SecRule REQUEST_FILENAME "@endsWith /doku.php" \ t:none,\ nolog,\ noauditlog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:page "@streq config" \ "t:none,\ @@ -252,7 +252,7 @@ SecRule REQUEST_FILENAME "@endsWith /doku.php" \ t:none,\ nolog,\ noauditlog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule ARGS:page "@streq config" \ "t:none,\ diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9005-CPANEL-EXCLUSION-RULES.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9005-CPANEL-EXCLUSION-RULES.conf index 5bc2803273..fc1e19caf6 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9005-CPANEL-EXCLUSION-RULES.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9005-CPANEL-EXCLUSION-RULES.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -19,7 +19,7 @@ SecRule &TX:crs_exclusions_cpanel|TX:crs_exclusions_cpanel "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-CPANEL" SecRule &TX:crs_exclusions_cpanel|TX:crs_exclusions_cpanel "@eq 0" \ @@ -28,7 +28,7 @@ SecRule &TX:crs_exclusions_cpanel|TX:crs_exclusions_cpanel "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-CPANEL" @@ -53,7 +53,7 @@ SecRule REQUEST_LINE "@rx ^GET /whm-server-status(?:/|/\?auto)? HTTP/[12]\.[01]$ tag:'language-multi',\ tag:'platform-apache',\ tag:'attack-generic',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule REMOTE_ADDR "@ipMatch 127.0.0.1,::1" \ "t:none,\ diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9006-XENFORO-EXCLUSION-RULES.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9006-XENFORO-EXCLUSION-RULES.conf index 969caaaf3e..23d7ff0dbf 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9006-XENFORO-EXCLUSION-RULES.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-903.9006-XENFORO-EXCLUSION-RULES.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -18,7 +18,7 @@ SecRule &TX:crs_exclusions_xenforo|TX:crs_exclusions_xenforo "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-XENFORO" SecRule &TX:crs_exclusions_xenforo|TX:crs_exclusions_xenforo "@eq 0" \ @@ -27,7 +27,7 @@ SecRule &TX:crs_exclusions_xenforo|TX:crs_exclusions_xenforo "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-XENFORO" @@ -49,7 +49,7 @@ SecRule REQUEST_FILENAME "@endsWith /proxy.php" \ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:link,\ ctl:ruleRemoveTargetById=931130;ARGS:referrer,\ ctl:ruleRemoveTargetById=942230;ARGS:referrer,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Store drafts for private message, forum post, thread reply # POST /xf/conversations/draft @@ -73,7 +73,7 @@ SecRule REQUEST_FILENAME "@rx /(?:conversations|(?:conversations|forums|threads) ctl:ruleRemoveTargetById=942260;ARGS:attachment_hash_combined,\ ctl:ruleRemoveTargetById=942340;ARGS:attachment_hash_combined,\ ctl:ruleRemoveTargetById=942370;ARGS:attachment_hash_combined,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Send PM, edit post, create thread, reply to thread # POST /xf/conversations/add @@ -100,7 +100,7 @@ SecRule REQUEST_FILENAME "@rx /(?:conversations/add(?:-preview)?|conversations/m ctl:ruleRemoveTargetById=942260;ARGS:attachment_hash_combined,\ ctl:ruleRemoveTargetById=942340;ARGS:attachment_hash_combined,\ ctl:ruleRemoveTargetById=942370;ARGS:attachment_hash_combined,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Quote # POST /xf/posts/12345/quote @@ -111,7 +111,7 @@ SecRule REQUEST_FILENAME "@rx /posts/\d+/quote$" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:quoteHtml,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Multi quote # POST /xf/conversations/convo-title.12345/multi-quote @@ -134,7 +134,7 @@ SecRule REQUEST_FILENAME "@rx /(?:conversations|threads)/.*\.\d+/multi-quote$" \ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:insert[7][value],\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:insert[8][value],\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:insert[9][value],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Delete thread # POST /xf/threads/thread-title.12345/delete @@ -145,7 +145,7 @@ SecRule REQUEST_FILENAME "@rx /threads/.*\.\d+/delete$" \ t:none,\ nolog,\ ctl:ruleRemoveTargetById=942130;ARGS:starter_alert_reason,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Feature thread # POST /xf/threads/thread-title.12345/feature-edit @@ -167,7 +167,7 @@ SecRule REQUEST_FILENAME "@endsWith /inline-mod/" \ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:author_alert_reason,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:message,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Warn member # POST /xf/members/name.12345/warn @@ -180,7 +180,7 @@ SecRule REQUEST_FILENAME "@rx /(?:members/.*\.\d+|posts/\d+)/warn$" \ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:conversation_message,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:notes,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Editor SecRule REQUEST_URI "@endsWith /index.php?editor/to-html" \ @@ -194,7 +194,7 @@ SecRule REQUEST_URI "@endsWith /index.php?editor/to-html" \ ctl:ruleRemoveTargetById=942260;ARGS:attachment_hash_combined,\ ctl:ruleRemoveTargetById=942340;ARGS:attachment_hash_combined,\ ctl:ruleRemoveTargetById=942370;ARGS:attachment_hash_combined,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Editor SecRule REQUEST_URI "@endsWith /index.php?editor/to-bb-code" \ @@ -204,7 +204,7 @@ SecRule REQUEST_URI "@endsWith /index.php?editor/to-bb-code" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:html,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Post attachment # POST /xf/account/avatar @@ -220,7 +220,7 @@ SecRule REQUEST_FILENAME "@rx /(?:account/avatar|attachments/upload)$" \ ctl:ruleRemoveTargetById=942440;ARGS:flowIdentifier,\ ctl:ruleRemoveTargetById=942440;ARGS:flowFilename,\ ctl:ruleRemoveTargetById=942440;ARGS:flowRelativePath,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Media # POST /xf/index.php?editor/media @@ -232,7 +232,7 @@ SecRule REQUEST_URI "@endsWith /index.php?editor/media" \ nolog,\ ctl:ruleRemoveTargetById=931130;ARGS:url,\ ctl:ruleRemoveTargetById=942130;ARGS:url,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Emoji # GET /xf/index.php?misc/find-emoji&q=(%0A%0A @@ -243,7 +243,7 @@ SecRule REQUEST_URI "@rx /index\.php\?misc/find-emoji&q=" \ t:none,\ nolog,\ ctl:ruleRemoveTargetById=921151;ARGS:q,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Login # POST /xf/login/login @@ -254,7 +254,7 @@ SecRule REQUEST_FILENAME "@endsWith /login/login" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:password,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Register account # POST /xf/register/register @@ -269,7 +269,7 @@ SecRule REQUEST_FILENAME "@endsWith /register/register" \ nolog,\ ctl:ruleRemoveTargetById=942130;ARGS,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:reg_key,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Confirm account # GET /xf/account-confirmation/name.12345/email?c=foo @@ -291,7 +291,7 @@ SecRule REQUEST_FILENAME "@endsWith /account/account-details" \ nolog,\ ctl:ruleRemoveTargetById=931130;ARGS:custom_fields[picture],\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:about_html,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Lost password # POST /xf/lost-password/user-name.12345/confirm?c=foo @@ -302,7 +302,7 @@ SecRule REQUEST_FILENAME "@rx /lost-password/.*\.\d+/confirm$" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:c,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Set forum signature # POST /xf/account/signature @@ -313,7 +313,7 @@ SecRule REQUEST_FILENAME "@endsWith /account/signature" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:signature_html,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Search # POST /xf/search/search @@ -328,7 +328,7 @@ SecRule REQUEST_FILENAME "@endsWith /search/search" \ ctl:ruleRemoveTargetById=942260;ARGS:constraints,\ ctl:ruleRemoveTargetById=942340;ARGS:constraints,\ ctl:ruleRemoveTargetById=942370;ARGS:constraints,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Search within thread # GET /xf/threads/foo.12345/page12?highlight=foo @@ -339,7 +339,7 @@ SecRule REQUEST_FILENAME "@rx /threads/.*\.\d+/(?:page\d+)?$" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:highlight,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Search within search result # GET /xf/search/12345/?q=foo @@ -350,7 +350,7 @@ SecRule REQUEST_FILENAME "@rx /search/\d+/$" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:q,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Contact form # POST /xf/misc/contact @@ -362,7 +362,7 @@ SecRule REQUEST_FILENAME "@endsWith /misc/contact" \ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:message,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:subject,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Report post # POST /xf/posts/12345/report @@ -373,7 +373,7 @@ SecRule REQUEST_FILENAME "@rx /posts/\d+/report$" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:message,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Alternate thread view route # /xf/index.php?threads/title-having-some-sql.12345/ @@ -388,7 +388,7 @@ SecRule REQUEST_FILENAME "@endsWith /index.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule REQUEST_METHOD "@streq GET" \ "t:none,\ @@ -412,7 +412,7 @@ SecRule REQUEST_URI "@endsWith /index.php?dbtech-security/fingerprint" \ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:components[14][value],\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:components[15][value],\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:components[16][value],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Get location info SecRule REQUEST_FILENAME "@endsWith /misc/location-info" \ @@ -422,7 +422,7 @@ SecRule REQUEST_FILENAME "@endsWith /misc/location-info" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:location,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # # -=[ XenForo Global Exclusions ]=- @@ -455,7 +455,7 @@ SecAction \ ctl:ruleRemoveTargetByTag=OWASP_CRS;REQUEST_COOKIES:xf_ls,\ ctl:ruleRemoveTargetById=942100;REQUEST_COOKIES:xf_session,\ ctl:ruleRemoveTargetById=942100;REQUEST_COOKIES:xf_user,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # # -=[ XenForo Administration Back-End ]=- @@ -469,7 +469,7 @@ SecRule REQUEST_FILENAME "!@endsWith /admin.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-XENFORO-ADMIN" SecRule REQUEST_FILENAME "!@endsWith /admin.php" \ @@ -478,7 +478,7 @@ SecRule REQUEST_FILENAME "!@endsWith /admin.php" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-XENFORO-ADMIN" # Admin edit user @@ -491,7 +491,7 @@ SecRule REQUEST_URI "@rx /admin\.php\?users/.*\.\d+/edit$" \ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:profile[about],\ ctl:ruleRemoveTargetById=931130;ARGS:profile[website],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Admin save user # POST /xf/admin.php?users/the-user-name.12345/save @@ -510,7 +510,7 @@ SecRule REQUEST_URI "@rx /admin\.php\?users/.*\.\d+/save$" \ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:custom_fields[sexuality],\ ctl:ruleRemoveTargetById=931130;ARGS:custom_fields[picture],\ ctl:ruleRemoveTargetById=931130;ARGS:profile[website],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Admin edit forum notice @@ -524,7 +524,7 @@ SecRule REQUEST_URI "@rx /admin\.php\?notices/(?:.*\.)?\d+/save$" \ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:message,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:title,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Admin batch thread update # POST /xf/admin.php?threads/batch-update/action @@ -539,7 +539,7 @@ SecRule REQUEST_URI "@rx /admin\.php\?(?:threads|users)/batch-update/action$" \ ctl:ruleRemoveTargetById=942330;ARGS:criteria,\ ctl:ruleRemoveTargetById=942340;ARGS:criteria,\ ctl:ruleRemoveTargetById=942370;ARGS:criteria,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Edit forum theme # POST /xf/admin.php?styles/title.1234/style-properties/group&group=basic @@ -556,7 +556,7 @@ SecRule REQUEST_URI "@rx /admin\.php\?styles/" \ ctl:ruleRemoveTargetById=942340;ARGS:json,\ ctl:ruleRemoveTargetById=942370;ARGS:json,\ ctl:ruleRemoveTargetById=942440;ARGS:json,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Set forum options # POST /xf/admin.php?options/update @@ -567,7 +567,7 @@ SecRule REQUEST_URI "@rx /admin\.php\?options/update" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:options[boardInactiveMessage],\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Edit pages/templates # POST /xf/admin.php?pages/0/save @@ -580,7 +580,7 @@ SecRule REQUEST_URI "@rx /admin\.php\?(?:pages|templates)/.*/save" \ t:none,\ nolog,\ ctl:ruleRemoveTargetByTag=OWASP_CRS;ARGS:template,\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecMarker "END-XENFORO-ADMIN" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-905-COMMON-EXCEPTIONS.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-905-COMMON-EXCEPTIONS.conf index 191f2ea3a6..8e06693aed 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-905-COMMON-EXCEPTIONS.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-905-COMMON-EXCEPTIONS.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -24,7 +24,7 @@ SecRule REQUEST_LINE "@streq GET /" \ tag:'language-multi',\ tag:'platform-apache',\ tag:'attack-generic',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule REMOTE_ADDR "@ipMatch 127.0.0.1,::1" \ "t:none,\ @@ -44,7 +44,7 @@ SecRule REMOTE_ADDR "@ipMatch 127.0.0.1,::1" \ tag:'language-multi',\ tag:'platform-apache',\ tag:'attack-generic',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule REQUEST_HEADERS:User-Agent "@endsWith (internal dummy connection)" \ "t:none,\ diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-910-IP-REPUTATION.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-910-IP-REPUTATION.conf index 8f22689fb6..e469826e89 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-910-IP-REPUTATION.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-910-IP-REPUTATION.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -41,7 +41,7 @@ SecRule TX:DO_REPUT_BLOCK "@eq 1" \ tag:'attack-reputation-ip',\ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain,\ skipAfter:BEGIN-REQUEST-BLOCKING-EVAL" @@ -71,7 +71,7 @@ SecRule TX:HIGH_RISK_COUNTRY_CODES "!@rx ^$" \ tag:'attack-reputation-ip',\ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule TX:REAL_IP "@geoLookup" \ @@ -125,7 +125,7 @@ SecRule IP:PREVIOUS_RBL_CHECK "@eq 1" \ tag:'platform-multi',\ tag:'attack-reputation-ip',\ tag:'OWASP_CRS',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-RBL-LOOKUP" # @@ -148,7 +148,7 @@ SecRule &TX:block_suspicious_ip "@eq 0" \ t:none,\ nolog,\ tag:'OWASP_CRS',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain,\ skipAfter:END-RBL-CHECK" SecRule &TX:block_harvester_ip "@eq 0" \ @@ -169,7 +169,7 @@ SecRule TX:REAL_IP "@rbl dnsbl.httpbl.org" \ tag:'platform-multi',\ tag:'attack-reputation-ip',\ tag:'OWASP_CRS',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.httpbl_msg=%{tx.0}',\ chain" SecRule TX:httpbl_msg "@rx RBL lookup of .*?.dnsbl.httpbl.org succeeded at TX:checkip. (.*?): .*" \ @@ -190,7 +190,7 @@ SecRule TX:block_search_ip "@eq 1" \ tag:'attack-reputation-ip',\ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain,\ skipAfter:END-RBL-CHECK" @@ -214,7 +214,7 @@ SecRule TX:block_spammer_ip "@eq 1" \ tag:'attack-reputation-ip',\ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain,\ skipAfter:END-RBL-CHECK" @@ -238,7 +238,7 @@ SecRule TX:block_suspicious_ip "@eq 1" \ tag:'attack-reputation-ip',\ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain,\ skipAfter:END-RBL-CHECK" @@ -262,7 +262,7 @@ SecRule TX:block_harvester_ip "@eq 1" \ tag:'attack-reputation-ip',\ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain,\ skipAfter:END-RBL-CHECK" @@ -284,7 +284,7 @@ SecAction \ tag:'language-multi',\ tag:'platform-multi',\ tag:'attack-reputation-ip',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'ip.previous_rbl_check=1',\ expirevar:'ip.previous_rbl_check=86400'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-911-METHOD-ENFORCEMENT.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-911-METHOD-ENFORCEMENT.conf index 840fe2be5b..b8602bc018 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-911-METHOD-ENFORCEMENT.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-911-METHOD-ENFORCEMENT.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -39,7 +39,7 @@ SecRule REQUEST_METHOD "!@within %{tx.allowed_methods}" \ tag:'OWASP_CRS',\ tag:'capec/1000/210/272/220/274',\ tag:'PCI/12.1',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-912-DOS-PROTECTION.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-912-DOS-PROTECTION.conf index 46767c1636..4bbf97b98a 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-912-DOS-PROTECTION.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-912-DOS-PROTECTION.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -70,7 +70,7 @@ SecRule &TX:dos_burst_time_slice "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain,\ skipAfter:END-DOS-PROTECTION-CHECKS" SecRule &TX:dos_counter_threshold "@eq 0" \ @@ -83,7 +83,7 @@ SecRule &TX:dos_burst_time_slice "@eq 0" \ pass,\ t:none,\ nolog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain,\ skipAfter:END-DOS-PROTECTION-CHECKS" SecRule &TX:dos_counter_threshold "@eq 0" \ @@ -116,7 +116,7 @@ SecRule IP:DOS_BLOCK "@eq 1" \ tag:'attack-dos',\ tag:'OWASP_CRS',\ tag:'capec/1000/210/227/469',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule &IP:DOS_BLOCK_FLAG "@eq 0" \ "setvar:'ip.dos_block_counter=+1',\ @@ -141,7 +141,7 @@ SecRule IP:DOS_BLOCK "@eq 1" \ tag:'attack-dos',\ tag:'OWASP_CRS',\ tag:'capec/1000/210/227/469',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'ip.dos_block_counter=+1'" @@ -162,7 +162,7 @@ SecRule IP:DOS_BLOCK "@eq 1" \ tag:'language-multi',\ tag:'platform-multi',\ tag:'attack-dos',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ skipAfter:END-DOS-PROTECTION-CHECKS" @@ -182,7 +182,7 @@ SecRule REQUEST_BASENAME "@rx .*?(\.[a-z0-9]{1,10})?$" \ tag:'attack-dos',\ tag:'OWASP_CRS',\ tag:'capec/1000/210/227/469',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.extension=/%{TX.1}/',\ chain" SecRule TX:EXTENSION "!@within %{tx.static_extensions}" \ @@ -213,7 +213,7 @@ SecRule IP:DOS_COUNTER "@ge %{tx.dos_counter_threshold}" \ tag:'attack-dos',\ tag:'OWASP_CRS',\ tag:'capec/1000/210/227/469',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule &IP:DOS_BURST_COUNTER "@eq 0" \ "setvar:'ip.dos_burst_counter=1',\ @@ -233,7 +233,7 @@ SecRule IP:DOS_COUNTER "@ge %{tx.dos_counter_threshold}" \ tag:'attack-dos',\ tag:'OWASP_CRS',\ tag:'capec/1000/210/227/469',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule &IP:DOS_BURST_COUNTER "@ge 1" \ "setvar:'ip.dos_burst_counter=2',\ @@ -260,7 +260,7 @@ SecRule IP:DOS_BURST_COUNTER "@ge 2" \ tag:'attack-dos',\ tag:'OWASP_CRS',\ tag:'capec/1000/210/227/469',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'ip.dos_block=1',\ expirevar:'ip.dos_block=%{tx.dos_block_timeout}'" @@ -294,7 +294,7 @@ SecRule IP:DOS_BURST_COUNTER "@ge 1" \ tag:'paranoia-level/2',\ tag:'OWASP_CRS',\ tag:'capec/1000/210/227/469',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'ip.dos_block=1',\ expirevar:'ip.dos_block=%{tx.dos_block_timeout}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-913-SCANNER-DETECTION.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-913-SCANNER-DETECTION.conf index 6e12d0866a..42f9d565da 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-913-SCANNER-DETECTION.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-913-SCANNER-DETECTION.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -47,7 +47,7 @@ SecRule REQUEST_HEADERS:User-Agent "@pmFromFile scanners-user-agents.data" \ tag:'OWASP_CRS',\ tag:'capec/1000/118/224/541/310',\ tag:'PCI/6.5.10',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}',\ setvar:'ip.reput_block_flag=1',\ @@ -70,7 +70,7 @@ SecRule REQUEST_HEADERS_NAMES|REQUEST_HEADERS "@pmFromFile scanners-headers.data tag:'OWASP_CRS',\ tag:'capec/1000/118/224/541/310',\ tag:'PCI/6.5.10',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}',\ setvar:'ip.reput_block_flag=1',\ @@ -95,7 +95,7 @@ SecRule REQUEST_FILENAME|ARGS "@pmFromFile scanners-urls.data" \ tag:'OWASP_CRS',\ tag:'capec/1000/118/224/541/310',\ tag:'PCI/6.5.10',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}',\ setvar:'ip.reput_block_flag=1',\ @@ -135,7 +135,7 @@ SecRule REQUEST_HEADERS:User-Agent "@pmFromFile scripting-user-agents.data" \ tag:'capec/1000/118/224/541/310',\ tag:'PCI/6.5.10',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}',\ setvar:'ip.reput_block_flag=1',\ @@ -169,7 +169,7 @@ SecRule REQUEST_HEADERS:User-Agent "@pmFromFile crawlers-user-agents.data" \ tag:'capec/1000/118/224/541/310',\ tag:'PCI/6.5.10',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}',\ setvar:'ip.reput_block_flag=1',\ diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-920-PROTOCOL-ENFORCEMENT.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-920-PROTOCOL-ENFORCEMENT.conf index 7f3138797e..50bd35ec3a 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-920-PROTOCOL-ENFORCEMENT.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-920-PROTOCOL-ENFORCEMENT.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -59,7 +59,7 @@ SecRule REQUEST_LINE "!@rx ^(?i:(?:[a-z]{3,10}\s+(?:\w{3,7}?://[\w\-\./]*(?::\d+ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/210/272',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'WARNING',\ setvar:'tx.anomaly_score_pl1=+%{tx.warning_anomaly_score}'" @@ -83,20 +83,19 @@ SecRule REQUEST_LINE "!@rx ^(?i:(?:[a-z]{3,10}\s+(?:\w{3,7}?://[\w\-\./]*(?::\d+ # -=[ Targets, characters and html entities ]=- # # 920120: PL1 : FILES_NAMES, FILES -# ['\";=] but allowed: +# ['\";=\x5c] but allowed: # &[aAoOuUyY]uml); &[aAeEiIoOuU]circ; &[eEiIoOuUyY]acute; # &[aAeEiIoOuU]grave; &[cC]cedil; &[aAnNoO]tilde; & ' # # 920121: PL2 : FILES_NAMES, FILES -# ['\";=] : ' " ; = meta-characters +# ['\";=\x5c] : ' " ; = meta-characters # # Not supported by re2 (??![\x5c\]{}]+)\/(?: tag:'attack-protocol',\ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -1189,7 +1188,7 @@ SecRule &REQUEST_HEADERS:Content-Type "@gt 1" \ tag:'attack-protocol',\ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -1233,7 +1232,7 @@ SecRule REQUEST_HEADERS:Range|REQUEST_HEADERS:Request-Range "@rx ^bytes=(?:(?:\d tag:'OWASP_CRS',\ tag:'capec/1000/210/272',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'WARNING',\ chain" SecRule REQUEST_BASENAME "!@endsWith .pdf" \ @@ -1257,7 +1256,7 @@ SecRule REQUEST_BASENAME "@endsWith .pdf" \ tag:'OWASP_CRS',\ tag:'capec/1000/210/272',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'WARNING',\ chain" SecRule REQUEST_HEADERS:Range|REQUEST_HEADERS:Request-Range "@rx ^bytes=(?:(?:\d+)?-(?:\d+)?\s*,?\s*){63}" \ @@ -1278,7 +1277,7 @@ SecRule ARGS "@rx %[0-9a-fA-F]{2}" \ tag:'OWASP_CRS',\ tag:'capec/1000/255/153/267/120',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'WARNING',\ setvar:'tx.anomaly_score_pl2=+%{tx.warning_anomaly_score}'" @@ -1309,7 +1308,7 @@ SecRule &REQUEST_HEADERS:Accept "@eq 0" \ tag:'capec/1000/210/272',\ tag:'PCI/6.5.10',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'NOTICE',\ chain" SecRule REQUEST_METHOD "!@rx ^OPTIONS$" \ @@ -1335,7 +1334,7 @@ SecRule REQUEST_URI|REQUEST_HEADERS|ARGS|ARGS_NAMES "@validateByteRange 9,10,13, tag:'OWASP_CRS',\ tag:'capec/1000/210/272',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -1362,7 +1361,7 @@ SecRule &REQUEST_HEADERS:User-Agent "@eq 0" \ tag:'capec/1000/210/272',\ tag:'PCI/6.5.10',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'NOTICE',\ setvar:'tx.anomaly_score_pl2=+%{tx.notice_anomaly_score}'" @@ -1370,7 +1369,7 @@ SecRule &REQUEST_HEADERS:User-Agent "@eq 0" \ # # PL2: This is a stricter sibling of 920120. # -SecRule FILES_NAMES|FILES "@rx ['\";=]" \ +SecRule FILES_NAMES|FILES "@rx ['\";=\x5c]" \ "id:920121,\ phase:2,\ block,\ @@ -1384,7 +1383,7 @@ SecRule FILES_NAMES|FILES "@rx ['\";=]" \ tag:'OWASP_CRS',\ tag:'capec/1000/210/272',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -1409,7 +1408,7 @@ SecRule REQUEST_HEADERS:Content-Length "!@rx ^0$" \ tag:'paranoia-level/2',\ tag:'OWASP_CRS',\ tag:'capec/1000/210/272',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule &REQUEST_HEADERS:Content-Type "@eq 0" \ @@ -1443,7 +1442,7 @@ SecRule REQUEST_URI|REQUEST_HEADERS|ARGS|ARGS_NAMES|REQUEST_BODY "@validateByteR tag:'OWASP_CRS',\ tag:'capec/1000/210/272',\ tag:'paranoia-level/3',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl3=+%{tx.critical_anomaly_score}'" @@ -1471,7 +1470,7 @@ SecRule &REQUEST_HEADERS:x-up-devcap-post-charset "@ge 1" \ tag:'OWASP_CRS',\ tag:'capec/1000/210/272',\ tag:'paranoia-level/3',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule REQUEST_HEADERS:User-Agent "@rx ^(?i)up" \ @@ -1524,7 +1523,7 @@ SecRule &REQUEST_HEADERS:Cache-Control "@gt 0" \ tag:'paranoia-level/3',\ tag:'OWASP_CRS',\ tag:'capec/1000/210/272',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule REQUEST_HEADERS:Cache-Control "!@rx ^(?:(?:max-age=[0-9]+|min-fresh=[0-9]+|no-cache|no-store|no-transform|only-if-cached|max-stale(?:=[0-9]+)?)(\s*\,\s*|$)){1,7}$" \ @@ -1555,7 +1554,7 @@ SecRule REQUEST_BASENAME "@endsWith .pdf" \ tag:'OWASP_CRS',\ tag:'capec/1000/210/272',\ tag:'paranoia-level/4',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'WARNING',\ chain" SecRule REQUEST_HEADERS:Range|REQUEST_HEADERS:Request-Range "@rx ^bytes=(?:(?:\d+)?-(?:\d+)?\s*,?\s*){6}" \ @@ -1582,7 +1581,7 @@ SecRule ARGS|ARGS_NAMES|REQUEST_BODY "@validateByteRange 38,44-46,48-58,61,65-90 tag:'OWASP_CRS',\ tag:'capec/1000/210/272',\ tag:'paranoia-level/4',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl4=+%{tx.critical_anomaly_score}'" @@ -1603,7 +1602,7 @@ SecRule REQUEST_HEADERS|!REQUEST_HEADERS:User-Agent|!REQUEST_HEADERS:Referer|!RE tag:'OWASP_CRS',\ tag:'capec/1000/210/272',\ tag:'paranoia-level/4',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl4=+%{tx.critical_anomaly_score}'" @@ -1627,7 +1626,7 @@ SecRule REQUEST_HEADERS:Sec-Fetch-User "@validateByteRange 32,34,38,42-59,61,63, tag:'OWASP_CRS',\ tag:'capec/1000/210/272',\ tag:'paranoia-level/4',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl4=+%{tx.critical_anomaly_score}'" @@ -1673,7 +1672,7 @@ SecRule REQUEST_URI|REQUEST_HEADERS|ARGS|ARGS_NAMES "@rx (?:^|[^\\\\])\\\\[cdegh tag:'OWASP_CRS',\ tag:'capec/1000/153/267',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.http_violation_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl4=+%{tx.critical_anomaly_score}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-921-PROTOCOL-ATTACK.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-921-PROTOCOL-ATTACK.conf index fe5d4f68aa..60c20707ac 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-921-PROTOCOL-ATTACK.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-921-PROTOCOL-ATTACK.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -47,7 +47,7 @@ SecRule ARGS_NAMES|ARGS|REQUEST_BODY|XML:/* "@rx (?:get|post|head|options|connec tag:'OWASP_CRS',\ tag:'capec/1000/210/272/220/33',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.http_violation_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -80,7 +80,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/210/272/220/34',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.http_violation_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -102,7 +102,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/210/272/220/34',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.http_violation_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -137,7 +137,7 @@ SecRule REQUEST_HEADERS_NAMES|REQUEST_HEADERS "@rx [\n\r]" \ tag:'OWASP_CRS',\ tag:'capec/1000/210/272/220/273',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.http_violation_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -166,7 +166,7 @@ SecRule ARGS_NAMES "@rx [\n\r]" \ tag:'OWASP_CRS',\ tag:'capec/1000/210/272/220/33',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.http_violation_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -188,7 +188,7 @@ SecRule ARGS_GET_NAMES|ARGS_GET "@rx [\n\r]+(?:\s|location|refresh|(?:set-)?cook tag:'OWASP_CRS',\ tag:'capec/1000/210/272/220/33',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.http_violation_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -214,7 +214,7 @@ SecRule REQUEST_FILENAME "@rx [\n\r]" \ tag:'OWASP_CRS',\ tag:'capec/1000/210/272/220/34',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.http_violation_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -247,7 +247,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/136',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -280,7 +280,7 @@ SecRule REQUEST_HEADERS:Content-Type "@rx ^[^;\s,]+[;\s,].*?(?:(?:application(?: tag:'OWASP_CRS',\ tag:'capec/1000/255/153',\ tag:'PCI/12.1',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -314,7 +314,7 @@ SecRule ARGS_GET "@rx [\n\r]" \ tag:'OWASP_CRS',\ tag:'capec/1000/210/272/220/33',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.http_violation_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -350,7 +350,7 @@ SecRule REQUEST_HEADERS:Content-Type "@rx ^[^;\s,]+[;\s,].*?\b(?:(audio|image|vi tag:'OWASP_CRS',\ tag:'capec/1000/255/153',\ tag:'PCI/12.1',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -386,7 +386,7 @@ SecRule &REQUEST_HEADERS:Range "@gt 0" \ tag:'paranoia-level/3',\ tag:'OWASP_CRS',\ tag:'capec/1000/210/272/220',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl3=+%{tx.critical_anomaly_score}'" @@ -420,7 +420,7 @@ SecRule ARGS_NAMES "@rx ." \ tag:'attack-protocol',\ tag:'OWASP_CRS',\ tag:'capec/1000/152/137/15/460',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'TX.paramcounter_%{MATCHED_VAR_NAME}=+1'" SecRule TX:/paramcounter_.*/ "@gt 1" \ @@ -436,7 +436,7 @@ SecRule TX:/paramcounter_.*/ "@gt 1" \ tag:'OWASP_CRS',\ tag:'capec/1000/152/137/15/460',\ tag:'paranoia-level/3',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule MATCHED_VARS_NAMES "@rx TX:paramcounter_(.*)" \ diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-922-MULTIPART-ATTACK.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-922-MULTIPART-ATTACK.conf index 13847061de..75d553f3e7 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-922-MULTIPART-ATTACK.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-922-MULTIPART-ATTACK.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -38,7 +38,7 @@ SecRule &MULTIPART_PART_HEADERS:_charset_ "!@eq 0" \ tag:'OWASP_CRS',\ tag:'capec/1000/255/153',\ tag:'paranoia-level/1',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule ARGS:_charset_ "!@within |%{tx.allowed_request_content_type_charset}|" \ @@ -63,7 +63,7 @@ SecRule MULTIPART_PART_HEADERS "@rx ^content-type\s*+:\s*+(.*)$" \ tag:'OWASP_CRS',\ tag:'capec/272/220',\ tag:'paranoia-level/1',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule TX:1 "!@rx ^(?:(?:\*|[^\"(),\/:;<=>?![\x5c\]{}]+)\/(?:\*|[^\"(),\/:;<=>?![\x5c\]{}]+))(?:\s*+;\s*+(?:(?:charset\s*+=\s*+(?:\"?(?:iso-8859-15?|windows-1252|utf-8)\b\"?))|(?:(?:c(?:h(?:a(?:r(?:s(?:e[^t\"(),\/:;<=>?![\x5c\]{}]|[^e\"(),/:;<=>?![\x5c\]{}])|[^s\"(),/:;<=>?![\x5c\]{}])|[^r\"(),/:;<=>?![\x5c\]{}])|[^a\"(),/:;<=>?![\x5c\]{}])|[^h\"(),/:;<=>?![\x5c\]{}])|[^c\"(),/:;<=>?![\x5c\]{}])[^\"(),/:;<=>?![\x5c\]{}]*(?:)\s*+=\s*+[^(),/:;<=>?![\x5c\]{}]+)|;?))*(?:\s*+,\s*+(?:(?:\*|[^\"(),\/:;<=>?![\x5c\]{}]+)\/(?:\*|[^\"(),\/:;<=>?![\x5c\]{}]+))(?:\s*+;\s*+(?:(?:charset\s*+=\s*+(?:\"?(?:iso-8859-15?|windows-1252|utf-8)\b\"?))|(?:(?:c(?:h(?:a(?:r(?:s(?:e[^t\"(),\/:;<=>?![\x5c\]{}]|[^e\"(),/:;<=>?![\x5c\]{}])|[^s\"(),/:;<=>?![\x5c\]{}])|[^r\"(),/:;<=>?![\x5c\]{}])|[^a\"(),/:;<=>?![\x5c\]{}])|[^h\"(),/:;<=>?![\x5c\]{}])|[^c\"(),/:;<=>?![\x5c\]{}])[^\"(),/:;<=>?![\x5c\]{}]*(?:)\s*+=\s*+[^(),/:;<=>?![\x5c\]{}]+)|;?))*)*$" \ @@ -87,6 +87,29 @@ SecRule MULTIPART_PART_HEADERS "@rx content-transfer-encoding:(.*)" \ tag:'OWASP_CRS',\ tag:'capec/272/220',\ tag:'paranoia-level/1',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ + severity:'CRITICAL',\ + setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" + +# Multipart header names can't contain any characters outside of range 33 and 126, +# excluding 58 (':') which is the separator. +# RFC 2045 refers RFC 822 about the header syntax. +# Note: this is in phase:2 because these are headers that come in the body +SecRule MULTIPART_PART_HEADERS "@rx [^\x21-\x7E][\x21-\x39\x3B-\x7E]*:" \ + "id:922130,\ + phase:2,\ + block,\ + capture,\ + t:none,t:lowercase,\ + msg:'Multipart header contains characters outside of valid range',\ + logdata:'Matched Data: %{TX.0}',\ + tag:'application-multi',\ + tag:'language-multi',\ + tag:'platform-multi',\ + tag:'attack-multipart-header',\ + tag:'paranoia-level/1',\ + tag:'OWASP_CRS',\ + tag:'capec/272/220',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-930-APPLICATION-ATTACK-LFI.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-930-APPLICATION-ATTACK-LFI.conf index 986657ce96..6470285450 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-930-APPLICATION-ATTACK-LFI.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-930-APPLICATION-ATTACK-LFI.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -42,7 +42,7 @@ SecRule REQUEST_URI_RAW|ARGS|REQUEST_HEADERS|!REQUEST_HEADERS:Referer|XML:/* "@r tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/255/153/126',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}',\ setvar:'tx.lfi_score=+%{tx.critical_anomaly_score}'" @@ -65,7 +65,7 @@ SecRule REQUEST_URI|ARGS|REQUEST_HEADERS|!REQUEST_HEADERS:Referer|XML:/* "@rx (? tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/255/153/126',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ multiMatch,\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}',\ @@ -92,7 +92,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/255/153/126',\ tag:'PCI/6.5.4',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.lfi_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -119,7 +119,7 @@ SecRule REQUEST_FILENAME "@pmFromFile restricted-files.data" \ tag:'OWASP_CRS',\ tag:'capec/1000/255/153/126',\ tag:'PCI/6.5.4',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.lfi_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-931-APPLICATION-ATTACK-RFI.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-931-APPLICATION-ATTACK-RFI.conf index 888c8e4c39..4e819e7849 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-931-APPLICATION-ATTACK-RFI.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-931-APPLICATION-ATTACK-RFI.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -50,7 +50,7 @@ SecRule ARGS "@rx ^(?i:file|ftps?|https?):\/\/(?:\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1 tag:'OWASP_CRS',\ tag:'capec/1000/152/175/253',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rfi_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -71,7 +71,7 @@ SecRule QUERY_STRING|REQUEST_BODY "@rx (?i)(?:\binclude\s*\([^)]*|mosConfig_abso tag:'OWASP_CRS',\ tag:'capec/1000/152/175/253',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rfi_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -92,7 +92,7 @@ SecRule ARGS "@rx ^(?i:file|ftps?|https?).*?\?+$" \ tag:'OWASP_CRS',\ tag:'capec/1000/152/175/253',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rfi_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -120,7 +120,7 @@ SecRule ARGS "@rx ^(?i:file|ftps?|https?)://([^/]*).*$" \ tag:'OWASP_CRS',\ tag:'capec/1000/152/175/253',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rfi_parameter_%{MATCHED_VAR_NAME}=.%{tx.1}',\ chain" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-932-APPLICATION-ATTACK-RCE.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-932-APPLICATION-ATTACK-RCE.conf index b586045bc4..002088ad30 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-932-APPLICATION-ATTACK-RCE.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-932-APPLICATION-ATTACK-RCE.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -117,7 +117,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/88',\ tag:'PCI/6.5.2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -153,7 +153,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/88',\ tag:'PCI/6.5.2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -250,7 +250,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/88',\ tag:'PCI/6.5.2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -289,7 +289,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/88',\ tag:'PCI/6.5.2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -324,7 +324,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/88',\ tag:'PCI/6.5.2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -361,7 +361,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/88',\ tag:'PCI/6.5.2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -407,7 +407,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/88',\ tag:'PCI/6.5.2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -458,7 +458,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/88',\ tag:'PCI/6.5.2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -495,7 +495,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/88',\ tag:'PCI/6.5.2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -527,7 +527,7 @@ SecRule REQUEST_HEADERS|REQUEST_LINE "@rx ^\(\s*\)\s+{" \ tag:'capec/1000/152/248/88',\ tag:'PCI/6.5.2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -549,7 +549,7 @@ SecRule ARGS_NAMES|ARGS|FILES_NAMES "@rx ^\(\s*\)\s+{" \ tag:'capec/1000/152/248/88',\ tag:'PCI/6.5.2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -584,7 +584,7 @@ SecRule FILES|REQUEST_HEADERS:X-Filename|REQUEST_HEADERS:X_Filename|REQUEST_HEAD tag:'OWASP_CRS',\ tag:'capec/1000/152/248/88',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.lfi_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -629,7 +629,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/88',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule MATCHED_VAR "@rx /" "t:none,t:urlDecodeUni,chain" @@ -679,7 +679,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'PCI/6.5.2',\ tag:'paranoia-level/3',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl3=+%{tx.critical_anomaly_score}'" @@ -711,7 +711,7 @@ SecRule ARGS "@rx (?:/|\\\\)(?:[\?\*]+[a-z/\\\\]+|[a-z/\\\\]+[\?\*]+)" \ tag:'PCI/6.5.2',\ tag:'paranoia-level/3',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl3=+%{tx.critical_anomaly_score}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-933-APPLICATION-ATTACK-PHP.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-933-APPLICATION-ATTACK-PHP.conf index 58be88f2f7..707ed45b1f 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-933-APPLICATION-ATTACK-PHP.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-933-APPLICATION-ATTACK-PHP.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -60,7 +60,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -102,7 +102,7 @@ SecRule FILES|REQUEST_HEADERS:X-Filename|REQUEST_HEADERS:X_Filename|REQUEST_HEAD tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -126,7 +126,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule MATCHED_VARS "@pm =" \ @@ -155,7 +155,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -192,7 +192,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -221,7 +221,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -289,7 +289,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_F tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -343,7 +343,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_F tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -399,7 +399,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_H tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -455,7 +455,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_F tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -497,7 +497,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_F tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -540,7 +540,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_F tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule MATCHED_VARS "@pm (" \ @@ -595,7 +595,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/242',\ tag:'paranoia-level/3',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl3=+%{tx.critical_anomaly_score}'" @@ -641,7 +641,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_F tag:'capec/1000/152/242',\ tag:'paranoia-level/3',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl3=+%{tx.critical_anomaly_score}'" @@ -684,7 +684,7 @@ SecRule FILES|REQUEST_HEADERS:X-Filename|REQUEST_HEADERS:X_Filename|REQUEST_HEAD tag:'capec/1000/152/242',\ tag:'paranoia-level/3',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl3=+%{tx.critical_anomaly_score}'" @@ -714,7 +714,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/242',\ tag:'paranoia-level/3',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.php_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl3=+%{tx.critical_anomaly_score}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-934-APPLICATION-ATTACK-NODEJS.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-934-APPLICATION-ATTACK-NODEJS.conf index 89f495a94c..acd05520e6 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-934-APPLICATION-ATTACK-NODEJS.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-934-APPLICATION-ATTACK-NODEJS.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -63,7 +63,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ multiMatch,\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-941-APPLICATION-ATTACK-XSS.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-941-APPLICATION-ATTACK-XSS.conf index 3b2376b9ee..0a272c7520 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-941-APPLICATION-ATTACK-XSS.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-941-APPLICATION-ATTACK-XSS.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -50,7 +50,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_H tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -77,7 +77,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_F tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -103,7 +103,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_H tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -133,7 +133,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_H tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -159,7 +159,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_H tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -194,7 +194,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_H tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -219,7 +219,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_H tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -245,7 +245,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -272,7 +272,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -294,7 +294,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -316,7 +316,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -338,7 +338,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -360,7 +360,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -382,7 +382,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -404,7 +404,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -426,7 +426,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -448,7 +448,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -470,7 +470,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -492,7 +492,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -514,7 +514,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -541,7 +541,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -568,7 +568,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -610,7 +610,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/242/63',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -638,7 +638,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS|XML: tag:'OWASP_CRS',\ tag:'capec/1000/152/242/63',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -669,7 +669,7 @@ SecRule REQUEST_HEADERS:Referer "@detectXSS" \ tag:'capec/1000/152/242',\ tag:'paranoia-level/2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -695,7 +695,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_H tag:'capec/1000/152/242',\ tag:'paranoia-level/2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -778,7 +778,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|!REQUEST_COOKIES:/_pk_ref/|REQU tag:'capec/1000/152/242/63',\ tag:'PCI/6.5.1',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -799,7 +799,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|!REQUEST_COOKIES:/_pk_ref/|REQU tag:'capec/1000/152/242',\ tag:'PCI/6.5.1',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -823,7 +823,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|!REQUEST_COOKIES:/_pk_ref/|REQU tag:'capec/1000/152/242',\ tag:'PCI/6.5.1',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -856,7 +856,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/242/63',\ tag:'paranoia-level/2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.xss_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-942-APPLICATION-ATTACK-SQLI.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-942-APPLICATION-ATTACK-SQLI.conf index 53b0af6f54..79b44c58a7 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-942-APPLICATION-ATTACK-SQLI.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-942-APPLICATION-ATTACK-SQLI.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -59,7 +59,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_H tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ multiMatch,\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}',\ @@ -94,7 +94,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -120,7 +120,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -149,7 +149,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -178,7 +178,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -199,7 +199,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -220,7 +220,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -249,7 +249,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -270,7 +270,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -291,7 +291,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -320,7 +320,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -341,7 +341,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -370,7 +370,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -399,7 +399,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -439,7 +439,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -475,7 +475,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -513,7 +513,7 @@ SecRule ARGS_NAMES|ARGS|XML:/* "@rx (?:^\s*[\"'`;]+|[\"'`]+\s*$)" \ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'WARNING',\ setvar:'tx.sql_injection_score=+%{tx.warning_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.warning_anomaly_score}'" @@ -549,7 +549,7 @@ SecRule ARGS_NAMES|ARGS|XML:/* "@rx (?i:(?:(?:^|\W)in[+\s]*\([\s\d\"]+[^()]*\)|\ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -584,7 +584,7 @@ SecRule ARGS_NAMES|ARGS|XML:/* "@rx (?i:[\s'\"`()]*?\b([\d\w]+)\b[\s'\"`()]*?(?: tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ multiMatch,\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ @@ -623,7 +623,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -652,7 +652,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -684,7 +684,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -716,7 +716,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -745,7 +745,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -774,7 +774,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -803,7 +803,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -840,7 +840,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -871,7 +871,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -896,7 +896,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -930,7 +930,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -957,7 +957,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|!REQUEST_COOKIES:/_pk_ref/|REQU tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -984,7 +984,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|!REQUEST_COOKIES:/_pk_ref/|REQU tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -1014,7 +1014,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|!REQUEST_COOKIES:/_pk_ref/|REQU tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -1051,7 +1051,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|!REQUEST_COOKIES:/_pk_ref/|REQU tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -1084,7 +1084,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|!REQUEST_COOKIES:/_pk_ref/|REQU tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -1117,7 +1117,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|!REQUEST_COOKIES:/_pk_ref/|REQU tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -1158,7 +1158,7 @@ SecRule ARGS_NAMES|ARGS|XML:/* "@rx ((?:[~!@#\$%\^&\*\(\)\-\+=\{\}\[\]\|:;\"'´ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'WARNING',\ setvar:'tx.anomaly_score_pl2=+%{tx.warning_anomaly_score}',\ setvar:'tx.sql_injection_score=+%{tx.warning_anomaly_score}'" @@ -1202,7 +1202,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|!REQUEST_COOKIES:/_pk_ref/|REQU tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}'" @@ -1227,7 +1227,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|!REQUEST_COOKIES:/_pk_ref/|REQU tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -1276,7 +1276,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -1315,7 +1315,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/3',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl3=+%{tx.critical_anomaly_score}'" @@ -1339,7 +1339,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/3',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl3=+%{tx.critical_anomaly_score}'" @@ -1379,7 +1379,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|!REQUEST_COOKIES:/_pk_ref/|REQU tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/3',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'WARNING',\ setvar:'tx.anomaly_score_pl3=+%{tx.warning_anomaly_score}',\ setvar:'tx.sql_injection_score=+%{tx.warning_anomaly_score}'" @@ -1408,7 +1408,7 @@ SecRule ARGS_NAMES|ARGS|XML:/* "@rx ((?:[~!@#\$%\^&\*\(\)\-\+=\{\}\[\]\|:;\"'´ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/3',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'WARNING',\ setvar:'tx.anomaly_score_pl3=+%{tx.warning_anomaly_score}',\ setvar:'tx.sql_injection_score=+%{tx.warning_anomaly_score}'" @@ -1438,7 +1438,7 @@ SecRule ARGS "@rx \W{4}" \ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/3',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'WARNING',\ setvar:'tx.sql_injection_score=+%{tx.warning_anomaly_score}',\ setvar:'tx.anomaly_score_pl3=+%{tx.warning_anomaly_score}'" @@ -1472,7 +1472,7 @@ SecRule REQUEST_BASENAME "@detectSQLi" \ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/3',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl3=+%{tx.critical_anomaly_score}'" @@ -1522,7 +1522,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/3',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.sql_injection_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl3=+%{tx.critical_anomaly_score}'" @@ -1555,7 +1555,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|!REQUEST_COOKIES:/_pk_ref/|REQU tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/4',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'WARNING',\ setvar:'tx.anomaly_score_pl4=+%{tx.warning_anomaly_score}',\ setvar:'tx.sql_injection_score=+%{tx.warning_anomaly_score}'" @@ -1584,7 +1584,7 @@ SecRule ARGS_NAMES|ARGS|XML:/* "@rx ((?:[~!@#\$%\^&\*\(\)\-\+=\{\}\[\]\|:;\"'´ tag:'capec/1000/152/248/66',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/4',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'WARNING',\ setvar:'tx.anomaly_score_pl4=+%{tx.warning_anomaly_score}',\ setvar:'tx.sql_injection_score=+%{tx.warning_anomaly_score}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION.conf index f575d2cf4f..86559a370b 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -44,7 +44,7 @@ SecRule REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|ARGS_NAME tag:'OWASP_CRS',\ tag:'capec/1000/225/21/593/61',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.session_fixation_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -65,7 +65,7 @@ SecRule ARGS_NAMES "@rx ^(?:jsessionid|aspsessionid|asp\.net_sessionid|phpsessio tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/225/21/593/61',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule REQUEST_HEADERS:Referer "@rx ^(?:ht|f)tps?://(.*?)\/" \ @@ -92,7 +92,7 @@ SecRule ARGS_NAMES "@rx ^(?:jsessionid|aspsessionid|asp\.net_sessionid|phpsessio tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/225/21/593/61',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule &REQUEST_HEADERS:Referer "@eq 0" \ diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-944-APPLICATION-ATTACK-JAVA.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-944-APPLICATION-ATTACK-JAVA.conf index 4075e18f5f..b10f0610f1 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-944-APPLICATION-ATTACK-JAVA.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-944-APPLICATION-ATTACK-JAVA.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -47,7 +47,7 @@ SecRule ARGS|ARGS_NAMES|REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES tag:'capec/1000/152/137/6',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/1',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -81,7 +81,7 @@ SecRule ARGS|ARGS_NAMES|REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES tag:'capec/1000/152/248',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/1',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule ARGS|ARGS_NAMES|REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES_NAMES|REQUEST_BODY|REQUEST_HEADERS|XML:/*|XML://@* "@rx (?:unmarshaller|base64data|java\.)" \ @@ -107,7 +107,7 @@ SecRule ARGS|ARGS_NAMES|REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES tag:'capec/1000/152/248',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/1',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule MATCHED_VARS "@rx (?:runtime|processbuilder)" \ @@ -141,7 +141,7 @@ SecRule ARGS|ARGS_NAMES|REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES tag:'capec/1000/152/248',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/1',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.critical_anomaly_score}'" @@ -180,7 +180,7 @@ SecRule ARGS|ARGS_NAMES|REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES tag:'capec/1000/152/248',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -202,7 +202,7 @@ SecRule ARGS|ARGS_NAMES|REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES tag:'capec/1000/152/248',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -224,7 +224,7 @@ SecRule ARGS|ARGS_NAMES|REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES tag:'capec/1000/152/248',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -249,7 +249,7 @@ SecRule ARGS|ARGS_NAMES|REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES tag:'capec/1000/152/248',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/2',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.critical_anomaly_score}'" @@ -285,7 +285,7 @@ SecRule ARGS|ARGS_NAMES|REQUEST_COOKIES|!REQUEST_COOKIES:/__utm/|REQUEST_COOKIES tag:'capec/1000/152/248',\ tag:'PCI/6.5.2',\ tag:'paranoia-level/3',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.rce_score=+%{tx.critical_anomaly_score}',\ setvar:'tx.anomaly_score_pl3=+%{tx.critical_anomaly_score}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-949-BLOCKING-EVALUATION.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-949-BLOCKING-EVALUATION.conf index 9ee4a8df65..c054f61f3b 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-949-BLOCKING-EVALUATION.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/REQUEST-949-BLOCKING-EVALUATION.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -69,7 +69,7 @@ SecRule IP:REPUT_BLOCK_FLAG "@eq 1" \ tag:'language-multi',\ tag:'platform-multi',\ tag:'attack-reputation-ip',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule TX:DO_REPUT_BLOCK "@eq 1" \ @@ -89,7 +89,7 @@ SecRule TX:ANOMALY_SCORE "@ge %{tx.inbound_anomaly_score_threshold}" \ tag:'language-multi',\ tag:'platform-multi',\ tag:'attack-generic',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ setvar:'tx.inbound_anomaly_score=%{tx.anomaly_score}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-950-DATA-LEAKAGES.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-950-DATA-LEAKAGES.conf index 0b6f832cc5..385047b0e8 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-950-DATA-LEAKAGES.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-950-DATA-LEAKAGES.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -45,7 +45,7 @@ SecRule RESPONSE_BODY "@rx (?:<(?:TITLE>Index of.*?Index of.*?Inde tag:'capec/1000/118/116/54/127',\ tag:'PCI/6.5.6',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'ERROR',\ setvar:'tx.outbound_anomaly_score_pl1=+%{tx.error_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.error_anomaly_score}'" @@ -79,7 +79,7 @@ SecRule RESPONSE_BODY "@rx ^#\!\s?/" \ tag:'capec/1000/118/116',\ tag:'PCI/6.5.6',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'ERROR',\ setvar:'tx.outbound_anomaly_score_pl1=+%{tx.error_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.error_anomaly_score}'" @@ -111,7 +111,7 @@ SecRule RESPONSE_STATUS "@rx ^5\d{2}$" \ tag:'OWASP_CRS',\ tag:'capec/1000/152',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'ERROR',\ setvar:'tx.outbound_anomaly_score_pl2=+%{tx.error_anomaly_score}',\ setvar:'tx.anomaly_score_pl2=+%{tx.error_anomaly_score}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-951-DATA-LEAKAGES-SQL.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-951-DATA-LEAKAGES-SQL.conf index 761a27d59c..7403d8f5f9 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-951-DATA-LEAKAGES-SQL.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-951-DATA-LEAKAGES-SQL.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -38,7 +38,7 @@ SecRule RESPONSE_BODY "@pmFromFile sql-errors.data" \ tag:'attack-disclosure',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.sql_error_match=1'" SecRule TX:sql_error_match "@eq 1" \ @@ -56,7 +56,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i:JET Database Engine|Access Database Engine|\[Microsoft\]\[ODBC Microsoft Access Driver\])" \ @@ -81,7 +81,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i:ORA-[0-9][0-9][0-9][0-9]|java\.sql\.SQLException|Oracle error|Oracle.*Driver|Warning.*oci_.*|Warning.*ora_.*)" \ @@ -106,7 +106,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i:DB2 SQL error:|\[IBM\]\[CLI Driver\]\[DB2/6000\]|CLI Driver.*DB2|DB2 SQL error|db2_\w+\()" \ @@ -131,7 +131,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i:\[DM_QUERY_E_SYNTAX\]|has occurred in the vicinity of:)" \ @@ -156,7 +156,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i)Dynamic SQL Error" \ @@ -182,7 +182,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i)Exception (?:condition )?\d+\. Transaction rollback\." \ @@ -207,7 +207,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i)org\.hsqldb\.jdbc" \ @@ -232,7 +232,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i:An illegal character has been found in the statement|com\.informix\.jdbc|Exception.*Informix)" \ @@ -258,7 +258,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i:Warning.*ingres_|Ingres SQLSTATE|Ingres\W.*Driver)" \ @@ -284,7 +284,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i:Warning: ibase_|Unexpected end of command in statement)" \ @@ -309,7 +309,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i:SQL error.*POS[0-9]+.*|Warning.*maxdb.*)" \ @@ -334,7 +334,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i)(?:System\.Data\.OleDb\.OleDbException|\[Microsoft\]\[ODBC SQL Server Driver\]|\[Macromedia\]\[SQLServer JDBC Driver\]|\[SqlException|System\.Data\.SqlClient\.SqlException|Unclosed quotation mark after the character string|'80040e14'|mssql_query\(\)|Microsoft OLE DB Provider for ODBC Drivers|Microsoft OLE DB Provider for SQL Server|Incorrect syntax near|Sintaxis incorrecta cerca de|Syntax error in string in query expression|Procedure or function .* expects parameter|Unclosed quotation mark before the character string|Syntax error .* in query expression|Data type mismatch in criteria expression\.|ADODB\.Field \(0x800A0BCD\)|the used select statements have different number of columns|OLE DB.*SQL Server|Warning.*mssql_.*|Driver.*SQL[ _-]*Server|SQL Server.*Driver|SQL Server.*[0-9a-fA-F]{8}|Exception.*\WSystem\.Data\.SqlClient\.)" \ @@ -359,7 +359,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i)(?:supplied argument is not a valid MySQL|Column count doesn't match value count at row|mysql_fetch_array\(\)|on MySQL result index|You have an error in your SQL syntax;|You have an error in your SQL syntax near|MySQL server version for the right syntax to use|\[MySQL\]\[ODBC|Column count doesn't match|Table '[^']+' doesn't exist|SQL syntax.*MySQL|Warning.*mysql_.*|valid MySQL result|MySqlClient\.)" \ @@ -384,7 +384,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i:PostgreSQL query failed:|pg_query\(\) \[:|pg_exec\(\) \[:|PostgreSQL.*ERROR|Warning.*pg_.*|valid PostgreSQL result|Npgsql\.|PG::[a-zA-Z]*Error|Supplied argument is not a valid PostgreSQL .*? resource|Unable to connect to PostgreSQL server)" \ @@ -409,7 +409,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i)(?:Warning.*sqlite_.*|Warning.*SQLite3::|SQLite/JDBCDriver|SQLite\.Exception|System\.Data\.SQLite\.SQLiteException)" \ @@ -434,7 +434,7 @@ SecRule TX:sql_error_match "@eq 1" \ tag:'paranoia-level/1',\ tag:'OWASP_CRS',\ tag:'capec/1000/118/116/54',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'CRITICAL',\ chain" SecRule RESPONSE_BODY "@rx (?i)(?:Sybase message:|Warning.*sybase.*|Sybase.*Server message.*)" \ diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-952-DATA-LEAKAGES-JAVA.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-952-DATA-LEAKAGES-JAVA.conf index 074ad67515..7e47c38cfd 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-952-DATA-LEAKAGES-JAVA.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-952-DATA-LEAKAGES-JAVA.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -40,7 +40,7 @@ SecRule RESPONSE_BODY "@pmFromFile java-code-leakages.data" \ tag:'capec/1000/118/116',\ tag:'PCI/6.5.6',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'ERROR',\ setvar:'tx.outbound_anomaly_score_pl1=+%{tx.error_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.error_anomaly_score}'" @@ -67,7 +67,7 @@ SecRule RESPONSE_BODY "@pmFromFile java-errors.data" \ tag:'capec/1000/118/116',\ tag:'PCI/6.5.6',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'ERROR',\ setvar:'tx.outbound_anomaly_score_pl1=+%{tx.error_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.error_anomaly_score}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-953-DATA-LEAKAGES-PHP.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-953-DATA-LEAKAGES-PHP.conf index 6f51f433ed..6ba20e5b83 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-953-DATA-LEAKAGES-PHP.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-953-DATA-LEAKAGES-PHP.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -40,7 +40,7 @@ SecRule RESPONSE_BODY "@pmFromFile php-errors.data" \ tag:'capec/1000/118/116',\ tag:'PCI/6.5.6',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'ERROR',\ setvar:'tx.outbound_anomaly_score_pl1=+%{tx.error_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.error_anomaly_score}'" @@ -67,7 +67,7 @@ SecRule RESPONSE_BODY "@rx (?:\b(?:f(?:tp_(?:nb_)?f?(?:ge|pu)t|get(?:s?s|c)|scan tag:'capec/1000/118/116',\ tag:'PCI/6.5.6',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'ERROR',\ setvar:'tx.outbound_anomaly_score_pl1=+%{tx.error_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.error_anomaly_score}'" @@ -97,7 +97,7 @@ SecRule RESPONSE_BODY "@rx <\?(?!xml)" \ tag:'OWASP_CRS',\ tag:'capec/1000/118/116',\ tag:'PCI/6.5.6',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'ERROR',\ chain" SecRule RESPONSE_BODY "!@rx (?:\x1f\x8b\x08|\b(?:(?:i(?:nterplay|hdr|d3)|m(?:ovi|thd)|r(?:ar!|iff)|(?:ex|jf)if|f(?:lv|ws)|varg|cws)\b|gif)|B(?:%pdf|\.ra)\b|^wOF[F2])" \ diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-954-DATA-LEAKAGES-IIS.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-954-DATA-LEAKAGES-IIS.conf index 5f062f0da8..4118d1133b 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-954-DATA-LEAKAGES-IIS.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-954-DATA-LEAKAGES-IIS.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -38,7 +38,7 @@ SecRule RESPONSE_BODY "@rx [a-z]:\\\\inetpub\b" \ tag:'OWASP_CRS',\ tag:'capec/1000/118/116',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'ERROR',\ setvar:'tx.outbound_anomaly_score_pl1=+%{tx.error_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.error_anomaly_score}'" @@ -61,7 +61,7 @@ SecRule RESPONSE_BODY "@rx (?:Microsoft OLE DB Provider for SQL Server(?:<\/font tag:'OWASP_CRS',\ tag:'capec/1000/118/116',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'ERROR',\ setvar:'tx.outbound_anomaly_score_pl1=+%{tx.error_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.error_anomaly_score}'" @@ -87,7 +87,7 @@ SecRule RESPONSE_BODY "@rx (?:\b(?:A(?:DODB\.Command\b.{0,100}?\b(?:Application tag:'capec/1000/118/116',\ tag:'PCI/6.5.6',\ ctl:auditLogParts=+E,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'ERROR',\ setvar:'tx.outbound_anomaly_score_pl1=+%{tx.error_anomaly_score}',\ setvar:'tx.anomaly_score_pl1=+%{tx.error_anomaly_score}'" @@ -110,7 +110,7 @@ SecRule RESPONSE_STATUS "!@rx ^404$" \ tag:'OWASP_CRS',\ tag:'capec/1000/118/116',\ tag:'PCI/6.5.6',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'ERROR',\ chain" SecRule RESPONSE_BODY "@rx \bServer Error in.{0,50}?\bApplication\b" \ diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-959-BLOCKING-EVALUATION.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-959-BLOCKING-EVALUATION.conf index 689cc94e37..4dbcc16544 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-959-BLOCKING-EVALUATION.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-959-BLOCKING-EVALUATION.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -73,7 +73,7 @@ SecRule TX:OUTBOUND_ANOMALY_SCORE "@ge %{tx.outbound_anomaly_score_threshold}" \ t:none,\ msg:'Outbound Anomaly Score Exceeded (Total Score: %{TX.OUTBOUND_ANOMALY_SCORE})',\ tag:'anomaly-evaluation',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.anomaly_score=+%{tx.outbound_anomaly_score}'" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-980-CORRELATION.conf b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-980-CORRELATION.conf index a65c76547e..b1caf8299c 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-980-CORRELATION.conf +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-980-CORRELATION.conf @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 @@ -30,7 +30,7 @@ SecRule &TX:'/LEAKAGE\\\/ERRORS/' "@ge 1" \ log,\ msg:'Correlated Successful Attack Identified: (Total Score: %{tx.anomaly_score}) Inbound Attack (Inbound Anomaly Score: %{TX.INBOUND_ANOMALY_SCORE}) + Outbound Data Leakage (Outbound Anomaly Score: %{TX.OUTBOUND_ANOMALY_SCORE})',\ tag:'event-correlation',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'EMERGENCY',\ chain,\ skipAfter:END-CORRELATION" @@ -47,7 +47,7 @@ SecRule &TX:'/AVAILABILITY\\\/APP_NOT_AVAIL/' "@ge 1" \ log,\ msg:'Correlated Attack Attempt Identified: (Total Score: %{tx.anomaly_score}) Inbound Attack (Inbound Anomaly Score: %{TX.INBOUND_ANOMALY_SCORE}) + Outbound Application Error (Outbound Anomaly Score: %{TX.OUTBOUND_ANOMALY_SCORE})',\ tag:'event-correlation',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ severity:'ALERT',\ chain,\ skipAfter:END-CORRELATION" @@ -61,7 +61,7 @@ SecAction \ t:none,\ nolog,\ noauditlog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.executing_anomaly_score=%{tx.anomaly_score_pl1}',\ setvar:'tx.executing_anomaly_score=+%{tx.anomaly_score_pl2}',\ setvar:'tx.executing_anomaly_score=+%{tx.anomaly_score_pl3}',\ @@ -76,7 +76,7 @@ SecRule TX:INBOUND_ANOMALY_SCORE "@lt %{tx.inbound_anomaly_score_threshold}" \ noauditlog,\ msg:'Inbound Anomaly Score (Total Inbound Score: %{TX.INBOUND_ANOMALY_SCORE} - SQLI=%{tx.sql_injection_score},XSS=%{tx.xss_score},RFI=%{tx.rfi_score},LFI=%{tx.lfi_score},RCE=%{tx.rce_score},PHPI=%{tx.php_injection_score},HTTP=%{tx.http_violation_score},SESS=%{tx.session_fixation_score}): individual paranoia level scores: %{TX.ANOMALY_SCORE_PL1}, %{TX.ANOMALY_SCORE_PL2}, %{TX.ANOMALY_SCORE_PL3}, %{TX.ANOMALY_SCORE_PL4}',\ tag:'event-correlation',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule TX:MONITOR_ANOMALY_SCORE "@gt 1" @@ -89,7 +89,7 @@ SecRule TX:INBOUND_ANOMALY_SCORE "@ge %{tx.inbound_anomaly_score_threshold}" \ noauditlog,\ msg:'Inbound Anomaly Score Exceeded (Total Inbound Score: %{TX.INBOUND_ANOMALY_SCORE} - SQLI=%{tx.sql_injection_score},XSS=%{tx.xss_score},RFI=%{tx.rfi_score},LFI=%{tx.lfi_score},RCE=%{tx.rce_score},PHPI=%{tx.php_injection_score},HTTP=%{tx.http_violation_score},SESS=%{tx.session_fixation_score}): individual paranoia level scores: %{TX.ANOMALY_SCORE_PL1}, %{TX.ANOMALY_SCORE_PL2}, %{TX.ANOMALY_SCORE_PL3}, %{TX.ANOMALY_SCORE_PL4}',\ tag:'event-correlation',\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" SecRule TX:OUTBOUND_ANOMALY_SCORE "@ge %{tx.outbound_anomaly_score_threshold}" \ "id:980140,\ @@ -100,7 +100,7 @@ SecRule TX:OUTBOUND_ANOMALY_SCORE "@ge %{tx.outbound_anomaly_score_threshold}" \ noauditlog,\ msg:'Outbound Anomaly Score Exceeded (score %{TX.OUTBOUND_ANOMALY_SCORE}): individual paranoia level scores: %{TX.OUTBOUND_ANOMALY_SCORE_PL1}, %{TX.OUTBOUND_ANOMALY_SCORE_PL2}, %{TX.OUTBOUND_ANOMALY_SCORE_PL3}, %{TX.OUTBOUND_ANOMALY_SCORE_PL4}',\ tag:'event-correlation',\ - ver:'OWASP_CRS/3.3.5'" + ver:'OWASP_CRS/3.3.7'" # Creating a total sum of all triggered outbound rules, including the ones only being monitored SecAction \ @@ -110,7 +110,7 @@ SecAction \ t:none,\ nolog,\ noauditlog,\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ setvar:'tx.executing_anomaly_score=%{tx.outbound_anomaly_score_pl1}',\ setvar:'tx.executing_anomaly_score=+%{tx.outbound_anomaly_score_pl2}',\ setvar:'tx.executing_anomaly_score=+%{tx.outbound_anomaly_score_pl3}',\ @@ -125,7 +125,7 @@ SecRule TX:OUTBOUND_ANOMALY_SCORE "@lt %{tx.outbound_anomaly_score_threshold}" \ noauditlog,\ msg:'Outbound Anomaly Score (Total Outbound Score: %{TX.OUTBOUND_ANOMALY_SCORE}): individual paranoia level scores: %{TX.OUTBOUND_ANOMALY_SCORE_PL1}, %{TX.OUTBOUND_ANOMALY_SCORE_PL2}, %{TX.OUTBOUND_ANOMALY_SCORE_PL3}, %{TX.OUTBOUND_ANOMALY_SCORE_PL4}',\ tag:'event-correlation',\ - ver:'OWASP_CRS/3.3.5',\ + ver:'OWASP_CRS/3.3.7',\ chain" SecRule TX:MONITOR_ANOMALY_SCORE "@gt 1" diff --git a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf.example b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf.example index fdb162d08e..d079677e74 100644 --- a/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf.example +++ b/src/common/core/modsecurity/files/coreruleset-v3/rules/RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf.example @@ -1,7 +1,7 @@ # ------------------------------------------------------------------------ -# OWASP ModSecurity Core Rule Set ver.3.3.5 +# OWASP ModSecurity Core Rule Set ver.3.3.7 # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved. -# Copyright (c) 2021-2023 Core Rule Set project. All rights reserved. +# Copyright (c) 2021-2024 Core Rule Set project. All rights reserved. # # The OWASP ModSecurity Core Rule Set is distributed under # Apache Software License (ASL) version 2 diff --git a/src/common/core/modsecurity/files/coreruleset-v4/.editorconfig b/src/common/core/modsecurity/files/coreruleset-v4/.editorconfig index 037ae5e380..42cf352b86 100644 --- a/src/common/core/modsecurity/files/coreruleset-v4/.editorconfig +++ b/src/common/core/modsecurity/files/coreruleset-v4/.editorconfig @@ -21,4 +21,3 @@ indent_size = 4 [tests/regression/tests/**/*.yaml] indent_style = space indent_size = 2 - diff --git a/src/common/core/modsecurity/files/coreruleset-v4/.github/ISSUE_TEMPLATE/04_feature.md b/src/common/core/modsecurity/files/coreruleset-v4/.github/ISSUE_TEMPLATE/04_feature.md index 04939383a0..00aa211d94 100644 --- a/src/common/core/modsecurity/files/coreruleset-v4/.github/ISSUE_TEMPLATE/04_feature.md +++ b/src/common/core/modsecurity/files/coreruleset-v4/.github/ISSUE_TEMPLATE/04_feature.md @@ -5,7 +5,7 @@ title: '' labels: ':+1: Feature Request' assignees: '' --- -