🇰🇷 한글 설명
OpenBao v2.5.3 이전 버전에서 PostgreSQL 데이터베이스 시크릿 엔진의 역할 권한 취소 시 스키마 이름에 대한 적절한 데이터베이스 인용이 누락되어 있습니다. 이로 인해 역할 취소 실패 또는 SQL 삽입 공격으로 이어질 수 있습니다.
💡 쉬운 설명
OpenBao는 암호와 접근권한을 관리하는 도구인데, 특정 버전에서 데이터베이스 사용자 권한을 제거할 때 특수 문자를 제대로 처리하지 않습니다. 이를 악용하면 공격자가 데이터베이스를 직접 제어할 수 있습니다.
🇺🇸 원문 (English)
OpenBao is an open source identity-based secrets management system. Prior to version 2.5.3, when OpenBao revoked privileges on a role in the PostgreSQL database secrets engine, OpenBao failed to use proper database quoting on schema names provided by PostgreSQL. This could lead to role revocation failures, or more rarely, SQL injection as the management user. This vulnerability was original from HashiCorp Vault. The vulnerability is addressed in v2.5.3. As a workaround, audit table schemas and ensure database users cannot create new schemas and grant privileges on them.
📍 영향받는 시스템
OpenBao < 2.5.3 (PostgreSQL 데이터베이스 시크릿 엔진 사용 환경)
⚔️ 공격 벡터
역할 권한 취소 요청 시 스키마 이름에 SQL 구문을 삽입하여 임의 SQL 명령 실행
🛡️ 대응 방법
OpenBao를 v2.5.3 이상으로 즉시 업그레이드; 임시 조치로 데이터베이스 스키마 감사 및 사용자 스키마 생성 권한 제한
🔧 검증 코드
OpenBao 설치 여부를 확인합니다. 설치되어 있으면 패키지 정보를 확인 후 버전이 2.5.3 이상인지 검증하고, 미설치면 'Not found'가 출력됩니다.
dpkg -l 2>/dev/null | grep openbao || ls -la /opt/bao/bin/bao 2>/dev/null || echo 'Not found'