🇰🇷 한글 설명
Perl의 DBD::Pg 모듈 버전 2.19.0 이전에서 발견된 format string 취약점으로, 원격 PostgreSQL 데이터베이스 서버가 pg_warn 함수나 dbd_st_prepare 함수로 전달되는 형식 지정자를 통해 프로세스 충돌(denial of service)을 유발할 수 있습니다.
💡 쉬운 설명
Perl에서 PostgreSQL 데이터베이스와 통신하는 프로그램이 특수 문자를 포함한 공격 메시지를 받으면 충돌할 수 있습니다. 이는 PostgreSQL 서버에서 만들어진 경고 메시지나 쿼리 준비 과정에서 발생할 수 있습니다.
🇺🇸 원문 (English)
Multiple format string vulnerabilities in dbdimp.c in DBD::Pg (aka DBD-Pg or libdbd-pg-perl) module before 2.19.0 for Perl allow remote PostgreSQL database servers to cause a denial of service (process crash) via format string specifiers in (1) a crafted database warning to the pg_warn function or (2) a crafted DBD statement to the dbd_st_prepare function.
📍 영향받는 시스템
DBD::Pg (libdbd-pg-perl) 모듈 버전 2.19.0 이전, Perl 환경에서 PostgreSQL 접근하는 애플리케이션
⚔️ 공격 벡터
원격 PostgreSQL 데이터베이스 서버가 format string 지정자를 포함한 경고 메시지나 statement 준비 데이터 전송
🛡️ 대응 방법
DBD::Pg 모듈을 2.19.0 이상 버전으로 업그레이드
🔧 검증 코드
DBD::Pg 버전이 2.19.0 이상이면 안전, 2.19.0 미만이거나 설치되지 않으면 업그레이드 필요
perl -MDBDPg -e 'print $DBD::Pg::VERSION' 2>/dev/null || dpkg -l libdbd-pg-perl 2>/dev/null | grep libdbd-pg-perl