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

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

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

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

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

Категории

Все категории
Loading categories
route-detect — Находите уязвимости безопасности аутентификации (authn) и авторизации (authz) в маршрутах веб-приложений. | Kitploit
Инструменты/GitHubGitHub/mschwager/route-detect
Статический анализАнализ уязвимостейВеб-безопасностьАутентификация
GitHubmschwager/route-detect

route-detect

Находите уязвимости безопасности аутентификации (authn) и авторизации (authz) в маршрутах веб-приложений.

Репозиторий
2801311 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

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

route-detect

CI Python Versions PyPI Version

Находите уязвимости безопасности аутентификации (authn) и авторизации (authz) в маршрутах веб-приложений:

Демонстрация маршрутов

Маршруты из потокового сервера koel

Уязвимости аутентификации и авторизации HTTP-маршрутов веб-приложений являются одними из самых распространенных проблем безопасности сегодня. Эти отраслевые стандарты подчеркивают серьезность проблемы:

  • 2021 OWASP Top 10 #1 - Нарушение контроля доступа
  • 2021 OWASP Top 10 #7 - Ошибки идентификации и аутентификации (ранее "Нарушение аутентификации")
  • 2023 OWASP API Top 10 #1 - Нарушение авторизации на уровне объектов
  • 2023 OWASP API Top 10 #2 - Нарушение аутентификации
  • 2023 OWASP API Top 10 #5 - Нарушение авторизации на уровне функций
  • 2023 CWE Top 25 #11 - CWE-862: Отсутствие авторизации
  • 2023 CWE Top 25 #13 - CWE-287: Некорректная аутентификация
  • 2023 CWE Top 25 #20 - CWE-306: Отсутствие аутентификации для критической функции
  • 2023 CWE Top 25 #24 - CWE-863: Неправильная авторизация

Поддерживаемые веб-фреймворки

Установка

Используйте pip для установки route-detect:

root@kitploit:~
$ python -m pip install --upgrade route-detect

Вы можете проверить, что route-detect установлен корректно, с помощью следующей команды:

root@kitploit:~
$ echo 'print(1 == 1)' | semgrep --config $(routes which test-route-detect) -
Scanning 1 file.

Findings:

  /tmp/stdin
     routes.rules.test-route-detect
        Found '1 == 1', your route-detect installation is working correctly

          1┆ print(1 == 1)


Ran 1 rule on 1 file: 1 finding.

Использование

route-detect использует команду CLI routes и предоставляет следующее дерево команд:

  • routes
    • which
    • viz

Semgrep

Сначала убедитесь, что semgrep установлен и добавлен в ваш PATH.

[!IMPORTANT] Функциональность Semgrep, от которой зависит route-detect для отображения фрагментов кода, была перенесена в облачное приложение. Для получения дополнительной информации см. #10762. Однако более ранние версии Semgrep по-прежнему поддерживают это поведение. При использовании route-detect убедитесь, что установлена версия Semgrep до 1.97.0. Это можно сделать с помощью следующей команды: python -m pip install 'semgrep<1.97.0'.

Используйте подкоманду which, чтобы указать semgrep на правильные правила веб-приложений:

root@kitploit:~
$ semgrep --config $(routes which django) path/to/django/code

Используйте подкоманду viz для визуализации информации о маршрутах в вашем браузере:

root@kitploit:~
$ semgrep --json --config $(routes which django) --output routes.json path/to/django/code
$ routes viz --browser routes.json

Если вы не уверены, какой фреймворк искать, вы можете использовать специальный идентификатор all для проверки всего:

root@kitploit:~
$ semgrep --json --config $(routes which all) --output routes.json path/to/code

Если у вас есть пользовательская логика аутентификации (authn) или авторизации (authz), вы можете скопировать правила route-detect:

root@kitploit:~
$ cp $(routes which django) my-django.yml

Затем вы можете изменить правило по мере необходимости и запустить его, как показано выше:

root@kitploit:~
$ semgrep --json --config my-django.yml --output routes.json path/to/django/code
$ routes viz --browser routes.json

CodeQL

Сначала убедитесь, что codeql установлен и добавлен в ваш PATH.

Используйте подкоманду which, чтобы сначала установить зависимости пакета, а затем выполнить соответствующие запросы:

root@kitploit:~
$ codeql pack install $(poetry run routes which -c rails)
root@kitploit:~
$ codeql database analyze \
    --output routes.sarif \
    --format sarif-latest \
    --sarif-add-file-contents \
    --no-group-results \
    -- \
    /path/to/codeql/db \
    $(routes which --codeql rails)

Используйте подкоманду viz для визуализации информации о маршрутах в вашем браузере:

root@kitploit:~
$ routes viz --codeql --browser routes.sarif

Участие в разработке

route-detect использует poetry для управления зависимостями и конфигурацией.

Прежде чем продолжить, установите зависимости проекта с помощью следующей команды:

root@kitploit:~
$ poetry install --with dev

Линтинг

Проверьте все файлы проекта с помощью следующей команды:

root@kitploit:~
$ poetry run pre-commit run --all-files

Тестирование

Запустите тесты Python с помощью следующей команды:

root@kitploit:~
$ poetry run pytest --cov

Запустите тесты правил Semgrep с помощью следующей команды:

root@kitploit:~
$ poetry run semgrep --test --config routes/rules/ tests/test_rules/

Запустите тесты запросов CodeQL с помощью следующей команды:

root@kitploit:~
$ codeql test run routes/queries/rails/test/
Скачать инструмент
ЯзыкФреймворкSemgrepCodeQL
PythonDjango✅❌
PythonDjango REST framework✅❌
PythonFlask✅❌
PythonSanic✅❌
PythonFastAPI✅❌
PHPLaravel✅❌
PHPSymfony✅❌
PHPCakePHP✅❌
RubyRails❌✅
RubyGrape✅❌
JavaJAX-RS✅❌
JavaSpring✅❌
GoGorilla✅❌
GoGin✅❌
GoChi✅❌
JavaScript/TypeScriptExpress✅❌
JavaScript/TypeScriptReact✅❌
JavaScript/TypeScriptAngular✅❌