Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
nodejs-阻止php脚本攻击尝试_Php_Node.js_Exploit - Fatal编程技术网

nodejs-阻止php脚本攻击尝试

nodejs-阻止php脚本攻击尝试,php,node.js,exploit,Php,Node.js,Exploit,我有很多php漏洞文件的请求,希望“处理”它们 GET //phpMyAdmin/scripts/setup.php 200 42.452 ms - 3703 GET //phpmyadmin/scripts/setup.php 200 43.431 ms - 3703 GET //pma/scripts/setup.php 200 47.159 ms - 3703 GET //myadmin/scripts/setup.php 200 44.524 ms - 3703 GET //MyAdmi

我有很多php漏洞文件的请求,希望“处理”它们

GET //phpMyAdmin/scripts/setup.php 200 42.452 ms - 3703
GET //phpmyadmin/scripts/setup.php 200 43.431 ms - 3703
GET //pma/scripts/setup.php 200 47.159 ms - 3703
GET //myadmin/scripts/setup.php 200 44.524 ms - 3703
GET //MyAdmin/scripts/setup.php 200 63.237 ms - 3703
GET //scripts/setup.php 200 75.063 ms - 3703
GET //admin/scripts/setup.php 200 43.158 ms - 3703
GET //db/scripts/setup.php 200 55.091 ms - 3703
GET //myadmin/scripts/setup.php 200 39.229 ms - 3703
GET //mysql/scripts/setup.php 200 38.401 ms - 3703
GET //mysqladmin/scripts/setup.php 200 41.768 ms - 3703
GET //phpadmin/scripts/setup.php 200 46.766 ms - 3703
GET //pma/scripts/setup.php 200 40.464 ms - 3703
GET //web/scripts/setup.php 200 42.858 ms - 3703
GET //blog/phpmyadmin/scripts/setup.php 200 45.144 ms - 3703
因此,我希望在收到此类请求时关闭连接,以便请求者认为服务器不存在,不再重试:

  app.use(function(req, res, next){
    if(req.originalUrl.indexOf('.php') !== -1) res.set("Connection", "close");
    else next();  
  })

这是处理此问题的最佳方法吗?

最好返回404。机器人很可能不会继续尝试

app.use(function(req, res, next){
    if(req.originalUrl.indexOf('.php') !== -1) {
        res.status(404).send('Not found');
    }
    else {
        next();
    }
})

如果你看到同一个IP地址反复攻击你,假设你在Linux机器上,你可能会考虑手动添加IPS到/ETC/Hoest.St否认,这会在到达你的节点服务器之前阻止它们。为什么这很重要?这样请求者就认为服务器根本不存在,不会再试一次。设置304个重定向到?对于giggls。@曲轴:为什么要用200状态码发回响应?只要用404回应,他们就会离开。扫描是自动的,可以在web上抓取未配置的PHP web应用程序,因此不会专门针对您。