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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/jenkinsci-cert/security-3314-3315
Анализ уязвимостейАудит конфигурацииВеб-безопасностьБезопасность облачных средDevSecOpsНеправильная КонфигурацияArchived
GitHubjenkinsci-cert/security-3314-3315

SECURITY-3314-3315

Обходной путь для отключения CLI для устранения SECURITY-3314/CVE-2024-23897 и SECURITY-3315/CVE-2024-23898

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

Популярное

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

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

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

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

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

= Смягчение уязвимостей SECURITY-3314/SECURITY-3315

Данный репозиторий содержит инструкции по смягчению последствий эксплуатации уязвимостей SECURITY-3314 и SECURITY-3315 на затронутых экземплярах.

== Обзор

Необходимо отключить доступ к CLI. Необходимо выполнить оба следующих шага:

  • Удалить HTTP endpoint CLI
  • Отключить SSH-порт (https://plugins.jenkins.io/sshd/[SSH Server Plugin])

[NOTE]

CLI, основанный на remoting, был удалён из Jenkins https://www.jenkins.io/blog/2019/02/17/remoting-cli-removed/[пять лет назад]. Соответствующие инструкции не включены в данную документацию. Администраторам экземпляров Jenkins с remoting-based CLI настоятельно рекомендуется срочно обновиться до более новых версий.

[IMPORTANT]

Приведённые ниже инструкции предназначены только как краткосрочное временное решение, даже если вы не используете CLI. Из-за расширяемости Jenkins возможно существование других способов перехода к затронутому HTTP endpoint.

== Инструкции

=== Отключение CLI endpoint

Если Jenkins запущен, выполните предоставленный скрипт disable-cli.groovy в https://www.jenkins.io/doc/book/managing/script-console/[Script Console]. Это удалит HTTP endpoint CLI до перезапуска Jenkins. Создайте https://www.jenkins.io/doc/book/managing/groovy-hook-scripts/[Groovy Hook Script] после инициализации, содержащий содержимое disable-cli.groovy, чтобы скрипт выполнялся при каждом (пере)запуске Jenkins.

==== Подтверждение

Чтобы убедиться, что скрипт сработал, перейдите в Manage Jenkins » Jenkins CLI.

Если смягчение не применено, отображается общая документация CLI, включая обзор доступных команд CLI. Если смягчение применено, отображается ошибка HTTP 404 Not Found.

=== Отключение SSH-порта

https://plugins.jenkins.io/sshd/[SSH Server Plugin] предоставляет доступ к Jenkins CLI через SSH. Это плагин, функциональность которого ранее входила в ядро Jenkins, поэтому он может быть установлен, даже если вы никогда явно его не устанавливали.

Перейдите в Manage Jenkins » Security и убедитесь, что параметр SSHD Port в разделе SSH Server установлен в Disable.

ПРИМЕЧАНИЕ: Это рекомендуется сделать, даже если вы решите отключить или удалить плагин, так как функциональность управления плагинами может переустановить или повторно включить плагин для обеспечения удовлетворения зависимостей плагина.

В качестве альтернативы вы можете добавить следующий фрагмент в конец скрипта disable-cli.groovy:

root@kitploit:~
// Disable CLI access over SSH Server Plugin
if (j.getPlugin('sshd')) {
  hudson.ExtensionList.lookupSingleton(org.jenkinsci.main.modules.sshd.SSHD.class).setPort(-1)
}

==== Подтверждение

Явная настройка не требуется при использовании поддерживаемого параметра пользовательского интерфейса для отключения SSH-порта, но вы можете попытаться подключиться к ранее настроенному порту SSH CLI. Ожидаемый результат — неудачное установление соединения. Обратите внимание, что неаутентифицированное использование SSH CLI невозможно, поэтому не каждая ошибка является признаком его успешного отключения. Вот примеры ожидаемого (безопасного) результата (при условии, что ранее был настроен порт 2222):

root@kitploit:~
$ ssh -p 2222 jenkins.example.org
ssh: connect to host jenkins.example.org port 2222: Connection refused
root@kitploit:~
$ ssh -p 2222 jenkins.example.org
kex_exchange_identification: read: Connection reset by peer
Connection reset by … port 2222
Скачать инструмент