Dự án quản lý phiên bản mã nguồn Git vừa phát hành bản vá khẩn cấp cho lỗ hổng CVE-2025-48384. Lỗ hổng cho phép kẻ tấn công thực thi mã tùy ý trên máy trạm của lập trình viên ngay khi họ thực hiện thao tác clone một repository có chứa các submodule bị chế tác đặc biệt.
📋 Thuộc Tính Lỗ Hổng:
| Mã Lỗ Hổng | CVE-2025-48384 |
| Điểm CVSS | 8.8 / High |
| Lệnh Kích Hoạt | git clone --recurse-submodules hoặc git submodule update |
| Phần Mềm Bị Ảnh Hưởng | Git trên Windows, macOS và Linux phiên bản trước 2.47.2 |
1. Nguyên nhân lỗi: Ký tự Carriage Return (\\r) trong tệp .gitmodules
Khi Git phân tích tệp cấu hình .gitmodules để khởi tạo đường dẫn cho các submodule con, trình phân tích cú pháp không xử lý triệt để ký tự xuống dòng kiểu Windows (\\r\\n). Kẻ tấn công có thể chèn các tham số dòng lệnh bí mật vào tên submodule:
[submodule "evil\r\n\turl = ssh://-oProxyCommand=sh -c 'id'//foo"]
path = evil
url = https://github.com/example/repoKhi Git đệ quy khởi tạo submodule, lệnh SSH được gọi kèm theo cờ -oProxyCommand đã được tiêm vào, dẫn đến việc shell của hệ điều hành tự động thực thi payload độc hại mà không cần người dùng can thiệp.
2. Biện pháp khắc phục cho cộng đồng lập trình viên
- Cập nhật Git Client: Nâng cấp ngay ứng dụng Git lên phiên bản mới nhất (2.47.2+ hoặc 2.48.x).
- Cẩn trọng khi clone với cờ đệ quy: Kiểm tra kỹ tệp
.gitmodulestrước khi sử dụng cờ--recurse-submodulestrên các repo công cộng.