Log4j là gì, Log4j đang gặp vấn đề gì, wowhay.com chia sẻ về log4j bạn đọc ngay để biết nhé!
Log4j là gì?
Log4j là một thư viện được sử dụng bởi nhiều ứng dụng Java. Log4j là một trong những thư viện Java phổ biến nhất cho đến nay. Hầu hết các ứng dụng Java đều ghi nhật ký dữ liệu và không có gì làm cho việc này dễ dàng hơn Log4j.
Log4j là một thư viện Java và mặc dù ngôn ngữ lập trình ngày nay ít phổ biến hơn với người tiêu dùng, nhưng nó vẫn được sử dụng rất rộng rãi trong các hệ thống doanh nghiệp và ứng dụng web.
Thách thức ở đây là tìm ra Log4j vì cách đóng gói Java hoạt động. Có thể bạn có Log4j ẩn ở đâu đó trong ứng dụng của mình và thậm chí không biết điều đó.
Trong hệ sinh thái Java, các phần phụ thuộc được phân phối dưới dạng tệp lưu trữ Java (JAR), là các gói có thể được sử dụng như một thư viện Java. Các công cụ thường được sử dụng, chẳng hạn như Maven và Gradle, có thể tự động thêm tệp JAR khi bạn xây dựng ứng dụng Java của mình.
Một JAR cũng có thể chứa một JAR khác để đáp ứng sự phụ thuộc, điều này có nghĩa là một lỗ hổng bảo mật có thể được ẩn đi nhiều cấp độ trong ứng dụng của bạn. Trong một số tình huống, một phụ thuộc kéo theo hàng trăm phụ thuộc khác khiến việc tìm kiếm càng khó khăn hơn.
Về cơ bản, trong thế giới Java, bạn có thể có một JAR lồng trong một JAR lồng trong một JAR. Điều này tạo ra nhiều lớp mà tất cả đều cần được điều tra. Chỉ nhìn trực tiếp vào các tệp JAR mà dự án của bạn kéo vào có thể là không đủ, vì Log4j có thể đang ẩn bên trong tệp JAR khác!
Log4j đang gặp vấn đề gì?
Một lỗ hổng trong một thư viện ghi nhật ký được sử dụng rộng rãi đã trở thành một cuộc khủng hoảng an ninh toàn diện, ảnh hưởng đến các hệ thống kỹ thuật số trên internet.
Các tin tặc đã cố gắng khai thác nó, nhưng ngay cả khi các bản sửa lỗi xuất hiện, các nhà nghiên cứu cảnh báo rằng lỗ hổng này có thể gây ra hậu quả nghiêm trọng trên toàn thế giới.
Vấn đề nằm ở Log4j, một khuôn khổ ghi nhật ký Apache mã nguồn mở, phổ biến mà các nhà phát triển sử dụng để lưu giữ hồ sơ hoạt động trong một ứng dụng. Những người phản hồi bảo mật đang cố gắng vá lỗi, lỗi này có thể dễ dàng bị lợi dụng để kiểm soát từ xa các hệ thống dễ bị tấn công.
Đồng thời, tin tặc đang tích cực quét internet để tìm các hệ thống bị ảnh hưởng. Một số đã phát triển các công cụ tự động khai thác lỗi, cũng như các loại sâu có thể lây lan độc lập từ hệ thống dễ bị tấn công này sang hệ thống khác trong điều kiện thích hợp.
Ví dụ: Minecraft do Microsoft sở hữu vào thứ Sáu đã đăng hướng dẫn chi tiết về cách người chơi phiên bản Java của trò chơi nên vá hệ thống của họ. “Việc khai thác này ảnh hưởng đến nhiều dịch vụ — bao gồm cả Minecraft Java Edition,” bài đăng viết. “Lỗ hổng này tiềm ẩn nguy cơ máy tính của bạn bị xâm nhập.” Giám đốc điều hành Cloudflare, Matthew Prince, đã tweet hôm thứ Sáu rằng vấn đề “tồi tệ đến mức” công ty cơ sở hạ tầng internet sẽ cố gắng triển khai ít nhất một số biện pháp bảo vệ ngay cả đối với khách hàng trên cấp dịch vụ miễn phí của mình.
Tất cả những gì kẻ tấn công phải làm để khai thác lỗ hổng là gửi một chuỗi mã độc hại một cách chiến lược mà cuối cùng sẽ được ghi lại bằng Log4j phiên bản 2.0 hoặc cao hơn. Việc khai thác cho phép kẻ tấn công tải mã Java tùy ý trên máy chủ, cho phép chúng kiểm soát.
Quét Log4j bằng các công cụ mã nguồn mở
Có hai công cụ mã nguồn mở do Anchore dẫn đầu có khả năng quét một số lượng lớn các định dạng phụ thuộc được đóng gói, xác định sự tồn tại của chúng và báo cáo nếu chúng chứa lỗ hổng bảo mật.
Trong trường hợp này, có thể quét các tệp JAR, đặc biệt là các lớp tệp JAR lồng nhau, là điều chúng tôi muốn. Syft tạo ra một hóa đơn vật liệu phần mềm (SBOM) và Grype là một máy quét lỗ hổng bảo mật. Cả hai công cụ này đều có thể kiểm tra nhiều lớp lưu trữ JAR lồng nhau để khám phá và xác định các phiên bản của Log4j, wowhay.com chia sẻ.