วันอาทิตย์ที่ 4 กันยายน พ.ศ. 2565

Cloudflare เลิกใช้ Elasticsearch เก็บ log หันไปใช้ ClickHouse แทน

Cloudflare รายงานถึงการเปลี่ยนฐานข้อมูลสำหรับเก็บ log จากเดิมที่ใช้ Elasticsearch หันมาใช้ฐานข้อมูลแบบคอลัมน์ ClickHouse หลังจากพบข้อจำกัดของ Elasticsearch หลายอย่าง ได้แก่
  • Mapping Explosion: เนื่องจากข้อมูล log มักมีฟิลด์เปลี่ยนไปมาเรื่อยๆ แต่ Elasticsearch พยายาม index ทุกฟิลด์แยกจากกัน ทำให้เมื่อถังข้อมูลมีฟิลด์จำนวนมากเข้าก็จะกินหน่วยความจำมาก ทางแก้ปัญหาของ Elasticsearch คือจำกัดฟิลด์ที่ใช้งานแต่ก็จะทำให้ไม่สามารถค้นหาฟิลด์ที่ไม่ได้ระบุไว้
  • Multi-tenancy: ตอนนี้ Elasticsearch ไม่สามารถจำกัดจำนวนเอกสารที่ผู้ใช้ต้องสแกนในการคิวรีแต่ละครั้ง ส่งผลให้ผู้ใช้คนใดคนหนึ่งส่งคำสั่งคิวรีหนักๆ ก็จะทำทั้งคลัสเตอร์ช้าไปได้
  • การจัดการยาก: หากคลัสเตอร์ Elasticsearch ทำงานผิดพลาดจนกลายเป็น degrade แล้วกระบวนการกู้คืนจะใช้เวลานาน การ index ฐานข้อมูลใหม่กินเวลานาน และกระบวนการย้ายข้อมูลจากฐานข้อมูล hot ไป cold กระทบประสิทธิภาพคลัสเตอร์
  • การจัดการหน่วยความจำจาวา: เนื่องจาก Elasticsearch ใช้จาวาจึงมีช่วงเวลาที่ garbage collector ทำงาน ทำให้เสียประสิทธิภาพในช่วงนั้น ทาง Cloudflare พยายามเปลี่ยนตัว garbage collector แล้วแต่ก็ไม่ดีขึ้นนัก

การเปลี่ยนไปใช้ ClickHouse ได้เปรียบหลายอย่าง เช่น การเพิ่ม index ในฟิลด์ใดๆ สามารถทำได้ทันที, ตัวฐานข้อมูลบีบอัดเป็นค่าเริ่มต้นและคอนฟิกแยกกระบวนการบีบอัดรายฟิลด์ได้, และการขยายคลัสเตอร์ได้ประสิทธิภาพตามขนาดคลัสเตอร์ที่ขยาย (linearly scalable)

ในบทความนี้ Cloudflare ยังแนะนำถึงการใช้ ClickHouse ว่าควรเลือกรูปแบบการเก็บข้อมูลว่าจากเก็บแยกฟิลด์แบบ SQL ปกติที่ต้อง ALTER TABLE ทุกครั้งเพื่อเพิ่มฟิลด์ หรือจะใช้ JSON เพื่อเก็บฟิลด์ที่ไม่แน่นอน แต่มีข้อจำกัดว่าไม่ควรมีข้อมูลเกิน 1,000 ฟิลด์ สำหรับ Cloudflare ที่มีฟิลด์จำนวนมากก็เลือกเก็บข้อมูลเป็น array ของฟิลด์อื่นๆ ทั้งหมด

ผลที่ได้จากการเปลี่ยนไช้ ClickHouse ทำให้ Cloudflare ลดการใช้ซีพียูและหน่วยความจำจากการเขียนลง 8 เท่า ขนาดข้อมูลลดลง 10 เท่า ทำให้ Cloudflare สามารถเก็บข้อมูลเต็มรูปแบบไม่ต้อง sampling บางส่วน, และการคิวรีเกือบทั้งหมดประสิทธิภาพดีขึ้นมาก

แม้จะชม ClickHouse ค่อนข้างมากแต่ทาง Cloudflare ก็ระบุว่า Elasticsearch เป็นตัวค้นหาแบบ full text ที่ดี และการใช้งานของแต่ละที่ก็อาจจะต่างกันจึงควรพิจารณาการใช้งานจริงด้วย

ที่มา: Blognone

O.MG Cable สาย USB แฮคได้ที่ทำให้ทุกคนต้องระวังการเสียบมั่วซั่ว

เครื่องไม้เครื่องมือสำหรับแฮคเกอร์ในปัจจุบันนี้ มีความก้าวหน้าไปมากจนถึงขนาดที่หลายอย่างดูเผินๆ ก็เหมือนเป็นข้าวของเครื่องใช้ธรรมดาที่ไม่น่าจะมีฟังก์ชันอันตรายแอบแฝง แต่สาย USB ที่ชื่อ O.MG Cable นี้อาจต้องทำให้เปลี่ยนความคิดใหม่และระวังมากขึ้นก่อนจะคว้าสาย USB ของใครมาเสียบคอมพิวเตอร์หรือโทรศัพท์มือถือ

O.MG Cable คือสาย USB ที่ผลิตด้วยมือซึ่งดูหน้าตาธรรมดาแทบไม่ต่างจากสายชาร์จหรือสายถ่ายโอนข้อมูลทั่วไป แต่ความไม่ธรรมดาของมันคือสิ่งที่แฝงอยู่ภายในซึ่งมีทั้งเว็บเซิร์ฟเวอร์, การเชื่อมต่อ USB และการเชื่อมต่อ Wi-Fi ที่ทำได้ทั้งรับส่งข้อมูลที่มันแฮคได้ไปยังเซิร์ฟเวอร์และรับคำสั่งโจมตีจากเซิร์ฟเวอร์มาก็ได้ โดยร่นนี้เป็นเวอร์ชั่นอัพเกรดจากสายที่ผลิตออกมาเมื่อปีก่อน เพิ่มความสามารถในการรับข้อมูลจากเซิร์ฟเวอร์เพื่อการโจมตี (จากแต่เดิมที่ทำได้เพียงดักจับข้อมูล)

หน้าตาสาย O.MG Cable กับเว็บที่ใช้งานคู่กับมัน

สิ่งที่มันทำได้ไม่เพียงแต่การดักจับอ่านข้อมูลการใช้แป้นพิมพ์ แต่ที่น่ากลัวยิ่งกว่าคือมันทำการโจมตีแบบ keystroke injection ได้ด้วย ว่าง่ายๆ คือผู้โจมตีสามารถส่งข้อมูลผ่านทาง Wi-Fi ไปให้สาย O.MG Cable เพื่อหลอกให้อุปกรณ์ที่มันเสียบอยู่กับสายนั้นเข้าใจว่ามีข้อมูลถูกคีย์ส่งมาจริง และการโจมตีนี้ยังทำกับอุปกรณ์ที่อยู่ในโซน air gap ได้ด้วย (อุปกรณ์ที่โดน air gap หรืออยู่ในโซน air gap หมายถึงอุปกรณ์ที่ไม่ได้เชื่อมต่อกับเครือข่ายอื่นในช่องทางใดเลย ซึ่งเป็นวิธีการออกแบบระบบเครือข่ายที่ใช้กับอุปกรณ์ที่มีความสำคัญมาก เพื่อยกระดับความปลอดภัยไซเบอร์ให้กับอุปกรณ์นั้น)

ภาพเอกซเรย์แสดงให้เห็นว่ามีอะไรอยู่ในสาย O.MG Cable

ตัวสาย O.MG Cable นั้นมีทั้งแบบหัว Lightning, micro USB และ USB-C โดยมีแบ่งขายเป็น 3 รุ่น คือ Basic, Plus และ Elite ซึ่งราคารุ่น Elite ที่แพงที่สุดนั้นตั้งไว้ที่เส้นละ 179.99 เหรียญ ทั้งนี้ MG ซึ่งเป็นผู้พัฒนาสาย O.MG Cable นี้บอกว่าอุปกรณ์แฮคที่มีอยู่ในก่อนในท้องตลาดที่ทำงานได้ระดับเดียวกันนี้ปกติขายกันอยู่ที่ราคาราวๆ 20,000 เหรียญ

ที่มา: Blognone