🇰🇷 한글 설명
openssl_encrypt 1.4.0 미만 버전은 generate_pseudorandom_sequence 함수에서 스테가노그래피 픽셀 선택 시 암호학적으로 안전하지 않은 Python의 random 모듈을 사용합니다. 공격자가 비밀번호를 알고 있다면 약 624개의 출력값을 통해 Mersenne Twister 상태를 복구하여 숨겨진 데이터가 포함된 픽셀 위치를 예측할 수 있습니다.
💡 쉬운 설명
데이터를 이미지 속에 숨길 때 사용하는 무작위 번호 생성기가 보안에 취약하여 패턴이 노출될 수 있습니다. 이를 통해 공격자가 이미지 속의 숨겨진 정보를 쉽게 찾아낼 수 있습니다.
🇺🇸 원문 (English)
openssl_encrypt versions before 1.4.0 use Python's non-cryptographic random module for steganographic pixel selection in the generate_pseudorandom_sequence function. Attackers who know the password can recover the Mersenne Twister state from approximately 624 outputs and predict pixel locations containing hidden data for extraction.
📍 영향받는 시스템
openssl_encrypt versions < 1.4.0
⚔️ 공격 벡터
비밀번호를 알고 있는 공격자가 예측 가능한 난수 생성 패턴을 이용해 스테가노그래피 데이터 위치를 추적
🛡️ 대응 방법
openssl_encrypt 버전을 1.4.0 이상으로 업데이트
🔧 검증 코드
출력된 버전이 1.4.0 미만인 경우 취약한 상태임
pip show openssl_encrypt 2>/dev/null | grep Version