Nginx:如何过滤具有特定查询参数值的请求?
Ningx : How to filter request with a particular query parameter value?
为了确保我的 Wordpress 网站始终受到攻击,我尝试对所有尝试上传 wp-config.php 的请求进行过滤器(即 return 404)。
请求是:
GET /wp-content/plugins/recent-backups/download-file.php?file_link=../../../wp-config.php
GET /wp-content/themes/parallelus-mingle/framework/utilities/download/getfile.php?file=../../../../../../wp-config.php
GET /wp-content/plugins/imdb-widget/pic.php?url=../../../wp-config.php
所以我想 return 404 到每个请求参数中有 wp-config.php 的请求。
你觉得可能吗?
提前致谢
您可以针对包括查询字符串的整个 URI 测试 $request_uri
,或者针对整个查询字符串测试 $args
(也称为 $query_string
)。
server
块顶部附近的 if
语句应筛选出您要禁止的所有请求。
例如:
if ($request_uri ~* wp-config\.php) { return 404; }
参见 this caution 关于 if
的使用。
为了确保我的 Wordpress 网站始终受到攻击,我尝试对所有尝试上传 wp-config.php 的请求进行过滤器(即 return 404)。 请求是:
GET /wp-content/plugins/recent-backups/download-file.php?file_link=../../../wp-config.php
GET /wp-content/themes/parallelus-mingle/framework/utilities/download/getfile.php?file=../../../../../../wp-config.php
GET /wp-content/plugins/imdb-widget/pic.php?url=../../../wp-config.php
所以我想 return 404 到每个请求参数中有 wp-config.php 的请求。 你觉得可能吗?
提前致谢
您可以针对包括查询字符串的整个 URI 测试 $request_uri
,或者针对整个查询字符串测试 $args
(也称为 $query_string
)。
server
块顶部附近的 if
语句应筛选出您要禁止的所有请求。
例如:
if ($request_uri ~* wp-config\.php) { return 404; }
参见 this caution 关于 if
的使用。