Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
railsgoat — 遵循 OWASP Top 10 的易受攻击的 Rails 版本 | Kitploit
工具/GitHubGitHub/owasp/railsgoat
静态分析漏洞分析代码分析Web安全CTF渗透测试学习与教育实验室与实践
GitHubowasp/railsgoat

railsgoat

遵循 OWASP Top 10 的易受攻击的 Rails 版本

查看仓库
9238206个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
网站

RailsGoat

RailsGoat 是一个基于 Ruby on Rails 构建的故意存在漏洞的 Web 应用程序。它展示了 OWASP Top 10 中的真实世界安全漏洞,并为开发人员和安全专业人员提供了一个实践培训平台。

什么是 RailsGoat?

RailsGoat 是一个故意不安全的 Rails 应用程序,旨在教授 Web 应用程序安全知识。通过探索和利用其漏洞,你将学到:

  • 常见安全缺陷如何在 Rails 应用程序中显现
  • 如何通过代码审查和测试识别漏洞
  • 如何实施适当的安全控制和修复策略

当前版本: Rails 8.0 搭配 Ruby 3.4.1

包含的漏洞

RailsGoat 展示了 OWASP Top 10 中的真实世界安全漏洞,包括 SQL 注入、跨站脚本(XSS)、认证问题、不安全直接对象引用等。

有关完整漏洞列表及详细解释和教程,请访问 RailsGoat Wiki。

快速开始

前置要求

  • Ruby 3.4.1
  • Git
  • SQLite3(默认包含)
  • MySQL(可选,某些 SQL 注入演示需要)

Ruby 新手? 请按照 GoRails 上针对你操作系统的设置指南进行操作。

安装

  1. 克隆仓库:

    root@kitploit:~
    git clone https://github.com/OWASP/railsgoat.git
    cd railsgoat
    
  2. 安装依赖:

    root@kitploit:~
    gem install bundler
    bundle install
    
  3. 设置数据库:

    root@kitploit:~
    rails db:setup
    
  4. 启动服务器:

    root@kitploit:~
    rails server
    
  5. 打开浏览器: 导航至 http://localhost:3000 并开始探索!

其他 Rails 版本

main 分支运行 Rails 8。如需旧版本,请切换分支:

root@kitploit:~
git checkout rails_3_2  # Rails 3.2
git checkout rails_4_2  # Rails 4.2
git checkout rails_5    # Rails 5.x

学习路径

1. 培训模式(推荐给学习者)

运行漏洞测试套件以查看存在哪些安全缺陷:

root@kitploit:~
rails training

每个失败的测试都表示一个漏洞。测试输出包含指向 Wiki 教程的链接,该教程解释了:

  • 该漏洞如何运作
  • 如何利用它
  • 如何修复它

要运行特定的漏洞测试:

root@kitploit:~
rails training SPEC=spec/vulnerabilities/sql_injection_spec.rb

2. 探索应用程序

  • 创建帐户并登录
  • 浏览不同的功能
  • 尝试访问其他用户的数据
  • 尝试各种注入攻击
  • 查看源代码以理解这些漏洞

3. 从 Wiki 学习

访问 RailsGoat Wiki 获取每个漏洞的详细教程,包括:

  • 漏洞解释
  • 利用技术
  • 代码示例
  • 修复步骤

额外安全主题

涵盖高级和现代 Rails 安全概念的附加文档:

  • 额外内容:Rails 5.1+ 中的加密机密和凭据

Docker 安装

要求: Docker 和 Docker Compose 1.6.0+

对于 Apple Silicon(ARM64)Mac: 必须安装 Rosetta

root@kitploit:~
docker-compose build
docker-compose run web rails db:setup
docker-compose up

该应用程序将在 http://localhost:3000 可用

故障排除: 如果容器退出并显示 "A server is already running",请从你的工作目录中删除 tmp/pids/server.pid 然后重试。

高级配置

MySQL 环境

某些 SQL 注入漏洞需要 MySQL。要使用 MySQL 运行:

root@kitploit:~
# 创建并迁移数据库
RAILS_ENV=mysql rails db:create
RAILS_ENV=mysql rails db:migrate

# 启动服务器
RAILS_ENV=mysql rails server

电子邮件测试

RailsGoat 使用 MailCatcher 拦截电子邮件:

root@kitploit:~
gem install mailcatcher
mailcatcher

在 http://localhost:1080 查看电子邮件

为贡献者和维护者准备

以维护者模式运行测试

设置 RAILSGOAT_MAINTAINER 环境变量以验证漏洞仍然存在:

root@kitploit:~
RAILSGOAT_MAINTAINER="yes" bundle exec rspec

在维护者模式下,当漏洞被正确实现时测试通过(与培训模式相反)。

贡献

我们欢迎贡献!详情请参阅我们的贡献指南。

支持

需要帮助?

  • 加入 OWASP Slack 频道
  • 查看 Wiki 获取教程
  • 为 Bug 或问题提交 issue

项目历史

RailsGoat 旨在演示 Rails 应用程序中的安全漏洞并教授安全编码实践。它已通过 Rails 3、4、5、6 以及现在的 8 持续更新,随着框架的发展保持其相关性。

于 2013 年 11 月完成向 OWASP Top Ten 2013 的转换。

许可证

MIT 许可证(MIT)


警告: 此应用程序包含严重的安全漏洞。切勿将其部署在公共服务器或网络上。仅在隔离的培训环境中使用。

下载工具