Các gói PyPI độc hại sử dụng mã Python được biên dịch để vượt qua sự phát hiện

Ngày 01 tháng 6 năm 2023Ravie LakshmananLập trình /

Gói PyPI độc hại

Các nhà nghiên cứu đã phát hiện ra một cuộc tấn công mới vào kho lưu trữ Python Package Index (PyPI) sử dụng mã Python đã biên dịch để vượt qua sự phát hiện của các công cụ bảo mật ứng dụng.

Nhà phân tích Karlo Zanki của ReversingLabs cho biết: “Đây có thể là cuộc tấn công chuỗi cung ứng đầu tiên lợi dụng thực tế là các tệp Python bytecode (PYC) có thể được trực tiếp”.

Gói trong câu hỏi là fshec2đã bị xóa khỏi sổ đăng ký gói vào ngày 17 tháng 4 năm 2023, sau khi tiết lộ có trách nhiệm vào cùng ngày.

Các tệp PYC là các tệp mã byte được biên dịch do trình thông dịch Python tạo ra khi chương trình Python được thực thi.

“Khi một mô-đun được nhập lần đầu tiên (hoặc khi tệp nguồn đã thay đổi kể từ khi tệp được biên dịch hiện tại được tạo), tệp .pyc chứa mã đã biên dịch phải được tạo trong thư mục con __pycache__ của thư mục chứa tệp .py, ” giải thích tài liệu Python.

Theo công ty bảo mật chuỗi cung ứng , gói này chứa ba tệp – _init_.py, main.py và full.pyc – tệp cuối cùng chứa chức năng độc hại.

“Điểm vào của gói được tìm thấy trong tệp __init__.py, tệp này nhập một hàm từ tệp văn bản gốc khác, main.py, chứa mã nguồn Python chịu trách nhiệm tải mô-đun được biên dịch Python nằm trong một trong các tệp khác , full.pyc,” Zanki chỉ ra.

Xem tiếp:   Google phát hành bản cập nhật Chrome khẩn cấp để khắc phục lỗ hổng Zero-Day bị khai thác tích cực

Gói PyPI độc hại

Đổi lại, điều này đạt được bằng cách sử dụng gói importlib (trái ngược với nhập thông thường) để tải và thực thi mã có trong tệp .pyc.

Một phân tích về phiên bản được thiết kế ngược của tệp PYC cho thấy rằng nó được định cấu hình để thu thập tên người dùng, tên máy chủ và danh sách thư mục, cũng như tìm nạp các lệnh sẽ được thực thi trên máy chủ từ máy chủ được mã hóa cứng (13.51.44[.]246).

HỘI THẢO TRỰC TUYẾN SẮP TỚI

🔐 Làm chủ bảo mật API: Hiểu bề mặt tấn công thực sự của bạn

Khám phá các lỗ hổng chưa được khai thác trong hệ sinh thái API của bạn và chủ động thực hiện các bước hướng tới bảo mật bọc thép. Tham gia hội thảo trên web sâu sắc của chúng tôi!

tham gia phiên

ReversingLabs cho biết họ cũng đã quan sát quá trình tải xuống mô-đun và chạy một tập lệnh Python khác chịu trách nhiệm tìm nạp các lệnh mới được đặt trong một tệp mà kẻ đe dọa có thể điều chỉnh theo ý muốn để đưa ra các hướng dẫn khác nhau.

Kiểm tra thêm máy chủ chỉ huy và kiểm soát đã phát hiện ra một cấu hình sai khiến có thể tải xuống các tệp theo ID của chúng, được đánh số theo thứ tự tuần tự (bắt đầu từ 1), không có bất kỳ ủy quyền nào. Điều này cho thấy rằng cuộc tấn công rất có thể không được dàn dựng bởi một diễn viên phức tạp.

Xem tiếp:   Các chuyên gia xác định Trojan và kẻ đánh cắp thông tin đầy đủ tính năng trong Gói Python trên PyPI

Sự phát triển này là sự tiếp tục nỗ lực của các tác nhân đe dọa nhằm áp dụng các kỹ thuật che giấu khác nhau để tránh bị các giải pháp bảo mật phát hiện.

Zanki cho biết: “Các tập lệnh trình tải chẳng hạn như các tập lệnh được phát hiện trong gói fshec2 chứa một lượng mã Python tối thiểu và thực hiện một hành động đơn giản: tải mô-đun Python đã biên dịch. “Nó chỉ là một mô-đun độc hại.”

Check Also

JumpCloud đổ lỗi cho diễn viên ‘Nhà nước quốc gia tinh vi’ vì vi phạm an ninh

Ngày 18 tháng 7 năm 2023THNBảo mật dữ liệu / tấn công mạng Hơn một …