คดี Button Stealer
(anatolyzenkov.com)- Button Stealer เป็นส่วนขยายเบราว์เซอร์ที่ “ขโมย” ปุ่มจากเว็บไซต์ที่ผู้ใช้เข้าเยี่ยมชมมาสะสมทีละปุ่ม
- เพียงใช้งานเว็บตามปกติ คอลเลกชันปุ่ม ก็จะเพิ่มขึ้นโดยอัตโนมัติ จึงใกล้เคียงกับเครื่องมือแนวแกล้งขำ ๆ มากกว่า
- ตัวผลิตภัณฑ์ถูกแนะนำว่าเป็นส่วนขยายที่ สนุก ไร้ประโยชน์ และฟรี
- ตัวชี้วัดสาธารณะที่แสดงมี Chrome Web Store 4.9/5, Product Hunt
#3 Product of the Day,↑492 Featured Product - ทำงานบนเครื่องแบบโลคัลและไม่ส่งข้อมูลออกไปภายนอก จึงมีโครงสร้างที่ทำให้ ข้อมูลผู้ใช้ยังคงเป็นส่วนตัว
วิธีการสะสมปุ่มจากเว็บไซต์
- Button Stealer เป็นส่วนขยายเบราว์เซอร์ที่ “ขโมย” ปุ่มหนึ่งปุ่มจากเว็บไซต์ที่ผู้ใช้เปิด
- แม้ผู้ใช้จะไม่ต้องทำอะไรเพิ่มเติม หากใช้งานออนไลน์ตามปกติ คอลเลกชัน ของปุ่มที่ขโมยมาก็จะเพิ่มขึ้น
- ตัวผลิตภัณฑ์เองถูกแนะนำว่าเป็นเครื่องมือที่สนุก ไร้ประโยชน์ และฟรี
แบดจ์และตัวชี้วัดที่เปิดเผย
-
Chrome Web Store
- คะแนน: 4.9/5
- แสดง Featured Badge
-
Product Hunt
#3 Product of the Day↑492 Featured Product
วิธีจัดการข้อมูลส่วนบุคคลและการติดตั้ง
- Button Stealer ทำงานบนเครื่องแบบโลคัล
- เนื่องจากไม่ส่งข้อมูลไปที่ใดเลย ข้อมูลผู้ใช้จึง ยังคงเป็นส่วนตัว
- ในหน้าดังกล่าวมีปุ่มสำหรับติดตั้ง Button Stealer
1 ความคิดเห็น
ความคิดเห็นใน Hacker News
ปัญหาของส่วนขยายที่ “ไม่เป็นอันตราย” นี้คือมันต้องใช้
host_permissionsใน manifestซึ่งหมายความว่ามันทำอะไรแทบจะก็ได้บนทุกหน้าเว็บที่คุณเข้า และอาจขูดข้อมูลออกไปได้ด้วย
ในมุมของนักพัฒนาส่วนขยาย ผมขอผ่าน ส่วนขยายแบบนี้ที่ไม่มีประโยชน์จริง มีแต่ความสนุก แต่ต้องขอสิทธิ์กว้าง ๆ นั้นอันตราย
ถ้าตรวจโค้ดบน GitHub แล้วติดตั้งส่วนขยายแบบ local ก็จะหลีกเลี่ยงความเสี่ยงที่ภายหลังจะมีการเปลี่ยนแปลงที่เป็นอันตรายเข้ามาได้
ต่อให้ให้สิทธิ์เข้าถึง DOM ของทุกหน้าที่ผมเข้า ถ้าไม่มีทางส่งออกไปภายนอกได้ก็น่าจะโอเค
ผมคิดว่าแนวทางที่ถูกต้องคือเปิดให้มีฟังก์ชันที่แยกออกจากโค้ดส่วนที่เหลือ และจ่ายเงินให้บุคคลที่สามที่เชื่อถือได้เพื่อตรวจสอบความสามารถของฟังก์ชันนั้น
ในกรณีนี้ ฟังก์ชันนั้นจะทำได้แค่ 1) เข้าถึง HTML ของเว็บไซต์ 2) ค้นหาปุ่ม และ 3) คืนค่าเฉพาะสิ่งที่ประกอบเป็นปุ่ม
แบบนั้นคำอธิบายสิทธิ์ที่หน่วยงานน่าเชื่อถือเขียนก็จะแม่นยำได้ เช่น “ส่วนขยายนี้ต้องการคัดลอกปุ่มจากเว็บไซต์”
ผมอยากเรียกสิ่งนี้ว่า DEWISOTT computing: หมายถึงทำงานตรงตามที่เขียนไว้บนฉลากเป๊ะ ๆ
ตราบใดที่ไม่แตะฟังก์ชันนั้น จะอัปเดตส่วนขยายวันละ 1,000 ครั้งก็ได้
นี่เหมือน อีเมลฟิชชิง ในเวอร์ชันแอป
แค่เพื่อความเพลินตา แต่ขอเข้าถึงทุกอย่างบนทุกเว็บไซต์ที่คุณเข้า
ส่วนขยายประเภทนี้ทำให้กังวลเวลา نصبตั้ง
เพราะอาจมีใครเสนอเงินก้อนใหญ่ให้ผู้พัฒนาเพื่อซื้อไป แล้วเอาไปใช้ในวัตถุประสงค์ที่ไม่ค่อยสนุกเท่าไร
ไม่รู้ว่าต้องใช้สิทธิ์เพิ่มเติมหรือเปล่า แต่อย่างน้อยตอนนี้ content script ก็รันบน “[https:///\](https://*/\)” อยู่แล้ว
สงสัยว่ามีเหตุผลพิเศษอะไรที่ใช้ API เฉพาะของ Chrome แทน WebExtensions API มาตรฐาน
กำลังคิดจะลองเล่นกับ web extensions เลยอยากรู้ว่า API มาตรฐานมีข้อจำกัดจริง ๆ อย่างไรเมื่อเทียบกับ API แยกตามเบราว์เซอร์
Firefox เข้ากันได้กับการเรียก API
chrome.*ที่ผมใช้ในส่วนขยายที่ทำเองGitHub: https://github.com/anatolyzenkov/button-stealer
ผมดูโค้ดแล้วเหมือนจะไม่เป็นอันตราย เพียงแต่ไม่รู้ว่ามีวิธีตรวจสอบไหมว่าโค้ดที่อยู่บน Chrome Extension Store เป็นโค้ดเดียวกันหรือเปล่า
นึกถึงหน้าดูโฆษณาที่ถูกคลิกของ https://adnauseam.io/ https://adnauseam.io/img/adnauseam_vault.png
ปัญหายุคใหม่ต้องใช้ทางแก้ยุคใหม่
ชอบไอเดียนี้ แต่ สิทธิ์การเข้าถึง ค่อนข้างน่ากลัว
ถ้าให้ดีน่าจะทำใหม่เป็น bookmarklet ได้ เพียงแต่ต้องบันทึกชิ้นส่วน HTML ของปุ่มลงไฟล์ เลยคงต้องทำทางอ้อมเกี่ยวกับ Blob เพื่อให้ดาวน์โหลดได้
เคยทำเครื่องมือที่มีจุดประสงค์คล้าย ๆ กันมาก่อน
แต่ไม่ได้ขโมยปุ่ม ขโมย CSS/SCSS แทน และไม่ใช่ส่วนขยาย แต่เป็นเครื่องมือ CLI หาได้บน GitHub ในชื่อ
coalio/rfscssสงสัยว่ามันบันทึก HTML/CSS เพื่อให้นำปุ่มกลับมาใช้ซ้ำได้ง่าย ๆ หรือบันทึกเป็นรูปภาพ
ถ้าเป็นอย่างแรกก็ค่อนข้างมีประโยชน์ แต่ถ้าเป็นอย่างหลัง ถึงจะสนุกแต่คงมีประโยชน์น้อยกว่า และถ้าเป็นรูปภาพ ก็สงสัยเหมือนกันว่าการดึงออกมาจากหน้าที่แสดงปุ่มทั้งหมดจะยากแค่ไหน
ฟังดูเป็นวิธีที่ดีมากในการหาแรงบันดาลใจด้านดีไซน์ UI/UX