Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.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
Php 阻止脚本注入_Php - Fatal编程技术网

Php 阻止脚本注入

Php 阻止脚本注入,php,Php,我的网站似乎受到了一系列攻击。所以我把这段代码放在一起,阻止并重定向试图攻击FBI网站的黑客 通过查看我的服务器日志,我添加了很多内容来捕获字符并在重定向后杀死php 我应该包括哪些其他类型的项目?我不是一个黑客,所以我不是100%确定这是否会捕获所有内容,但应该捕获任何已经尝试过的内容。我相信名单可能会很长,但如果我能阻止最常见或最危险的情况,那将非常有帮助 还有,也许有更简洁的方法来写这个 $uri = $_SERVER['REQUEST_URI']; if( strpos($uri, '

我的网站似乎受到了一系列攻击。所以我把这段代码放在一起,阻止并重定向试图攻击FBI网站的黑客

通过查看我的服务器日志,我添加了很多内容来捕获字符并在重定向后杀死php

我应该包括哪些其他类型的项目?我不是一个黑客,所以我不是100%确定这是否会捕获所有内容,但应该捕获任何已经尝试过的内容。我相信名单可能会很长,但如果我能阻止最常见或最危险的情况,那将非常有帮助

还有,也许有更简洁的方法来写这个

$uri = $_SERVER['REQUEST_URI'];

if( strpos($uri, '[') || strpos($uri, ']') || strpos($uri, '%3C') || strpos($uri, '%3E') || strpos($uri, '&&') || strpos($uri, '||') || strpos($uri, '$') || strpos($uri, ';') || strpos($uri, '|') || strpos($uri, '{') || strpos($uri, '}') || strpos($uri, '(') || strpos($uri, ')')  || strpos($uri, '|') || strpos($uri, '{') || strpos($uri, '}') || strpos($uri, '--')  || strpos($uri, 'hex')  || strpos($uri, 'unhex') || strpos($uri, 'select') !== false ){
$moveit = 'http://'.$_SERVER['HTTP_HOST']. '/errors/oh_no.php';
header("Location: $moveit");
//to test comment out the above 2 lines and un comment the echo below since the oh_no.php file is not available to you.
//echo 'Someone tried to hack you';
die();
}
测试。。。键入您的url并添加一个?还有一个令人讨厌的角色。。。即。。。
www.yourdomain.com?除非您评估URL参数,否则您通常应该不会受到注入攻击。你为什么认为你需要这样消毒?我太担心了也许。。。我在日志中看到了很多这样的尝试。到目前为止还没有造成任何损害。。。。除了我因为测试这个脚本而被列为Greylist之外,哈哈。如果没有其他事情,也许会通过重定向到FBI来吓坏一次企图攻击,也许会让这个停止。:)这些攻击是由机器人执行的,而不是网络浏览器中的用户。他们永远不会看到你将他们重定向到的站点。机器人?我追踪到一家名为ProofPoint的公司。他们在亚马逊上主持节目。当亚马逊就这项活动联系他们时,他们的反应是,他们这样做是为了检查网站是否“活跃”。那又怎样,他们试图破坏一个网站,看看它是否是活的?这和未经允许进行信用检查的公司试图给你一张未经请求的信用卡一样糟糕。对我来说,这是一种反击的方式,可能毫无意义。这让我觉得我在尝试。所以基本上你是说这是毫无意义的。或者这已经足够好了?关键是像这样的攻击是自动化的,没有人在web浏览器中键入URL并查看结果。因此,当他们被重新定向到FBI时,他们不会“发疯”——他们可能会忽略重新定向。