我有一个被黑客入侵的Joomla网站,并运行了一个名为jamss的程序,该程序可以识别可能的安全威胁。其中一项建议说:
模式 #23 - 从 POST/GET 变量执行 shell 命令 --> 在文件 ./xxx/xxx/index 中发现 1 次出现.php
详细信息:"发现直接 shell 命令执行从中获取变量 POST/GET,这是高度危险的安全漏洞或 恶意网页根包"
行 #: 12
但我不明白这意味着什么。代码引用此行:
defined('_JEXEC') or die('Restricted access'); <----------------------
$url = clone(JURI::getInstance());
$path = $this->baseurl.'/templates/'.$this->template;
$rel_path = $this->baseurl.'/images/stories/';
而且我在那里没有看到任何 POST 或 GET 变量。有谁知道为什么这行代码会被视为安全漏洞?
谢谢
JAMSS 规则 #23 检查这些 php 函数:
exec|passthru|shell_exec|system|proc_|popen
如果脚本中存在任何内容,则将触发警报 [23]。可能 JAMSS 没有报告正确的行或文件名,而只是运行
grep -rE "(?:exec|passthru|shell_exec|system|proc_|popen)[wWs/*]*([s/*#'"wW-_]*" .
在命令行上,您应该看到实际文件和行号。 小心:您还会收到一些额外的误报。