1. Trang chủ
  2. » Tất cả

Phân tích lỗ hổng Log4shell (Log4j)

58 54 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 58
Dung lượng 3,85 MB

Nội dung

LỜI CẢM ƠN Nhóm chúng em đặc biệt gửi lời cảm ơn sâu sắc nhất đến thầy TS Phạm Văn Hưởng đã tận tình hướng dẫn, giúp đỡ chúng em trong thời gian học tập tại Học viện và nhất là thời gian nghiên cứu, h.

LỜI CẢM ƠN Nhóm chúng em đặc biệt gửi lời cảm ơn sâu sắc đến thầy TS Phạm Văn Hưởng tận tình hướng dẫn, giúp đỡ chúng em thời gian học tập Học viện thời gian nghiên cứu, hoàn thành báo cáo Trong trình thực báo cáo, hạn chế kinh nghiệm thực tiễn nên báo cáo chúng em cịn vài thiếu sót, chúng em mong nhận nhận xét, đánh giá góp ý từ thầy Một lần nữa, chúng em xin chân thành cảm ơn thầy cô, chúc thầy cô thành công sống công việc Hà Nội, ngày 24 tháng 08 năm 2022 Nhóm sinh viên thực thiện Phạm Duy Chiến Dương Thành Đạt Phạm Tiến Danh LỜI MỞ ĐẦU Hiện nay, vấn đề bảo mật an tồn thơng tin ngày phủ, quan, doanh nghiệp trọng đầu tư Tuy nhiên, tất tổ chức, doanh nghiệp trang bị đầy đủ đảm bảo an tồn, bảo mật thơng tin cách tồn diện Theo khảo sát, khoảng 75% công mạng thực thông qua ứng dụng web thông qua website Website không kiểm tra kỹ lưỡng đảm bảo an tồn, dễ dàng làm mồi cho kẻ công Lỗ hổng bảo mật Log4Shell hay LogJam, mã định danh CVE-2021-44228, bị khai thác thông qua gửi chuỗi (string) đặc biệt tới hệ thống Log4Shell lỗ hổng tồn Apache Log4j, thư viện ghi nhật ký hoạt động (log) Java, vốn sử dụng phổ biến nhiều ứng dụng mạng nội bộ, máy chủ doanh nghiệp, tổ chức Java môi trường đa tảng thiết kế để phù hợp với nhiều hệ điều hành nên máy chủ chạy Windows, Linux hay macOS có nguy bị cơng Các phần mềm phổ biến sử dụng Log4j làm gói ghi nhật ký kể tới Amazon, Apple iCloud, Cisco, Cloudflare, ElasticSearch, Red hat, Steam, Tesla, Twitter trò chơi Minecraft Jen Easterly, Giám đốc Cơ quan An ninh mạng Cơ sở hạ tầng (CISA) phủ liên bang Mỹ gọi lỗ hổng "rủi ro nghiêm trọng" "thách thức cấp bách an ninh mạng" "Hàng triệu máy chủ chứa lỗ hổng Log4Shell Thiệt hại phơi bày vài ngày tới", Joe Sullivan, Giám đốc an ninh Cloudflare cho biết Trong đó, tổ chức phần mềm Apache đánh giá lỗ hổng đạt 10/10 mức độ nghiêm trọng Xuất phát từ thực tế trên, nhóm em lựa chọn đề tài “Phân tích lỗ hổng Log4Shell ” thuộc phạm vi vấn đề nêu để làm báo cáo nhằm góp phần đáp ứng yêu cầu nghiên cứu lý luận, phục vụ công tác đảm bảo an toàn, bảo mật website LỜI CAM ĐOAN Tôi Dương Thành Đạt, mã số sinh viên AT160117, sinh viên lớp AT16A, khóa AT16 ATTT Người hướng dẫn TS Phạm Văn Hưởng Tôi xin cam đoan tồn nội dung trình bày đồ án Phân tích lỗ hổng Log4Shell kết trình tìm hiểu nghiên cứu tơi Các liệu nêu đồ án hoàn toàn trung thực, phản ánh kết đo đạc thực tế Mọi thơng tin trích dẫn tn thủ quy định sở hữu trí tuệ; tài liệu tham khảo liệt kê rõ ràng Tơi xin chịu hồn toàn trách nhiệm với nội dung viết đồ án Hà nội, ngày 24 tháng 08 năm 2022 Người cam đoan Dương Thành Đạt MỤC LỤC CHƯƠNG Tổng quan lỗ hổng phần mềm 1.1 Tổng quan đề tài 1.2 Tìm hiểu JNDI 1.2.1 Khái niệm .5 1.2.2 Cấu trúc 1.2.3 Tham chiếu JNDI 1.2.4 JNDI Remote class loading 1.3 Tìm hiểu giao thức LDAP 1.3.1 Khái niệm .8 1.3.2 Cấu trúc 1.3.2.1 Directory server 1.3.2.2 Entries 1.3.2.3 Filter LDAP 10 1.3.2.4 URL LDAP 12 1.4 LOG4J 13 1.4.1 Tìm hiểu thư viện LOG4J 13 1.5 LOG4SHELL 14 1.5.1 Tìm hiểu lỗ hổng .14 1.5.1.1 Khái niệm lỗ hổng Log4Shell 14 1.5.1.2 Mức độ nghiêm trọng 15 1.5.1.3 Cách thức công đơn giản 15 1.5.2 Khai thác lỗ hổng Log4Shell 16 1.5.2.1 Tiến trình cơng 16 1.5.2.2 JNDI Vector 17 CHƯƠNG Phân tích lỗ hổng phần mềm 23 2.1 Quy trình phân tích .23 2.1.1 Quy trình 23 2.1.2 Kĩ thuật phân tích 25 2.1.2.1 Phương pháp OWASP 25 2.1.2.2 Kĩ thuật đánh giá 27 2.2 Xây dựng môi trường 27 2.3 Debug 28 2.3.1 Cấu trúc thành phần 28 2.3.2 Phân tích .29 CHƯƠNG Thực Nghiệm 36 3.1 Mơ hình thực nghiệm 36 3.1.1 Mơ hình cơng 36 3.1.2 Tấn công .37 3.2 Giải pháp khắc phục 39 3.2.1 Lỗ hổng Log4shell gây hại đến người dùng ? 39 3.2.2 Giải pháp khắc phục lỗ hổng Log4shell .40 DANH MỤC TỪ NGỮ VIẾT TẮT Từ viết tắt JNDI LDAP SPI API CVSS CVE RCE DNS CORBA Nghĩa Java Naming and Directory Interface Lightweight Directory Access Protocol Serial Peripheral Interface Application Programming Interface Common Vulnerability Scoring System Common Vulnerabilities and Exposures Remote Code Execution Domain Name System Common Object Request Broker Architecture DANH MỤC HÌNH VẼ Hình 1.1: Số liệu thống kê lỗ hổng Log4Shell Hình 1.2: Cấu trúc JNDI Hình 1.3: Các giao thức JNDI 10 Hình 1.4: Mơ hình hoạt động LDAP 11 Hình 1.5: Sơ đồ hoạt động thư viện Log4j 16 Hình 1.6: Quá trình công JNDI .18 Hình 1.7: Kiến trúc cách hoạt động RMI 20 Hình 1.8: Tiến trình cơng RMI Vector 21 Hình 1.9: Thành phần giao thức CORBA 23 Hình 1.10: Tiến trình cơng CORBA Vector 23 Hình 1.11: Tiến trình cơng LDAP Vector 25 Hình 2.1: Cấu trúc thành phần project .33 Hình 2.2: Nội dung file main.java 34 Hình 2.3: Các liệu ghi vào file app.log 34 Hình 2.4: Cách ghi log thư viện Log4j 35 Hình 2.5: Cấu trúc liệu log xuất .35 Hình 2.6: Đặt breakpoint Logger.error 36 Hình 2.7: Hàm logIfEnable 36 Hình 2.8: Hàm logMessageSafely .36 Hình 2.9: Quá trình load liệu file config(log4j.properties) 37 Hình 2.10: Chuyển đổi chuỗi Message sang định dạng tương ứng 37 Hình 2.11: Chức noLookup đặt thành false .38 Hình 2.12: Quá trình gọi từ hàm replace đến hàm resolveVariable 38 Hình 2.13: Phân tích liệu hàm lookup 38 Hình 2.14: Quản lí kết nối jndiManager 39 Hình 2.15: Tạo kết nối đến host định socket 39 Hình 2.16: Các kết nối socket thành lập 39 Hình 3.1: Mơ hình cơng Log4Shell 41 Hình 3.2: Đoạn mã thực log lại username có hành động đăng nhập 42 Hình 3.3: Giao diện đăng nhập ứng dụng 43 Hình 3.4: Khởi chạy server LDAP .43 Hình 3.5: Đăng nhập với Payload LDAP 44 Hình 3.6: Lấy reverse Shell thành công RCE 44 TÓM TẮT ĐỀ TÀI Gần đây, lỗ hổng phần mềm nghiêm trọng công bố Nó có mã định danh CVE-2021-44228, nickname “log4shell” Lỗ hổng làm cộng đồng nghiên cứu bảo mật nói chung cộng đồng nhà phát triển Java nói riêng dậy sóng Nguyên nhân nằm phổ biến thư viện chứa lỗ hổng – log4j2 – sử dụng Ước tính có 35000 thư viện, ứng dụng Java phụ thuộc vào bị ảnh hưởng (số liệu từ Google) dẫn tới 25 triệu máy chủ public toàn giới gặp nguy hiểm Nhưng sau phân tích, chúng tơi nhận thấy tác động sâu rộng Để giúp người dùng, nhà nghiên cứu bảo mật, người quản trị, bảo trì hệ thống có nhìn cụ thể lỗ hổng này, chúng tơi phân tích khía cạnh: chất lỗ hổng, cách khai thác, cách khắc phục đánh giá mức độ ảnh hưởng lỗ hổng với máy chủ giới Việt Nam Các chuyên gia bảo mật khuyến cáo, tin tặc khai thác lỗ hổng để truy cập máy chủ mà khơng cần mật khẩu, từ xâm nhập mạng nội bộ, đánh cắp liệu hay tài sản có giá trị cài đặt phần mềm độc hại khác Việc khai thác đạt thông qua chuỗi văn soạn thảo đầy đủ, yêu cầu đăng nhập, chuỗi tiêu đề hay liệu máy chủ mục tiêu ghi lại Văn đánh lừa máy chủ, chí gửi u cầu đến máy chủ khác tin tặc kiểm soát để cài đặt thêm phần mềm tiến hành lệnh công khác Theo LunaSec, cần thay đổi tên iPhone đủ để kích hoạt lỗ hổng bảo mật máy chủ Apple Còn trò chơi phổ biến Minecraft Microsoft, tin tặc cần đoạn nhắn tin hộp hội thoại để xâm nhập hệ thống ... bị IoT, cloud, v.v… Sự khác lỗ hổng bảo mật thông thường lỗ hổng zero-day nằm chỗ: Lỗ hổng Zero-day lỗ hổng chưa biết tới đối tượng sở hữu cung cấp sản phẩm chứa lỗ hổng Trong thuật ngữ bảo mật... sản phẩm chứa lỗ hổng biết tới tồn lỗ hổng đó, gọi “ngày 0”, ta có thuật ngữ “ lỗ hổng Zeroday ” Thông thường sau phát lỗ hổng 0-day, bên cung cấp sản phẩm tung vá bảo mật cho lỗ hổng để người... Khai thác lỗ hổng Log4Shell 16 1.5.2.1 Tiến trình cơng 16 1.5.2.2 JNDI Vector 17 CHƯƠNG Phân tích lỗ hổng phần mềm 23 2.1 Quy trình phân tích

Ngày đăng: 12/11/2022, 20:19

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

w