อ่าน 11 นาที
การบันทึกการกดแป้นพิมพ์
การบันทึกการกดแป้นพิมพ์ ซึ่ง มักเรียกว่า keylogging หรือ keyboard capturing คือการกระทำของการบันทึก ( logging ) การกดแป้น พิมพ์ [ 1 ] [ 2 ] โดยทั่วไปจะทำอย่างลับๆ...
การบันทึกการกดแป้นพิมพ์
| ส่วนหนึ่งของชุดบทความเกี่ยวกับ |
| การแฮ็กคอมพิวเตอร์ |
|---|
การบันทึกการกดแป้นพิมพ์ซึ่งมักเรียกว่าkeyloggingหรือkeyboard capturingคือการกระทำของการบันทึก ( logging ) การกดแป้นพิมพ์ [ 1 ] [ 2 ]โดยทั่วไปจะทำอย่างลับๆ เพื่อไม่ให้ผู้ใช้แป้นพิมพ์รู้ว่าการกระทำของตนกำลังถูกตรวจสอบ จากนั้นข้อมูลจะถูกดึงกลับมาโดยผู้ที่ใช้งานโปรแกรมบันทึกการกดแป้นพิมพ์ เครื่องบันทึกการกดแป้นพิมพ์หรือkeyloggerอาจเป็นซอฟต์แวร์หรือฮาร์ดแวร์ก็ได้
แม้ว่าโปรแกรมเหล่านั้นจะถูกกฎหมาย[ 3 ] โดยหลาย โปรแกรมออกแบบมาเพื่อให้นายจ้างสามารถดูแลการใช้คอมพิวเตอร์ของตนได้ แต่โปรแกรมดักจับการกดแป้นพิมพ์มักถูกใช้เพื่อขโมยรหัสผ่านและข้อมูลลับ อื่นๆ [ 4 ] [ 5 ]การบันทึกการกดแป้นพิมพ์ยังสามารถใช้เพื่อตรวจสอบกิจกรรมของเด็กในโรงเรียนหรือที่บ้าน และเจ้าหน้าที่บังคับใช้กฎหมายใช้เพื่อตรวจสอบการใช้งานที่เป็นอันตราย[ 6 ]
การบันทึกการกดแป้นพิมพ์ยังสามารถใช้เพื่อศึกษาพลวัตการกดแป้นพิมพ์[ 7 ]หรือปฏิสัมพันธ์ระหว่างมนุษย์กับคอมพิวเตอร์ได้ อีกด้วย มีวิธีการบันทึกการกดแป้นพิมพ์มากมาย ตั้งแต่วิธีการที่ใช้ฮาร์ดแวร์และซอฟต์แวร์ไปจนถึงการ วิเคราะห์การเข้ารหัสเสียง
ประวัติศาสตร์
ในช่วงกลางทศวรรษ 1970 สหภาพโซเวียตได้พัฒนาและใช้งานฮาร์ดแวร์คีย์ล็อกเกอร์โดยมีเป้าหมายที่เครื่องพิมพ์ดีดของสถานทูตสหรัฐฯ เรียกว่า "selectric bug" โดยจะส่งอักขระที่พิมพ์บน เครื่องพิมพ์ดีด IBM Selectricผ่านการตรวจจับแม่เหล็กของกลไกที่ทำให้หัวพิมพ์หมุน[ 8 ]คีย์ล็อกเกอร์รุ่นแรกๆ ถูกเขียนโดยPerry Kivolowitzและโพสต์ไปยังกลุ่มข่าว Usenet net.unix-wizards, net.sources เมื่อวันที่ 17 พฤศจิกายน 1983 [ 9 ]การโพสต์ดังกล่าวดูเหมือนจะเป็นปัจจัยกระตุ้นในการจำกัดการเข้าถึงระบบUnixโปรแกรมโหมดผู้ใช้ทำงานโดยการค้นหาและดัมพ์รายการอักขระ (ไคลเอ็นต์) ขณะที่ประกอบขึ้นในเคอร์เนล Unix /dev/kmem
ในช่วงทศวรรษ 1970 สายลับได้ติดตั้งเครื่องดักฟังการกดแป้นพิมพ์ใน อาคารสถานทูต และสถานกงสุลสหรัฐฯ ใน มอสโก [ 10 ] [ 11 ] พวก เขาติดตั้งเครื่องดักฟังในเครื่องพิมพ์ดีดไฟฟ้าSelectric II และ Selectric III [ 12 ]
สถานทูตโซเวียตใช้เครื่องพิมพ์ดีดแบบใช้มือแทนเครื่องพิมพ์ดีดไฟฟ้าสำหรับข้อมูลลับ เห็นได้ชัดว่าเป็นเพราะเครื่องพิมพ์ดีดแบบใช้มือไม่เสี่ยงต่อการถูกดักฟัง[ 12 ] ณ ปี 2013 หน่วยงานพิเศษของรัสเซียยังคงใช้เครื่องพิมพ์ดีดอยู่[ 11 ] [ 13 ] [ 14 ]
การใช้งานโปรแกรมดักจับการกดแป้นพิมพ์
โปรแกรมดักจับการกดแป้นพิมพ์แบบซอฟต์แวร์


โปรแกรมดักจับการกดแป้นพิมพ์แบบซอฟต์แวร์เป็นโปรแกรมคอมพิวเตอร์ที่ออกแบบมาเพื่อบันทึกข้อมูลการป้อนใดๆ จากแป้นพิมพ์[ 15 ]โปรแกรมดักจับการกดแป้นพิมพ์ถูกใช้ใน องค์กร ไอทีเพื่อแก้ไขปัญหาทางเทคนิคเกี่ยวกับคอมพิวเตอร์และเครือข่ายธุรกิจ ครอบครัวและนักธุรกิจใช้โปรแกรมดักจับการกดแป้นพิมพ์อย่างถูกกฎหมายเพื่อตรวจสอบการใช้งานเครือข่ายโดยที่ผู้ใช้ไม่รู้ตัวโดยตรงไมโครซอฟต์ระบุอย่างเป็นทางการว่าWindows 10มีโปรแกรมดักจับการกดแป้นพิมพ์ในตัวในเวอร์ชันสุดท้าย "เพื่อปรับปรุงบริการการพิมพ์และการเขียน" [ 16 ]อย่างไรก็ตาม บุคคลที่ประสงค์ร้ายสามารถใช้โปรแกรมดักจับการกดแป้นพิมพ์บนคอมพิวเตอร์สาธารณะเพื่อขโมยรหัสผ่านหรือข้อมูลบัตรเครดิต โปรแกรมดักจับการกดแป้นพิมพ์ส่วนใหญ่ไม่สามารถหยุดได้ด้วย การเข้ารหัส HTTPSเนื่องจาก HTTPS ป้องกันเฉพาะข้อมูลที่ส่งผ่านระหว่างคอมพิวเตอร์เท่านั้น โปรแกรมดักจับการกดแป้นพิมพ์แบบซอฟต์แวร์ทำงานบนคอมพิวเตอร์ของผู้ใช้ที่ได้รับผลกระทบ โดยอ่านข้อมูลการป้อนจากแป้นพิมพ์โดยตรงขณะที่ผู้ใช้พิมพ์
ในมุมมองทางเทคนิค สามารถแบ่งออกได้เป็นหลายประเภท:
- แบบใช้ไฮเปอร์ไวเซอร์ : ในทางทฤษฎีแล้ว โปรแกรมดักจับการกดแป้นพิมพ์สามารถอาศัยอยู่ในไฮเปอร์ไวเซอร์ของมัลแวร์ ที่ทำงานอยู่ใต้ระบบปฏิบัติการ ซึ่งทำให้ระบบปฏิบัติการไม่ถูกแตะต้อง กล่าวคือ มันกลายเป็นเครื่องเสมือนBlue Pillเป็นตัวอย่างในเชิงแนวคิด
- การดักจับ การกดแป้นพิมพ์ในระดับเคอร์เนล : โปรแกรมบนเครื่องจะได้รับสิทธิ์ระดับรูท เพื่อซ่อนตัวอยู่ในระบบปฏิบัติการและดักจับการกดแป้นพิมพ์ที่ส่งผ่านเคอร์เนล วิธีนี้ยากทั้งในการเขียนและการป้องกัน โปรแกรมดักจับการกดแป้นพิมพ์ประเภทนี้จะทำงานอยู่ที่ ระดับเคอร์เนลทำให้ตรวจจับได้ยาก โดยเฉพาะอย่างยิ่งสำหรับแอปพลิเคชันในโหมดผู้ใช้ที่ไม่มีสิทธิ์ระดับรูท พวกมันมักถูกพัฒนาในรูปแบบของรูทคิตที่แทรกซึมเข้าไปในเคอร์เนลของระบบปฏิบัติการเพื่อเข้าถึงฮาร์ดแวร์โดยไม่ได้รับอนุญาต ทำให้พวกมันมีประสิทธิภาพสูง โปรแกรมดักจับการกดแป้นพิมพ์ที่ใช้วิธีนี้สามารถทำหน้าที่เป็นไดรเวอร์อุปกรณ์ แป้น พิมพ์ได้ เช่น และเข้าถึงข้อมูลใดๆ ที่พิมพ์บนแป้นพิมพ์ขณะที่ส่งไปยังระบบปฏิบัติการ
- แบบ API-based : โปรแกรมดักจับการกดแป้นพิมพ์เหล่านี้จะดักจับAPIของแป้นพิมพ์ภายในแอปพลิเคชันที่กำลังทำงานอยู่ โปรแกรมดักจับการกดแป้นพิมพ์จะบันทึกเหตุการณ์การกดแป้นพิมพ์ราวกับว่าเป็นส่วนหนึ่งของแอปพลิเคชันปกติ แทนที่จะเป็นมัลแวร์ โปรแกรมดักจับการกดแป้นพิมพ์จะได้รับเหตุการณ์ทุกครั้งที่ผู้ใช้กดหรือปล่อยแป้นพิมพ์ และจะบันทึกเหตุการณ์นั้นไว้ โดยปกติแล้วจะทำโดยการแทรกDLLเข้าไปในกระบวนการอื่นๆ[ 17 ]
- API ของ Windows เช่น
GetAsyncKeyState(),GetForegroundWindow(), เป็นต้น ถูกใช้เพื่อตรวจสอบสถานะของแป้นพิมพ์หรือสมัครรับเหตุการณ์ของแป้นพิมพ์[ 18 ]ตัวอย่างล่าสุดจะตรวจสอบBIOS สำหรับ PINการตรวจสอบสิทธิ์ก่อนบูตที่ยังไม่ได้ล้างออกจากหน่วยความจำ[ 19 ]
- API ของ Windows เช่น
- โปรแกรมดักจับข้อมูลจากแบบฟอร์ม : โปรแกรมดัก จับข้อมูลจากแบบฟอร์มจะบันทึก การส่ง แบบฟอร์มบนเว็บโดยการบันทึกข้อมูลแบบฟอร์มในเหตุการณ์การส่งข้อมูล ซึ่งเกิดขึ้นเมื่อผู้ใช้กรอกแบบฟอร์มและส่งข้อมูล โดยปกติจะทำได้โดยการคลิกปุ่มหรือกด Enter โปรแกรมดักจับข้อมูลประเภทนี้จะบันทึกข้อมูลแบบฟอร์มก่อนที่จะส่งผ่านทางอินเทอร์เน็ต
- ระบบIMEที่เป็นอันตรายสามารถดักจับการกดแป้นพิมพ์ได้
- JavaScript -based:แท็กสคริปต์ที่เป็นอันตรายจะถูกแทรกเข้าไปในเว็บเพจเป้าหมาย และคอยฟังเหตุการณ์สำคัญ เช่น
onKeyUp()สคริปต์สามารถถูกแทรกได้หลายวิธี รวมถึง cross-site scripting , man-in-the-browser , man-in-the-middleหรือการเจาะระบบเว็บไซต์ระยะไกล [ 20 ] - การบันทึกข้อมูลโดยใช้การฉีดหน่วยความจำ : โปรแกรมบันทึกข้อมูลแบบใช้การฉีดหน่วยความจำ ( MitB ) ทำหน้าที่บันทึกข้อมูลโดยการเปลี่ยนแปลงตารางหน่วยความจำที่เกี่ยวข้องกับเบราว์เซอร์และฟังก์ชันระบบอื่นๆ การแก้ไขตารางหน่วยความจำหรือการฉีดเข้าไปในหน่วยความจำโดยตรง ทำให้ผู้เขียนมัลแวร์สามารถใช้เทคนิคนี้เพื่อหลีกเลี่ยงการควบคุมบัญชีผู้ใช้ (UAC) ของ Windows ได้ โทรจัน ZeusและSpyEyeใช้เฉพาะวิธีนี้เท่านั้น[ 21 ]ระบบที่ไม่ใช่ Windows มีกลไกการป้องกันที่อนุญาตให้เข้าถึงข้อมูลที่บันทึกไว้ในเครื่องจากระยะไกลได้[ 22 ]การสื่อสารระยะไกลอาจทำได้เมื่อใช้วิธีใดวิธีหนึ่งเหล่านี้:
- ข้อมูลจะถูกอัปโหลดไปยังเว็บไซต์ ฐานข้อมูล หรือเซิร์ฟเวอร์FTP
- ข้อมูลจะถูกส่งไปยังที่อยู่อีเมล ที่กำหนดไว้ล่วงหน้าเป็นระยะ ๆ
- ข้อมูลจะ ถูกส่งผ่าน ระบบไร้สายโดยใช้ระบบฮาร์ดแวร์ที่เชื่อมต่ออยู่
- ซอฟต์แวร์นี้ช่วยให้สามารถล็อกอินเข้าสู่เครื่องโลคัลจากระยะไกลผ่านทางอินเทอร์เน็ตหรือเครือข่ายท้องถิ่น เพื่อเข้าถึงบันทึกข้อมูลที่จัดเก็บไว้ในเครื่องเป้าหมาย
การบันทึกการกดแป้นพิมพ์ในการวิจัยกระบวนการเขียน
ตั้งแต่ปี พ.ศ. 2549 การบันทึกการกดแป้นพิมพ์ได้กลายเป็นวิธีการวิจัยที่ได้รับการยอมรับสำหรับการศึกษาเกี่ยวกับกระบวนการเขียน[ 23 ] [ 24 ]มีการพัฒนาโปรแกรมต่างๆ เพื่อรวบรวมข้อมูลกระบวนการออนไลน์ของกิจกรรมการเขียน[ 25 ]รวมถึงInputlog , Scriptlog, Translog, GGXLog และ TypeFlow [ 26 ] [ 27 ]
การบันทึกการกดแป้นพิมพ์ถูกนำมาใช้อย่างถูกต้องตามกฎหมายในฐานะเครื่องมือวิจัยที่เหมาะสมในบริบทการเขียนหลายด้าน ซึ่งรวมถึงการศึกษาเกี่ยวกับกระบวนการเขียนเชิงปัญญา ซึ่งรวมถึง...
- คำอธิบายเกี่ยวกับกลยุทธ์การเขียน; พัฒนาการด้านการเขียนของเด็ก (ทั้งที่มีและไม่มีปัญหาด้านการเขียน)
- การสะกดคำ
- การเขียนภาษาแรกและภาษาที่สอง และ
- ทักษะเฉพาะด้าน เช่น การแปลและการทำคำบรรยาย
การบันทึกการกดแป้นพิมพ์สามารถนำมาใช้ในการวิจัยเกี่ยวกับการเขียนโดยเฉพาะ นอกจากนี้ยังสามารถบูรณาการเข้ากับด้านการศึกษา เช่น การเรียนรู้ภาษาที่สอง ทักษะการเขียนโปรแกรม และทักษะการพิมพ์ได้อีกด้วย
การบันทึกการกดแป้นพิมพ์เป็นวิธีการป้องกันที่ปลอดภัย
เมื่อไม่นานมานี้ มีการวิจัยอย่างกว้างขวางเกี่ยวกับการใช้ข้อมูลการบันทึกการกดแป้นพิมพ์ไม่เพียงแต่เป็นรูปแบบของการโจมตีเท่านั้น แต่ยังเป็นรูปแบบของการป้องกันเชิงพฤติกรรมสำหรับผู้ใช้ด้วย งานวิจัยในปี 2020 เรื่อง “การตรวจสอบความถูกต้องด้วยรหัสผ่านและพลวัตการกดแป้นพิมพ์” โดย Ahmed และ Traore ได้ประเมินว่าแบบจำลองพลวัตการกดแป้นพิมพ์สามารถสนับสนุนกลยุทธ์การตรวจสอบความถูกต้องอย่างต่อเนื่องได้หรือไม่ การตรวจสอบความถูกต้องอย่างต่อเนื่องเป็นกลยุทธ์การป้องกันที่ใช้ประโยชน์จากพฤติกรรมปกติของผู้ใช้เพื่อสร้างพื้นฐาน จากนั้นตรวจสอบความเบี่ยงเบนจากพื้นฐานนั้นเพื่อตรวจจับกิจกรรมที่เป็นปรปักษ์ งานวิจัยนี้วิเคราะห์ประสิทธิภาพของตัวจำแนกประเภทการเรียนรู้ของเครื่องหลายตัวเพื่อระบุรูปแบบการพิมพ์ ความหน่วง และจังหวะเวลาของผู้ใช้ ผู้เขียนพบว่าแม้แต่ความเบี่ยงเบนเล็กน้อยในรูปแบบการพิมพ์ก็อาจเป็นตัวบ่งชี้ที่ชัดเจนของการปลอมแปลงตัวตน ซึ่งแสดงให้เห็นว่าข้อมูลการบันทึกการกดแป้นพิมพ์สามารถใช้เพื่อวัตถุประสงค์ในการป้องกันได้เมื่อเก็บรวบรวมอย่างมีจริยธรรมและได้รับอนุญาตจากผู้ใช้[ 28 ]
งานวิจัยชิ้นนี้ยังรายงานว่า โมเดลการเรียนรู้ของเครื่องที่ฝึกฝนโดยใช้พฤติกรรมการพิมพ์จริง มีอัตราการยอมรับผิดพลาดและการปฏิเสธผิดพลาดต่ำในกรณีส่วนใหญ่ แสดงให้เห็นว่าการใช้ระบบการตรวจสอบสิทธิ์อย่างต่อเนื่องสามารถทำงานได้โดยมีอัตราข้อผิดพลาดต่ำ นอกจากนี้ยังพบว่า รูปแบบการพิมพ์ของคนส่วนใหญ่มีสัญญาณที่สามารถแยกแยะได้มากพอที่จะสร้างโปรไฟล์ส่วนบุคคลโดยอิงจากพฤติกรรมการพิมพ์เพียงอย่างเดียว ซึ่งแสดงให้เห็นว่าช่องโหว่หลักที่ผู้โจมตีใช้ สามารถเป็นพื้นฐานของระบบรักษาความปลอดภัยที่ออกแบบมาเพื่อปกป้องผู้ใช้จากการบุกรุกและการปลอมแปลงตัวตนได้เช่นกัน ผู้เขียนสรุปว่า แม้ว่าการตรวจสอบสิทธิ์โดยใช้ไดนามิกการกดแป้นพิมพ์จะมีแนวโน้มที่ดี แต่การนำไปใช้งานจะต้องคำนึงถึงความปลอดภัย ความสะดวกในการใช้งาน และความเป็นส่วนตัวอย่างรอบคอบ เพื่อประสบการณ์การใช้งานที่ดีที่สุด
คุณสมบัติที่เกี่ยวข้อง
โปรแกรมดักจับการกดแป้นพิมพ์อาจได้รับการพัฒนาเพิ่มเติมด้วยคุณสมบัติที่สามารถบันทึกข้อมูลผู้ใช้ได้โดยไม่ต้องอาศัยการกดแป้นพิมพ์เพียงอย่างเดียว คุณสมบัติเหล่านี้บางส่วนได้แก่:
- การบันทึกข้อมูลในคลิปบอร์ด โปรแกรมสามารถบันทึกข้อมูลใดๆ ก็ตามที่ถูกคัดลอกไปยังคลิปบอร์ดได้
- การบันทึกหน้าจอ การจับภาพหน้าจอใช้เพื่อบันทึกข้อมูลที่เป็นกราฟิก แอ ปพลิเคชันที่มีความสามารถในการบันทึกหน้าจออาจจับภาพหน้าจอทั้งหมด เฉพาะแอปพลิเคชันเดียว หรือแม้แต่เฉพาะบริเวณเคอร์เซอร์เมาส์ แอปพลิเคชันเหล่านั้นอาจจับภาพหน้าจอเป็นระยะๆ หรือตอบสนองต่อพฤติกรรมของผู้ใช้ (เช่น เมื่อผู้ใช้คลิกเมาส์) การบันทึกหน้าจอสามารถใช้เพื่อบันทึกข้อมูลที่ป้อนผ่านแป้นพิมพ์บนหน้าจอได้
- การดักจับข้อความในตัวควบคุม โดยใช้ โปรแกรมAPI ของ Microsoft Windows อนุญาตให้โปรแกรมร้องขอค่าข้อความในตัวควบคุมบางตัว ซึ่งหมายความว่ารหัสผ่านบางส่วนอาจถูกดักจับได้ แม้ว่าจะถูกซ่อนอยู่หลังหน้ากากรหัสผ่าน (โดยปกติคือเครื่องหมายดอกจัน) ก็ตาม[ 29 ]
- บันทึกการเปิดโปรแกรม/โฟลเดอร์/หน้าต่างทุกรายการ รวมถึงการจับภาพหน้าจอของทุกเว็บไซต์ที่เข้าชม
- การบันทึกการค้นหาในเครื่องมือค้นหาการ สนทนา ผ่านโปรแกรมส่งข้อความโต้ตอบแบบทันทีการดาวน์โหลดไฟล์ผ่าน FTP และกิจกรรมอื่นๆ บนอินเทอร์เน็ต (รวมถึงปริมาณแบนด์วิดท์ที่ใช้)
อุปกรณ์ดักจับการกดแป้นพิมพ์แบบฮาร์ดแวร์


โปรแกรมดักจับการกดแป้นพิมพ์แบบฮาร์ดแวร์ไม่จำเป็นต้องติดตั้งซอฟต์แวร์ใดๆ เนื่องจากโปรแกรมเหล่านี้ทำงานอยู่ในระดับฮาร์ดแวร์ของระบบคอมพิวเตอร์อยู่แล้ว
- เฟิร์มแวร์: เฟิร์มแวร์ระดับBIOSที่จัดการเหตุการณ์แป้นพิมพ์สามารถแก้ไขได้เพื่อบันทึกเหตุการณ์เหล่านี้ในขณะที่กำลังประมวลผล จำเป็นต้อง มีการเข้าถึงทางกายภาพและ/หรือระดับรูทไปยังเครื่อง และซอฟต์แวร์ที่โหลดลงใน BIOS จำเป็นต้องสร้างขึ้นสำหรับฮาร์ดแวร์เฉพาะที่จะใช้งาน[ 30 ]
- ฮาร์ดแวร์คีย์บอร์ด: ฮาร์ดแวร์คีย์ล็อกเกอร์ใช้สำหรับบันทึกการกดแป้นพิมพ์โดยใช้วงจรฮาร์ดแวร์ที่เชื่อมต่ออยู่ระหว่างคีย์บอร์ดคอมพิวเตอร์กับคอมพิวเตอร์ โดยทั่วไปจะอยู่ภายในขั้วต่อสายเคเบิลของคีย์บอร์ด นอกจากนี้ยังมี ฮาร์ดแวร์คีย์ล็อกเกอร์แบบใช้ขั้วต่อ USBรวมถึงแบบสำหรับแล็ปท็อป ( การ์ด Mini-PCIเสียบเข้ากับช่องเสียบส่วนขยายของแล็ปท็อป) การใช้งานที่แนบเนียนกว่าสามารถติดตั้งหรือสร้างไว้ในคีย์บอร์ดมาตรฐานเพื่อให้ไม่มีอุปกรณ์ใดปรากฏให้เห็นบนสายเคเบิลภายนอก ทั้งสองประเภทจะบันทึกกิจกรรมคีย์บอร์ดทั้งหมดลงในหน่วยความจำภายในซึ่งสามารถเข้าถึงได้ในภายหลัง เช่น โดยการพิมพ์ลำดับคีย์ลับ ฮาร์ดแวร์คีย์ล็อกเกอร์ไม่จำเป็นต้องติดตั้งซอฟต์แวร์ใดๆ บนคอมพิวเตอร์ของผู้ใช้เป้าหมาย ดังนั้นจึงไม่รบกวนการทำงานของคอมพิวเตอร์และมีโอกาสน้อยที่จะถูกตรวจพบโดยซอฟต์แวร์ที่ทำงานอยู่บนนั้น อย่างไรก็ตาม อาจตรวจพบการมีอยู่ทางกายภาพได้หากติดตั้งอยู่นอกเคสเป็นอุปกรณ์แบบอินไลน์ระหว่างคอมพิวเตอร์กับคีย์บอร์ด การใช้งานบางอย่างเหล่านี้สามารถควบคุมและตรวจสอบจากระยะไกลได้โดยใช้มาตรฐานการสื่อสารไร้สาย[ 31 ]
- เครื่อง ดักจับข้อมูลคีย์บอร์ดและเมาส์ไร้สาย: เครื่องดักจับข้อมูลแบบพาสซีฟเหล่านี้จะรวบรวมแพ็กเก็ตข้อมูลที่ถ่ายโอนจากคีย์บอร์ดไร้สายและตัวรับสัญญาณ เนื่องจากการเข้ารหัสอาจถูกใช้เพื่อรักษาความปลอดภัยการสื่อสารไร้สายระหว่างอุปกรณ์ทั้งสอง จึงอาจจำเป็นต้องถอดรหัสก่อนหากต้องการอ่านข้อมูลที่ส่ง ในบางกรณี สิ่งนี้ทำให้ผู้โจมตีสามารถพิมพ์คำสั่งตามอำเภอใจลงในคอมพิวเตอร์ของเหยื่อได้[ 32 ]
- แผ่นปิดแป้นพิมพ์: เป็นที่ทราบกันดีว่าอาชญากรใช้แผ่นปิดแป้นพิมพ์บนตู้เอทีเอ็มเพื่อดักจับรหัส PIN ของผู้คน การกดแป้นพิมพ์แต่ละครั้งจะถูกบันทึกโดยแป้นพิมพ์ของตู้เอทีเอ็ม รวมถึงแป้นพิมพ์ของอาชญากรที่วางทับอยู่ด้านบน อุปกรณ์นี้ได้รับการออกแบบให้ดูเหมือนเป็นส่วนหนึ่งของเครื่องเพื่อให้ลูกค้าธนาคารไม่รู้ตัวว่ามีอยู่[ 33 ]
- เครื่องบันทึกการกดแป้นพิมพ์แบบอะคูสติก: การวิเคราะห์การเข้ารหัสแบบอะคูสติกสามารถใช้ในการตรวจสอบเสียงที่เกิดจากการพิมพ์บนคอมพิวเตอร์ แต่ละปุ่มบนแป้นพิมพ์จะสร้างลายเซ็นอะคูสติกที่แตกต่างกันเล็กน้อยเมื่อกด จากนั้นจึงสามารถระบุได้ว่าลายเซ็นการกดแป้นพิมพ์ใดเกี่ยวข้องกับอักขระใดบนแป้นพิมพ์โดยใช้วิธีทางสถิติเช่นการวิเคราะห์ความถี่ ความถี่ของการทำซ้ำของลายเซ็นการกดแป้นพิมพ์แบบอะคูสติกที่คล้ายกัน จังหวะเวลาระหว่างการกดแป้นพิมพ์ที่แตกต่างกัน และข้อมูลบริบทอื่นๆ เช่น ภาษาที่ผู้ใช้น่าจะใช้เขียน จะถูกนำมาใช้ในการวิเคราะห์นี้เพื่อจับคู่เสียงกับตัวอักษร[ 34 ]จำเป็นต้องมีการบันทึกที่ค่อนข้างยาว (1,000 ครั้งขึ้นไป) เพื่อให้ได้ตัวอย่าง ที่มีขนาดใหญ่พอ [ 35 ]
- การปล่อยคลื่นแม่เหล็กไฟฟ้า: สามารถตรวจจับการปล่อยคลื่นแม่เหล็กไฟฟ้าของแป้นพิมพ์แบบมีสายได้จากระยะไกลถึง 20 เมตร (66 ฟุต) โดยไม่ต้องต่อสายเข้ากับ แป้นพิมพ์โดยตรง [ 36 ]ในปี 2552 นักวิจัยชาวสวิสได้ทดสอบ แป้นพิมพ์ USB , PS/2และแป้นพิมพ์แล็ปท็อป 11 แบบในห้องกึ่งไร้เสียงสะท้อนและพบว่าแป้นพิมพ์ทั้งหมดมีความเสี่ยง โดยสาเหตุหลักมาจากต้นทุนที่สูงเกินไปในการเพิ่มการป้องกันระหว่างการผลิต[ 37 ] นักวิจัยใช้ ตัวรับสัญญาณแบบบรอดแบนด์เพื่อปรับความถี่เฉพาะของการปล่อยคลื่นที่แผ่ออกมาจากแป้นพิมพ์
- การเฝ้าระวังด้วยแสง: การเฝ้าระวังด้วยแสง แม้จะไม่ใช่คีย์ล็อกเกอร์ในความหมายดั้งเดิม แต่ก็เป็นแนวทางที่สามารถใช้ในการบันทึกรหัสผ่านหรือPIN ได้กล้องที่วางไว้อย่างมีกลยุทธ์ เช่นกล้องวงจรปิด ที่ซ่อน อยู่ที่ตู้ ATMสามารถทำให้อาชญากรสามารถเฝ้าดูการป้อน PIN หรือรหัสผ่านได้[ 38 ] [ 39 ]
- หลักฐานทางกายภาพ: สำหรับแป้นพิมพ์ที่ใช้สำหรับป้อนรหัสรักษาความปลอดภัยเท่านั้น ปุ่มที่ใช้งานจริงจะมีร่องรอยการใช้งานจากลายนิ้วมือจำนวนมาก รหัสผ่านสี่หลัก หากทราบตัวเลขสี่หลักนั้นแล้ว จำนวนความเป็นไปได้จะลดลงจาก 10,000 เหลือเพียง 24 ความเป็นไปได้ (10⁴ เทียบกับ 4! [ แฟกทอเรียลของ 4]) จากนั้นสามารถนำความเป็นไปได้เหล่านี้ไปใช้ในโอกาสต่างๆ เพื่อ "โจมตีแบบเดาสุ่ม" ด้วยตนเองได้
- เซ็นเซอร์ สมาร์ทโฟน : นักวิจัยได้แสดงให้เห็นว่าสามารถจับภาพการกดแป้นพิมพ์ของแป้นพิมพ์คอมพิวเตอร์ที่อยู่ใกล้เคียงได้โดยใช้เพียงมาตรวัดความเร่ง ทั่วไป ที่พบในสมาร์ทโฟน[ 40 ]การโจมตีนี้เป็นไปได้โดยการวางสมาร์ทโฟนไว้ใกล้กับแป้นพิมพ์บนโต๊ะเดียวกัน จากนั้นมาตรวัดความเร่งของสมาร์ทโฟนจะสามารถตรวจจับการสั่นสะเทือนที่เกิดจากการพิมพ์บนแป้นพิมพ์และแปลสัญญาณมาตรวัดความเร่งดิบนี้เป็นประโยคที่อ่านได้ด้วยความแม่นยำถึง 80 เปอร์เซ็นต์ เทคนิคนี้เกี่ยวข้องกับการทำงานผ่านความน่าจะเป็นโดยการตรวจจับคู่ของการกดแป้นพิมพ์ แทนที่จะเป็นแต่ละปุ่ม มันจำลอง "เหตุการณ์แป้นพิมพ์" เป็นคู่ๆ แล้วคำนวณว่าคู่ของปุ่มที่กดนั้นอยู่ทางด้านซ้ายหรือด้านขวาของแป้นพิมพ์ และอยู่ใกล้กันหรือห่างกันบน แป้นพิมพ์ QWERTYเมื่อคำนวณเสร็จแล้ว มันจะเปรียบเทียบผลลัพธ์กับพจนานุกรมที่โหลดไว้ล่วงหน้าซึ่งแต่ละคำได้รับการแยกย่อยในลักษณะเดียวกัน[ 41 ]เทคนิคที่คล้ายกันนี้ยังแสดงให้เห็นว่ามีประสิทธิภาพในการจับการกดแป้นพิมพ์บนแป้นพิมพ์หน้าจอสัมผัส[ 42 ] [ 43 ] [ 44 ]ในขณะที่ในบางกรณี ใช้ร่วมกับไจโรสโคป[ 45 ] [ 46 ]หรือเซ็นเซอร์แสงโดยรอบ[ 47 ]
- โปรแกรมดักจับการกดแป้นพิมพ์แบบติดตามร่างกาย: โปรแกรมดักจับการกดแป้นพิมพ์แบบติดตามร่างกายจะติดตามและวิเคราะห์การเคลื่อนไหวของร่างกายเพื่อตรวจสอบว่ามีการกดแป้นพิมพ์ใดบ้าง ผู้โจมตีจำเป็นต้องคุ้นเคยกับเค้าโครงแป้นพิมพ์ที่ถูกติดตามเพื่อเชื่อมโยงการเคลื่อนไหวของร่างกายกับตำแหน่งของแป้นพิมพ์ แม้ว่าด้วยตัวอย่างที่มีขนาดใหญ่พอสมควรก็สามารถอนุมานได้ การติดตามสัญญาณเสียงของอินเทอร์เฟซผู้ใช้ (เช่น เสียงที่อุปกรณ์สร้างขึ้นเพื่อแจ้งให้ผู้ใช้ทราบว่ามีการบันทึกการกดแป้นพิมพ์) อาจลดความซับซ้อนของอัลกอริทึมการดักจับการกดแป้นพิมพ์แบบติดตามร่างกาย เนื่องจากเป็นการระบุช่วงเวลาที่กดแป้นพิมพ์[ 48 ]
การแตก
การเขียนโปรแกรมซอฟต์แวร์ง่ายๆ สำหรับบันทึกการกดแป้นพิมพ์นั้นทำได้ง่ายมาก และเช่นเดียวกับโปรแกรมคอมพิวเตอร์ที่เป็นอันตรายอื่นๆ มันสามารถแพร่กระจายในรูปแบบของม้าโทรจันหรือเป็นส่วนหนึ่งของไวรัสได้ อย่างไรก็ตาม สิ่งที่ไม่ง่ายสำหรับผู้โจมตีคือการติดตั้งโปรแกรมบันทึกการกดแป้นพิมพ์แบบลับๆ โดยไม่ถูกจับได้ และดาวน์โหลดข้อมูลที่บันทึกไว้โดยไม่สามารถติดตามได้ ผู้โจมตีที่เชื่อมต่อกับเครื่องโฮสต์เพื่อดาวน์โหลดข้อมูลการกดแป้นพิมพ์ด้วยตนเองมีความเสี่ยงที่จะถูกติดตาม ม้าโทรจันที่ส่งข้อมูลที่บันทึกไว้ไปยังที่อยู่อีเมลหรือที่อยู่ IP ที่กำหนดไว้ มีความเสี่ยงที่จะเปิดเผยตัวผู้โจมตี
โทรจัน
นักวิจัย Adam Young และ Moti Yung ได้หารือเกี่ยวกับวิธีการส่งบันทึกการกดแป้นพิมพ์หลายวิธี พวกเขานำเสนอการโจมตีขโมยรหัสผ่านแบบปฏิเสธความรับผิดชอบ โดยติดตั้งโทรจันบันทึกการกดแป้นพิมพ์โดยใช้ไวรัสหรือเวิร์มผู้โจมตีที่ติดไวรัสหรือเวิร์มสามารถอ้างว่าเป็นเหยื่อได้ โทรจัน เข้ารหัสจะเข้ารหัสคู่ชื่อผู้ใช้/รหัสผ่านที่ถูกขโมยแบบไม่สมมาตรโดยใช้กุญแจสาธารณะของผู้เขียนโทรจัน และเผยแพร่ข้อความ ที่เข้ารหัสแล้วอย่างลับๆ พวกเขากล่าวว่าข้อความที่เข้ารหัสแล้วสามารถ เข้ารหัส แบบสเตกาโนกราฟิกและโพสต์ไปยังกระดานข่าวสาธารณะเช่นUsenetได้[ 49 ] [ 50 ]
ใช้โดยตำรวจ
ในปี 2000 FBIใช้ FlashCrest iSpy เพื่อเข้าถึงรหัสผ่านPGP ของNicodemo Scarfo, Jr.ลูกชายของNicodemo Scarfo หัวหน้าแก๊ง มาเฟีย[ 51 ] นอกจากนี้ ในปี 2000 FBI ยังล่อลวงอาชญากรไซเบอร์ ชาวรัสเซียที่ต้องสงสัยสองคน มายังสหรัฐอเมริกาด้วยกลอุบายที่ซับซ้อน และดักจับชื่อผู้ใช้และรหัสผ่านของพวกเขาด้วยโปรแกรมดักจับแป้นพิมพ์ที่ติดตั้งอย่างลับๆ บนเครื่องที่พวกเขาใช้เข้าถึงคอมพิวเตอร์ในรัสเซียจากนั้น FBI ก็ใช้ข้อมูลประจำตัวเหล่านี้เพื่อเข้าถึงคอมพิวเตอร์ของผู้ต้องสงสัยในรัสเซียเพื่อรวบรวมหลักฐานในการดำเนินคดีกับพวกเขา[ 52 ]
มาตรการรับมือ
ประสิทธิภาพของมาตรการป้องกันนั้นแตกต่างกันไป เนื่องจากโปรแกรมดักจับการกดแป้นพิมพ์ใช้เทคนิคที่หลากหลายในการดักจับข้อมูล และมาตรการป้องกันจะต้องมีประสิทธิภาพต่อเทคนิคการดักจับข้อมูลเฉพาะนั้นๆ ในกรณีของโปรแกรมดักจับการกดแป้นพิมพ์ของ Windows 10 โดย Microsoft การเปลี่ยนการตั้งค่าความเป็นส่วนตัวบางอย่างอาจปิดใช้งานได้[ 53 ]แป้นพิมพ์บนหน้าจอจะมีประสิทธิภาพต่อโปรแกรมดักจับการกดแป้นพิมพ์แบบฮาร์ดแวร์ ความโปร่งใสจะเอาชนะโปรแกรมดักจับหน้าจอได้บางส่วน แต่ไม่ใช่ทั้งหมด แอปพลิ เคชันป้องกันสปายแวร์ที่สามารถปิดใช้งานโปรแกรมดักจับการกดแป้นพิมพ์แบบ hook ได้เท่านั้น จะไม่มีประสิทธิภาพต่อโปรแกรมดักจับการกดแป้นพิมพ์แบบ kernel
ผู้เขียนโปรแกรมดักจับการกดแป้นพิมพ์อาจสามารถอัปเดตโค้ดของโปรแกรมเพื่อปรับตัวให้เข้ากับมาตรการรับมือที่พิสูจน์แล้วว่ามีประสิทธิภาพได้
โปรแกรมป้องกันการบันทึกการกดแป้นพิมพ์
โปรแกรมป้องกันคีย์ล็อกเกอร์เป็นซอฟต์แวร์ที่ออกแบบมาโดยเฉพาะเพื่อตรวจจับคีย์ล็อกเกอร์ในคอมพิวเตอร์ โดยทั่วไปจะเปรียบเทียบไฟล์ทั้งหมดในคอมพิวเตอร์กับฐานข้อมูลคีย์ล็อกเกอร์ เพื่อค้นหาความคล้ายคลึงกันที่อาจบ่งชี้ถึงการมีอยู่ของคีย์ล็อกเกอร์ที่ซ่อนอยู่ เนื่องจากโปรแกรมป้องกันคีย์ล็อกเกอร์ได้รับการออกแบบมาโดยเฉพาะเพื่อตรวจจับคีย์ล็อกเกอร์ จึงมีศักยภาพที่จะมีประสิทธิภาพมากกว่าซอฟต์แวร์ป้องกันไวรัสทั่วไป ซอฟต์แวร์ป้องกันไวรัสบางตัวไม่ถือว่าคีย์ล็อกเกอร์เป็นมัลแวร์ เนื่องจากในบางกรณีคีย์ล็อกเกอร์อาจถือเป็นซอฟต์แวร์ที่ถูกต้องตามกฎหมายได้[ 54 ]
ไลฟ์ซีดี/ยูเอสบี
การรีบูตคอมพิวเตอร์โดยใช้Live CD หรือ Live USBที่มีการป้องกันการเขียนเป็นมาตรการป้องกันที่เป็นไปได้สำหรับโปรแกรมดักจับการกดแป้นพิมพ์ หาก CD นั้นปราศจากมัลแวร์ และระบบปฏิบัติการที่บรรจุอยู่ภายในนั้นได้รับการรักษาความปลอดภัยและอัปเดตแพทช์อย่างสมบูรณ์แล้ว เพื่อป้องกันการติดไวรัสทันทีที่เริ่มใช้งาน การบูตระบบปฏิบัติการอื่นไม่มีผลต่อการใช้งานโปรแกรมดักจับการกดแป้นพิมพ์แบบฮาร์ดแวร์หรือแบบ BIOS
โปรแกรมป้องกันสปายแวร์ / โปรแกรมป้องกันไวรัส
โปรแกรม ป้องกันสปายแวร์หลายตัวสามารถตรวจจับโปรแกรมดักจับการกดแป้นพิมพ์ (keylogger) บางตัวได้ และทำการกักกัน ปิดใช้งาน หรือลบออก อย่างไรก็ตาม เนื่องจากโปรแกรมดักจับการกดแป้นพิมพ์หลายตัวเป็นซอฟต์แวร์ที่ถูกต้องตามกฎหมายในบางสถานการณ์ โปรแกรมป้องกันสปายแวร์จึงมักละเลยที่จะติดป้ายกำกับโปรแกรมดักจับการกดแป้นพิมพ์เหล่านั้นว่าเป็นสปายแวร์หรือไวรัส โปรแกรมเหล่านี้สามารถตรวจจับโปรแกรมดักจับการกดแป้นพิมพ์ได้โดยอาศัยรูปแบบในโค้ดที่ทำงานได้หลักการวิเคราะห์เชิงอนุมานและพฤติกรรมของโปรแกรมดักจับการกดแป้นพิมพ์ (เช่น การใช้hooks และ APIบางอย่าง)
ไม่มีแอปพลิเคชันป้องกันสปายแวร์แบบซอฟต์แวร์ใดที่มีประสิทธิภาพ 100% ในการป้องกันคีย์ล็อกเกอร์ทั้งหมด[ 55 ]แอปพลิเคชันป้องกันสปายแวร์แบบซอฟต์แวร์ไม่สามารถเอาชนะคีย์ล็อกเกอร์ที่ไม่ใช่ซอฟต์แวร์ได้ (ตัวอย่างเช่น คีย์ล็อกเกอร์ฮาร์ดแวร์ที่ติดอยู่กับคีย์บอร์ดจะได้รับข้อมูลการกดแป้นพิมพ์ก่อนแอปพลิเคชันป้องกันสปายแวร์แบบซอฟต์แวร์ใดๆ เสมอ)
เทคนิคเฉพาะที่โปรแกรมป้องกันสปายแวร์ใช้จะมีผลต่อประสิทธิภาพในการป้องกันโปรแกรมดักจับการกดแป้นพิมพ์ (keylogger) โดยทั่วไปแล้ว โปรแกรมป้องกันสปายแวร์ที่มีสิทธิ์สูงกว่าจะสามารถเอาชนะ keylogger ที่มีสิทธิ์ต่ำกว่าได้ ตัวอย่างเช่น โปรแกรมป้องกันสปายแวร์แบบ hook ไม่สามารถเอาชนะ keylogger ที่ทำงานบนเคอร์เนลได้ (เนื่องจาก keylogger จะได้รับข้อความการกดแป้นพิมพ์ก่อนที่โปรแกรมป้องกันสปายแวร์จะได้รับ) แต่ก็อาจเอาชนะ keylogger ที่ทำงานบน hook และ API ได้
เครื่องตรวจสอบเครือข่าย
โปรแกรมตรวจสอบเครือข่าย (หรือที่เรียกว่าไฟร์วอลล์แบบย้อนกลับ) สามารถใช้เพื่อแจ้งเตือนผู้ใช้เมื่อใดก็ตามที่แอปพลิเคชันพยายามเชื่อมต่อกับเครือข่าย ซึ่งจะช่วยให้ผู้ใช้มีโอกาสป้องกันไม่ให้โปรแกรมดักจับการพิมพ์ส่งข้อมูลที่พิมพ์ไปยังเซิร์ฟเวอร์ได้
โปรแกรมกรอกแบบฟอร์มอัตโนมัติ
โปรแกรมกรอกแบบฟอร์มอัตโนมัติอาจป้องกันการดักจับการกดแป้นพิมพ์ได้โดยการลดความจำเป็นที่ผู้ใช้จะต้องพิมพ์รายละเอียดส่วนตัวและรหัสผ่านโดยใช้แป้นพิมพ์โปรแกรมกรอกแบบฟอร์มส่วนใหญ่ได้รับการออกแบบมาสำหรับเว็บเบราว์เซอร์เพื่อกรอกข้อมูลในหน้าชำระเงินและเข้าสู่ระบบบัญชีของผู้ใช้ เมื่อป้อนข้อมูล บัญชีและ บัตรเครดิต ของผู้ใช้ลงในโปรแกรมแล้ว ข้อมูลเหล่านั้นจะถูกป้อนลงในแบบฟอร์มโดยอัตโนมัติโดยไม่ต้องใช้แป้นพิมพ์หรือ คัดลอกไปยังคลิปบอร์ดซึ่งจะช่วยลดโอกาสที่ข้อมูลส่วนตัวจะถูกบันทึก อย่างไรก็ตาม ผู้ที่มีสิทธิ์เข้าถึงเครื่องคอมพิวเตอร์โดยตรงอาจยังคงสามารถติดตั้งซอฟต์แวร์ที่สามารถดักจับข้อมูลนี้ได้จากส่วนอื่น ๆ ของระบบปฏิบัติการหรือระหว่างการส่งผ่านเครือข่าย ( การรักษาความปลอดภัยระดับชั้นการขนส่ง (TLS) ช่วยลดความเสี่ยงที่ข้อมูลระหว่างการส่งผ่านอาจถูกดักจับโดยโปรแกรมดักจับข้อมูลเครือข่ายและเครื่องมือพร็อกซี )
รหัสผ่านใช้ครั้งเดียว (OTP)
การใช้รหัสผ่านแบบใช้ครั้งเดียวอาจช่วยป้องกันการเข้าถึงบัญชีโดยไม่ได้รับอนุญาต ซึ่งข้อมูลการเข้าสู่ระบบอาจถูกเปิดเผยต่อผู้โจมตีผ่านโปรแกรมดักจับการกดแป้นพิมพ์ เนื่องจากรหัสผ่านแต่ละรหัสจะถูกยกเลิกทันทีที่ใช้งาน วิธีนี้อาจมีประโยชน์สำหรับผู้ที่ใช้คอมพิวเตอร์สาธารณะ อย่างไรก็ตาม ผู้โจมตีที่ควบคุมคอมพิวเตอร์ดังกล่าวจากระยะไกลสามารถรอให้เหยื่อป้อนข้อมูลประจำตัวก่อนที่จะทำธุรกรรมที่ไม่ได้รับอนุญาตในนามของเหยื่อในขณะที่เซสชันนั้นยังใช้งานอยู่
อีกวิธีหนึ่งที่ใช้กันทั่วไปในการป้องกันรหัสการเข้าถึงจากการถูกขโมยโดยโปรแกรมดักจับการกดแป้นพิมพ์คือการขอให้ผู้ใช้ป้อนอักขระที่เลือกแบบสุ่มเพียงไม่กี่ตัวจากรหัสยืนยันตัวตนของพวกเขา ตัวอย่างเช่น อาจขอให้ป้อนอักขระตัวที่ 2, 5 และ 8 แม้ว่าจะมีคนกำลังเฝ้าดูผู้ใช้หรือใช้โปรแกรมดักจับการกดแป้นพิมพ์ พวกเขาก็จะได้รับเพียงไม่กี่อักขระจากรหัสโดยไม่ทราบตำแหน่งของอักขระเหล่านั้น[ 56 ]
โทเค็นความปลอดภัย
การใช้สมาร์ทการ์ดหรือโทเค็นความปลอดภัย อื่นๆ อาจช่วยเพิ่มความปลอดภัยจากการโจมตีแบบเล่นซ้ำในกรณีที่การโจมตีแบบบันทึกการกดแป้นพิมพ์ประสบความสำเร็จ เนื่องจากการเข้าถึงข้อมูลที่ได้รับการป้องกันจะต้องใช้ทั้งโทเค็นความปลอดภัย (ฮาร์ดแวร์) และรหัสผ่าน/วลีรหัสผ่านที่เหมาะสม การรู้การกดแป้นพิมพ์ การกระทำของเมาส์ การแสดงผล คลิปบอร์ด ฯลฯ ที่ใช้ในคอมพิวเตอร์เครื่องหนึ่งจะไม่ช่วยให้ผู้โจมตีสามารถเข้าถึงทรัพยากรที่ได้รับการป้องกันได้ในภายหลัง โทเค็นความปลอดภัยบางชนิดทำงานเป็นระบบรหัสผ่านแบบใช้ครั้งเดียวที่ได้รับความช่วยเหลือจากฮาร์ดแวร์ และบางชนิดใช้การตรวจสอบสิทธิ์แบบตอบสนองความท้าทาย ทางคริปโตกราฟี ซึ่งสามารถปรับปรุงความปลอดภัยในลักษณะที่คล้ายคลึงกับรหัสผ่านแบบใช้ครั้งเดียวเครื่องอ่านสมาร์ทการ์ดและแป้นพิมพ์ที่เกี่ยวข้องสำหรับ การป้อน PINอาจมีความเสี่ยงต่อการบันทึกการกดแป้นพิมพ์ผ่านการโจมตีที่เรียกว่าsupply chain attack [ 57 ]ซึ่งผู้โจมตีจะแทนที่ฮาร์ดแวร์เครื่องอ่านการ์ด/ป้อน PIN ด้วยฮาร์ดแวร์ที่บันทึก PIN ของผู้ใช้
แป้นพิมพ์บนหน้าจอ
แป้นพิมพ์บนหน้าจอส่วนใหญ่ (เช่น แป้นพิมพ์บนหน้าจอที่มาพร้อมกับWindows XP ) จะส่งข้อความเหตุการณ์แป้นพิมพ์ปกติไปยังโปรแกรมเป้าหมายภายนอกเพื่อพิมพ์ข้อความ โปรแกรมดักจับแป้นพิมพ์สามารถบันทึกอักขระที่พิมพ์เหล่านี้ที่ส่งจากโปรแกรมหนึ่งไปยังอีกโปรแกรมหนึ่งได้[ 58 ]
ซอฟต์แวร์รบกวนการกดแป้นพิมพ์
ซอฟต์แวร์รบกวนการกดแป้นพิมพ์ก็มีให้ใช้งานเช่นกัน[ 59 ] โปรแกรมเหล่านี้พยายามหลอกโปรแกรมดักจับการกดแป้นพิมพ์โดยการแนะนำการกดแป้นพิมพ์แบบสุ่ม แม้ว่าผลลัพธ์ที่ได้คือโปรแกรมดักจับการกดแป้นพิมพ์จะบันทึกข้อมูลมากกว่าที่ต้องการก็ตาม ผู้โจมตีมีหน้าที่ในการแยกการกดแป้นพิมพ์ที่สนใจออกมา ความปลอดภัยของกลไกนี้ โดยเฉพาะอย่างยิ่งความสามารถในการต้านทานการวิเคราะห์การเข้ารหัสยังไม่ชัดเจน
ระบบรักษาความปลอดภัยในตัวของระบบปฏิบัติการ
ตั้งแต่Windows Vistaเป็นต้นมา ซอฟต์แวร์สำหรับแทรก DLL จำเป็นต้อง มี สิทธิ์การดูแลระบบUAC [ 60 ]และไดรเวอร์ทั้งหมดต้องมีลายเซ็นดิจิทัล ที่ถูกต้องตามกฎหมาย ตั้งแต่Windows 11 เป็นต้นมา จำเป็นต้องมีSecure Bootและหากเปิดใช้งานSecure Bootจะอนุญาตเฉพาะไดรเวอร์ที่ผ่านการตรวจสอบWHQL เท่านั้น [ 61 ]ตั้งแต่Windows 11 เวอร์ชัน 24H2 เป็นต้น มา ได้เพิ่ม การควบคุม สิทธิ์แอปสำหรับการจับภาพหน้าจอและการบันทึกหน้าจอ
การรู้จำเสียงพูด
เช่นเดียวกับแป้นพิมพ์บนหน้าจอ ซอฟต์แวร์ แปลงเสียงเป็นข้อความก็สามารถใช้ต่อต้านโปรแกรมดักจับการพิมพ์ได้เช่นกัน เนื่องจากไม่มีการพิมพ์หรือการเคลื่อนไหวของเมาส์เข้ามาเกี่ยวข้อง จุดอ่อนที่สุดของการใช้ซอฟต์แวร์จดจำเสียงอาจอยู่ที่วิธีการที่ซอฟต์แวร์ส่งข้อความที่จดจำได้ไปยังซอฟต์แวร์เป้าหมายหลังจากประมวลผลเสียงของผู้ใช้แล้ว
การจดจำลายมือและการใช้ท่าทางเมาส์
ปัจจุบัน PDAและแท็บเล็ตพีซีหลายรุ่นสามารถแปลงการเคลื่อนไหวของปากกา (หรือที่เรียกว่าสไตลัส) บนหน้าจอสัมผัสให้เป็นข้อความที่คอมพิวเตอร์เข้าใจได้สำเร็จแล้วท่าทางของเมาส์ใช้หลักการนี้โดยใช้การเคลื่อนไหวของเมาส์แทนสไตลัส โปรแกรมท่าทางของเมาส์จะแปลงการเคลื่อนไหวเหล่านี้ให้เป็นการกระทำที่ผู้ใช้กำหนดได้ เช่น การพิมพ์ข้อความ ในทำนองเดียวกันแท็บเล็ตกราฟิกและปากกาแสงสามารถใช้ในการป้อนท่าทางเหล่านี้ได้ แต่ปัจจุบันเริ่มไม่เป็นที่นิยมแล้ว
จุดอ่อนที่อาจเกิดขึ้นได้เช่นเดียวกับการจดจำเสียงพูดนั้น ก็สามารถนำมาใช้กับเทคนิคนี้ได้เช่นกัน
ตัวขยาย/บันทึกมาโคร
ด้วยความช่วยเหลือจากโปรแกรมต่างๆ ข้อความที่ดูเหมือนไม่มีความหมายสามารถขยายให้เป็นข้อความที่มีความหมายได้ และส่วนใหญ่จะปรับให้เข้ากับบริบท เช่น "en.wikipedia.org" สามารถขยายได้เมื่อหน้าต่างเว็บเบราว์เซอร์ได้รับโฟกัส จุดอ่อนที่สำคัญที่สุดของเทคนิคนี้คือ โปรแกรมเหล่านี้ส่งการกดแป้นพิมพ์ไปยังโปรแกรมเป้าหมายโดยตรง อย่างไรก็ตาม ปัญหานี้สามารถแก้ไขได้โดยใช้เทคนิค "สลับ" ที่อธิบายไว้ด้านล่าง กล่าวคือ การส่งการคลิกเมาส์ไปยังพื้นที่ที่ไม่ตอบสนองของโปรแกรมเป้าหมาย การส่งแป้นพิมพ์ที่ไม่มีความหมาย การส่งการคลิกเมาส์อีกครั้งไปยังพื้นที่เป้าหมาย (เช่น ช่องป้อนรหัสผ่าน) และสลับไปมา
การพิมพ์ที่หลอกลวง
การสลับระหว่างการพิมพ์ข้อมูลประจำตัวการเข้าสู่ระบบและการพิมพ์อักขระที่อื่นในหน้าต่างโฟกัส[ 62 ]อาจทำให้โปรแกรมดักจับแป้นพิมพ์บันทึกข้อมูลมากกว่าที่จำเป็น แต่ผู้โจมตีสามารถกรองข้อมูลเหล่านี้ออกได้อย่างง่ายดาย ในทำนองเดียวกัน ผู้ใช้สามารถเลื่อนเคอร์เซอร์โดยใช้เมาส์ขณะพิมพ์ ทำให้การกดแป้นพิมพ์ที่บันทึกไว้มีลำดับที่ไม่ถูกต้อง เช่น การพิมพ์รหัสผ่านที่ขึ้นต้นด้วยตัวอักษรตัวสุดท้าย แล้วใช้เมาส์เลื่อนเคอร์เซอร์สำหรับตัวอักษรแต่ละตัวถัดไป สุดท้ายนี้ บุคคลใดบุคคลหนึ่งยังสามารถใช้เมนูบริบทเพื่อลบตัด คัดลอก และวาง ส่วนต่างๆ ของข้อความที่พิมพ์โดยไม่ต้องใช้แป้นพิมพ์ ผู้โจมตีที่สามารถดักจับได้เพียงบางส่วนของรหัสผ่านจะมี พื้นที่แป้นพิมพ์ที่ใหญ่กว่าในการโจมตีหากพวกเขาเลือกที่จะดำเนินการโจมตีแบบเดาแบบสุ่ม
เทคนิคอีกอย่างที่คล้ายคลึงกันมากคือการใช้ข้อเท็จจริงที่ว่าส่วนของข้อความที่เลือกไว้จะถูกแทนที่ด้วยตัวอักษรตัวถัดไปที่พิมพ์ ตัวอย่างเช่น หากรหัสผ่านคือ "secret" เราสามารถพิมพ์ "s" จากนั้นพิมพ์ตัวอักษรปลอม "asdf" ตัวอักษรปลอมเหล่านี้สามารถเลือกได้ด้วยเมาส์ แล้วพิมพ์ตัวอักษรตัวถัดไปจากรหัสผ่าน "e" ซึ่งจะแทนที่ตัวอักษรปลอม "asdf"
เทคนิคเหล่านี้ตั้งสมมติฐานที่ผิดพลาดว่าซอฟต์แวร์บันทึกการกดแป้นพิมพ์ไม่สามารถตรวจสอบคลิปบอร์ด ข้อความที่เลือกในแบบฟอร์ม หรือจับภาพหน้าจอทุกครั้งที่มีการกดแป้นพิมพ์หรือคลิกเมาส์ได้โดยตรง อย่างไรก็ตาม เทคนิคเหล่านี้อาจมีประสิทธิภาพกับอุปกรณ์บันทึกการกดแป้นพิมพ์แบบฮาร์ดแวร์บางชนิด
ดูเพิ่มเติม
ลิงก์ภายนอก
สื่อที่เกี่ยวข้องกับการบันทึกการกดแป้นพิมพ์ในวิกิมีเดียคอมมอนส์
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ การบันทึกการกดแป้นพิมพ์
การบันทึกการกดแป้นพิมพ์ ซึ่ง มักเรียกว่า keylogging หรือ keyboard capturing คือการกระทำของการบันทึก ( logging ) การกดแป้น พิมพ์ [ 1 ] [ 2 ] โดยทั่วไปจะทำอย่างลับๆ...
ประวัติศาสตร์
ในช่วงกลางทศวรรษ 1970 สหภาพโซเวียต ได้พัฒนาและใช้งานฮาร์ดแวร์คีย์ล็อกเกอร์โดยมีเป้าหมายที่ เครื่องพิมพ์ดีด ของสถานทูตสหรัฐฯ
โปรแกรมดักจับการกดแป้นพิมพ์แบบซอฟต์แวร์
โปรแกรมดักจับการกดแป้นพิมพ์แบบซอฟต์แวร์เป็นโปรแกรมคอมพิวเตอร์ที่ออกแบบมาเพื่อบันทึกข้อมูลการป้อนใดๆ จากแป้นพิมพ์ [ 15 ] โปรแกรมดักจับการกดแป้นพิมพ์ถูกใช้ใน องค์กร ไอที เพื่อแก้ไขปัญหาทางเทคนิคเกี่ยวกับคอมพิวเตอร์และเครือข่ายธุรกิจ...
อุปกรณ์ดักจับการกดแป้นพิมพ์แบบฮาร์ดแวร์
โปรแกรมดักจับการกดแป้นพิมพ์แบบฮาร์ดแวร์ไม่จำเป็นต้องติดตั้งซอฟต์แวร์ใดๆ เนื่องจากโปรแกรมเหล่านี้ทำงานอยู่ในระดับฮาร์ดแวร์ของระบบคอมพิวเตอร์อยู่แล้ว