การโจมตีแบบ AutoSpill สามารถขโมยข้อมูล Credential จาก Android password managers ได้

นักวิจัยด้านความปลอดภัยได้พัฒนาเทคนิคการโจมตีใหม่ที่เรียกว่า AutoSpill เพื่อขโมยข้อมูล Credential ของบัญชีผู้ใช้งานบนระบบปฏิบัติการ Android ในระหว่างการทำงานของ Autofill

ในการนำเสนอที่งานประชุมด้านความปลอดภัย Black Hat Europe นักวิจัยจากสถาบันเทคโนโลยีสารสนเทศระดับนานาชาติ (IIIT) ที่เมืองไฮเดอราบัด เปิดเผยผลการทดสอบว่าโปรแกรมจัดการรหัสผ่านส่วนใหญ่สำหรับระบบปฏิบัติการ Android มีช่องโหว่ต่อการโจมตีแบบ AutoSpill แม้ว่าจะไม่ต้องมีการทำ JavaScript injection ก็ตาม

AutoSpill ทำงานอย่างไร

แอปพลิเคชัน Android มักใช้ WebView controls เพื่อแสดงเนื้อหาเว็บ เช่น หน้าเข้าสู่ระบบภายในแอป แทนที่จะเปลี่ยนเส้นทางผู้ใช้ไปยังเบราว์เซอร์หลัก ซึ่งอาจทำให้ประสบปัญหาในการใช้งานบนอุปกรณ์ที่มีหน้าจอขนาดเล็ก

โปรแกรมจัดการรหัสผ่านบน Android ใช้เฟรมเวิร์ก WebView ของแพลตฟอร์ม เพื่อป้อนข้อมูล credentials ของบัญชีผู้ใช้โดยอัตโนมัติ เมื่อแอปโหลดหน้าเข้าสู่ระบบสำหรับบริการต่าง ๆ เช่น Apple, Facebook, Microsoft หรือ Google

นักวิจัยระบุว่า สามารถใช้ประโยชน์จากช่องโหว่ในกระบวนการนี้เพื่อขโมยข้อมูล credentials ที่กรอกโดยอัตโนมัติในแอปที่เรียกใช้ แม้ว่าจะไม่มีการใช้ JavaScript injection ก็ตาม

แต่หากมีการเปิดใช้งาน JavaScript injections โปรแกรมจัดการรหัสผ่านทั้งหมดบน Android ก็จะมีความเสี่ยงต่อการโจมตีแบบ AutoSpill

โดยเฉพาะปัญหา AutoSpill เกิดจากความผิดพลาดของ Android ในการบังคับใช้ หรือกำหนดหน้าที่รับผิดชอบในการจัดการข้อมูลที่กรอกโดยอัตโนมัติอย่างปลอดภัย ซึ่งอาจส่งผลให้ข้อมูลรั่วไหล หรือถูกแอปหลักดักจับได้

ในสถานการณ์การโจมตี แอปพลิเคชันปลอมที่แสดงแบบฟอร์มเข้าสู่ระบบสามารถขโมยข้อมูล credentials ของผู้ใช้ได้โดยไม่ทิ้งร่องรอยใด ๆ รายละเอียดทางเทคนิคเพิ่มเติมเกี่ยวกับการโจมตี AutoSpill มีอยู่ในสไลด์ที่นักวิจัยนำเสนอในงาน Black Hat Europe

รายละเอียดเพิ่มเติมเกี่ยวกับการโจมตี AutoSpill สามารถอ่านได้ในเอกสารฉบับนี้ ซึ่งประกอบด้วยสไลด์จากการนำเสนอในงาน Black Hat
Link : https://www.documentcloud.org/documents/24202397-eu-23-gangwal-autospill-zero-effort-credential-stealing

ผลกระทบ และการแก้ไข

นักวิจัยได้ทำการทดสอบ AutoSpill กับโปรแกรมจัดการรหัสผ่านหลายตัวบน Android 10, 11 และ 12 และพบว่า 1Password 7.9.4, LastPass 5.11.0.9519, Enpass 6.8.2.666, Keeper 16.4.3.1048 และ Keepass2Android 1.09c-r0 มีความเสี่ยงต่อการถูกโจมตีเนื่องจากใช้เฟรมเวิร์กป้อนข้อมูลอัตโนมัติของ Android

Google Smart Lock เวอร์ชัน 13.30.8.26 และ DashLane เวอร์ชัน 6.2221.3 ได้ใช้วิธีการทางเทคนิคที่แตกต่างสำหรับกระบวนการป้อนข้อมูลอัตโนมัติ โดยไม่ส่งข้อมูลสำคัญไปยังแอปโฮสต์ เว้นแต่มีการใช้ JavaScript injection

นักวิจัยได้เปิดเผยผลการวิจัยแก่ผู้ผลิตซอฟต์แวร์ที่ได้รับผลกระทบ และทีมความปลอดภัยของ Android และแบ่งปันคำแนะในการแก้ไขปัญหา โดยรายงานของนักวิจัยได้รับการยอมรับว่าถูกต้อง แต่ยังไม่มีรายละเอียดเกี่ยวกับแผนการแก้ไขช่องโหว่ดังกล่าว

BleepingComputer ได้ติดต่อผู้ให้บริการผลิตภัณฑ์การจัดการรหัสผ่านหลายรายที่ได้รับผลกระทบจาก AutoSpill รวมถึง Google เพื่อสอบถามเกี่ยวกับแผนการแก้ไขปัญหา และได้รับข้อมูลเบื้องต้นดังต่อไปนี้:

1Password ได้ระบุว่า

หลายคนคุ้นเคยกับการใช้ฟีเจอร์การป้อนข้อมูลอัตโนมัติเพื่อป้อนข้อมูล credentials ของตนเองอย่างรวดเร็ว และง่ายดายผ่านทางแอปพลิเคชันที่เป็นอันตรายที่ติดตั้งบนอุปกรณ์ของผู้ใช้ ทำให้แฮ็กเกอร์สามารถหลอกล่อให้ผู้ใช้กรอกข้อมูล credentials โดยอัตโนมัติโดยไม่ตั้งใจ การโจมตีในรูปแบบ AutoSpill เป็นตัวอย่างที่ชัดเจนของปัญหานี้

1Password ให้ความสำคัญสูงสุดกับการรักษาความปลอดภัยของข้อมูลที่สำคัญของลูกค้า และกำลังดำเนินการหาวิธีแก้ไขสำหรับช่องโหว่ AutoSpill ดังกล่าว

ขณะที่การแก้ไขจะช่วยเสริมสร้างความปลอดภัยมากขึ้น ฟังก์ชันการป้อนข้อมูลอัตโนมัติของ 1Password จะได้รับการออกแบบมาเพื่อให้ผู้ใช้ต้องการการดำเนินการที่ชัดเจนมากขึ้น

การอัปเดตนี้จะเพิ่มการป้องกันเพิ่มเติมโดยป้องกันการป้อนข้อมูล credentials ลงในฟิลด์ที่เป็น Native สำหรับ Android's WebView เท่านั้น

LastPass ได้ระบุว่า

ในปี 2022 เราได้ติดต่อกับ Dr. Gangwal ผ่าน Bugcrowd ซึ่งเป็นพันธมิตรโครงการ Bug Bounty จากนั้นได้วิเคราะห์ผลการวิจัยที่ส่งเข้ามา และพบว่าเป็นช่องโหว่ที่มีความเสี่ยงต่ำ เนื่องจากกลไกที่จำเป็นในการโจมตี

ประเด็นสำคัญคือช่องโหว่นี้ต้องใช้ความสามารถ และโอกาสในการติดตั้งแอปพลิเคชันที่เป็นอันตรายบนอุปกรณ์เป้าหมายก่อน ซึ่งแสดงถึงการบุกรุกอย่างสมบูรณ์แล้ว หรือมีความสามารถในการเรียกใช้โค้ดบนอุปกรณ์เป้าหมาย

ก่อนที่จะได้รับข้อมูลของ Dr. Gangwal ทาง LastPass ได้มีการแก้ไขผลกระทบอยู่ก่อนแล้ว โดยใช้การแจ้งเตือนแบบ pop-up ภายในผลิตภัณฑ์ เมื่อแอปตรวจพบความพยายามที่จะใช้ประโยชน์จากช่องโหว่นี้ หลังจากวิเคราะห์ผลการวิจัย เราได้เพิ่มเติมคำอธิบายใน pop-up ให้ละเอียดมากขึ้น

เราได้ยืนยันการอัปเดตนี้กับ Dr. Gangwal แต่ยังไม่ได้รับการยืนยัน หรือตอบรับจากการอัปเดตของเรา

Craig Lurey, CTO และผู้ร่วมก่อตั้งของ Keeper Security ระบุว่า

เมื่อวันที่ 31 พฤษภาคม 2022 Keeper ได้รับรายงานจากนักวิจัยเกี่ยวกับช่องโหว่ที่อาจเกิดขึ้น เราขอให้นักวิจัยส่งวิดีโอเพื่อแสดงปัญหาที่รายงาน จากการวิเคราะห์ของ Keeper พบว่านักวิจัยต้องทำการติดตั้งแอปพลิเคชันที่เป็นอันตรายก่อน แล้วจึงใช้ Keeper เพื่อเชื่อมโยงกับแอปพลิเคชันที่เป็นอันตราย

Keeper มีมาตรการป้องกันเพื่อปกป้องผู้ใช้จากการกรอกข้อมูลโดยอัตโนมัติในแอปพลิเคชันที่ไม่น่าเชื่อถือ หรือเว็บไซต์ที่ไม่ได้รับอนุญาตจากผู้ใช้ บนแพลตฟอร์ม Android, Keeper จะแจ้งเตือนผู้ใช้เมื่อพยายามกรอกข้อมูล credentials ลงในแอปพลิเคชัน หรือเว็บไซต์บน Android โดยผู้ใช้จะถูกขอให้ยืนยันการเชื่อมโยงของแอปพลิเคชันกับการบันทึกรหัสผ่านของ Keeper ก่อนที่จะกรอกข้อมูลใด ๆ เมื่อวันที่ 29 มิถุนายน เราได้แจ้งข้อมูลนี้ให้ผู้วิจัยทราบ และแนะนำให้เขายื่นรายงานของเขาไปยัง Google เนื่องจากเกี่ยวข้องโดยตรงกับแพลตฟอร์ม Android

โดยทั่วไป แอปพลิเคชัน Android ที่เป็นอันตรายจะต้องถูกส่งไปยัง Google Play Store ก่อน จากนั้น Google จะตรวจสอบ และอนุมัติให้เผยแพร่ใน Google Play Store หลังจากนั้น ผู้ใช้จะต้องติดตั้งแอปพลิเคชันที่เป็นอันตรายจาก Google Play และทำธุรกรรมกับแอปพลิเคชันนั้น ในกรณีอื่น ๆ ผู้ใช้จะต้องทำการตั้งค่าความปลอดภัยที่สำคัญบนอุปกรณ์ของตนเพื่อป้องกันการติดตั้งแอปพลิเคชันที่เป็นอันตราย

Keeper แนะนำให้ผู้ใช้ระมัดระวัง และใส่ใจเกี่ยวกับแอปพลิเคชันที่ติดตั้ง และควรติดตั้งเฉพาะแอปพลิเคชัน Android ที่เผยแพร่จากแหล่งที่เชื่อถือได้ เช่น Google Play Store

ส่วน Google ได้ระบุว่า

WebView ถูกใช้ในหลากหลายวิธีโดยนักพัฒนา Android ซึ่งรวมถึงการโฮสต์หน้าเข้าสู่ระบบสำหรับบริการของตนเองในแอปของพวกเขา ปัญหานี้เกี่ยวข้องกับวิธีที่โปรแกรมจัดการรหัสผ่านใช้ Autofill APIs เมื่อเชื่อมต่อกับ WebViews

เราแนะนำให้โปรแกรมจัดการรหัสผ่านระมัดระวังว่ารหัสผ่านถูกป้อนที่ใด และ ** Google ** มีแนวทางปฏิบัติที่ดีที่สุดสำหรับ WebView ที่แนะนำให้โปรแกรมจัดการรหัสผ่านทุกชนิดนำไปใช้ โดย Android จะให้ทางโปรแกรมจัดการรหัสผ่าน แยกแยะระหว่างมุมมองดั้งเดิม และ WebViews รวมถึงว่า WebView ที่กำลังโหลดเกี่ยวข้องกับแอปโฮสต์หรือไม่

ตัวอย่างเช่น เมื่อใช้ Google Password Manager สำหรับการป้อนข้อมูลอัตโนมัติบน Android ผู้ใช้จะได้รับการเตือนหากพวกเขากำลังป้อนรหัสผ่านสำหรับโดเมนที่ Google ตรวจพบว่าอาจไม่ได้เป็นเจ้าของแอปที่ทำหน้าที่โฮสต์ และรหัสผ่านจะถูกกรอกเฉพาะในช่องที่เหมาะสม ซึ่ง Google ใช้ระบบป้องกันด้านเซิร์ฟเวอร์สำหรับการเข้าสู่ระบบผ่าน WebView

ที่มา : Bleepingcomputer