🇰🇷 한글 설명
openssl-encrypt pip 패키지(1.4.8 이하 버전)에서 verify-usb 명령 실행 시 신뢰할 수 없는 드라이브의 파일명을 적절히 검증하지 않는 취약점이 발견되었습니다. 공격자는 터미널 제어 문자가 포함된 파일명을 사용하여 실제 변조 탐지 결과 대신 조작된 'PASSED' 메시지를 화면에 출력하도록 유도할 수 있습니다.
💡 쉬운 설명
USB 드라이브에 특수한 이름의 파일을 넣어두면, 검사 결과가 실패했음에도 화면에는 성공한 것처럼 속이는 공격이 가능합니다. 이는 보안 검사 결과를 눈속임하여 사용자가 변조된 장치를 믿게 만듭니다.
🇺🇸 원문 (English)
openssl-encrypt (pip package, versions <= 1.4.8) fails to sanitize filenames read from untrusted drive data (outside the AES-GCM authenticated manifest) before printing them in the verify-usb command's output. An attacker can plant filenames containing terminal cursor-movement and erase-line control bytes that repaint a forged PASSED verdict on screen, masking actual tamper detection. Fixed in 1.4.9 by routing drive-derived names through sanitize_for_display().
📍 영향받는 시스템
openssl-encrypt pip package (versions <= 1.4.8)
⚔️ 공격 벡터
신뢰할 수 없는 드라이브에 터미널 제어 문자가 포함된 파일명을 생성하여 배치
🛡️ 대응 방법
openssl-encrypt 패키지를 1.4.9 버전 이상으로 업데이트
🔧 검증 코드
출력된 Version이 1.4.8 이하이면 취약하며, 1.4.9 이상이면 안전합니다.
pip show openssl-encrypt 2>/dev/null | grep -E 'Version'