You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/USER_GUIDE.md
+43-2Lines changed: 43 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,6 +11,7 @@
11
11
-[Prerequisites](#prerequisites)
12
12
-[Usage](#usage)
13
13
-[Features](#features)
14
+
-[Understanding the limitations of the bouncer](#understanding-the-limitations-of-the-bouncer)
14
15
-[Configurations](#configurations)
15
16
-[General settings](#general-settings)
16
17
-[Theme customization](#theme-customization)
@@ -32,8 +33,11 @@
32
33
33
34
## Description
34
35
35
-
The `CrowdSec Bouncer` plugin for WordPress has been designed to protect WordPress websites from all kinds of
36
-
attacks by using [CrowdSec](https://www.crowdsec.net/) technology.
36
+
The `CrowdSec Bouncer` plugin for WordPress has been designed to protect WordPress websites from various malicious activities
37
+
by using [CrowdSec](https://www.crowdsec.net/) technology.
38
+
39
+
**N.B.:**
40
+
it’s important to understand the scope and limitations of this bouncer, as described in the [Understanding the limitations of the bouncer](#understanding-the-limitations-of-the-bouncer) section.
37
41
38
42
## Prerequisites
39
43
@@ -51,6 +55,7 @@ Please note that first and foremost CrowdSec must be installed on a server that
51
55
When a user is suspected by CrowdSec to be malevolent, this bouncer will either send him/her a captcha to resolve or
52
56
simply a page notifying that access is denied. If the user is considered as a clean user, he will access the page as normal.
53
57
58
+
54
59
By default, the ban wall is displayed as below:
55
60
56
61

@@ -63,6 +68,42 @@ Please note that it is possible to customize all the colors of these pages in a
63
68
64
69
On the other hand, all texts are also fully customizable. This will allow you, for example, to present translated pages in your users’ language.
65
70
71
+
#### Understanding the limitations of the bouncer
72
+
73
+
While this plugin provides effective protection for most scenarios by intercepting and bouncing web requests that go through the [WordPress loading process](https://medium.com/@dendeffe/wordpress-loading-sequence-a-guided-tour-e077c7dbd119), there are inherent limitations to this approach. These limitations can create potential gaps in coverage, which you should be aware of:
74
+
75
+
1. Requests to PHP files outside of the WordPress Core loading process
76
+
77
+
Since this plugin is loaded as part of the WordPress core process, it will not attempt to retrieve or apply a remediation if a custom public PHP script is accessed directly.
78
+
79
+
To ensure all PHP scripts are covered, consider enabling the [auto_prepend_file mode](#auto-prepend-file-mode).
80
+
81
+
82
+
2. Requests to Non-PHP Files (e.g., .env or other static files)
83
+
84
+
Requests for non-PHP files, such as `.env` or other static files, are not handled by this plugin.
85
+
As this limitation is tied to the nature of PHP itself, you may need to implement additional server-level protections (e.g., strict file permissions or blocking access to sensitive files through server configuration) to secure such files.
86
+
87
+
For example, you can deny access to hidden files, using the Nginx directive
88
+
```nginx
89
+
location ~ /\. {
90
+
deny all;
91
+
}
92
+
```
93
+
94
+
or the Apache one:
95
+
96
+
```htaccess
97
+
<FilesMatch "^\.">
98
+
Require all denied
99
+
</FilesMatch>
100
+
101
+
```
102
+
103
+
104
+
105
+
By understanding these limitations, you can take additional steps to secure your site comprehensively and complement the protection offered by the `CrowdSec Bouncer` plugin.
106
+
66
107
### Configurations
67
108
68
109
This plugin comes with configurations that you will find under `CrowdSec` admin section.
0 commit comments