🇰🇷 한글 설명
GNU Bash 4.3 미만 버전에서 LC_CTYPE 환경 변수에 설정된 로케일이 지원하지 않는 와이드 문자를 echo 내장 함수로 출력할 때 힙 기반 버퍼 오버플로우가 발생합니다. 로컬 공격자가 echo -e 함수를 통해 데이터를 출력하도록 유도할 경우, 스크립트를 중단시키거나 Bash 프로세스의 권한으로 임의의 코드를 실행할 수 있습니다.
💡 쉬운 설명
Bash 프로그램에서 특수한 문자를 출력할 때 메모리 관리 오류가 발생하는 취약점입니다. 공격자가 이 오류를 이용해 컴퓨터에 몰래 명령을 실행하거나 프로그램을 강제로 종료시킬 수 있습니다.
🇺🇸 원문 (English)
A heap-based buffer overflow exists in GNU Bash before 4.3 when wide characters, not supported by the current locale set in the LC_CTYPE environment variable, are printed through the echo built-in function. A local attacker, who can provide data to print through the "echo -e" built-in function, may use this flaw to crash a script or execute code with the privileges of the bash process. This occurs because ansicstr() in lib/sh/strtrans.c mishandles u32cconv().
📍 영향받는 시스템
GNU Bash 4.3 미만 버전
⚔️ 공격 벡터
로컬 공격자가 echo -e 내장 함수를 통해 조작된 와이드 문자 데이터를 입력함
🛡️ 대응 방법
Bash를 4.3 이상의 최신 버전으로 업데이트함
🔧 검증 코드
출력된 버전 번호가 4.3 미만(예: 4.2, 4.1 등)이면 취약한 상태입니다.
bash --version | grep -E 'version'