Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/jenkinsci-cert/security-3314-3315
Vulnerability AnalysisConfiguration AuditingWeb SecurityCloud SecurityDevSecOpsMisconfigurationArchived
GitHubjenkinsci-cert/security-3314-3315

SECURITY-3314-3315

SECURITY-3314/CVE-2024-23897 및 SECURITY-3315/CVE-2024-23898을 완화하기 위해 CLI를 비활성화하는 해결 방법

저장소 보기
7282년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
웹사이트
공유

= SECURITY-3314/SECURITY-3315 완화 조치

이 저장소는 영향을 받는 인스턴스에서 SECURITY-3314 및 SECURITY-3315의 악용을 방지하는 완화 조치를 문서화합니다.

== 개요

CLI에 대한 접근을 비활성화해야 합니다. 다음 두 단계를 모두 수행해야 합니다:

  • CLI HTTP 엔드포인트 제거
  • SSH 포트 비활성화 (https://plugins.jenkins.io/sshd/[SSH Server Plugin])

[NOTE]

리모팅 기반 CLI는 https://www.jenkins.io/blog/2019/02/17/remoting-cli-removed/[5년 전] Jenkins에서 제거되었습니다. 관련 지침은 이 문서에 포함되어 있지 않습니다. 리모팅 기반 CLI를 사용하는 Jenkins 인스턴스의 관리자는 긴급히 최신 릴리스로 업그레이드할 것을 강력히 권장합니다.

[IMPORTANT]

아래 지침은 CLI를 사용하지 않는 경우에도 단기적인 해결 방법으로만 제공됩니다. Jenkins의 확장성으로 인해 영향을 받는 HTTP 엔드포인트로 이동하는 다른 방법이 존재할 수 있습니다.

== 지침

=== CLI 엔드포인트 비활성화

Jenkins가 현재 실행 중인 경우, https://www.jenkins.io/doc/book/managing/script-console/[스크립트 콘솔]에서 제공된 스크립트 disable-cli.groovy를 실행합니다. 이렇게 하면 Jenkins가 다시 시작될 때까지 CLI HTTP 엔드포인트가 제거됩니다. disable-cli.groovy의 내용으로 Post-Initialization https://www.jenkins.io/doc/book/managing/groovy-hook-scripts/[Groovy Hook Script]를 생성하여 Jenkins가 (재)시작될 때마다 스크립트가 실행되도록 합니다.

==== 확인

스크립트가 작동했는지 확인하려면 _Manage Jenkins » Jenkins CLI_로 이동합니다. 완화 조치가 적용되지 않은 경우, 사용 가능한 CLI 명령 개요를 포함한 일반 CLI 문서가 표시됩니다. 완화 조치가 적용된 경우, HTTP 404 Not Found 오류가 표시됩니다.

=== SSH 포트 비활성화

https://plugins.jenkins.io/sshd/[SSH Server Plugin]은 SSH를 통해 Jenkins CLI에 대한 접근을 제공합니다. 이 플러그인의 기능은 이전에 Jenkins 코어의 일부였으므로 명시적으로 설치한 적이 없어도 설치되어 있을 수 있습니다.

_Manage Jenkins » Security_로 이동하여 SSH Server 섹션의 SSHD Port 설정이 _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 포트를 비활성화하는 지원되는 UI 옵션을 사용하면 명시적인 구성이 필요하지 않지만, 이전에 구성된 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
도구 다운로드