【发布时间】:2014-07-24 06:53:49
【问题描述】:
<?php
$scan = shell_exec('ruby /home/user/wpscan/wpscan.rb --url site.com --enumerate vp --follow-redirection --threads 1000');
And than...
... extracting data from array(); (explode("plugins:", 1))
... writing data[1] to txt file ...
... send mysql query with rule if() {} else {} ...
... unlink(); *.txt file ...
...that's all
?>
你好。通过 crontab 运行 ruby 脚本 (wpscan) 时遇到问题。 将其添加为 root:
crontab -e
在 cron 中:
* * * * php5 /home/user/wpscan/wpscan.php
到时候 - php 脚本启动,但是!可以使用除$scan 之外的所有脚本部分(使用 ruby 脚本的部分不起作用)。
我试图显示 ruby bin 的脚本完整路径:“which ruby”,然后我将这些路径复制到了 php 文件。
Ruby 安装在 root 下,所有脚本都具有最大权限,并且在 root 下创建。在任何地方的脚本中,我都在使用我需要连接的文件的完整路径。我也尝试使用 php5 的完整路径,但如果信任 syslog.log - 没关系。请帮帮我:)
【问题讨论】:
-
您会尝试将 ruby 输出重定向到文件并向我们提供明确的错误消息吗?
-
Arg... 抱歉,无法提供 ruby 脚本日志输出 atm,无法从工作中访问我的服务器,已尝试但除 80 之外的所有端口都已关闭 :( 我的错,没有检查之前......再次抱歉但也许有任何猜测?:)
-
我不是算命先生 :) 你可能需要尝试直接从 root 控制台运行
ruby /home/user/wpscan/wpscan.rb --url site.com --enumerate vp --follow-redirection --threads 1000,然后你就会看到问题所在了。我想,您的根环境缺少一些正确运行脚本所需的宝石。 -
如果我从控制台运行它 - 一切正常。在通过 php 脚本运行时,它不仅仅从 cron 工作(可能是 shell_exec() 中的问题?)
-
如果它完美地运行从根控制台,我不能建议任何东西,直到输出被证明。对此感到抱歉。
shell_exec也应该可以正常工作。