🇰🇷 한글 설명
PostgreSQL Anonymizer에서 권한이 없는 마스킹 사용자가 anon.hash() 함수를 반복 호출하여 (시드, 해시 출력) 쌍을 수집함으로써 솔트(salt)를 알아낼 수 있는 취약점이 발견되었습니다. 이를 통해 오프라인 무차별 대입 공격(brute-force attack)을 수행하여 데이터를 유추할 수 있습니다. 이 문제는 PostgreSQL Anonymizer 3.2.3 및 이후 버전에서 해결되었습니다.
💡 쉬운 설명
데이터를 가짜로 만들어 숨겨주는 기능의 허점을 이용해, 원래의 진짜 데이터를 알아낼 수 있는 보안 결함입니다. 공격자가 암호화에 사용된 비밀 키를 찾아내어 숨겨진 정보를 복구할 위험이 있습니다.
🇺🇸 원문 (English)
PostgreSQL Anonymizer contains a vulnerability that allows unprivileged masked users to repeatedly call the anon.hash() function and collects (seed, hash_output) pairs to perform an offline brute-force attack and deduce the salt. A masked role can run a RESTRICTED function when the call is placed inside the sub-select. The problem is resolved in PostgreSQL Anonymizer 3.2.3 and later versions
📍 영향받는 시스템
PostgreSQL Anonymizer 3.2.3 미만 버전
⚔️ 공격 벡터
제한된 권한을 가진 사용자가 서브쿼리 내에서 anon.hash() 함수를 반복 호출하여 데이터를 수집하는 방식
🛡️ 대응 방법
PostgreSQL Anonymizer를 3.2.3 이상의 최신 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 버전 번호가 3.2.3보다 낮은지 확인하십시오.
python3 -c 'import pkg_resources; print(pkg_resources.get_distribution("postgresql_anonymizer").version)' 2>/dev/null || echo 'Not installed'