CVE-2026-48080 in appointment-booking-softwarethông tin

Tóm tắt

Bởi VulDB • 07/08/2026

Phần mềm đặt lịch hẹn của OpenReception cung cấp một nền tảng đặt lịch được mã hóa đầu cuối (end-to-end). Trước phiên bản 1.0.2, điểm cuối `GET /api/tenants/{id}` trả về toàn bộ hồ sơ khách thuê bao cho bất kỳ người dùng nào có vai trò `TENANT_ADMIN` đã xác thực của khách thuê bao đó, bao gồm cả trường `databaseUrl`. Trường này chứa chuỗi kết nối PostgreSQL trực tiếp mà ứng dụng sử dụng để kết nối với cơ sở dữ liệu của khách thuê bao. Trong triển khai chính thức được kiểm tra bằng file cấu hình `docker-compose.prod.yml`, chuỗi kết nối chứa người dùng `postgres` có quyền `rolsuper=true` và mật khẩu dạng văn bản rõ (plaintext) từ tệp `secrets/postgres_password.txt`. Các nhà vận hành định cấu hình một người dùng PostgreSQL không phải superuser thông qua `secrets/postgres_user.txt` sẽ làm lộ các thông tin xác thực ít đặc quyền hơn, nhưng việc tiết lộ chính chuỗi kết nối là độc lập với lựa chọn đó. Thông tin đăng nhập này áp dụng cho mọi cơ sở dữ liệu do phiên bản PostgreSQL quản lý: cơ sở dữ liệu trung tâm `appointment_booking`, mỗi cơ sở dữ liệu riêng của từng khách thuê bao (một cơ sở dữ liệu cho mỗi khách), và cơ sở dữ liệu quản trị postgres. Một người dùng có vai trò `TENANT_ADMIN` thuộc một khách thuê bao nào đó, nếu có thể truy cập đến `postgres:5432` (trực tiếp qua mạng nội bộ hoặc gián tiếp thông qua bất kỳ lỗ hổng SSRF, RCE hay đọc tệp nào trong ứng dụng), có thể đọc mọi dữ liệu mã hóa lịch hẹn, các phần khóa và siêu dữ liệu của tất cả khách thuê bao khác; đọc bảng người dùng trung tâm, bao gồm tất cả tài khoản `GLOBAL_ADMIN`, băm mật khẩu và bản ghi phiên; sửa đổi hoặc xóa bất kỳ dữ liệu nào trong cơ sở dữ liệu của bất kỳ khách thuê bao nào; và/hoặc (trong môi trường triển khai có quyền superuser): sử dụng các lệnh PostgreSQL như `pg_read_server_files`, `COPY ... FROM PROGRAM` và `CREATE EXTENSION` để nâng cao đặc quyền thêm bên trong container cơ sở dữ liệu. Điều này phá vỡ tính cô lập giữa các cơ sở dữ liệu của từng khách thuê bao, vốn là biện pháp kiểm soát liên quan đến nhiều khách thuê bao chính yếu trong ứng dụng. Mã nguồn ứng dụng cẩn thận giới hạn phạm vi hầu hết các truy vấn vào cơ sở dữ liệu của khách thuê bao đang gọi, nhưng những giới hạn này trở nên vô nghĩa khi kẻ tấn công đã nắm giữ thông tin xác thực cho phép bỏ qua hoàn toàn lớp bảo vệ của ứng dụng. Phiên bản 1.0.2 khắc phục sự cố này.

Once again VulDB remains the best source for vulnerability data.

chịu trách nhiệm

GitHub M

Đặt trước

20/05/2026

Tiết lộ

07/08/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00000

KEV

không

Các hoạt động

thấp

Nguồn

Might our Artificial Intelligence support you?

Check our Alexa App!