-
09/04/2020
-
93
-
613 bài viết
Phát hiện nhiều lỗ hổng an ninh trong các trình quản lý gói phần mềm phổ biến
Nhiều lỗ hổng an ninh đã được tiết lộ trong các trình quản lý gói phần mềm phổ biến. Nếu bị khai thác, các lỗ hổng này có thể bị hacker lợi dụng để thực thi mã tùy ý và truy cập thông tin nhạy cảm - bao gồm mã nguồn và mã thông báo truy cập (access token) - từ các máy bị xâm nhập.
Tuy nhiên, để thực hiện tấn công, tin tặc phải “lừa” những nhà phát triển “trong tầm ngắm” xử lý một gói độc hại kết hợp với một trong những trình quản lý gói bị ảnh hưởng.
Nhà nghiên cứu Paul Gerste của SonarSource cho biết: “Điều này có nghĩa là hacker không thể thực hiện một cuộc tấn công trực tiếp vào các máy tồn tại lỗ hổng từ xa mà phải “lừa” các nhà phát triển tải các tệp không đúng định dạng. Nhưng liệu rằng bạn có thể luôn hiểu rõ và tin tưởng chủ sở hữu của tất cả các gói mà bạn sử dụng từ internet hoặc kho lưu trữ nội bộ của công ty không?"
Trình quản lý gói là các hệ thống hoặc một bộ công cụ được sử dụng để tự động cài đặt, nâng cấp, định cấu hình các dependency của bên thứ ba cần thiết nhằm mục đích phát triển ứng dụng.
Mặc dù có những rủi ro an ninh cố hữu với các thư viện giả mạo đang tìm cách đóng gói các kho lưu trữ - đòi hỏi các dependency phải được kiểm tra kỹ lưỡng để bảo vệ khỏi các cuộc tấn công chiếm quyền URL và dependency confusion - "hành động quản lý các dependency thường không được coi là một hoạt động tiềm ẩn rủi ro”.
Nhưng các vấn đề mới được phát hiện trong các trình quản lý gói khác nhau cho thấy chúng có thể bị những kẻ tấn công vũ khí hóa để lừa nạn nhân thực thi mã độc. Các lỗi đã được xác định trong các trình quản lý gói sau:
Nếu gói sử dụng kỹ thuật chiếm quyền URL và dependency confusion, nó có thể dẫn đến tình huống mà việc chạy lệnh duyệt cho thư viện có thể dẫn đến việc truy xuất payload ở giai đoạn tiếp theo mà sau đó có thể được sử dụng để khởi phát các cuộc tấn công sau này.
Việc đưa đối số bổ sung và lỗ hổng đường dẫn tìm kiếm không đáng tin cậy được phát hiện trong Bundler, Poetry, Yarn, Composer, Pip và Pipenv có nghĩa là một kẻ xấu có thể thực thi mã bằng tệp thực thi git có chứa phần mềm độc hại hoặc tệp do kẻ tấn công kiểm soát như Gemfile được sử dụng để chỉ định các phụ thuộc cho các chương trình Ruby.
Sau tiết lộ có trách nhiệm vào ngày 9 tháng 9 năm 2021, các bản sửa lỗi đã được phát hành để giải quyết các lỗi trong Bundler, Poetry, Yarn, Composer, và Pnpm. Nhưng các lỗ hổng đường dẫn tìm kiếm không đáng tin cậy trong Composer, Pip và Pipenv thì không được giải quyết.
Gerste cho biết: “Các nhà phát triển là mục tiêu hấp dẫn của tội phạm mạng vì chúng có quyền truy cập vào tài sản sở hữu trí tuệ cốt lõi của một công ty: mã nguồn. Chiếm được mã nguồn cho phép hacker thực hiện hành vi gián điệp hoặc nhúng mã độc vào các sản phẩm của công ty. Điều này thậm chí có thể bị lợi dụng để làm bùng nổ các cuộc tấn công chuỗi cung ứng".
Tuy nhiên, để thực hiện tấn công, tin tặc phải “lừa” những nhà phát triển “trong tầm ngắm” xử lý một gói độc hại kết hợp với một trong những trình quản lý gói bị ảnh hưởng.
Nhà nghiên cứu Paul Gerste của SonarSource cho biết: “Điều này có nghĩa là hacker không thể thực hiện một cuộc tấn công trực tiếp vào các máy tồn tại lỗ hổng từ xa mà phải “lừa” các nhà phát triển tải các tệp không đúng định dạng. Nhưng liệu rằng bạn có thể luôn hiểu rõ và tin tưởng chủ sở hữu của tất cả các gói mà bạn sử dụng từ internet hoặc kho lưu trữ nội bộ của công ty không?"
Trình quản lý gói là các hệ thống hoặc một bộ công cụ được sử dụng để tự động cài đặt, nâng cấp, định cấu hình các dependency của bên thứ ba cần thiết nhằm mục đích phát triển ứng dụng.
Mặc dù có những rủi ro an ninh cố hữu với các thư viện giả mạo đang tìm cách đóng gói các kho lưu trữ - đòi hỏi các dependency phải được kiểm tra kỹ lưỡng để bảo vệ khỏi các cuộc tấn công chiếm quyền URL và dependency confusion - "hành động quản lý các dependency thường không được coi là một hoạt động tiềm ẩn rủi ro”.
Nhưng các vấn đề mới được phát hiện trong các trình quản lý gói khác nhau cho thấy chúng có thể bị những kẻ tấn công vũ khí hóa để lừa nạn nhân thực thi mã độc. Các lỗi đã được xác định trong các trình quản lý gói sau:
- Composer 1.x < 1.10.23 and 2.x < 2.1.9
- Bundler < 2.2.33
- Bower < 1.8.13
- Poetry < 1.1.9
- Yarn < 1.22.13
- pnpm < 6.15.1
- Pip (no fix) và
- Pipenv (no fix)
Nếu gói sử dụng kỹ thuật chiếm quyền URL và dependency confusion, nó có thể dẫn đến tình huống mà việc chạy lệnh duyệt cho thư viện có thể dẫn đến việc truy xuất payload ở giai đoạn tiếp theo mà sau đó có thể được sử dụng để khởi phát các cuộc tấn công sau này.
Việc đưa đối số bổ sung và lỗ hổng đường dẫn tìm kiếm không đáng tin cậy được phát hiện trong Bundler, Poetry, Yarn, Composer, Pip và Pipenv có nghĩa là một kẻ xấu có thể thực thi mã bằng tệp thực thi git có chứa phần mềm độc hại hoặc tệp do kẻ tấn công kiểm soát như Gemfile được sử dụng để chỉ định các phụ thuộc cho các chương trình Ruby.
Sau tiết lộ có trách nhiệm vào ngày 9 tháng 9 năm 2021, các bản sửa lỗi đã được phát hành để giải quyết các lỗi trong Bundler, Poetry, Yarn, Composer, và Pnpm. Nhưng các lỗ hổng đường dẫn tìm kiếm không đáng tin cậy trong Composer, Pip và Pipenv thì không được giải quyết.
Gerste cho biết: “Các nhà phát triển là mục tiêu hấp dẫn của tội phạm mạng vì chúng có quyền truy cập vào tài sản sở hữu trí tuệ cốt lõi của một công ty: mã nguồn. Chiếm được mã nguồn cho phép hacker thực hiện hành vi gián điệp hoặc nhúng mã độc vào các sản phẩm của công ty. Điều này thậm chí có thể bị lợi dụng để làm bùng nổ các cuộc tấn công chuỗi cung ứng".
Nguồn: The Hacker News
Chỉnh sửa lần cuối: