Các lỗ hổng trong Git cho phép bạn ghi đè lên tệp hoặc thực thi mã của riêng bạn

Bản phát hành khắc phục của Git 2.40.1, 2.39.3, 2.38.5, 2.37.7, 2.36.6, 2.35.8, 2.34.8, 2.33.8, 2.32.7, 2.31.8 và 2.30.9 đã được xuất bản .XNUMX , đã sửa năm lỗ hổng. Bạn có thể theo dõi việc phát hành các bản cập nhật gói trong các bản phân phối trên các trang Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD. Như một giải pháp thay thế để bảo vệ chống lại các lỗ hổng, bạn nên tránh chạy lệnh "git apply --reject" khi làm việc với các bản vá bên ngoài chưa được kiểm tra và kiểm tra nội dung của $GIT_DIR/config trước khi chạy "git submodule deinit", "git config --rename-section" và " git config --remove-section" khi xử lý các kho lưu trữ không đáng tin cậy.

Lỗ hổng CVE-2023-29007 cho phép thay thế các cài đặt trong tệp cấu hình $GIT_DIR/config, tệp này có thể được sử dụng để thực thi mã trong hệ thống bằng cách chỉ định đường dẫn đến các tệp thực thi trong các lệnh core.pager, core.editor và core.sshCommand. Lỗ hổng được gây ra bởi một lỗi logic do các giá trị cấu hình rất dài có thể được coi là phần đầu của một phần mới khi đổi tên hoặc xóa một phần khỏi tệp cấu hình. Trên thực tế, việc thay thế các giá trị khai thác có thể đạt được bằng cách chỉ định các URL mô hình con rất dài được lưu vào tệp $GIT_DIR/config trong quá trình khởi tạo. Các URL này có thể được hiểu là cài đặt mới khi cố gắng xóa chúng thông qua "git submodule deinit".

Lỗ hổng CVE-2023-25652 cho phép ghi đè lên nội dung của các tệp bên ngoài cây làm việc khi các bản vá được chế tạo đặc biệt được xử lý bằng lệnh "git apply --reject". Nếu bạn cố thực thi một bản vá độc hại bằng lệnh "git apply" cố ghi vào một tệp thông qua một liên kết tượng trưng, ​​thì thao tác đó sẽ bị từ chối. Trong Git 2.39.1, tính năng bảo vệ thao tác liên kết tượng trưng đã được mở rộng để chặn các bản vá tạo liên kết tượng trưng và cố gắng ghi thông qua chúng. Bản chất của lỗ hổng đang được xem xét là Git đã không tính đến việc người dùng có thể thực thi lệnh “git apply -reject” để ghi các phần bị từ chối của bản vá dưới dạng tệp có phần mở rộng “.rej” và kẻ tấn công có thể sử dụng cơ hội này để ghi nội dung vào một thư mục tùy ý, miễn là các quyền hiện tại cho phép.

Ngoài ra, ba lỗ hổng chỉ xuất hiện trên nền tảng Windows đã được sửa: CVE-2023-29012 (tìm kiếm tệp thực thi doskey.exe trong thư mục làm việc của kho lưu trữ khi thực hiện lệnh "Git CMD", cho phép bạn tổ chức việc thực thi mã của bạn trên hệ thống của người dùng), CVE-2023 -25815 (tràn bộ đệm trong khi xử lý tệp bản địa hóa tùy chỉnh trong gettext) và CVE-2023-29011 (khả năng thay thế tệp connect.exe khi làm việc qua SOCKS5).

Nguồn: opennet.ru

Thêm một lời nhận xét