5 คะแนน โดย GN⁺ 2025-01-17 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • ซอฟต์แวร์สำหรับดักจับเว็บครอว์เลอร์ โดยมุ่งเป้าไปที่ครอว์เลอร์ที่สแครปข้อมูลเพื่อใช้กับโมเดลภาษาขนาดใหญ่ (LLM) โดยเฉพาะ
    • สร้างลำดับหน้าที่ไม่มีที่สิ้นสุดเพื่อให้ครอว์เลอร์ติดอยู่และออกไปไม่ได้
    • เพิ่มความหน่วงโดยเจตนาเพื่อไม่ให้ครอว์เลอร์ทำให้เซิร์ฟเวอร์โอเวอร์โหลด และสามารถใช้ Markov-babble เพื่อล่อให้ครอว์เลอร์เก็บข้อมูลได้
    • ซอฟต์แวร์นี้ถูกออกแบบมาเพื่อวัตถุประสงค์เชิงมุ่งร้าย และควรใช้งานด้วยความระมัดระวัง
  • คำเตือน
    • ครอว์เลอร์ของ LLM มีความตื๊ออย่างมาก และเมื่อใช้ซอฟต์แวร์นี้ก็จะยิ่งป้อนข้อมูลที่ครอว์เลอร์ต้องการต่อไปเรื่อยๆ
    • ไม่มีวิธีแยกแยะระหว่างครอว์เลอร์สำหรับเสิร์ชเอนจินกับครอว์เลอร์ที่ใช้ฝึกโมเดล AI และหากใช้ซอฟต์แวร์นี้ มีความเป็นไปได้สูงว่าเว็บไซต์จะหายไปจากผลการค้นหา
  • วิธีใช้
    • แนะนำให้ซ่อน tarpit ไว้หลัง Nginx หรือ Apache
    • ตั้งค่า tarpit ผ่าน HTTP header และมีตัวอย่าง nginx configuration snippet ให้
  • การติดตั้ง
    • ติดตั้งได้ด้วย Docker หรือทำแบบแมนนวล
    • ต้องใช้ Lua, SQLite, OpenSSL และ Lua module หลายตัว
    • หลังติดตั้งแล้วสามารถเริ่มใช้งานได้โดยปรับไฟล์ config.yml
  • การบูตสแตรป Markov Babbler
    • ฟังก์ชัน Markov ต้องใช้คอร์ปัสที่ผ่านการฝึก และสามารถฝึกด้วยแหล่งข้อความที่หลากหลายได้
    • สามารถเพิ่มข้อมูลฝึกได้โดยส่งไปยัง POST endpoint
  • สถิติ
    • มี endpoint สำหรับสถิติหลายรายการในรูปแบบ JSON และสามารถตรวจสอบที่อยู่ IP กับสตริง user-agent ได้
  • การใช้ Nepenthes ในเชิงป้องกัน
    • ใช้ลิงก์จากเว็บไซต์ไปยังตำแหน่งของ Nepenthes เพื่อไม่ให้ครอว์เลอร์เข้าถึงคอนเทนต์จริง
    • สามารถใช้รายการที่อยู่ IP ที่เก็บรวบรวมได้เพื่อบล็อกครอว์เลอร์
  • การใช้ Nepenthes ในเชิงรุก
    • ไม่บล็อกครอว์เลอร์ แต่ป้อนข้อมูลให้ได้มากที่สุดเพื่อรบกวนโมเดล AI
  • ไฟล์คอนฟิก
    • มีคำอธิบาย directive ที่เป็นไปได้ทั้งหมดในไฟล์ config.yaml
    • สามารถปรับพฤติกรรมของ Nepenthes ได้ผ่านการตั้งค่าที่หลากหลาย

1 ความคิดเห็น

 
GN⁺ 2025-01-17
ความเห็นจาก Hacker News
  • มีความเห็นเกี่ยวกับวิธีทดสอบช่องโหว่ reflective DDoS ของตัวครอว์เลอร์ ChatGPT ซึ่งช่องโหว่นี้อาจทำให้คำขอ HTTP เพียงครั้งเดียวก่อให้เกิดคำขอ HTTP ได้ถึง 5,000 ครั้ง

    • OpenAI และ Microsoft เพิกเฉยต่อช่องโหว่นี้ และกระบวนการรายงานก็ทำได้ยากมาก
    • แนะนำว่าไม่ควรนำช่องโหว่นี้ไปใช้ในทางโจมตีด้วยเหตุผลทางกฎหมาย
  • มีการแชร์ประสบการณ์จากการเคยทำ bot motel มาก่อน โดยยกตัวอย่างกรณีที่ครอว์เลอร์ติดอยู่เป็นเวลาหลายวัน

    • เรื่องความปลอดภัยมักถูกนึกถึงภายหลัง และการต่อสู้กับครอว์เลอร์ก็เป็นการแข่งขันที่ไม่มีวันจบ
  • มีการแชร์ประสบการณ์ที่เว็บไซต์ไม่แสวงหากำไรแห่งหนึ่งต้องปิดชั่วคราวเพราะถูก Amazon bot ครอว์ลอย่างดุดัน

    • Siteground ช่วยกู้เว็บไซต์กลับมาให้ และหลังจากนั้นก็เพิ่ม Amazon bot ลงใน robots.txt
    • แสดงความไม่พอใจกับสถานการณ์ปัจจุบัน และตั้งคำถามว่า tarpits หรือกฎหมายจะเป็นทางออกได้หรือไม่
  • มีความเห็นว่า tarpit อาจช่วยให้การครอว์ลช้าลงได้ แต่ถ้าไม่มีหลายเว็บไซต์ใช้ร่วมกันก็คงไม่ส่งผลมากนัก

    • การระบุ bot ที่ไม่พึงประสงค์อย่างแม่นยำนั้นทำได้ยาก และมีความเสี่ยงที่จะถูกตัดออกจากผลการค้นหา
  • มีความเห็นว่าเครื่องสร้างข้อความแบบสุ่มที่อิง Markov chain ไม่น่าจะสร้างปัญหาใหญ่ให้กับครอว์เลอร์ที่เก็บข้อมูลไปฝึก LLM

    • การใช้ข้อความไร้สาระแบบซ้ำ ๆ อาจมีประสิทธิภาพมากกว่าการปนเปื้อนแบบสุ่ม
  • มีความเห็นว่าขณะนี้เกิดข้อผิดพลาด 502 Bad Gateway อยู่ และไม่แน่ใจว่าเป็นเพราะถูกจัดประเภทเป็น AI web crawler หรือเพราะระบบโอเวอร์โหลด

  • มีความเห็นว่าแนวคิดนี้ยังกรองออกได้ง่าย ตราบใดที่มันยังไม่แพร่หลาย

    • บริษัทใหญ่ ๆ อาจตั้งทีมขึ้นมาเพื่อป้องกันซอฟต์แวร์ลักษณะนี้
  • มีความเห็นว่าในอินเทอร์เน็ตมีเว็บไซต์แบบ "ไม่มีที่สิ้นสุด" อยู่แล้ว และครอว์เลอร์ก็มักกำหนดจำนวนหน้าที่จะครอว์ลต่อโดเมนไว้

    • เว็บไซต์ยอดนิยมจะถูกครอว์ลจำนวนมาก แต่เว็บไซต์ที่ไม่เป็นที่รู้จักจะถูกครอว์ลน้อยกว่า
  • มีการพิจารณาแนวทางง่าย ๆ คือส่งคำขอ HTTP ที่ผิดพลาด 100 รายการกลับไปสำหรับแต่ละคำขอ HTTP ที่ไม่พึงประสงค์

  • มีความเห็นว่าเว็บไซต์ที่ใช้ซอฟต์แวร์นี้มีแนวโน้มสูงที่จะหายไปจากผลการค้นหาทั้งหมด

    • เรื่องนี้อาจเป็นบั๊ก หรืออาจเป็นฟีเจอร์ก็ได้