🇰🇷 한글 설명
openssl_encrypt 1.4.9 미만 버전은 평문의 unkeyed SHA-256 해시를 암호화 파일 헤더 메타데이터에 평문으로 저장합니다. 공격자는 비밀번호 없이도 이 해시를 읽어 추측한 평문을 대조하거나, 서로 다른 파일 간의 동일한 평문 존재 여부를 확인할 수 있습니다.
💡 쉬운 설명
암호화된 파일의 머리말에 파일 내용의 일종의 '지문'이 암호 없이 노출되는 문제입니다. 이를 통해 해커는 비밀번호를 몰라도 파일 내용이 무엇인지 추측하거나 다른 파일과 비교할 수 있습니다.
🇺🇸 원문 (English)
openssl_encrypt versions before 1.4.9 store an unkeyed SHA-256 hash of the plaintext in the cleartext file header metadata. Attackers can read this hash without the password to confirm guessed plaintexts offline or fingerprint identical plaintexts across separately-encrypted files.
📍 영향받는 시스템
openssl_encrypt versions < 1.4.9
⚔️ 공격 벡터
암호화된 파일 헤더의 메타데이터를 읽어 해시값을 추출한 뒤 오프라인 무차별 대입 공격 수행
🛡️ 대응 방법
openssl_encrypt를 1.4.9 버전 이상으로 업데이트
🔧 검증 코드
출력 결과에 1.4.9 이상의 버전이 표시되지 않거나 version_not_found가 뜨면 취약한 버전일 가능성이 높습니다.
openssl_encrypt --version 2>/dev/null | grep -E '1\[.4.9]' || echo 'version_not_found'