🇰🇷 한글 설명
Budibase 3.39.18 미만 버전에서 MySQL 통합 기능의 취약점이 발견되었습니다. 공격자가 백틱과 스택된 SQL 문을 포함한 테이블 이름을 생성하면, 관리자가 스키마 검색을 실행할 때 악성 SQL 문이 실행될 수 있습니다.
💡 쉬운 설명
공격자가 특수한 이름의 데이터베이스 테이블을 만들어 놓으면, 관리자가 시스템을 점검하는 순간 공격자가 원하는 명령이 몰래 실행될 수 있는 보안 결함입니다. 이를 방지하기 위해 테이블 이름을 안전하게 처리하는 과정이 누락되어 발생했습니다.
🇺🇸 원문 (English)
Budibase is an open-source low-code platform. Prior to 3.39.18, packages/server/src/integrations/mysql.ts enabled multipleStatements and inserted an unescaped tableName into a DESCRIBE statement. An attacker able to create a MySQL table with a backtick and stacked statement in its name could wait for a Budibase administrator to run schema discovery, causing the second statement to execute. The fix applies quoteMySqlIdentifier before constructing the query. This issue is fixed in version 3.39.18.
📍 영향받는 시스템
Budibase versions prior to 3.39.18
⚔️ 공격 벡터
MySQL 테이블 이름에 백틱과 추가 SQL 문을 삽입하여 관리자의 스키마 검색 동작을 유도하는 방식
🛡️ 대응 방법
Budibase를 버전 3.39.18 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전 정보가 3.39.18 이상인지 확인하여 취약점 해결 여부를 판단합니다.
curl -s http://<budibase-host>/api/version | grep -E '3.39.18'