Cách kiểm tra và vô hiệu hóa Java trong OS X

Có một số lo ngại về việc sử dụng Java trong OS X sau một phát hiện gần đây rằng các biến thể phần mềm độc hại Flashback hiện đang tận dụng các lỗ hổng hiện chưa được vá trong thời gian chạy Java.

Mặc dù sự phát triển phần mềm độc hại này không ảnh hưởng đến phần lớn người dùng Mac chạy OS X 10.7 trở lên do Apple không còn bao gồm Java với HĐH, nhưng một số người có thể tự hỏi thời gian chạy Java là gì và làm thế nào họ có thể kiểm tra và loại bỏ nó khỏi hệ thống của họ để đảm bảo chúng an toàn.

Java là gì?

Bản chất của Java là thời gian chạy của nó, là một môi trường phần mềm hoạt động như một hệ điều hành nhỏ để chạy mã được biên dịch của một ngôn ngữ lập trình cụ thể và đôi khi được gọi là Máy ảo. Nhiều ngôn ngữ lập trình yêu cầu sử dụng thời gian chạy mà không có ngôn ngữ đó sẽ không hoạt động. Chẳng hạn, thời gian chạy cho ngôn ngữ JavaScript (mặc dù tên của nó không liên quan gì đến Java) được tích hợp vào trình duyệt Web để các tập lệnh được tải xuống từ các trang web có thể thực thi đúng và nếu bạn tắt JavaScript trong tùy chọn của trình duyệt thì bạn sẽ tắt thời gian chạy và các kịch bản này sẽ không chạy.

Một số ngôn ngữ lập trình khác sử dụng thời gian chạy là các kịch bản shell Unix, có thời gian chạy là chính shell (bash, sh, csh, v.v.); Objective-C, là ngôn ngữ lập trình cốt lõi của OS X và có thời gian chạy là thư viện lõi trong OS X; và Java, có thời gian chạy có thể được cài đặt trong một hệ điều hành và sau đó được kích hoạt khi mã Java cần được thực thi.

Thời gian chạy của Java là một môi trường lập trình phổ biến vì ngôn ngữ lập trình của nó là hướng đối tượng, có nghĩa là nó rất phù hợp để tạo các ứng dụng có các thành phần giống như đối tượng với chúng, như các nút, thanh cuộn và các tính năng khác của giao diện người dùng. Ngoài ra, Java được xây dựng để trở thành đa nền tảng, vì vậy các lập trình viên chỉ cần xây dựng một phiên bản mã Java của họ và sau đó có thể triển khai nó tới bất kỳ hệ điều hành nào có cài đặt thời gian chạy Java. Theo nghĩa này, nỗ lực đa nền tảng được tách biệt với thời gian chạy, thay vì trở thành gánh nặng cho nhà phát triển.

Các tính năng này đã thấy Java được sử dụng trong nhiều chương trình, bao gồm Creative Suite của Adobe và các ứng dụng khoa học và chuyên nghiệp khác như Matlab. Ngay cả khi Java không được sử dụng trong toàn bộ chương trình, bằng cách sử dụng nó trong các thành phần phổ biến, nhà phát triển có thể giúp chuyển ứng dụng sang các nền tảng khác nhau dễ dàng hơn nhiều.

Vấn đề với thời gian chạy

Mặc dù các thời gian chạy như Java cung cấp hỗ trợ các ngôn ngữ lập trình mới và do đó cho phép tăng chức năng cho hệ thống của bạn, nhưng chúng mở ra nhiều khả năng hơn cho các vi phạm bảo mật. Mã chạy trong chúng sẽ cần được cách ly với các thói quen hộp cát và các biện pháp bảo mật khác để ngăn chặn truy cập trái phép vào các tài nguyên cá nhân hoặc quan trọng, nhưng các biện pháp này sẽ phải được thực hiện trong mỗi lần chạy và sau đó được kiểm tra để đảm bảo rằng chúng không thể bị vi phạm. Nếu lỗ hổng bảo mật được phát hiện, thì thời gian chạy sẽ cần được cập nhật để khắc phục sự cố.

Đối với Java, thời gian chạy cho Windows đã được chú ý nhiều hơn so với OS X, do đó, khi phát hiện ra các lỗ hổng bảo mật, phiên bản OS X sẽ được vá lâu hơn và do đó cung cấp cơ hội tốt hơn cho các nhà phát triển phần mềm độc hại Giải quyết nó. Với biến thể mới nhất của nó, phần mềm độc hại Flashback đã tận dụng cửa sổ này và hiện đang nhắm mục tiêu thời gian chạy Java chưa được vá cho Mac OS.

Trong trường hợp này, lỗ hổng bảo mật cho phép phần mềm độc hại phá vỡ các quy tắc hộp cát Java và ghi mã vào đĩa, sau đó thực hiện nó.

Đang kiểm tra Java

May mắn thay, trừ khi một chương trình cụ thể cần Java, thì thời gian chạy Java không cần thiết cho OS X. Không có tính năng nào của hệ điều hành cần Java để chạy và các thành phần của nó chỉ có trong HĐH để hỗ trợ thời gian chạy nếu bạn chọn cài đặt nó cho bạn cần.

Bắt đầu với OS X 10.7 Apple đã dừng bao gồm cả thời gian chạy Java trong OS X, nhưng vẫn cung cấp một liên kết nhanh để cài đặt nó nếu bạn chạy một chương trình yêu cầu Java. Khi một chương trình như vậy được khởi chạy, trước tiên bạn sẽ được nhắc cài đặt thời gian chạy Java nhưng nếu bạn chọn không, thì chương trình sẽ thoát. Kết quả là, nếu bạn không cố tình thực hiện các bước để cài đặt Java trên một hệ thống mới, thì nó sẽ không có thời gian chạy Java và do đó sẽ không dễ bị tấn công bởi các phần mềm độc hại mới nhất này; tuy nhiên, nếu bạn không chắc chắn liệu bạn đã cài đặt Java chưa, có một số cách để kiểm tra.

  • Mở một ứng dụng Java

    Một cách đơn giản để xem bạn đã cài đặt Java hay chưa là mở một ứng dụng yêu cầu ứng dụng đó và một trong những ứng dụng đi kèm với OS X là tiện ích Tùy chọn Java. Chuyển đến thư mục / Ứng dụng / Tiện ích / trong OS X và khởi chạy chương trình Tùy chọn Java và nếu nó mở và hiển thị các tùy chọn cấu hình khác nhau, thì bạn đã cài đặt Java; tuy nhiên, nếu nó hiển thị một thông báo cho biết bạn cần Java và cung cấp cho bạn một tùy chọn để cài đặt nó, thì bạn chưa cài đặt Java.

  • Sử dụng thiết bị đầu cuối

    Terminal OS X (trong thư mục / Ứng dụng / Tiện ích /) đã cung cấp quyền truy cập vào một số lệnh có thể được sử dụng để tra cứu thông tin hệ thống và bằng cách chạy lệnh sau trong Terminal, bạn sẽ có thể thấy trong đầu ra những gì Thời gian chạy Java (nếu có) được cài đặt trên máy tính của bạn:

    sudo / usr / libexec / java_home

Vô hiệu hóa Java

Nếu bạn đã cài đặt Java trên hệ thống của mình và muốn tắt nó, bạn có thể dễ dàng làm như vậy trong tiện ích Tùy chọn Java. Khi bạn mở tiện ích, bạn sẽ được cung cấp một danh sách các thời gian chạy Java được cài đặt trên hệ thống của bạn và một hộp kiểm bên cạnh mỗi. Bằng cách bỏ chọn thời gian chạy, bạn sẽ ngăn không cho chúng được sử dụng và bỏ chọn tất cả sẽ vô hiệu hóa hoàn toàn Java.

Khi đã bị vô hiệu hóa, nếu bạn có một chương trình trên máy tính yêu cầu Java, thì chương trình sẽ không chạy cho đến khi bạn kích hoạt lại. Do đó, trong khi vô hiệu hóa Java đòi hỏi một bước bổ sung khi bạn muốn chạy các ứng dụng Java, nó sẽ đặt quyền kiểm soát trong tay bạn về những chương trình Java được phép chạy.

Gỡ cài đặt Java

Thật không may, không có cách trực tiếp hoặc dễ dàng để gỡ cài đặt Java, vì vậy, một khi đã cài đặt cách duy nhất để loại bỏ nó và tất cả các thành phần của nó là cài đặt lại OS X; tuy nhiên, bạn có thể xóa máy ảo Java (thời gian chạy) khỏi hệ thống của mình và do đó thực hiện một thói quen tương tự như gỡ cài đặt. Để thực hiện việc này, hãy chuyển đến thư mục / System / Library / Frameworks / và xóa tệp "JavaVM.framework", có chứa các thời gian chạy Java. Ngoài ra, làm trống nội dung của các thư mục sau trên hệ thống liên kết đến thời gian chạy trong khung:

/ Hệ thống / Thư viện / Java / JavaVirtualMachines

/ Thư viện / Java / JavaVirtualMachines


 

Để LạI Bình LuậN CủA BạN