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) в маршрутах веб-приложений.

Репозиторий
2801350 лет назадПроверено 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: Неправильная авторизация
  • Поддерживаемые веб-фреймворки

    ЯзыкФреймворк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✅❌

    Установка

    Используйте 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/
    
    Скачать инструмент