Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
rails-cve-2017-17917 | Kitploit
Инструменты/GitHubGitHub/matiasarenhard/rails-cve-2017-17917
Анализ уязвимостейАнализ КодаЭксплуатация веб-приложенийОбучение и ОбразованиеБезопасность Баз ДанныхЛаборатории и Практика
GitHubmatiasarenhard/rails-cve-2017-17917

rails-cve-2017-17917

Репозиторий
12 лет назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

rails-cve-2017-17917

Проект демонстрирует воспроизведение уязвимости SQL-инъекции в параметре id, а также содержит рекомендации по смягчению и устранению этой проблемы безопасности. https://www.cvedetails.com/cve/CVE-2017-17917/?q=CVE-2017-17917

Стек:

root@kitploit:~
  Ruby: 3.2.2
  Rails: 7.0.8
  Docker 24.0.5
  Docker-Compose 1.29.2
  PostgreSQL

CVE-2017-17917

image

Мы выбрали этот CVE, чтобы подчеркнуть сохраняющееся наличие этой проблемы в последних версиях Rails, что подтверждает актуальность лучших практик разработки.

Схема окружения для воспроизведения уязвимости

Diagrama sem nome drawio(1)

Инструкции по воспроизведению этой уязвимости

Требования:

root@kitploit:~
  docker
  docker-compose

Шаги по сборке проекта:

root@kitploit:~
  sudo docker-compose build

image

root@kitploit:~
  sudo docker-compose run web bundle install

image

root@kitploit:~
  sudo docker-compose run web rails db:create db:migrate db:seed

image

root@kitploit:~
  sudo docker-compose up

image

Перейдите на http://localhost:3000/

image

image

Параметр SQL-инъекции 1 OR id > 1

image

Оценка рисков уязвимости в производственной среде

С помощью этой SQL-инъекции злоумышленник может получить данные пользователей, к которым у него обычно нет доступа.
Сложность выполнения: лёгкая

Заключение

Проблема заключается в методе контроллера, а именно при вызове условия where следующим образом:
@clients = Client.where("id = #{params[:id_search]}")
Ссылка на код

Проблема решается следующим способом:
@clients = Client.where(id: "#{params[:id_search]}")
Ссылка на код

Тесты

root@kitploit:~
  sudo docker-compose run web rspec

image

Скачать инструмент