Vì sao Windows 64-bit lại an toàn hơn Windows 32-bit

Ngày nay đa số các hệ thống mới được “phát hành” trên thị trường được mặc định là Windows 64-bit. Nếu trước đây bạn đã từng xài Windows XP một thời gian dài trước khi chuyển sang xài Vista, Windows 7 hoặc Windows 8, chắc hẳn các bạn đã khá quen thuộc với hệ thống quản lý 32-bit của hệ điều hành Windows.

Thực ra, phiên bản Windows 64-bit không chỉ đơn giản cho phép bạn có thể sử dụng RAM trên số lượng 4GB mà nó còn đảm bảo tính bảo mật an toàn hơn so với phiên bản 32-bit

Thêm nữa các hệ điều hành Windows 64-bit không miễn nhiễm với malware nhưng chúng có nhiều tính năng bảo mật hơn. Một số tính năng này cũng áp dụng cho các phiên bản 64-bit của những hệ điều hành khác như Linux. Người dùng Linux sẽ có được các tính năng bảo mật tiên tiến khi chuyển sang phiên bản 64 bit.

Windows 64-bit

1. Mandatory Driver Signing (Các driver phải được kiểm định trước )

Mandatory Driver Signing

Windows 64-bit buộc phải thực hiện MDS – Mandatory Driver Signing. Tất cả mã driver trên hệ thống phải có chữ ký số. Trong đó bao gồm cả driver thiết bị Kernel-Mode và driver User-Mode, chẳng hạn như driver máy in.

MDS ngăn không cho các driver lạ (được cung cấp bởi Malware) chạy trên hệ thống. Những kẻ tạo ra Malware sẽ phải tìm cách nào đó để vượt qua được quá trình ký tên (chẳng hạn, thông qua rootkit thời gian khởi động – boot-time rootkit), làm cho driver bị nhiễm, khiến các driver “khó” chạy trên hệ thống hơn.

MDS cũng được sử dụng trên các phiên bản Windows 32-bit. Tuy nhiên MDS không tiếp tục tương thích với các driver 32-bit cũ.

Để vô hiệu hóa MDS trong quá trình phát triển trên các phiên bản Windows 64 bit, bạn phải gắn với Kernel Debugger, hoặc sử dụng tùy chọn khởi động đặc biệt.

2. Address Space Layout Randomization (ASLR)

Address Space Layout Randomization (ASLR)

ASLR là tính năng bảo mật khiến vị trí dữ liệu của chương trình được sắp xếp một cách ngẫu nhiên trong bộ nhớ. Trước ASLR, vị trí dữ liệu của chương trình trong bộ nhớ có thể dự đoán được, làm các cuộc tấn công trên chương trình đơn giản hơn. Với ASLR, kẻ tấn công phải đoán đúng vị trí trong bộ nhớ khi cố gắng khai thác lỗ hổng trong chương trình. Dự đoán không chính xác có thể dẫn đến việc chương trình bị treo, do đó kẻ tấn công sẽ không thể thử lại.

Tính năng bảo mật này cũng được sử dụng trên các phiên bản Windows 32-bit và nhiều hệ điều hành khác. Tuy nhiên trên các phiên bản Windows 64 bit, ASLR mạnh hơn rất nhiều. Hệ thống 64-bit có không gian địa chỉ lớn hơn nhiều so với hệ thống 32-bit, do đó ASLR cũng hiệu quả hơn nhiều.

3. Kernel Patch Protection

Kernel Patch Protection – KPP hay còn được gọi là PatchGuard, là tính năng bảo mật chỉ có trên phiên các bản Windows 64-bit. Patch Guard ngăn không cho phần mềm, thậm chí là cả driver chạy trong Kernel-Mode.

Theo Wikipedia, Kernel Patch là quá trình sửa đổi Kernel (nhân) của hệ điều hành Windows được hỗ trợ hoặc không được hỗ trợ bằng cách làm đầy các lỗ hổng bảo mật. Microsoft không bao giờ hỗ trợ Kernel Patching, lí do đơn giản là Kernel Patching làm giảm độ tin cậy của hệ thống.

Mặc dù trên Windows 32-bit bạn có thể áp dụng được Patch Guard, nhưng nhiều phần mềm diệt virus 32-bit sử dụng khả năng lấp hệ thống để hoạt động cho nên việc ngăn chặn này không được áp dụng.

Một ví dụ điển hình là PatchGuard ngăn chặn các rootkits trong việc thay đổi các nguyên tắc hoạt động của Windows hoặc là việc nằm vào trong nhân của hệ điều hành. Nếu việc này xảy ra, Windows sẽ ngay lập tức tắt bằng BlueScreen hay Reboot.

4. Data Execution Protection (DEP)

Data Execution Protection (DEP)

DEP cho phép hệ điều hành đánh dấu một số khu vực trên bộ nhớ dưới dạng “non-executable” (không được thực thi) bằng cách thiết lập “NX bit”. Vùng bộ nhớ này chỉ được phép lưu trữ dữ liệu chứ không thể thực thi các lệnh sử dụng.

Ví dụ, trên hệ thống không DEP kẻ tấn công có thể sử dụng một số loại buffer overflow (lỗi tràn bộ đệm) để viết mã vào vùng bộ nhớ của ứng dụng sau đó có thể được thực hiện. Với DEP, kẻ tấn công có thể viết mã vào vùng bộ nhớ của ứng dụng – nhưng khu vực này sẽ được đánh dấu là không thể thực thi không thể được thực hiện giúp ngăn chặn cuộc tấn công.

Trên hệ điều hành Windows 64-bit có DEP dựa trên phần cứng (nếu bạn có CPU hiện đại, các phiên bản Windows 32-bit cũng hỗ trợ DEP dựa trên phần cứng). Tuy nhiên, DEP luôn được kích hoạt đối với các chương trình 64-bit, trong khi theo mặc định, nó bị vô hiệu hóa đối với các chương trình 32-bit vì lý do tương thích.

Hộp thoại cấu hình DEP trong Windows chỉ áp dụng cho cho các ứng dụng, tiến trình 32-bit vì tài liệu của Microsoft cho biết, DEP luôn được sử dụng cho tất cả các tiến trình 64-bit.

5. Tương thích WOW64

Hệ điều hành Windows 64-bit có thể chạy các chương trình của hệ điều hành Windows 32-bit, nhưng đòi hỏi nó phải có một lớp tương thích đặc biệt có tên lả WOW (Windows 32 on Windows 64).

Lớp tương thích này thực thi một số hạn chế đối với các chương trình 32-bit, có thể ngăn malware 32-bit hoạt động. Malware 32-bit cũng sẽ không thể chạy trong Kernel Mode – chỉ các chương trình 64-bit mới có thể làm điều đó trên hệ điều hành 64-bit nên malware 32-bit sẽ bị cô lập tối đa.

Windows 64-bit cũng ngừng hỗ trợ cho các chương trình 16-bit cũ như Turbo C/C++ và nhiều chương trình diệt virus 16-bit.

Ngoài việc phòng tránh các virus 16-bit cổ xưa, điều này cũng sẽ buộc nhiều công ty phải nâng cấp các chương trình 16-bit “cổ lỗ” có thể “dính” lỗ hổng chưa được vá của họ.

Internet

Be the first to comment

Leave a Reply

Your email address will not be published.


*