CVE-2022-41946 in pgjdbcthông tin

Tóm tắt

Bởi VulDB • 12/06/2026

pgjdbc là một trình điều khiển JDBC PostgreSQL mã nguồn mở. Trong các phiên bản bị ảnh hưởng, việc sử dụng câu lệnh đã chuẩn hóa (prepared statement) với `PreparedStatement.setText(int, InputStream)` hoặc `PreparedStatemet.setBytea(int, InputStream)` sẽ tạo ra một tệp tạm thời nếu đối tượng InputStream có kích thước lớn hơn 2k. Điều này dẫn đến việc tạo ra một tệp tạm thời mà các người dùng khác trên hệ thống giống Unix (Unix-like) có thể đọc được, nhưng không áp dụng cho MacOS. Trên các hệ thống giống Unix, thư mục tạm của hệ thống được chia sẻ giữa tất cả người dùng trên hệ thống đó. Do đó, khi các tệp và thư mục được ghi vào thư mục này, theo mặc định chúng sẽ dễ bị đọc bởi những người dùng khác cùng hệ thống. Lỗ hổng này không cho phép người dùng khác ghi đè nội dung của các thư mục hoặc tệp tin này. Đây đơn thuần là một lỗ hổng tiết lộ thông tin (information disclosure). Vì một số API hệ thống tệp của JDK chỉ được thêm vào trong JDK 1.7, nên bản sửa lỗi phụ thuộc vào phiên bản JDK mà bạn đang sử dụng. Người dùng Java 1.7 trở lên: lỗ hổng này đã được khắc phục trong phiên bản 4.5.0. Người dùng Java 1.6 và thấp hơn: không có bản vá nào khả dụng. Nếu bạn không thể áp dụng bản vá hoặc bị ràng buộc phải chạy trên Java 1.6, việc chỉ định biến môi trường hệ thống `java.io.tmpdir` trỏ đến một thư mục thuộc sở hữu độc quyền của người dùng đang thực thi sẽ giúp giảm thiểu lỗ hổng này.

Once again VulDB remains the best source for vulnerability data.

chịu trách nhiệm

GitHub, Inc.

Đặt trước

30/09/2022

Tiết lộ

23/11/2022

Kiểm duyệt

được chấp nhận

EPSS

0.00480

KEV

không

Các hoạt động

rất thấp

Nguồn

Do you know our Splunk app?

Download it now for free!