ruby on rails 测试 Web 应用程序

信息安全 Web应用程序 渗透测试 红宝石
2021-08-31 04:12:30

我目前正在测试一个 RoR Web 应用程序,但老实说,我有点不知所措,我以前从未对抗过 RoR 应用程序,我想知道是否有任何特定工具可以用来攻击这个 RoR 站点(我获得完全许可,一切合法)。

任何用于基本 RoR 笔测试的工具或教程?

3个回答

您可以使用 Rails 应用程序关注许多领域,具体取决于您拥有的访问级别。一些初步的想法

  • 如果你有源代码访问权限(我强烈推荐它),你可以使用Brakeman来查找一些问题。
  • 即使您无法访问源代码,您也可以请求“rake routes”命令的输出,该命令应该为您提供应用程序中所有可能路由的图片。
  • OWASP 有一个很好的关于Rails 安全性的文档,它有一些很好的起点。
  • 我总是尝试更改请求的扩展名(例如,从 html 到 xml 或 json),因为 rails 往往具有针对不同格式的不同代码路径,这可能会暴露安全问题。
  • 如果您可以找到正在使用的 rails 版本(在应用程序根目录的 Gemfile 中),请查看已知的 CVE(有一些)
  • 由于 Rails 应用程序通常具有 MVC 结构,它们可以具有相当可预测的 URL 路径,所以如果你是黑盒,那么 /users/1/edit 之类的东西(用其他复数名词替换 users)可以产生有趣的结果
  • 始终解码 cookie 以查看其中是否有任何秘密信息(不应该有)。

您可以在Zen Rails 安全检查表中找到有关最常见的 Ruby on Rails 应用程序漏洞及其对策的信息

我建议您熟悉 Web 渗透测试技术和一般攻击类型(XSS、SQLi、权限提升、会话安全等),然后深入研究 Rails 特定的漏洞。我发现对 HTTP 协议、会话如何创建/持久/销毁以及数据流有非常深入的了解比您可以运行的任何单一工具都更有帮助。一旦您对基本测试机制感到满意,Rails 就会提供一些关于安全性的出色文档 - http://guides.rubyonrails.org/security.html