1. บทนำสู่ Java Applet ในการตรวจจับลายนิ้วมือ
Java Applets เคยถูกใช้โดยเว็บไซต์สำหรับแอปพลิเคชันที่ซับซ้อนในเบราว์เซอร์ เช่น โมดูลลายเซ็นดิจิทัล, ไดรเวอร์ฮาร์ดแวร์เพื่อความปลอดภัย, เครื่องมือสตรีมวิดีโอ หรือส่วนประกอบการตรวจสอบสิทธิ์ธนาคารที่ล้าสมัย
ระบบเหล่านี้มักจะตรวจสอบหา:
navigator.plugins.namedItem('Java')
navigator.mimeTypes['application/x-java-applet']
window.JavaApplet
orJavaPanel
Java.available()
(ผ่านการเรียกใช้ JavaBridge ภายในหากเปิดใช้งาน Java)
แม้ว่าเบราว์เซอร์สมัยใหม่ไม่รองรับ Java applets (อันที่จริง Oracle ได้ยกเลิกการสนับสนุนในปี 2021) แพลตฟอร์มเก่าบางแห่งยังคงฉีดโค้ด JavaScript เพื่อตรวจสอบการมีอยู่ของความสามารถ JavaBridge ซึ่งมักจะเปรียบเทียบการมีอยู่กับการติดตั้ง Java ในระดับเดสก์ท็อป/ระบบปฏิบัติการ
หากคุณอยู่ในสถานการณ์อัตโนมัติ หรือใช้เบราว์เซอร์ป้องกันการตรวจจับเช่น FlashID แพลตฟอร์มที่พึ่งพาการตรวจสอบ Java แบบเก่าอาจมองว่านี่เป็นความผิดปกติ ซึ่งทำให้ลายเซ็นเบราว์เซอร์ถูกระบุว่าเป็น ไม่ใช่คน หรือ ถูกปลอมแปลง
2. วิธีทั่วไปสำหรับการระบุลายนิ้วมือปลั๊กอิน Java
ระบบตรวจจับแบบเดิมใช้บล็อกข้อมูลจำเพาะสองสามอย่างเพื่อระบุสถานะการติดตั้ง Java บนไคลเอนต์เบราว์เซอร์:
การตรวจสอบ navigator.plugins[‘Java’]
if (navigator.plugins && navigator.plugins['Java']) { // desktop user assumed }
การยืนยันประเภท MIME
var javaMime = navigator.mimeTypes['application/x-java-applet']; if (javaMime && javaMime.enabledPlugin) { // true environment or expectation matched }
การทดสอบ JavaBridge / การสร้างภายนอก
- พอร์ทัลทางการเงินหรือระดับทหารบางแห่งตรวจสอบการรวม JS -> Java
- ตัวอย่าง:
const javaBridge = new JavaAdapter(); if (!javaBridge) return 'bot behavior';
การจับคู่ตามพฤติกรรม / ลายเซ็น
- การปรับเปลี่ยน
navigator.javaEnabled()
อย่างละเอียด - การตรวจสอบการมีอยู่บน
window.JavaPlugin
- การกู้คืนบันทึกข้อมูลทางไกลของเบราว์เซอร์ด้วยตนเองผ่านฮุก “Java failed to load”
- การปรับเปลี่ยน
ตัวบ่งชี้แบบพาสซีฟและแอคทีฟเหล่านี้มักจะใช้ร่วมกับการระบุลายนิ้วมือ ActiveX และ Flash เป็นกลุ่มของสิ่งประดิษฐ์แบบเดิม ซึ่งช่วยให้เครื่องมือตรวจจับรุ่นเก่าสามารถแยกแยะระหว่างเบราว์เซอร์ที่ถูกทำความสะอาด / อัตโนมัติ และสภาพแวดล้อมการเรียกดูแบบเนทีฟ
3. วิธีที่ FlashID จัดการกับการระบุลายนิ้วมือ Java
FlashID ใช้สถาปัตยกรรม Chromium / Firefox ที่ทันสมัย ซึ่งไม่รองรับ Java applets โดยกำเนิด เนื่องจากได้ถูกยกเลิกไปแล้วเพื่อสนับสนุน WebAssembly, PWA และสถาปัตยกรรมที่ไม่ใช่ VM
คุณอาจชอบ