php可能的攻击?

时间:2011-12-11 19:14:56

标签: php security xss

我想现在,如果我遇到任何类型的攻击,应该采取什么样的安全措施。

我在服务器日志中得到了这个:

  

“GET /site.php?a={%24{passthru%28chr%28105%29.chr%28100%29%29}} HTTP / 1.1”404 214“ - ”“Mozilla / 5.0(Windows NT 6.1 ; WOW64; rv:8.0)Gecko / 20100101 Firefox / 8.0

     

/?file = .. / .. / .. / .. / .. / .. / proc / self / environ%00 HTTP / 1.1“400 227” - “”“

     

/stats/awstats.pl configdir = |回声;回波%20YYYAAZ; UNAME;编号;回声%20YYY;回声| HTTP / 1.1“404 222” - “”Mozilla / 5.0(Windows NT 6.1; WOW64; rv:8.0)Gecko / 20100101 Firefox / 8.0“

你能帮我解释一下它能做什么吗?我应该担心吗?任何其他信息将不胜感激。

3 个答案:

答案 0 :(得分:1)

取决于以下内容:

index.php(或您的/(根)处理程序)
awstats.pl
site.php

这些是相当常见的SQL注入(和其他)攻击,可能(或可能不会)危害数据库中的数据或服务器上的文件。

这取决于您的脚本如何处理此输入

答案 1 :(得分:1)

它似乎是一次未遂攻击,是的。根据您的应用程序,很难告诉您应该做什么,因为我们不知道您已经做了什么。

但有一点可以肯定,始终验证您的用户输入。假设您在应用程序中使用GET变量,请注意以下几点:

  • 根据$_GET['a']应包含的内容,在处理之前始终确保 包含该内容(并且仅包含该内容)。这包括确保它是一个数字(is_numeric),或者它与特定模式(正则表达式),长度或其他一些预定义标准相匹配。
  • 关于$_GET['file'] - 如果您有一个基于$_GET['file']提供文件的脚本,请确保您只在当前目录中包含文件。这意味着,禁止斜杠/和dotdot的..
  • 最后,再次验证您的输入,但假设您没有使用eval()或执行任何其他用户输入,您似乎很安全。

答案 2 :(得分:0)

如果您有不安全的代码,请务必担心,例如eval()和非静态代码(include $name;)。始终避免使用那些编码风格。

如果服务器上的软件已过时,您也应该担心。