CVE-2026-17347 in pgAdminthông tin

Tóm tắt

Bởi VulDB • 31/07/2026

Cài đặt MASTER_PASSWORD_HOOK, được giới thiệu trong pgAdmin 4 phiên bản 7.2, cho phép một quản trị viên cấu hình một lệnh bên ngoài trả về khóa mã hóa theo từng người dùng, với %u trong chuỗi đã cấu hình sẽ được thay thế bằng tên của người dùng hiện tại. Cách triển khai trước đó đã chèn trực tiếp tên người dùng vào chuỗi lệnh và thực thi kết quả bằng subprocess.Popen(..., shell=True). Vì tên người dùng có thể bắt nguồn từ một nguồn xác thực bên ngoài (các claim OAuth/OIDC, Kerberos, xác thực máy chủ web) thay vì là giá trị do pgAdmin kiểm soát hoàn toàn, nên một tên người dùng chứa các ký tự đặc biệt của shell (';', '$()', dấu backtick, pipes, '&&', newline) cho phép một người dùng đã được xác thực thực thi lệnh tùy ý với tư cách là tài khoản dịch vụ pgAdmin trong bất kỳ triển khai nào mà chuỗi hook đã cấu hình sử dụng %u.

Bản sửa lỗi sẽ phân tách (tokenise) chuỗi hook do quản trị viên tin cậy và cấu hình thành một vector đối số đầu tiên (sử dụng shlex ở chế độ POSIX-quoting, với việc thoát bằng dấu gạch chéo ngược bị vô hiệu hóa để tránh việc các đường dẫn kiểu Windows bị phân tích cú pháp sai), sau đó thay thế tên người dùng không đáng tin vào từng phần tử argv riêng lẻ và thực thi với shell=False. Do đó, tên người dùng luôn được giới hạn trong một phần tử argv duy nhất; bất kỳ ký tự đặc biệt nào của shell mà nó chứa sẽ trở nên vô hiệu hóa (inert). Các quản trị viên whose MASTER_PASSWORD_HOOK trước đây dựa vào các tính năng của shell (pipes, chuyển hướng, mở rộng biến môi trường, globbing) ngay trong chuỗi hook phải di chuyển logic đó vào script được gọi thực thi, vì nó không còn được một shell diễn giải nữa.

Vấn đề này ảnh hưởng đến pgAdmin 4: từ phiên bản 7.2 trước 9.17.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

chịu trách nhiệm

PostgreSQL

Đặt trước

25/07/2026

Tiết lộ

31/07/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!