我有一个被黑的Joomla网站,并运行了一个名为jamss的程序,用于识别可能存在的安全威胁。其中一条建议说:
模式#23 - 从POST / GET变量执行shell命令 - > 在文件./xxx/xxx/index.php
中找到1次出现详细信息:“发现直接shell命令执行从中获取变量 POST / GET,这是一个非常危险的安全漏洞或者是其中的一部分 恶意webrootkit“
行#: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变量。有谁知道为什么这行代码会被视为安全漏洞?
由于
答案 0 :(得分:0)
JAMSS规则#23检查这些php函数:
EXEC |通路|了shell_exec |系统| proc_ | popen方法
如果脚本中存在任何内容,则会触发警报[23]。 可能JAMSS没有报告正确的行或文件名,只是运行
grep -rE "(?:exec|passthru|shell_exec|system|proc_|popen)[\w\W\s/\*]*\([\s/\*\#\'\"\w\W\-\_]*" .
在命令行上,您应该看到实际文件和行号。小心:你还会得到一些额外的误报。