← 보안 블로그로 돌아가기
보안 브리핑 7분 읽기

심각한 PostgreSQL 취약점 CVE-2025-1094, 원격 코드 실행 가능

PostgreSQL의 libpq에 존재하는 심각한 SQL 인젝션 결함으로 인해 공격자가 원격 코드 실행을 달성할 수 있습니다. CVSS 8.1 — 17.3, 16.7, 15.11, 14.16, 13.19 이전의 모든 버전이 영향을 받습니다. 즉시 패치하세요.


핵심 요약

다음으로 추적되는 심각한 취약점인 CVE-2025-1094이 PostgreSQL의 libpq 라이브러리에서 발견되었으며, SQL 쿼리가 문자열 이스케이프를 처리하는 방식에 영향을 미칩니다. 이 결함으로 인해 공격자는 임의의 SQL 명령을 삽입할 수 있으며, 특정 설정에서는 원격 코드 실행(RCE)을 데이터베이스 서버에서 달성할 수 있습니다.

⚠️ CVE-2025-1094 — CVSS 8.1(높음)

유형: libpq 함수의 부적절한 따옴표 처리로 인한 SQL 인젝션

영향: 원격 코드 실행, 데이터 유출, 권한 상승

영향받는 버전: PostgreSQL < 17.3, < 16.7, < 15.11, < 14.16, < 13.19


기술 분석

근본 원인

이 취약점은 PostgreSQL의 libpq 함수에 존재하며, 구체적으로는 PQescapeLiteral(), PQescapeIdentifier(), PQescapeString()그리고 PQescapeStringConn()함수입니다. 이 함수들은 사용자가 입력한 값이 SQL 쿼리에 삽입되기 전에 이스케이프 처리하는 역할을 합니다.

이 결함은 잘못된 형식의 UTF-8 바이트 시퀀스를 부적절하게 처리하는 데서 비롯됩니다. 형식이 잘못된 UTF-8을 포함하는 특별히 조작된 문자열이 이러한 이스케이프 함수에 전달되면 따옴표 처리 로직을 우회할 수 있어, 공격자가 문자열 컨텍스트를 벗어나 임의의 SQL을 삽입할 수 있습니다.

악용 경로

  1. 진입 지점: 사용자 입력을 받아 이스케이프 함수에 전달하는 libpq 사용 애플리케이션이라면 무엇이든
  2. 우회: 공격자가 이스케이프 로직을 혼란시키는 잘못된 UTF-8 시퀀스가 포함된 조작된 페이로드를 전송
  3. 인젝션: 형식이 잘못된 입력이 SQL 문자열 경계를 깨뜨려 임의의 SQL 실행을 가능하게 함
  4. RCE: PostgreSQL의 COPY TO/FROM PROGRAM 또는 커스텀 함수 생성을 이용해 공격자는 OS 명령을 실행할 수 있습니다

개념 증명(PoC)

Rapid7 연구진은 이 취약점을 BeyondTrust Remote Support의 CVE-2024-12356과 연계하면 인증 없는 RCE가 가능함을 입증했습니다.


영향 평가

요인등급세부 사항
CVSS 점수8.1(높음)네트워크로 접근 가능하며, 일부 설정에서는 인증이 필요하지 않음
악용 가능성높음PoC 공개됨, 실전 악용 확인됨
영향받는 설치 환경방대함PostgreSQL은 전 세계 기업 데이터베이스의 약 35%를 구동합니다
데이터 리스크심각전체 데이터베이스 읽기/쓰기, OS 수준 접근 가능성

대응 단계

  1. 즉시 패치: PostgreSQL 17.3, 16.7, 15.11, 14.16 또는 13.19로 업그레이드
  2. 애플리케이션 감사: 다음의 사용 여부를 검색: PQescapeLiteral, PQescapeIdentifier, 및 관련 함수
  3. 매개변수화된 쿼리 사용: 이스케이프를 사용한 문자열 연결 대신 PQexecParams()를 사용하십시오
  4. 네트워크 분할: PostgreSQL이 인터넷에 직접 노출되지 않도록 하십시오
  5. 악용 모니터링: 비정상적인 COPY PROGRAM 사용 여부를 쿼리 로그에서 확인하십시오

Kensai로 조직을 보호하세요

331,910개 이상의 CVE를 색인화한 AI 기반 취약점 관리.

무료 체험 시작하기

안전을 유지하세요. 경계를 늦추지 마세요.

🗡️ KENSAI 보안팀

🛡️ 귀하의 웹사이트는 안전한가요?

공격자보다 먼저 취약점을 발견하세요.

웹사이트를 무료로 스캔하세요 →

📚 관련 기사