🇰🇷 한글 설명
NocoBase의 @nocobase/plugin-collection-sql 플러그인에서 SQL 키워드 블랙리스트가 불완전하게 구현되어 발생하는 취약점입니다. 관리자 권한을 가진 사용자가 pg_shadow, pg_roles와 같은 PostgreSQL 시스템 카탈로그 테이블에 접근하여 비밀번호 해시 및 데이터베이스 메타데이터를 읽을 수 있습니다.
💡 쉬운 설명
프로그램이 위험한 단어를 걸러내는 기능이 부족하여, 관리자 권한을 가진 사람이 데이터베이스의 중요한 비밀번호 정보나 시스템 정보를 몰래 훔쳐볼 수 있는 문제입니다. 이를 통해 데이터베이스 전체의 보안이 위험해질 수 있습니다.
🇺🇸 원문 (English)
NocoBase is an AI-powered no-code/low-code platform for building business applications and enterprise solutions. In 2.0.59 and earlier, NocoBase @nocobase/plugin-collection-sql used the checkSQL() function in packages/plugins/@nocobase/plugin-collection-sql/src/server/utils.ts with an incomplete keyword blacklist that did not restrict PostgreSQL system catalog tables such as pg_shadow, pg_roles, and pg_stat_activity, allowing an admin-role user to read password hashes and database metadata through the SQL Collection feature. This vulnerability is fixed in 2.1.0-alpha.46.
📍 영향받는 시스템
NocoBase 2.0.59 및 그 이전 버전
⚔️ 공격 벡터
SQL Collection 기능을 이용한 시스템 카탈로그 테이블(pg_shadow 등)에 대한 비정상적인 쿼리 실행
🛡️ 대응 방법
NocoBase를 2.1.0-alpha.46 이상의 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 패키지 버전이 2.0.59 이하인지 확인하여 취약 여부를 판단합니다.
npm list @nocobase/plugin-collection-sql