ruby-on-rails – 检测Rails是否正在运行站点

我是一个管理我公司面向公众的云平台的团队的一员.我们有一个庞大的用户群,运行面向互联网的VM.我想对我们的地址空间进行自动扫描,看看是否有人正在运行Rails应用程序,以便我可以通知他们升级他们的Rails版本,以避免本周出现的严重安全漏洞.

我注意到在一些Apache部署中,有一个有用的Passenger Header:

X-Powered-By: Phusion Passenger (mod_rails/mod_rack) 2.0.3

但是,这不可靠.我想知道是否有一种可靠的方法来检测在Web服务器后面运行的Rails,无论是响应头还是某种可以确定的GET / POST.谢谢!

最佳答案
每个Rails网站都有:

meta content="authenticity_token" name="csrf-param'

至少这是我一直看到的.

标题响应不可靠,这里有三个来自各种Rails站点:

Server:Apache/2.2.14 (Ubuntu)
Server:nginx
Server: thin 1.4.1 codename Chromeo

你知道nginx和Thin在Rails社区中很受欢迎,但这并不足以说Rails背后有它.您需要运行一个脚本来擦除网站并查找上面的元标记.如果您的脚本将使用Python,那么BeautifulSoup非常好.如果你使用Ruby,Mechanize gem是很棒的.

相关文章

Nginx (engine x) 是一个高性能的HTTP和反向代理服务,也是一...
本地项目配置 1 复制 luffy/settings/dev.py为prop.py 修改l...
nginx不仅可以隐藏版本信息,还支持自定义web服务器信息 先看...
一 、此次漏洞分析 1 nginx HTTP/2漏洞 [nginx-announce] ng...
###进入nginx 目录cd /usr/local/nginx###递归显示 2 级目录...
在cmd命令窗口输入下面命令进行查看 tasklist /fi "ima...