Skip to content

Commit 5b48fbb

Browse files
Merge pull request #2896 from bunkerity/dev
Fix BunkerWeb build with 386 architecture
2 parents 7bdc200 + 37876f6 commit 5b48fbb

24 files changed

Lines changed: 2878 additions & 17 deletions

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,5 @@ src/ui/templates
2020
src/ui/builder
2121
src/ui/client/builder/*.json
2222
src/ui/client/builder/*.txt
23+
24+
sync-fork.sh

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
- [BUGFIX] Ensure HTTP/3 works with the HTTP3 plugin by adding conditional reuseport to QUIC listen directives on the default HTTPS server.
99
- [FEATURE] Start monitoring `405` and `400` http status codes in the requests to be able to see them in the reports page.
1010
- [FEATURE] Refactored `Auth Basic` authentication implementation to enhance security and maintainability by switching password hashing to bcrypt.
11+
- [FEATURE] Implement content type restrictions and validation in HTTP requests via the new `ALLOWED_CONTENT_TYPES` setting in the `Miscellaneous` plugin (default: `application/x-www-form-urlencoded multipart/form-data text/xml application/xml application/soap+xml application/json application/reports+json application/csp-report`).
1112
- [UI] Update DataTable initialization to automatically enable state saving for improved user experience.
1213
- [LINUX] Support RHEL 9.7 instead of 9.6
1314
- [LINUX] Support RHEL 10.1 instead of 10.0

docs/de/features.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3303,6 +3303,37 @@ Ob Sie HTTP-Methoden einschränken, Anforderungsgrößen verwalten, das Datei-Ca
33033303
- **Überprüfen Sie regelmäßig die erlaubten Methoden:** Überprüfen Sie die `ALLOWED_METHODS`-Einstellung regelmäßig, um sicherzustellen, dass sie den aktuellen Anforderungen Ihrer Anwendung entspricht.
33043304
- **Testen Sie gründlich vor der Bereitstellung:** Änderungen an den Einschränkungen von HTTP-Methoden können die Anwendungsfunktionalität beeinträchtigen. Validieren Sie Ihre Konfiguration in einer Staging-Umgebung, bevor Sie sie in der Produktion anwenden.
33053305

3306+
=== "Inhaltstypen"
3307+
3308+
**Steuerung der Inhaltstypen**
3309+
3310+
Die Beschränkung der Inhaltstypen auf nur diejenigen, die von Ihrer Anwendung benötigt werden, ist eine wichtige Sicherheitsmaßnahme, die hilft, Ausnutzung durch unerwartete Inhaltstypen zu verhindern. Indem Sie explizit zulässige Inhaltstypen definieren, können Sie das Risiko von Angriffen minimieren, die auf unerwarteten oder bösartigen Content-Type-Headern beruhen.
3311+
3312+
Diese Funktion wird mit der Einstellung `ALLOWED_CONTENT_TYPES` konfiguriert, wobei die Inhaltstypen aufgelistet und durch Leerzeichen getrennt sind (Standard: `application/x-www-form-urlencoded multipart/form-data text/xml application/xml application/soap+xml application/json application/reports+json application/csp-report`). Wenn ein Client eine Anfrage mit einem nicht aufgelisteten Inhaltstyp sendet, antwortet der Server mit einem **415 - Unsupported Media Type**-Status.
3313+
3314+
Der Standardsatz von Inhaltstypen deckt gängige Anforderungen von Webanwendungen ab, einschließlich Formularübermittlungen, Datei-Uploads, XML/SOAP-Anfragen und JSON-APIs.
3315+
3316+
!!! success "Sicherheitsvorteile"
3317+
- Verhindert Ausnutzung durch unerwartete oder bösartige Inhaltstypen
3318+
- Reduziert die Angriffsfläche durch Ablehnung ungewöhnlicher Inhaltstypen
3319+
- Blockiert Angriffe durch Content-Type-Manipulation
3320+
- Bietet Defense-in-Depth zusammen mit ModSecurity-Regeln
3321+
3322+
| Einstellung | Standard | Kontext | Mehrfach | Beschreibung |
3323+
| ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------- | -------- | ------------------------------------------------------------------------------- |
3324+
| `ALLOWED_CONTENT_TYPES` | `application/x-www-form-urlencoded multipart/form-data text/xml application/xml application/soap+xml application/json application/reports+json application/csp-report` | multisite | nein | **Inhaltstypen:** Liste der erlaubten Inhaltstypen, getrennt durch Leerzeichen. |
3325+
3326+
!!! info "Content-Type-Prüfung"
3327+
- Die Content-Type-Prüfung gilt nur, wenn ein `Content-Type`-Header in der Anfrage vorhanden ist
3328+
- Der Basis-Inhaltstyp wird extrahiert (z.B. `application/json` aus `application/json; charset=utf-8`)
3329+
- GET- und HEAD-Anfragen enthalten normalerweise keinen Content-Type-Header und unterliegen daher nicht dieser Prüfung
3330+
3331+
!!! danger "Sicherheitsüberlegungen"
3332+
- **Überprüfen Sie die Anforderungen Ihrer Anwendung:** Stellen Sie sicher, dass die erlaubten Inhaltstypen den tatsächlichen Anforderungen Ihrer Anwendung entsprechen
3333+
- **Seien Sie vorsichtig mit ungewöhnlichen Typen:** Fügen Sie nur Inhaltstypen hinzu, die tatsächlich von Ihrer Anwendung benötigt werden
3334+
- **Testen Sie gründlich vor der Bereitstellung:** Änderungen an den Content-Type-Beschränkungen können die Anwendungsfunktionalität beeinträchtigen. Validieren Sie Ihre Konfiguration in einer Staging-Umgebung
3335+
- **Berücksichtigen Sie die ModSecurity-Integration:** Diese Prüfung arbeitet zusammen mit ModSecurity-Regeln für eine umfassende Content-Type-Validierung
3336+
33063337
=== "Größenbeschränkungen für Anfragen"
33073338

33083339
**Größenbeschränkungen für Anfragen**
@@ -3465,6 +3496,20 @@ Ob Sie HTTP-Methoden einschränken, Anforderungsgrößen verwalten, das Datei-Ca
34653496
ALLOWED_METHODS: "GET|POST|PUT|DELETE"
34663497
```
34673498

3499+
=== "Inhaltstypen"
3500+
3501+
Beispielkonfiguration zur Beschränkung der Inhaltstypen nur auf JSON für eine API:
3502+
3503+
```yaml
3504+
ALLOWED_CONTENT_TYPES: "application/json"
3505+
```
3506+
3507+
Beispielkonfiguration für eine Standard-Webanwendung mit Datei-Uploads:
3508+
3509+
```yaml
3510+
ALLOWED_CONTENT_TYPES: "application/x-www-form-urlencoded multipart/form-data application/json"
3511+
```
3512+
34683513
=== "Größenbeschränkungen für Anfragen"
34693514

34703515
Beispielkonfiguration zur Begrenzung der maximalen Größe des Anforderungskörpers:

0 commit comments

Comments
 (0)