Log4j là một trình ghi log (thư viện/framework) được viết bằng ngôn ngữ Java. Thư viện này được sử dụng trong hầu hết các ứng dụng, dịch vụ và hệ thống. Do đó, tất cả các ứng dụng có sử dụng Log4j đều bị ảnh hưởng bởi lỗ hổng Log4j được tìm thấy vào năm 2021
Các chức năng của Log4j
Thread safe
Tối ưu cho tốc độ
Hỗ trợ nhiều output (file + console)
Hỗ trợ internationalization
Được thiết kế để xử lý Java Exception khi start
Hỗ trợ nhiều level log: ALL, TRACE, INFO, WARNING, ERROR, FATAL
Bài viết này, sẽ đưa ra vấn đề về lỗ hổng Log4j, cùng với các bước để phát hiện và sửa chữa nó
Log4Shell và lỗ hỏng Log4j là gì
Log4Shell là một lỗ hổng bảo mật mạng quan trọng trên thư viện Log4j, ảnh hưởng đến hoạt động cốt lõi của thư viện. Nó cho phép kẻ tấn công có thể kiểm soát một thiết bị hoặc ứng dụng được kết nối mạng internet bằng cách thực hiện thực thi mã từ xa. Khi thực thi thành công kẻ tấn công có thể :
- Chạy bất kỳ mã nào trên thiết bị hoặc hệ thống
- Truy cập tất cả mạng và dữ liệu
- Sửa đổi hoặc mã hóa bất kỳ tệp nào trên ứng dụng hoặc thiết bị bị ảnh hưởng
Lỗ hổng này được báo cáo lần đầu tiên vào ngày 24 tháng 11 năm 2021, bởi Chen Zhaojun, một nhà nghiên cứu bảo mật tại Alibaba. Tiếp theo, NIST đã công bố lỗ hổng này trong cơ sở dữ liệu về lỗ hổng bảo mật quốc gia và đặt tên là CVE-2021-44228. Apache Software Foundation sau đó đã xếp hạng lỗ hổng này là 10 về mức độ nghiêm trọng của CVSS.
Sau đó Apache đã phát hành một bản vá cho lỗ hổng này nhưng một số phần vẫn chưa được khắc phục, dẫn đến các lỗ hổng khác.
- CVE-2021-45046: tạo điều kiện tấn công Denial of Service (DoS) thông qua cơ chế tra cứu JNDI.
- CVE-2021-45105: cho phép tin tặc kiểm soát thông tin luồng Context Map và gây ra cuộc tấn công DOS bằng cách tạo ra 1 chuỗi thủ công.
- CVE-2021-44832: tác động đến tất cả các phiên bản Log4j 2 thông qua tính năng chèn mã từ xa.
Xác định chương trình bị ảnh hưởng và khắc phục lổ hỏng Log4j
Cập nhật phiên bản Log4j của bạn
Xác định phiên bản Log4j:
#lsof | grep log4j
hoặc dùng lệnh find
#find / -name ‘log4j*’
Với phiên bản log4j 2.17.1 là phiên bản cập nhật và ổn định để hạn chế bị tấn công do lỗ hỏng Log4j , nếu phiên bản hiện tại bạn đang dùng thấp hơn có thể cập nhật phiên bản Log4j lên.
Sử dụng tường lửa và hệ thống bảo mật mới nhất
Web Application Firewall (WAF) có thể bảo vệ phạm vi mạng của bạn khỏi các cuộc tấn công bằng cách dò tìm và quét các gói dữ liệu đến và đi và chặn các gói dữ liệu đáng ngờ.
Cập nhật hệ thống phát hiện xâm nhập (IDS), hệ thống ngăn chặn xâm nhập (IPS), v.v., với các rule mới nhất. Các hệ thống này sẽ giúp bạn chặn hoặc lọc lưu lượng RMI và LDAP kết nối với máy chủ LDAP nguy hại.
Sử dụng xác thực nhiều lớp (MFA- multi-factor authentication )
Thiết lập xác thực đa yếu tố sẽ nâng cao bảo mật hệ thống tốt hơn, nó làm tăng độ khó và thời gian của kẻ tấn công để thực hiện một cuộc tấn công toàn diện, đồng thời nó cũng có thể thông báo cho bạn về sự cố ngay lập tức để bạn có thể thực hiện các bước khắc phục cần thiết.
Gỡ bỏ JNDI
JNDI được sử dụng để thực thi mã dựa trên dữ liệu đầu vào để ghi nhật ký và bất kỳ ai cũng có thể thao tác dễ dàng vì trình ghi chấp nhận bất kỳ yêu cầu nào mà không cần xác minh. Ở đó lỗ hổng Log4j sẽ dễ bị khai thác bằng một chuỗi đơn giản. Khi kẻ tấn công đưa nó vào, trình ghi nhật ký sẽ chấp nhận thao tác được yêu cầu trong chuỗi và thực thi nó ngay lập tức mà không cần phải xác minh.
Lookup JNDI đã được tắt trong phiên bản Log4j 2.16.0 theo mặc định để cố gắng bảo mật các ứng dụng và hệ thống của bạn.
Sử dụng trình quét lỗ hổng Log4j
Một số công cụ quét Log4j tốt nhất là:
- Microsoft 365 Defender
- Amazon Inspector and AWS
- CloudStrike Archive Scan Tool (CAST)
- Google Cloud Logging detection
- BurpSuite Log4j Scanner
- Huntress Log4Shell Vulnerability Tester
- WhiteSource Log4j Detect
- JFrog Open-Source Scanning tools for Log4j
Tóm lại lỗ hổng Log4j là một vấn đề bảo mật quan trọng. Vì vậy, nếu bạn muốn bảo vệ hệ thống và ứng dụng của mình khỏi lỗ hổng này, hãy đảm bảo bạn nâng cấp thư viện Log4j lên phiên bản mới nhất và 1 số vấn đề trong bài viết trên để phòng tránh. Bạn có thể tham khảo thêm bài viết khác về Log4j tại đây
P.A Việt Nam cung cấp đa dạng các Plan Hosting đáp ứng yêu cầu của khách hàng
Hosting Phổ Thông
Hosting Chất Lượng Cao
Tham khảo các ưu đãi: https://www.pavietnam.vn/vn/tin-khuyen-mai/