🇰🇷 한글 설명
Kong 2.0.3 버전 이하의 docker-kong 설정에서 관리자 API 포트가 127.0.0.1 이외의 인터페이스를 통해 외부로 노출될 수 있는 문제가 발견되었습니다. 다만, 이는 Kong 게이트웨이 자체의 결함이 아니라 docker-compose 템플릿을 보안 가이드라인 없이 사용할 때 발생하는 설정 오류입니다.
💡 쉬운 설명
Kong이라는 프로그램을 설치할 때 사용하는 기본 설정 파일이 보안에 취약하게 구성되어 있어, 관리자 권한이 외부로 노출될 위험이 있습니다. 이는 프로그램 자체의 고장이 아니라 사용자가 설정 파일을 잘못 사용했을 때 발생하는 문제입니다.
🇺🇸 원문 (English)
An issue was discovered in docker-kong (for Kong) through 2.0.3. The admin API port may be accessible on interfaces other than 127.0.0.1. NOTE: The vendor argue that this CVE is not a vulnerability because it has an inaccurate bug scope and patch links. “1) Inaccurate Bug Scope - The issue scope was on Kong's docker-compose template, and not Kong's docker image itself. In reality, this issue is not associated with any version of the Kong gateway. As such, the description stating ‘An issue was discovered in docker-kong (for Kong) through 2.0.3.’ is incorrect. This issue only occurs if a user decided to spin up Kong via docker-compose without following the security documentation. The docker-compose template is meant for users to quickly get started with Kong, and is meant for development purposes only. 2) Incorrect Patch Links - The CVE currently points to a documentation improvement as a “Patch” link: https://github.com/Kong/docs.konghq.com/commit/d693827c32144943a2f45abc017c1321b33ff611.This link actually points to an improvement Kong Inc made for fool-proofing. However, instructions for how to protect the admin API were already well-documented here: https://docs.konghq.com/2.0.x/secure-admin-api/#network-layer-access-restrictions , which was first published back in 2017 (as shown in this commit: https://github.com/Kong/docs.konghq.com/commit/e99cf875d875dd84fdb751079ac37882c9972949) Lastly, the hyperlink to https://github.com/Kong/kong (an unrelated Github Repo to this issue) on the Hyperlink list does not include any meaningful information on this topic.
📍 영향받는 시스템
docker-kong (for Kong) 2.0.3 이하 버전 (docker-compose 템플릿 사용 시)
⚔️ 공격 벡터
외부 네트워크에서 노출된 관리자 API 포트로 직접 접속하여 제어권 획득
🛡️ 대응 방법
docker-compose 설정에서 관리자 API 포트를 127.0.0.1로 바인딩하거나 네트워크 접근 제한 설정을 적용
🔧 검증 코드
결과값의 Local Address 항목이 0.0.0.0 또는 특정 IP로 되어 있다면 외부 노출 상태이며, 127.0.0.1로 되어 있다면 안전합니다.
netstat -tulpn | grep :8001