ย้อนวิศวกรรม BlockAdBlock
(xy2.dev)การวิเคราะห์โค้ดของ BlockAdBlock ซึ่งเป็นเครื่องมือ Anti AdBlock ที่ใช้บล็อก AdBlocker
BAB จะสร้างโฆษณาล่อในเครื่องเพื่อตรวจสอบว่าถูกบล็อกหรือไม่
นอกจากนี้ยังสุ่มเปลี่ยนชื่อของตัว BAB เองเพื่อไม่ให้ถูกลบออกได้ง่าย
uBlock Origin สร้าง Proxy สำหรับ eval เพื่อตรวจจับและทำให้ BAB ใช้งานไม่ได้
เบราว์เซอร์ Brave ที่ชั้นเครือข่ายจะส่งสคริปต์ปลอมขนาด 0 ไบต์สำหรับสคริปต์โฆษณา เพื่อให้ BAB ตรวจจับไม่ได้ว่าโฆษณาถูกบล็อกแล้ว
BAB ยังพยายามหลบเลี่ยงการบล็อกสคริปต์ด้วยการอ่าน favicon ของเว็บโฆษณา
→ Brave ตอบโต้แม้กระทั่งกรณีนี้ด้วยการส่งไอคอนปลอมขนาด 1x1
→ จากนั้น BAB ก็พยายามหลบเลี่ยงอีกด้วยการตรวจสอบ width ของ favicon
1 ความคิดเห็น
เหมือนเป็นการต่อสู้ระหว่างหอกกับโล่เลยนะครับ เรื่องการบล็อกโฆษณาก็มีความเห็นหลากหลายอยู่เหมือนกัน..
แต่ในแง่เทคนิคแล้ว ทั้งการพัฒนาวิธีบล็อกและวิธีตรวจจับมันก็น่าสนใจทั้งคู่
ด้านนี้ผมยังไม่เคยดูละเอียดมาก่อน เลยรู้สึกว่าการทำ proxy สำหรับ
evalนี่น่าทึ่งดีครับ