WhiteHat News #ID:2017
VIP Members
-
20/03/2017
-
113
-
356 bài viết
Lỗ hổng thực thi mã nghiêm trọng trong thư viện Libgcrypt
Lỗ hổng trong thư viện mã nguồn miễn phí Libgcrypt có thể tác động đến nhiều ứng dụng.
Các tác giả của dự án Libgcrypt đã nhanh chóng cập nhật bản vá một lỗi nghiêm trọng trong phiên bản 1.9.0. Kẻ tấn công có thể khai thác lỗ hổng để ghi dữ liệu vào máy mục tiêu và thực thi mã.
Đây là lỗi tràn bộ đệm trên phiên bản Libgcrypt 1.9.0 được phát hành vào ngày 19/1/2021. Các phiên bản trước đó không bị ảnh hưởng. Các nhà nghiên cứu cho biết lỗ hổng có thể bị khai thác thông qua giải mã một khối dữ liệu. Lỗ hổng đã được vá trong Libgcrypt phiên bản 1.9.1.
Libgcrypt là một thư viện cung cấp các thuật toán mã hóa hỗ trợ các nhà phát triển ứng dụng, dựa trên mã của GNU Privacy Guard (GnuPG là một phần mềm miễn phí thay thế cho bộ phần mềm mã hóa PGP của công ty Symantec). Libgcrypt tương thích với POSIX, hay nói cách khác nó có thể được sử dụng trên các ứng dụng Linus, Unix và macOSX và khởi chạy thông qua hệ thống biên dịch chéo cho Microsoft Windows.
Nhà nghiên cứu Tavis Ormandy thuộc nhóm nghiên cứu Google Project Zero đã phát hiện và báo cáo lỗ hổng trên cho biết đây là lỗi “dễ khai thác”.
Theo Ormandy, “Lỗi tràn bộ đệm heap trong Libgcrypt bắt nguồn từ giả định không chính xác trong mã quản lý bộ đệm khối (block buffer). Chỉ cần giải mã một số dữ liệu có thể làm tràn bộ đệm heap bằng dữ liệu do kẻ tấn công kiểm soát, không hề có bước xác minh hoặc chữ ký nào được xác thực trước khi xảy ra sự cố”.
Libgcrypt 1.9.0 đã bị gỡ bỏ nhưng chưa xác định được số nhà phát triển ứng dụng đã tải xuống phiên bản này. Các tác giả của thư viện Libgcrypt khuyến cáo các nhà phát triển nên cập nhật thư viện lên phiên bản mới nhất
Chuyên gia về mã hóa Filippo Valsorda nhấn mạnh Homebrew cũng bị ảnh hưởng bởi thư viện Libgcrypt. Homebrew là hệ thống quản lý gói phần mềm mã nguồn mở hỗ trợ việc đơn giản hóa cài đặt phần mềm trên hệ điều hành macOS của Apple và Linux. Các nhà quản lý của Homebrew đã xác nhận lỗi và vá lỗ hổng trên.
Chuyên gia này cũng cảnh báo bản vá lỗi có vấn đề trên các máy sử dụng CPU Intel.
Bên thứ ba, Mã nguồn mở: Các vấn đề về chuỗi cung ứng
Các lỗ hổng trong thư viện của bên thứ ba thường tồn tại dai dẳng trong các ứng dụng ngay cả khi các bản vá được triển khai. Trên thực tế, 70% ứng dụng đang được sử dụng hiện nay có ít nhất một lỗ hổng bảo mật xuất phát từ việc sử dụng thư viện mã nguồn mở, theo báo cáo Tình hình Bảo mật phần mềm mới nhất của công ty Veracode.
“Hầu hết các lỗi (gần 75%) bắt nguồn từ các thư viện đưa vào ứng dụng có thể được xử lý thông qua một bản cập nhật nhỏ và không yêu cầu nâng cấp cả thư viện lớn. Điểm dữ liệu này cho thấy vấn đề không nằm ở việc tái cấu trúc mã mà chính là phát hiện và theo dõi", công ty Veracode cho biết.
Tội phạm mạng cũng nhận thức được các kho mã và thư viện của bên thứ ba là “mỏ vàng” hấp dẫn để phát tán mã độc để từ đó thực hiện các cuộc tấn công chuỗi cung ứng. Gần đây nhất vào tháng 1/2021, 3 gói phần mềm độc hại đã được đưa lên npm, một kho lưu trữ mã dành cho các nhà phát triển JavaScript để chia sẻ và sử dụng lại các khối mã.
Các gói có thể được sử dụng như block trong nhiều ứng dụng web; và bất kỳ ứng dụng nào chứa mã lỗi có thể đánh cắp token và thông tin khác từ người dùng Discord, các nhà nghiên cứu cho biết.
Vào tháng 12/2020, RubyGems, một kho lưu trữ và quản lý gói mã nguồn mở cho ngôn ngữ lập trình web Ruby, đã phải gỡ xuống 2 gói phần mềm sau khi phát hiện các gói này đã bị nhiễm malware.
Các gói này tự động chạy liên tục trên các máy Windows bị nhiễm và thay thế bất kỳ địa chỉ ví Bitcoin hoặc tiền điện tử nào mà chúng tìm thấy trên clipboard của người dùng thành của kẻ tấn công.
Đây là lỗi tràn bộ đệm trên phiên bản Libgcrypt 1.9.0 được phát hành vào ngày 19/1/2021. Các phiên bản trước đó không bị ảnh hưởng. Các nhà nghiên cứu cho biết lỗ hổng có thể bị khai thác thông qua giải mã một khối dữ liệu. Lỗ hổng đã được vá trong Libgcrypt phiên bản 1.9.1.
Libgcrypt là một thư viện cung cấp các thuật toán mã hóa hỗ trợ các nhà phát triển ứng dụng, dựa trên mã của GNU Privacy Guard (GnuPG là một phần mềm miễn phí thay thế cho bộ phần mềm mã hóa PGP của công ty Symantec). Libgcrypt tương thích với POSIX, hay nói cách khác nó có thể được sử dụng trên các ứng dụng Linus, Unix và macOSX và khởi chạy thông qua hệ thống biên dịch chéo cho Microsoft Windows.
Nhà nghiên cứu Tavis Ormandy thuộc nhóm nghiên cứu Google Project Zero đã phát hiện và báo cáo lỗ hổng trên cho biết đây là lỗi “dễ khai thác”.
Theo Ormandy, “Lỗi tràn bộ đệm heap trong Libgcrypt bắt nguồn từ giả định không chính xác trong mã quản lý bộ đệm khối (block buffer). Chỉ cần giải mã một số dữ liệu có thể làm tràn bộ đệm heap bằng dữ liệu do kẻ tấn công kiểm soát, không hề có bước xác minh hoặc chữ ký nào được xác thực trước khi xảy ra sự cố”.
Libgcrypt 1.9.0 đã bị gỡ bỏ nhưng chưa xác định được số nhà phát triển ứng dụng đã tải xuống phiên bản này. Các tác giả của thư viện Libgcrypt khuyến cáo các nhà phát triển nên cập nhật thư viện lên phiên bản mới nhất
Chuyên gia về mã hóa Filippo Valsorda nhấn mạnh Homebrew cũng bị ảnh hưởng bởi thư viện Libgcrypt. Homebrew là hệ thống quản lý gói phần mềm mã nguồn mở hỗ trợ việc đơn giản hóa cài đặt phần mềm trên hệ điều hành macOS của Apple và Linux. Các nhà quản lý của Homebrew đã xác nhận lỗi và vá lỗ hổng trên.
Chuyên gia này cũng cảnh báo bản vá lỗi có vấn đề trên các máy sử dụng CPU Intel.
Bên thứ ba, Mã nguồn mở: Các vấn đề về chuỗi cung ứng
Các lỗ hổng trong thư viện của bên thứ ba thường tồn tại dai dẳng trong các ứng dụng ngay cả khi các bản vá được triển khai. Trên thực tế, 70% ứng dụng đang được sử dụng hiện nay có ít nhất một lỗ hổng bảo mật xuất phát từ việc sử dụng thư viện mã nguồn mở, theo báo cáo Tình hình Bảo mật phần mềm mới nhất của công ty Veracode.
“Hầu hết các lỗi (gần 75%) bắt nguồn từ các thư viện đưa vào ứng dụng có thể được xử lý thông qua một bản cập nhật nhỏ và không yêu cầu nâng cấp cả thư viện lớn. Điểm dữ liệu này cho thấy vấn đề không nằm ở việc tái cấu trúc mã mà chính là phát hiện và theo dõi", công ty Veracode cho biết.
Tội phạm mạng cũng nhận thức được các kho mã và thư viện của bên thứ ba là “mỏ vàng” hấp dẫn để phát tán mã độc để từ đó thực hiện các cuộc tấn công chuỗi cung ứng. Gần đây nhất vào tháng 1/2021, 3 gói phần mềm độc hại đã được đưa lên npm, một kho lưu trữ mã dành cho các nhà phát triển JavaScript để chia sẻ và sử dụng lại các khối mã.
Các gói có thể được sử dụng như block trong nhiều ứng dụng web; và bất kỳ ứng dụng nào chứa mã lỗi có thể đánh cắp token và thông tin khác từ người dùng Discord, các nhà nghiên cứu cho biết.
Vào tháng 12/2020, RubyGems, một kho lưu trữ và quản lý gói mã nguồn mở cho ngôn ngữ lập trình web Ruby, đã phải gỡ xuống 2 gói phần mềm sau khi phát hiện các gói này đã bị nhiễm malware.
Các gói này tự động chạy liên tục trên các máy Windows bị nhiễm và thay thế bất kỳ địa chỉ ví Bitcoin hoặc tiền điện tử nào mà chúng tìm thấy trên clipboard của người dùng thành của kẻ tấn công.
Theo Threatpost