远程识别WordPress安装的版本?

时间:2011-02-27 作者:Ashfame

如何DD32\'s tool 确定安装的WordPress版本。对于WP 3.1来说,它工作得不好,但它没有使用meta generator标记或自述文件。WP的txt。那还能是什么呢?

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

我只是在这里假设,但这通常是通过对特定版本文件/目录/代码,有时甚至是大小的指纹来完成的。

例如,您可以删除所有元版本标记(不是有12个位置)和。txt文件,但由于3.1是默认情况下唯一包含以下新文件的版本,因此很容易找到指纹。

wp-includes/js/l10n.js
由于每个版本都有许多新的添加,如果您花足够的时间编写一个智能机器人,就不难找到特定于版本的数据。隐藏所有这些信息对于每个版本来说都是一项艰巨的工作。

SO网友:Otto

这是我不久前写的一段代码,以最明显的方式进行WP版本检测:http://ottodestruct.com/class-wp-detection.phps

还有其他一些方法,更微妙而不那么明显。他的方法是文件指纹。基本上是检查某些文件是否存在。

SO网友:Derek Downey

我知道已经有了一个公认的答案,但只是把这个扔出去。我这样做的方式是从博客目录的wp includes/version中解析出$wp\\u version变量。php文件:

function get_wp_version() {
 $versionFile = ABS_PATH.\'/wp-includes/version.php\'
 // NO VERSION FILE //
 if (($versionStr = @file_get_contents($versionFile))==\'\') return \'\'; 

 $regex = "wp_version.*\'(?<wpVersion>.*)\'";
 if (preg_match(\'/\'.$regex.\'/\', $versionStr, $matches)) {
  return $matches[\'wpVersion\'];
 }
 return \'\';
}

结束

相关推荐