มีข้อกังวลเกี่ยวกับการใช้งานจาวาใน OS X หลังจากการค้นพบเมื่อเร็ว ๆ นี้ว่าตัวแปรของมัลแวร์ Flashback กำลังใช้ประโยชน์จากช่องโหว่ที่ยังไม่ได้แก้ไขในขณะนี้ในรันไทม์ Java
แม้ว่าการพัฒนามัลแวร์นี้จะไม่ส่งผลกระทบต่อผู้ใช้ Mac ส่วนใหญ่ที่ใช้ OS X 10.7 หรือใหม่กว่าเนื่องจาก Apple ไม่ได้รวม Java กับ OS อีกต่อไป แต่บางคนอาจสงสัยว่า Java runtime คืออะไรและพวกเขาสามารถตรวจสอบและ นำออกจากระบบเพื่อให้แน่ใจว่าปลอดภัย
Java คืออะไร
แก่นแท้ของ Java คือ runtime ซึ่งเป็นสภาพแวดล้อมซอฟต์แวร์ที่ทำหน้าที่เหมือนระบบปฏิบัติการขนาดเล็กสำหรับรันโค้ดที่คอมไพล์ของภาษาการเขียนโปรแกรมเฉพาะและบางครั้งก็เรียกว่า Virtual Machine ภาษาการเขียนโปรแกรมจำนวนมากต้องการการใช้รันไทม์โดยที่พวกเขาจะไม่ทำงาน ตัวอย่างเช่นรันไทม์สำหรับภาษา JavaScript (ซึ่งแม้จะมีชื่อไม่มีอะไรเกี่ยวข้องกับจาวา) ถูกสร้างขึ้นในเว็บเบราว์เซอร์ดังนั้นสคริปต์ที่ดาวน์โหลดจากเว็บไซต์สามารถทำงานได้อย่างถูกต้องและถ้าคุณปิดการใช้งานจาวาสคริปต์ในการตั้งค่าเบราว์เซอร์ของคุณ และสคริปต์เหล่านี้จะไม่ทำงาน
ภาษาการเขียนโปรแกรมอื่น ๆ ที่ใช้ runtimes คือเชลล์สคริปต์ Unix ซึ่ง runtime คือเชลล์เอง (bash, sh, csh ฯลฯ ); Objective-C ซึ่งเป็นภาษาการเขียนโปรแกรมหลักของ OS X และรันไทม์เป็นไลบรารีหลักใน OS X; และ Java ซึ่งสามารถติดตั้งรันไทม์ในระบบปฏิบัติการแล้วเปิดใช้งานเมื่อจำเป็นต้องใช้รหัส Java
รันไทม์ของ Java เป็นสภาพแวดล้อมในการเขียนโปรแกรมที่ได้รับความนิยมเนื่องจากภาษาการเขียนโปรแกรมเป็นแบบวัตถุซึ่งหมายความว่ามันเหมาะสำหรับการสร้างแอพพลิเคชั่นที่มีส่วนประกอบที่ไม่เหมือนวัตถุเช่นปุ่มแถบเลื่อนและคุณสมบัติอื่น ๆ ของส่วนต่อประสานผู้ใช้ นอกจากนี้ Java ถูกสร้างให้เป็นข้ามแพลตฟอร์มดังนั้นโปรแกรมเมอร์ควรจะต้องสร้างโค้ด Java เวอร์ชันหนึ่งแล้วจึงสามารถปรับใช้กับระบบปฏิบัติการใด ๆ ที่ติดตั้ง Java runtime ไว้แล้ว ในแง่นี้ความพยายามข้ามแพลตฟอร์มถูกแยกไปรันไทม์แทนที่จะเป็นภาระให้กับนักพัฒนา
![](http://ozone-soft.com/img/computers/375/how-check-disable-java-os-x.png)
คุณสมบัติเหล่านี้ได้เห็นจาวาที่ใช้ในหลาย ๆ โปรแกรมรวมถึง Adobe Creative Suite และแอพพลิเคชั่นทางวิทยาศาสตร์และอาชีพอื่น ๆ เช่น Matlab แม้ว่า Java จะไม่ได้ใช้ในโปรแกรมทั้งหมด แต่การใช้ในคอมโพเนนต์ทั่วไปผู้พัฒนาสามารถทำการย้ายแอปพลิเคชั่นไปยังแพลตฟอร์มที่แตกต่างได้ง่ายขึ้น
มีปัญหากับ runtimes
ในขณะที่รันไทม์เช่น Java ให้การสนับสนุนภาษาการเขียนโปรแกรมใหม่และด้วยเหตุนี้จึงช่วยให้การทำงานของระบบของคุณเพิ่มขึ้น รหัสที่ทำงานอยู่ในนั้นจะต้องถูกแยกออกด้วยรูทีน sandboxing และมาตรการรักษาความปลอดภัยอื่น ๆ เพื่อป้องกันการเข้าถึงทรัพยากรส่วนตัวหรือทรัพยากรที่สำคัญโดยไม่ได้รับอนุญาต แต่มาตรการเหล่านี้จะต้องดำเนินการภายในแต่ละรันไทม์แล้วทดสอบเพื่อให้แน่ใจว่า หากพบช่องโหว่ความปลอดภัยจะต้องอัปเดตรันไทม์เพื่อแก้ไขปัญหา
เกี่ยวกับ Java รันไทม์สำหรับ Windows ได้รับความสนใจมากกว่านั้นสำหรับ OS X ดังนั้นเมื่อค้นพบช่องโหว่ความปลอดภัยจะต้องใช้เวลาในการติดตั้งเวอร์ชัน OS X นานขึ้นดังนั้นจึงเป็นหน้าต่างแห่งโอกาสที่ดีกว่าสำหรับนักพัฒนามัลแวร์ เล่นงานมัน ด้วยตัวแปรล่าสุดมัลแวร์ Flashback ได้ใช้ประโยชน์จากหน้าต่างนี้และขณะนี้มีการกำหนดเป้าหมายรันไทม์ Java ที่ไม่ตรงกันสำหรับ Mac OS
ในกรณีนี้ช่องโหว่นี้อนุญาตให้มัลแวร์ทำลายกฎของแซนด์บ็อกซ์ Java และเขียนรหัสลงดิสก์ตามด้วยการดำเนินการ
ตรวจสอบ Java
โชคดีที่มีโปรแกรมเฉพาะที่ต้องการ Java ดังนั้น Java runtime ไม่จำเป็นสำหรับ OS X คุณลักษณะของระบบปฏิบัติการไม่จำเป็นต้องมี Java เพื่อให้ทำงานได้และส่วนประกอบนั้นมีอยู่ในระบบปฏิบัติการเท่านั้นที่จะรองรับ runtime หากคุณเลือกที่จะติดตั้ง ความต้องการของคุณ
การเริ่มต้นด้วย OS X 10.7 Apple หยุดการทำงานรวมถึง Java runtime ใน OS X แต่ยังมีลิงค์ด่วนเพื่อติดตั้งหากคุณเรียกใช้โปรแกรมที่ต้องการ Java เมื่อเปิดใช้งานโปรแกรมดังกล่าวคุณจะได้รับแจ้งให้ติดตั้งรันไทม์ Java ก่อน แต่ถ้าคุณเลือกไม่ให้โปรแกรมจะออกจากโปรแกรม ดังนั้นหากคุณไม่ได้ดำเนินการตามขั้นตอนเพื่อติดตั้ง Java บนระบบใหม่ก็จะไม่มี Java runtime ดังนั้นจึงไม่เสี่ยงต่อการโจมตีของมัลแวร์ล่าสุด อย่างไรก็ตามหากคุณไม่แน่ใจว่าคุณติดตั้ง Java ไว้หรือไม่คุณสามารถตรวจสอบได้สองวิธี
![](http://ozone-soft.com/img/computers/375/how-check-disable-java-os-x-2.png)
- เปิดแอปพลิเคชัน Java
วิธีง่ายๆในการดูว่าคุณมีการติดตั้ง Java หรือไม่คือการเปิดแอปพลิเคชันที่จำเป็นต้องใช้และหนึ่งในสิ่งเหล่านี้ที่มาพร้อมกับ OS X คือยูทิลิตีการตั้งค่า Java ไปที่โฟลเดอร์ / Applications / Utilities / ใน OS X และเปิดโปรแกรมการตั้งค่า Java และถ้ามันเปิดและแสดงตัวเลือกการกำหนดค่าต่างๆจากนั้นคุณติดตั้ง Java; อย่างไรก็ตามหากแสดงข้อความที่ระบุว่าคุณต้องการ Java และมีตัวเลือกให้คุณติดตั้งคุณจะไม่ได้ติดตั้ง Java
- ใช้เทอร์มินัล
เทอร์มินัล OS X (ใน / Applications / Utilities / โฟลเดอร์) ให้การเข้าถึงคำสั่งจำนวนมากที่สามารถใช้เพื่อค้นหาข้อมูลระบบและโดยการเรียกใช้คำสั่งต่อไปนี้ใน Terminal คุณควรเห็นสิ่งที่ส่งออก Java runtimes (ถ้ามี) ถูกติดตั้งบนคอมพิวเตอร์ของคุณ:
sudo / usr / libexec / java_home
ปิดการใช้งาน Java
หากคุณติดตั้ง Java ไว้ในระบบของคุณและต้องการปิดการใช้งานคุณสามารถทำได้ในยูทิลิตี้การตั้งค่า Java เมื่อคุณเปิดยูทิลิตี้นี้คุณจะเห็นรายการ Java runtimes ที่ติดตั้งในระบบของคุณและมีช่องทำเครื่องหมายติดกับแต่ละรายการ โดยการยกเลิกการเลือกรันไทม์คุณจะป้องกันไม่ให้ใช้งานและการยกเลิกการเลือกทั้งหมดจะเป็นการปิดการใช้งาน Java ทั้งหมด
![](http://ozone-soft.com/img/computers/375/how-check-disable-java-os-x-3.png)
เมื่อปิดการใช้งานหากคุณมีโปรแกรมในคอมพิวเตอร์ที่ต้องใช้จาวาโปรแกรมจะไม่ทำงานจนกว่าคุณจะเปิดใช้งานอีกครั้ง ดังนั้นในขณะที่ปิดการใช้งานจาวาจะต้องมีขั้นตอนพิเศษเมื่อคุณต้องการเรียกใช้งานแอปพลิเคชัน Java แต่จะทำให้การควบคุมอยู่ในมือของคุณมากกว่าสิ่งที่โปรแกรม Java ได้รับอนุญาตให้ทำงาน
กำลังถอนการติดตั้ง Java
น่าเสียดายที่ไม่มีวิธีง่าย ๆ ในการถอนการติดตั้ง Java ดังนั้นเมื่อติดตั้งวิธีเดียวในการลบออกและส่วนประกอบทั้งหมดของมันคือการติดตั้ง OS X ใหม่อีกครั้ง อย่างไรก็ตามคุณสามารถลบ Java virtual machine (รันไทม์) ออกจากระบบของคุณและดำเนินการตามขั้นตอนที่คล้ายกันในการถอนการติดตั้ง หากต้องการทำสิ่งนี้ให้ไปที่ไดเร็กทอรี / System / Library / Frameworks / และลบไฟล์ "JavaVM.framework" ซึ่งมี Java runtimes นอกจากนี้ให้ล้างเนื้อหาของไดเร็กทอรีต่อไปนี้บนระบบที่ลิงก์ไปยัง runtimes ในกรอบงาน:
/ ระบบ / Library / Java / JavaVirtualMachines
/ Library / Java / JavaVirtualMachines
แสดงความคิดเห็นของคุณ