🇰🇷 한글 설명
Fluent Bit 0.11.0부터 5.0.8 버전 사이의 out_forward 플러그인에서 발생하는 스택 기반 버퍼 오버플로우 취약점입니다. 공격자가 조작된 PONG 메시지를 전송하여 서버 제어 데이터를 덮어쓰고 원격 코드 실행(RCE)을 수행할 수 있습니다.
💡 쉬운 설명
Fluent Bit라는 로그 처리 프로그램이 외부 서버와 통신할 때, 서버가 보내는 메시지의 길이를 제대로 확인하지 않아 발생하는 문제입니다. 나쁜 의도를 가진 서버가 너무 긴 메시지를 보내면 프로그램의 제어권을 뺏을 수 있습니다.
🇺🇸 원문 (English)
Fluent Bit is a fast and lightweight logs, metrics, and traces processor for Linux, BSD, macOS, and Windows. From 0.11.0 until 5.0.8, plugins/out_forward/forward.c secure_forward_pong copies the server-controlled PONG[2] reason into the 32-byte stack buffer msg with memcpy without checking its MessagePack type or length. An attacker who controls or can impersonate an out_forward Secure Forward destination configured with Shared_Key or Empty_Shared_Key can send an oversized reason during the first handshake and overwrite stack control data. Protected builds reliably terminate, while builds without a stack canary or with a disclosure can allow remote code execution as the Fluent Bit process user. When the opt-in --supervisor mode is used, fork-only respawns preserve the canary and address layout, allowing repeated crash-or-survive probes to support code execution on a hardened build; ordinary exec-based or service-manager restarts do not preserve that state. This issue is fixed in version 5.0.8.
📍 영향받는 시스템
Fluent Bit versions 0.11.0 to 5.0.8
⚔️ 공격 벡터
Shared_Key 또는 Empty_Shared_Key가 설정된 out_forward 목적지 서버를 통한 악성 PONG 메시지 전송
🛡️ 대응 방법
Fluent Bit를 최신 보안 패치가 적용된 버전인 5.0.8 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전이 5.0.8 미만이면 취약한 상태이며, 5.0.8 이상이면 안전합니다.
fluent-bit --version 2>/dev/null || echo 'Not installed'