2016-01-13 76 views
1

我想通过PHP文件运行WPScan。我使用了shell_exec函数调用WPScan命令,但它抛出了以下错误:Ruby命令在PHP中不执行shell_exec函数

[ERROR] cannot load such file -- bundler/setup 

WPScan红宝石需要在服务器和WPScan命令运行只能在WPScan目录内运行。当我们WPScan目录之外运行此命令,比它抛出同样的以下错误:

[ERROR] cannot load such file -- bundler/setup 

手段的浏览器无法找到由WPScan所需的文件,所有的文件都放在文档根目录里面的网站。其他所有命令都通过shell_exec工作,但ruby命令抛出错误。简而言之,它无法找到WPScan所需的文件。

的命令是:

ruby wpscan.rb --url http://example.com/ --follow-redirection --log 

我尝试使用完整路径也:

/usr/local/rvm/rubies/ruby-2.3.0/bin/ruby /var/www/html/wp-scan/wpscan.rb --url example.com --follow-redirection --log 

但没有任何工程。

$wp_command = shell_exec('/usr/local/rvm/rubies/ruby-2.3.0/bin/ruby /var/www/html/wp-scan/wpscan.rb --url example.com --follow-redirection --log'); 

echo $wp_command; 

die; 
+0

WPScan在相当不错的自述文件中有安装指南。 https://github.com/wpscanteam/wpscan – axvm

回答

0

尝试是这样的:

$wp_command = shell-exec('cd /var/www/html/wp-scan && ruby wpscan.rb --url example.com --follow-redirection --log'); 

echo $wp_command; 

die; 

如果安装WPScan和RVM正确的应该工作。