sunny
VIP Members
-
30/06/2014
-
870
-
1.849 bài viết
Lỗ hổng zero-day trên VirtualBox
Nhà nghiên cứu người Nga vừa công bố chi tiết về lỗ hổng zero-day trên VirtualBox. Trong phần giải thích, nhà nghiên cứu này nêu từng bước để khai thác lỗ hổng.
Theo tiết lộ ban đầu, lỗ hổng này nằm trong mã code của phần mềm ảo có sẵn trong tất cả các hệ điều hành.
Khai thác thành công lỗ hổng này cho phép hacker đột nhập môi trường ảo của máy mục tiêu và truy cập lớp đặc quyền Ring 3, sử dụng code chạy từ hầu hết các chương trình với đặc quyền gần nhất.
Sergey Zelenyuk thấy rằng lỗi bảo mật có thể được sử dụng trên các máy ảo được cấu hình với bộ điều hợp mạng Intel PRO / 1000 MT Desktop (82540EM) trong chế độ NAT (Network Address Translation), thiết lập mặc định cho phép hệ thống khách truy cập vào các mạng bên ngoài.
Zelenyuk cho biết khía cạnh quan trọng để các lỗ hổng hoạt động là để hiểu rằng việc mô tả ngữ cảnh được xử lý trước việc mô tả dữ liệu.
Nhà nghiên cứu mô tả chi tiết cơ chế đằng sau lỗ hổng, giải thích làm thế nào để kích hoạt các điều kiện cần thiết gây ra việc tràn bộ đệm, việc này có thể sử dụng để thoát khỏi hệ điều hành ảo.
Đầu tiên, ông gây ra tình trạng tràn số nguyên sử dụng các bộ mô tả gói dữ liệu - các phân đoạn dữ liệu cho phép bộ điều hợp mạng theo dõi dữ liệu gói mạng trong bộ nhớ hệ thống.
Trạng thái này sau đó được tận dụng để đọc dữ liệu từ hệ điều hành khách vào bộ đệm và gây ra tình trạng tràn có thể dẫn đến ghi đè hàm; hoặc gây ra tình trạng tràn.
Việc khai thác Zelenyuk đã viết dựa trên hai điều kiện tràn. Vì nó cung cấp quyền truy cập vào cấp độ vòng 3 của các quyền, và cần có sự leo thang đặc quyền để kiểm soát hệ điều hành máy chủ.
Mặc dù điều này không phải là không thể, nhưng kẻ tấn công lại phải gây ra một lỗ hổng khác để cấp cho họ quyền ưu tiên hơn trên hệ thống.
Các bước được nhà nghiên cứu mô tả để khai thác zero-day chắc chắn không phải là kịch bản dễ dàng khi họ yêu cầu kiến thức kỹ thuật tiên tiến hơn.
Buffer overflow không phải lúc nào cũng ổn định. Tuy nhiên, Zelenyuk nói rằng việc khai thác của anh ta là "đáng tin cậy 100%".
Theo tiết lộ ban đầu, lỗ hổng này nằm trong mã code của phần mềm ảo có sẵn trong tất cả các hệ điều hành.
Khai thác thành công lỗ hổng này cho phép hacker đột nhập môi trường ảo của máy mục tiêu và truy cập lớp đặc quyền Ring 3, sử dụng code chạy từ hầu hết các chương trình với đặc quyền gần nhất.
Sergey Zelenyuk thấy rằng lỗi bảo mật có thể được sử dụng trên các máy ảo được cấu hình với bộ điều hợp mạng Intel PRO / 1000 MT Desktop (82540EM) trong chế độ NAT (Network Address Translation), thiết lập mặc định cho phép hệ thống khách truy cập vào các mạng bên ngoài.
Zelenyuk cho biết khía cạnh quan trọng để các lỗ hổng hoạt động là để hiểu rằng việc mô tả ngữ cảnh được xử lý trước việc mô tả dữ liệu.
Đầu tiên, ông gây ra tình trạng tràn số nguyên sử dụng các bộ mô tả gói dữ liệu - các phân đoạn dữ liệu cho phép bộ điều hợp mạng theo dõi dữ liệu gói mạng trong bộ nhớ hệ thống.
Trạng thái này sau đó được tận dụng để đọc dữ liệu từ hệ điều hành khách vào bộ đệm và gây ra tình trạng tràn có thể dẫn đến ghi đè hàm; hoặc gây ra tình trạng tràn.
Việc khai thác Zelenyuk đã viết dựa trên hai điều kiện tràn. Vì nó cung cấp quyền truy cập vào cấp độ vòng 3 của các quyền, và cần có sự leo thang đặc quyền để kiểm soát hệ điều hành máy chủ.
Mặc dù điều này không phải là không thể, nhưng kẻ tấn công lại phải gây ra một lỗ hổng khác để cấp cho họ quyền ưu tiên hơn trên hệ thống.
Các bước được nhà nghiên cứu mô tả để khai thác zero-day chắc chắn không phải là kịch bản dễ dàng khi họ yêu cầu kiến thức kỹ thuật tiên tiến hơn.
Buffer overflow không phải lúc nào cũng ổn định. Tuy nhiên, Zelenyuk nói rằng việc khai thác của anh ta là "đáng tin cậy 100%".
Theo: Bleepingcomputer