add-keycloakx: micrometer 오버레이 추가 (CI 에서 새로 잡힌 차단 2건)
CI(31148639764)의 trivy 취약점 DB 가 로컬보다 최신이라 로컬 스캔에는 없던
CVE-2026-40983·CVE-2026-40984(io.micrometer:micrometer-core)가 차단으로 잡혔다.
netty·jackson 과 동일한 성격의 번들 jar CVE 라 같은 오버레이 메커니즘으로 처리한다.
micrometer 1.16.3 → 1.16.6. netty 와 같은 이유로 CVE 가 붙은 micrometer-core 만이
아니라 패밀리 전체 4종(commons·core·observation·registry-prometheus-simpleclient)을
함께 올린다 — 아티팩트 간 버전 혼용이 비지원이다.
Dockerfile 의 ARG 선언을 처음에 빠뜨렸는데 overlay-jars.sh 의 `: "${VAR:?}"` 가드가
설계대로 빌드를 세웠다("parameter null or not set"). 조용히 통과하지 않는다.
재빌드 결과(로컬 trivy DB 캐시를 지우고 CI 와 같은 최신 DB 로 재판정):
차단 0건 — 게이트 PASS
docker.io/paasup/keycloak:26.7.1-bci15.7-hardened-20260807 push 완료
태그는 빌드일 기준이라 같은 날 재빌드가 같은 태그를 덮는다(프레임워크 설계대로).
직전에 push 된 것은 micrometer 취약점이 남아 있던 빌드이고 어디에도 소비되지 않았다.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -29,9 +29,10 @@ M2="${M2_BASE:-https://repo1.maven.org/maven2}"
|
||||
|
||||
[ -d "$LIB" ] || { echo "FAIL: $LIB 가 없다 — 배포본 레이아웃이 바뀌었는지 확인"; exit 1; }
|
||||
|
||||
: "${NETTY_OLD:?}" "${NETTY_VERSION:?}"
|
||||
: "${JACKSON_OLD:?}" "${JACKSON_VERSION:?}"
|
||||
: "${PGJDBC_OLD:?}" "${PGJDBC_VERSION:?}"
|
||||
: "${NETTY_OLD:?}" "${NETTY_VERSION:?}"
|
||||
: "${JACKSON_OLD:?}" "${JACKSON_VERSION:?}"
|
||||
: "${PGJDBC_OLD:?}" "${PGJDBC_VERSION:?}"
|
||||
: "${MICROMETER_OLD:?}" "${MICROMETER_VERSION:?}"
|
||||
|
||||
# groupId(파일명 프리픽스) | groupPath(Maven 경로) | artifact 필터 | OLD | NEW
|
||||
# artifact 필터가 '*' 이면 해당 groupId + OLD 버전의 모든 jar 가 대상이다.
|
||||
@@ -40,6 +41,7 @@ SPECS=(
|
||||
"com.fasterxml.jackson.core|com/fasterxml/jackson/core|jackson-core|${JACKSON_OLD}|${JACKSON_VERSION}"
|
||||
"com.fasterxml.jackson.core|com/fasterxml/jackson/core|jackson-databind|${JACKSON_OLD}|${JACKSON_VERSION}"
|
||||
"org.postgresql|org/postgresql|postgresql|${PGJDBC_OLD}|${PGJDBC_VERSION}"
|
||||
"io.micrometer|io/micrometer|*|${MICROMETER_OLD}|${MICROMETER_VERSION}"
|
||||
)
|
||||
|
||||
fetch() { # $1=url $2=출력경로
|
||||
|
||||
Reference in New Issue
Block a user